@djb25/digit-ui-module-vendor 1.0.21 → 1.0.22

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.
@@ -8192,6 +8192,43 @@ const getFillingPointDisplayValue = (row = {}) => {
8192
8192
  var _row$fillingPoint, _row$dsoDetails3, _row$dsoDetails3$fill, _row$dsoDetails4, _row$dsoDetails5, _row$dsoDetails6, _row$dsoDetails7, _row$fillingpointmeta2;
8193
8193
  return (row === null || row === void 0 ? void 0 : (_row$fillingPoint = row.fillingPoint) === null || _row$fillingPoint === void 0 ? void 0 : _row$fillingPoint.fillingPointName) || (row === null || row === void 0 ? void 0 : (_row$dsoDetails3 = row.dsoDetails) === null || _row$dsoDetails3 === void 0 ? void 0 : (_row$dsoDetails3$fill = _row$dsoDetails3.fillingPoint) === null || _row$dsoDetails3$fill === void 0 ? void 0 : _row$dsoDetails3$fill.fillingPointName) || (row === null || row === void 0 ? void 0 : row.fillingPointName) || (row === null || row === void 0 ? void 0 : (_row$dsoDetails4 = row.dsoDetails) === null || _row$dsoDetails4 === void 0 ? void 0 : _row$dsoDetails4.fillingPointName) || (row === null || row === void 0 ? void 0 : row.fillingPointId) || (row === null || row === void 0 ? void 0 : (_row$dsoDetails5 = row.dsoDetails) === null || _row$dsoDetails5 === void 0 ? void 0 : _row$dsoDetails5.fillingPointId) || (typeof (row === null || row === void 0 ? void 0 : row.fillingPoint) === "string" ? row === null || row === void 0 ? void 0 : row.fillingPoint : null) || (typeof (row === null || row === void 0 ? void 0 : (_row$dsoDetails6 = row.dsoDetails) === null || _row$dsoDetails6 === void 0 ? void 0 : _row$dsoDetails6.fillingPoint) === "string" ? row === null || row === void 0 ? void 0 : (_row$dsoDetails7 = row.dsoDetails) === null || _row$dsoDetails7 === void 0 ? void 0 : _row$dsoDetails7.fillingPoint : null) || (row === null || row === void 0 ? void 0 : (_row$fillingpointmeta2 = row.fillingpointmetadata) === null || _row$fillingpointmeta2 === void 0 ? void 0 : _row$fillingpointmeta2.fillingPointId) || (row === null || row === void 0 ? void 0 : row.filling_pt_name) || (row === null || row === void 0 ? void 0 : row.fillingPtName) || "NA";
8194
8194
  };
8195
+ const getSelectedVendorOption = (row = {}, vendors = []) => {
8196
+ var _row$vendor, _row$vendorData;
8197
+ const selectedVendorId = (row === null || row === void 0 ? void 0 : (_row$vendor = row.vendor) === null || _row$vendor === void 0 ? void 0 : _row$vendor.id) || (row === null || row === void 0 ? void 0 : (_row$vendorData = row.vendorData) === null || _row$vendorData === void 0 ? void 0 : _row$vendorData.id) || (row === null || row === void 0 ? void 0 : row.vendorId);
8198
+ if (!selectedVendorId) return null;
8199
+ return vendors.find(vendor => (vendor === null || vendor === void 0 ? void 0 : vendor.id) === selectedVendorId) || (row === null || row === void 0 ? void 0 : row.vendor) || (row === null || row === void 0 ? void 0 : row.vendorData) || null;
8200
+ };
8201
+ const getVendorFillingPoints = (vendor = {}) => {
8202
+ const fillingPointOptions = [vendor === null || vendor === void 0 ? void 0 : vendor.fillingPoint, ...(Array.isArray(vendor === null || vendor === void 0 ? void 0 : vendor.fillingPoints) ? vendor.fillingPoints : [])].filter(Boolean);
8203
+ const uniqueFillingPoints = new Map();
8204
+ fillingPointOptions.forEach(fillingPoint => {
8205
+ const identifier = getFillingPointIdentifiers(fillingPoint)[0] || (fillingPoint === null || fillingPoint === void 0 ? void 0 : fillingPoint.fillingPointName) || (fillingPoint === null || fillingPoint === void 0 ? void 0 : fillingPoint.id);
8206
+ if (identifier && !uniqueFillingPoints.has(identifier)) {
8207
+ uniqueFillingPoints.set(identifier, fillingPoint);
8208
+ }
8209
+ });
8210
+ return Array.from(uniqueFillingPoints.values());
8211
+ };
8212
+ const getDriverFillingPointIdentifiers = (driver = {}) => {
8213
+ var _driver$additionalDet, _driver$additionalDet2, _driver$fillingpointm;
8214
+ return Array.from(new Set([driver === null || driver === void 0 ? void 0 : driver.fillingPointId, driver === null || driver === void 0 ? void 0 : driver.fillingStationId, driver === null || driver === void 0 ? void 0 : (_driver$additionalDet = driver.additionalDetails) === null || _driver$additionalDet === void 0 ? void 0 : _driver$additionalDet.fillingPointId, driver === null || driver === void 0 ? void 0 : (_driver$additionalDet2 = driver.additionalDetails) === null || _driver$additionalDet2 === void 0 ? void 0 : _driver$additionalDet2.fillingStationId, driver === null || driver === void 0 ? void 0 : (_driver$fillingpointm = driver.fillingpointmetadata) === null || _driver$fillingpointm === void 0 ? void 0 : _driver$fillingpointm.fillingPointId].filter(value => value !== undefined && value !== null && value !== "").map(String).concat(getFillingPointIdentifiers(driver === null || driver === void 0 ? void 0 : driver.fillingPoint), getFillingPointIdentifiers(driver === null || driver === void 0 ? void 0 : driver.fillingPointDetail), getFillingPointIdentifiers(driver === null || driver === void 0 ? void 0 : driver.fillingPointDetails))));
8215
+ };
8216
+ const getVendorDriversForFillingPoint = (vendor, fillingPoint) => {
8217
+ const vendorDrivers = Array.isArray(vendor === null || vendor === void 0 ? void 0 : vendor.drivers) ? vendor.drivers.filter(Boolean) : [];
8218
+ if (!fillingPoint) return [];
8219
+ const selectedFillingPointIdentifiers = getFillingPointIdentifiers(fillingPoint);
8220
+ if (!selectedFillingPointIdentifiers.length) return vendorDrivers;
8221
+ return vendorDrivers.filter(driver => {
8222
+ const driverFillingPointIdentifiers = getDriverFillingPointIdentifiers(driver);
8223
+ return !driverFillingPointIdentifiers.length || driverFillingPointIdentifiers.some(identifier => selectedFillingPointIdentifiers.includes(identifier));
8224
+ });
8225
+ };
8226
+ const getSelectedDriverOption = (row = {}, drivers = []) => {
8227
+ var _row$driverData, _row$driver;
8228
+ const selectedDriverId = (row === null || row === void 0 ? void 0 : (_row$driverData = row.driverData) === null || _row$driverData === void 0 ? void 0 : _row$driverData.id) || (row === null || row === void 0 ? void 0 : (_row$driver = row.driver) === null || _row$driver === void 0 ? void 0 : _row$driver.id);
8229
+ if (!selectedDriverId) return null;
8230
+ return drivers.find(driver => (driver === null || driver === void 0 ? void 0 : driver.id) === selectedDriverId) || null;
8231
+ };
8195
8232
  const normalizeFillingPointForVehicleUpdate = fillingPoint => {
8196
8233
  if (!fillingPoint || typeof fillingPoint !== "object") return fillingPoint;
8197
8234
  const {
@@ -8288,6 +8325,12 @@ const VendorInbox = props => {
8288
8325
  const closeToast = () => {
8289
8326
  setShowToast(null);
8290
8327
  };
8328
+ const updateVehicleRowState = (vehicleId, updates) => {
8329
+ setTableData(currentTableData => currentTableData.map(vehicle => (vehicle === null || vehicle === void 0 ? void 0 : vehicle.id) === vehicleId ? {
8330
+ ...vehicle,
8331
+ ...updates
8332
+ } : vehicle));
8333
+ };
8291
8334
  const getVehicleUpdatePayload = (vehicle, overrides = {}) => {
8292
8335
  const normalizedVehicle = {
8293
8336
  ...vehicle,
@@ -8302,6 +8345,19 @@ const VendorInbox = props => {
8302
8345
  vehicle: normalizedVehicle
8303
8346
  };
8304
8347
  };
8348
+ const getVendorPayloadForVehicle = (vendor, vehicles) => {
8349
+ var _vendor$owner;
8350
+ return {
8351
+ vendor: {
8352
+ ...vendor,
8353
+ owner: {
8354
+ ...(vendor === null || vendor === void 0 ? void 0 : vendor.owner),
8355
+ gender: (vendor === null || vendor === void 0 ? void 0 : (_vendor$owner = vendor.owner) === null || _vendor$owner === void 0 ? void 0 : _vendor$owner.gender) || "OTHERS"
8356
+ },
8357
+ vehicles
8358
+ }
8359
+ };
8360
+ };
8305
8361
  const onVendorUpdate = row => {
8306
8362
  var _formDetails$owner, _formDetails$owner2, _formDetails$owner3, _formDetails$owner4;
8307
8363
  let formDetails = row.original.dsoDetails;
@@ -8434,6 +8490,84 @@ const VendorInbox = props => {
8434
8490
  }
8435
8491
  });
8436
8492
  };
8493
+ const onVehicleVendorSelect = (row, selectedVendor) => {
8494
+ const currentVehicle = row.original;
8495
+ const existingVendor = currentVehicle === null || currentVehicle === void 0 ? void 0 : currentVehicle.vendor;
8496
+ if (!(selectedVendor !== null && selectedVendor !== void 0 && selectedVendor.id) || (existingVendor === null || existingVendor === void 0 ? void 0 : existingVendor.id) === (selectedVendor === null || selectedVendor === void 0 ? void 0 : selectedVendor.id)) {
8497
+ return;
8498
+ }
8499
+ const vehicleForVendorMapping = {
8500
+ ...currentVehicle,
8501
+ vendorVehicleStatus: "ACTIVE",
8502
+ fillingPoint: null,
8503
+ driverData: null,
8504
+ driver: null
8505
+ };
8506
+ delete vehicleForVendorMapping.vendor;
8507
+ delete vehicleForVendorMapping.popup;
8508
+ delete vehicleForVendorMapping.driver;
8509
+ const addVehicleToSelectedVendor = () => {
8510
+ const selectedVendorVehicles = Array.isArray(selectedVendor === null || selectedVendor === void 0 ? void 0 : selectedVendor.vehicles) ? [...selectedVendor.vehicles] : [];
8511
+ const existingVehicleIndex = selectedVendorVehicles.findIndex(vehicle => (vehicle === null || vehicle === void 0 ? void 0 : vehicle.id) === (currentVehicle === null || currentVehicle === void 0 ? void 0 : currentVehicle.id));
8512
+ if (existingVehicleIndex > -1) {
8513
+ selectedVendorVehicles[existingVehicleIndex] = {
8514
+ ...selectedVendorVehicles[existingVehicleIndex],
8515
+ ...vehicleForVendorMapping,
8516
+ vendorVehicleStatus: "ACTIVE"
8517
+ };
8518
+ } else {
8519
+ selectedVendorVehicles.push(vehicleForVendorMapping);
8520
+ }
8521
+ const updatedSelectedVendor = {
8522
+ ...selectedVendor,
8523
+ vehicles: selectedVendorVehicles
8524
+ };
8525
+ mutateVendor(getVendorPayloadForVehicle(selectedVendor, selectedVendorVehicles), {
8526
+ onError: error => {
8527
+ setShowToast({
8528
+ key: "error",
8529
+ action: error
8530
+ });
8531
+ setTimeout(closeToast, 5000);
8532
+ },
8533
+ onSuccess: () => {
8534
+ updateVehicleRowState(currentVehicle === null || currentVehicle === void 0 ? void 0 : currentVehicle.id, {
8535
+ vendor: updatedSelectedVendor,
8536
+ fillingPoint: null,
8537
+ driverData: null,
8538
+ driver: null
8539
+ });
8540
+ setShowToast({
8541
+ key: "success",
8542
+ action: "VEHICLE"
8543
+ });
8544
+ queryClient.invalidateQueries("DSO_SEARCH");
8545
+ queryClient.invalidateQueries("FSM_VEICLES_SEARCH");
8546
+ props.refetchData();
8547
+ props.refetchVendor && props.refetchVendor();
8548
+ setTimeout(closeToast, 3000);
8549
+ }
8550
+ });
8551
+ };
8552
+ if (existingVendor !== null && existingVendor !== void 0 && existingVendor.id) {
8553
+ const existingVendorVehicles = Array.isArray(existingVendor === null || existingVendor === void 0 ? void 0 : existingVendor.vehicles) ? existingVendor.vehicles.map(vehicle => (vehicle === null || vehicle === void 0 ? void 0 : vehicle.id) === (currentVehicle === null || currentVehicle === void 0 ? void 0 : currentVehicle.id) ? {
8554
+ ...vehicle,
8555
+ vendorVehicleStatus: "INACTIVE"
8556
+ } : vehicle) : [];
8557
+ mutateVendor(getVendorPayloadForVehicle(existingVendor, existingVendorVehicles), {
8558
+ onError: error => {
8559
+ setShowToast({
8560
+ key: "error",
8561
+ action: error
8562
+ });
8563
+ setTimeout(closeToast, 5000);
8564
+ },
8565
+ onSuccess: addVehicleToSelectedVendor
8566
+ });
8567
+ return;
8568
+ }
8569
+ addVehicleToSelectedVendor();
8570
+ };
8437
8571
  const onDriverSelect = (row, selectedOption) => {
8438
8572
  const formData = getVehicleUpdatePayload(row.original, {
8439
8573
  driverData: selectedOption
@@ -8447,6 +8581,10 @@ const VendorInbox = props => {
8447
8581
  setTimeout(closeToast, 5000);
8448
8582
  },
8449
8583
  onSuccess: (data, variables) => {
8584
+ var _row$original2;
8585
+ updateVehicleRowState((_row$original2 = row.original) === null || _row$original2 === void 0 ? void 0 : _row$original2.id, {
8586
+ driverData: selectedOption
8587
+ });
8450
8588
  setShowToast({
8451
8589
  key: "success",
8452
8590
  action: "VEHICLE"
@@ -8473,16 +8611,20 @@ const VendorInbox = props => {
8473
8611
  setTimeout(closeToast, 5000);
8474
8612
  },
8475
8613
  onSuccess: () => {
8476
- setTableData(currentTableData => currentTableData.map(vehicle => {
8477
- var _row$original2;
8478
- return (vehicle === null || vehicle === void 0 ? void 0 : vehicle.id) === ((_row$original2 = row.original) === null || _row$original2 === void 0 ? void 0 : _row$original2.id) ? {
8479
- ...vehicle,
8480
- fillingPoint: {
8481
- ...selectedOption,
8482
- fillingStationId: (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.fillingStationId) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.id) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.bookingId) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.uuid) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.fillingPointId)
8483
- }
8484
- } : vehicle;
8485
- }));
8614
+ var _row$original3;
8615
+ const mappedVendor = getSelectedVendorOption(row.original, vendors);
8616
+ const vendorDrivers = getVendorDriversForFillingPoint(mappedVendor, selectedOption);
8617
+ const selectedDriver = getSelectedDriverOption(row.original, vendorDrivers);
8618
+ updateVehicleRowState((_row$original3 = row.original) === null || _row$original3 === void 0 ? void 0 : _row$original3.id, {
8619
+ fillingPoint: {
8620
+ ...selectedOption,
8621
+ fillingStationId: (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.fillingStationId) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.id) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.bookingId) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.uuid) || (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.fillingPointId)
8622
+ },
8623
+ ...(selectedDriver ? {} : {
8624
+ driverData: null,
8625
+ driver: null
8626
+ })
8627
+ });
8486
8628
  setShowToast({
8487
8629
  key: "success",
8488
8630
  label: "Filling point mapped successfully"
@@ -8589,13 +8731,14 @@ const VendorInbox = props => {
8589
8731
  Cell: ({
8590
8732
  row
8591
8733
  }) => {
8592
- var _row$original3, _row$original3$auditD, _row$original4, _row$original4$auditD;
8593
- return GetCell((_row$original3 = row.original) !== null && _row$original3 !== void 0 && (_row$original3$auditD = _row$original3.auditDetails) !== null && _row$original3$auditD !== void 0 && _row$original3$auditD.createdTime ? Digit.DateUtils.ConvertEpochToDate((_row$original4 = row.original) === null || _row$original4 === void 0 ? void 0 : (_row$original4$auditD = _row$original4.auditDetails) === null || _row$original4$auditD === void 0 ? void 0 : _row$original4$auditD.createdTime) : "");
8734
+ var _row$original4, _row$original4$auditD, _row$original5, _row$original5$auditD;
8735
+ return GetCell((_row$original4 = row.original) !== null && _row$original4 !== void 0 && (_row$original4$auditD = _row$original4.auditDetails) !== null && _row$original4$auditD !== void 0 && _row$original4$auditD.createdTime ? Digit.DateUtils.ConvertEpochToDate((_row$original5 = row.original) === null || _row$original5 === void 0 ? void 0 : (_row$original5$auditD = _row$original5.auditDetails) === null || _row$original5$auditD === void 0 ? void 0 : _row$original5$auditD.createdTime) : "");
8594
8736
  }
8595
8737
  }, {
8596
8738
  Header: t("WT_FILLING_POINT"),
8597
8739
  accessor: row => getFillingPointDisplayValue(row),
8598
8740
  id: "fillingPoint",
8741
+ minWidth: 250,
8599
8742
  Cell: ({
8600
8743
  row
8601
8744
  }) => {
@@ -8605,7 +8748,9 @@ const VendorInbox = props => {
8605
8748
  option: allFillingPoints,
8606
8749
  select: value => onFillingPointSelect(row, value),
8607
8750
  style: {
8608
- textAlign: "left"
8751
+ textAlign: "left",
8752
+ width: "100%",
8753
+ minWidth: "250px"
8609
8754
  },
8610
8755
  optionKey: "fillingPointName",
8611
8756
  t: t
@@ -8652,13 +8797,13 @@ const VendorInbox = props => {
8652
8797
  Cell: ({
8653
8798
  row
8654
8799
  }) => {
8655
- var _row$original5, _row$original5$dsoDet;
8800
+ var _row$original6, _row$original6$dsoDet;
8656
8801
  return /*#__PURE__*/React.createElement(ToggleSwitch, {
8657
8802
  style: {
8658
8803
  display: "flex",
8659
8804
  justifyContent: "left"
8660
8805
  },
8661
- value: ((_row$original5 = row.original) === null || _row$original5 === void 0 ? void 0 : (_row$original5$dsoDet = _row$original5.dsoDetails) === null || _row$original5$dsoDet === void 0 ? void 0 : _row$original5$dsoDet.status) === "DISABLED" ? false : true,
8806
+ value: ((_row$original6 = row.original) === null || _row$original6 === void 0 ? void 0 : (_row$original6$dsoDet = _row$original6.dsoDetails) === null || _row$original6$dsoDet === void 0 ? void 0 : _row$original6$dsoDet.status) === "DISABLED" ? false : true,
8662
8807
  onChange: () => onVendorUpdate(row),
8663
8808
  name: `switch-${row.id}`
8664
8809
  });
@@ -8669,8 +8814,8 @@ const VendorInbox = props => {
8669
8814
  Cell: ({
8670
8815
  row
8671
8816
  }) => {
8672
- var _row$original6, _additionalVendorData;
8673
- const vendorId = (_row$original6 = row.original) === null || _row$original6 === void 0 ? void 0 : _row$original6.id;
8817
+ var _row$original7, _additionalVendorData;
8818
+ const vendorId = (_row$original7 = row.original) === null || _row$original7 === void 0 ? void 0 : _row$original7.id;
8674
8819
  if (!additionalVendorData) {
8675
8820
  return /*#__PURE__*/React.createElement("span", null, "Loading...");
8676
8821
  }
@@ -8708,21 +8853,30 @@ const VendorInbox = props => {
8708
8853
  Cell: ({
8709
8854
  row
8710
8855
  }) => {
8711
- var _row$original7, _row$original7$auditD, _row$original8, _row$original8$auditD;
8712
- return GetCell((_row$original7 = row.original) !== null && _row$original7 !== void 0 && (_row$original7$auditD = _row$original7.auditDetails) !== null && _row$original7$auditD !== void 0 && _row$original7$auditD.createdTime ? Digit.DateUtils.ConvertEpochToDate((_row$original8 = row.original) === null || _row$original8 === void 0 ? void 0 : (_row$original8$auditD = _row$original8.auditDetails) === null || _row$original8$auditD === void 0 ? void 0 : _row$original8$auditD.createdTime) : "");
8856
+ var _row$original8, _row$original8$auditD, _row$original9, _row$original9$auditD;
8857
+ return GetCell((_row$original8 = row.original) !== null && _row$original8 !== void 0 && (_row$original8$auditD = _row$original8.auditDetails) !== null && _row$original8$auditD !== void 0 && _row$original8$auditD.createdTime ? Digit.DateUtils.ConvertEpochToDate((_row$original9 = row.original) === null || _row$original9 === void 0 ? void 0 : (_row$original9$auditD = _row$original9.auditDetails) === null || _row$original9$auditD === void 0 ? void 0 : _row$original9$auditD.createdTime) : "");
8713
8858
  }
8714
8859
  }, {
8715
- Header: t("ES_FSM_REGISTRY_INBOX_VENDOR_NAME"),
8716
- id: "vendorName",
8860
+ Header: "Map Vendor",
8861
+ id: "mapVendor",
8717
8862
  accessor: row => {
8718
- var _row$vendor;
8719
- return ((_row$vendor = row.vendor) === null || _row$vendor === void 0 ? void 0 : _row$vendor.name) || "NA";
8863
+ var _row$vendor2, _row$vendorData2;
8864
+ return ((_row$vendor2 = row.vendor) === null || _row$vendor2 === void 0 ? void 0 : _row$vendor2.name) || ((_row$vendorData2 = row.vendorData) === null || _row$vendorData2 === void 0 ? void 0 : _row$vendorData2.name) || "NA";
8720
8865
  },
8721
8866
  Cell: ({
8722
8867
  row
8723
8868
  }) => {
8724
- var _row$original9, _row$original9$vendor;
8725
- return GetCell(((_row$original9 = row.original) === null || _row$original9 === void 0 ? void 0 : (_row$original9$vendor = _row$original9.vendor) === null || _row$original9$vendor === void 0 ? void 0 : _row$original9$vendor.name) || "NA");
8869
+ return /*#__PURE__*/React.createElement(Dropdown$2, {
8870
+ className: "fsm-registry-dropdown",
8871
+ selected: getSelectedVendorOption(row.original, vendors),
8872
+ option: vendors,
8873
+ select: value => onVehicleVendorSelect(row, value),
8874
+ style: {
8875
+ textAlign: "left"
8876
+ },
8877
+ optionKey: "name",
8878
+ t: t
8879
+ });
8726
8880
  }
8727
8881
  }, {
8728
8882
  Header: t("ES_VENDOR_INBOX_SERVICE_TYPE"),
@@ -8759,44 +8913,54 @@ const VendorInbox = props => {
8759
8913
  Header: t("WT_FILLING_POINT"),
8760
8914
  accessor: row => getFillingPointDisplayValue(row),
8761
8915
  id: "fillingPoint",
8916
+ minWidth: 250,
8762
8917
  Cell: ({
8763
8918
  row
8764
8919
  }) => {
8920
+ const selectedVendor = getSelectedVendorOption(row.original, vendors);
8921
+ const vendorFillingPoints = getVendorFillingPoints(selectedVendor);
8765
8922
  return /*#__PURE__*/React.createElement(Dropdown$2, {
8766
8923
  className: "fsm-registry-dropdown",
8767
- selected: getSelectedFillingPointOption(row.original, allFillingPoints),
8768
- option: allFillingPoints,
8924
+ selected: getSelectedFillingPointOption(row.original, vendorFillingPoints),
8925
+ option: vendorFillingPoints,
8769
8926
  select: value => onVehicleFillingPointSelect(row, value),
8770
8927
  style: {
8771
- textAlign: "left"
8928
+ textAlign: "left",
8929
+ width: "100%",
8930
+ minWidth: "250px"
8772
8931
  },
8773
8932
  optionKey: "fillingPointName",
8774
- t: t
8933
+ t: t,
8934
+ disable: !selectedVendor || !vendorFillingPoints.length
8775
8935
  });
8776
8936
  }
8777
8937
  }, {
8778
8938
  Header: t("ES_FSM_REGISTRY_SELECT_DRIVER"),
8779
8939
  id: "driver",
8780
8940
  accessor: row => {
8781
- var _row$driverData, _row$driver;
8782
- return ((_row$driverData = row.driverData) === null || _row$driverData === void 0 ? void 0 : _row$driverData.name) || ((_row$driver = row.driver) === null || _row$driver === void 0 ? void 0 : _row$driver.name) || "NA";
8941
+ var _row$driverData2, _row$driver2;
8942
+ return ((_row$driverData2 = row.driverData) === null || _row$driverData2 === void 0 ? void 0 : _row$driverData2.name) || ((_row$driver2 = row.driver) === null || _row$driver2 === void 0 ? void 0 : _row$driver2.name) || "NA";
8783
8943
  },
8944
+ minWidth: 250,
8784
8945
  Cell: ({
8785
8946
  row
8786
8947
  }) => {
8948
+ const selectedVendor = getSelectedVendorOption(row.original, vendors);
8949
+ const selectedFillingPoint = getSelectedFillingPointOption(row.original, getVendorFillingPoints(selectedVendor));
8950
+ const availableDrivers = getVendorDriversForFillingPoint(selectedVendor, selectedFillingPoint);
8787
8951
  return /*#__PURE__*/React.createElement(Dropdown$2, {
8788
8952
  className: "fsm-registry-dropdown",
8789
- selected: (drivers === null || drivers === void 0 ? void 0 : drivers.find(driver => {
8790
- var _row$original$driverD, _row$original$driver;
8791
- return (((_row$original$driverD = row.original.driverData) === null || _row$original$driverD === void 0 ? void 0 : _row$original$driverD.id) || ((_row$original$driver = row.original.driver) === null || _row$original$driver === void 0 ? void 0 : _row$original$driver.id)) === driver.id;
8792
- })) || row.original.driverData || row.original.driver,
8793
- option: drivers,
8953
+ selected: getSelectedDriverOption(row.original, availableDrivers),
8954
+ option: availableDrivers,
8794
8955
  select: value => onDriverSelect(row, value),
8795
8956
  optionKey: "name",
8796
8957
  t: t,
8797
8958
  style: {
8798
- textAlign: "left"
8799
- }
8959
+ textAlign: "left",
8960
+ width: "100%",
8961
+ minWidth: "250px"
8962
+ },
8963
+ disable: !selectedFillingPoint || !availableDrivers.length
8800
8964
  });
8801
8965
  }
8802
8966
  }, {
@@ -8861,9 +9025,10 @@ const VendorInbox = props => {
8861
9025
  Header: t("ES_FSM_REGISTRY_INBOX_VENDOR_NAME"),
8862
9026
  id: "vendorName",
8863
9027
  accessor: row => {
8864
- var _row$vendorData, _row$vendor2;
8865
- return ((_row$vendorData = row.vendorData) === null || _row$vendorData === void 0 ? void 0 : _row$vendorData.name) || ((_row$vendor2 = row.vendor) === null || _row$vendor2 === void 0 ? void 0 : _row$vendor2.name) || "NA";
9028
+ var _row$vendorData3, _row$vendor3;
9029
+ return ((_row$vendorData3 = row.vendorData) === null || _row$vendorData3 === void 0 ? void 0 : _row$vendorData3.name) || ((_row$vendor3 = row.vendor) === null || _row$vendor3 === void 0 ? void 0 : _row$vendor3.name) || "NA";
8866
9030
  },
9031
+ minWidth: 250,
8867
9032
  Cell: ({
8868
9033
  row
8869
9034
  }) => {
@@ -8876,7 +9041,9 @@ const VendorInbox = props => {
8876
9041
  option: vendors,
8877
9042
  select: value => onVendorSelect(row, value),
8878
9043
  style: {
8879
- textAlign: "left"
9044
+ textAlign: "left",
9045
+ width: "100%",
9046
+ minWidth: "250px"
8880
9047
  },
8881
9048
  optionKey: "name",
8882
9049
  t: t
@@ -8947,10 +9114,10 @@ const VendorInbox = props => {
8947
9114
  return row !== null && row !== void 0 && (_row$auditDetails3 = row.auditDetails) !== null && _row$auditDetails3 !== void 0 && _row$auditDetails3.createdTime ? Digit.DateUtils.ConvertEpochToDate(row === null || row === void 0 ? void 0 : (_row$auditDetails4 = row.auditDetails) === null || _row$auditDetails4 === void 0 ? void 0 : _row$auditDetails4.createdTime) : "";
8948
9115
  }
8949
9116
  }, {
8950
- Header: t("ES_FSM_REGISTRY_INBOX_VENDOR_NAME"),
9117
+ Header: "Map Vendor",
8951
9118
  exportAccessor: row => {
8952
- var _row$vendor3;
8953
- return (row === null || row === void 0 ? void 0 : (_row$vendor3 = row.vendor) === null || _row$vendor3 === void 0 ? void 0 : _row$vendor3.name) || "NA";
9119
+ var _row$vendor4, _row$vendorData4;
9120
+ return (row === null || row === void 0 ? void 0 : (_row$vendor4 = row.vendor) === null || _row$vendor4 === void 0 ? void 0 : _row$vendor4.name) || (row === null || row === void 0 ? void 0 : (_row$vendorData4 = row.vendorData) === null || _row$vendorData4 === void 0 ? void 0 : _row$vendorData4.name) || "NA";
8954
9121
  }
8955
9122
  }, {
8956
9123
  Header: t("ES_VENDOR_INBOX_SERVICE_TYPE"),
@@ -8964,8 +9131,8 @@ const VendorInbox = props => {
8964
9131
  }, {
8965
9132
  Header: t("ES_FSM_REGISTRY_SELECT_DRIVER"),
8966
9133
  exportAccessor: row => {
8967
- var _row$driverData2, _row$driver2;
8968
- return (row === null || row === void 0 ? void 0 : (_row$driverData2 = row.driverData) === null || _row$driverData2 === void 0 ? void 0 : _row$driverData2.name) || (row === null || row === void 0 ? void 0 : (_row$driver2 = row.driver) === null || _row$driver2 === void 0 ? void 0 : _row$driver2.name) || "NA";
9134
+ var _row$driverData3, _row$driver3;
9135
+ return (row === null || row === void 0 ? void 0 : (_row$driverData3 = row.driverData) === null || _row$driverData3 === void 0 ? void 0 : _row$driverData3.name) || (row === null || row === void 0 ? void 0 : (_row$driver3 = row.driver) === null || _row$driver3 === void 0 ? void 0 : _row$driver3.name) || "NA";
8969
9136
  }
8970
9137
  }, {
8971
9138
  Header: t("ES_FSM_REGISTRY_INBOX_ENABLED"),
@@ -8990,8 +9157,8 @@ const VendorInbox = props => {
8990
9157
  }, {
8991
9158
  Header: t("ES_FSM_REGISTRY_INBOX_VENDOR_NAME"),
8992
9159
  exportAccessor: row => {
8993
- var _row$vendorData2, _row$vendor4;
8994
- return (row === null || row === void 0 ? void 0 : (_row$vendorData2 = row.vendorData) === null || _row$vendorData2 === void 0 ? void 0 : _row$vendorData2.name) || (row === null || row === void 0 ? void 0 : (_row$vendor4 = row.vendor) === null || _row$vendor4 === void 0 ? void 0 : _row$vendor4.name) || "NA";
9160
+ var _row$vendorData5, _row$vendor5;
9161
+ return (row === null || row === void 0 ? void 0 : (_row$vendorData5 = row.vendorData) === null || _row$vendorData5 === void 0 ? void 0 : _row$vendorData5.name) || (row === null || row === void 0 ? void 0 : (_row$vendor5 = row.vendor) === null || _row$vendor5 === void 0 ? void 0 : _row$vendor5.name) || "NA";
8995
9162
  }
8996
9163
  }, {
8997
9164
  Header: t("ES_FSM_REGISTRY_INBOX_ENABLED"),