Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fetch microplan related changes #1898

Merged
merged 3 commits into from
Nov 26, 2024
Merged

Fetch microplan related changes #1898

merged 3 commits into from
Nov 26, 2024

Conversation

jagankumar-egov
Copy link
Collaborator

@jagankumar-egov jagankumar-egov commented Nov 26, 2024

Choose the appropriate template for your PR:

Summary by CodeRabbit

  • New Features
    • Introduced a new React hook, useFetchFromMicroplan, for efficient campaign data management.
    • Enhanced the DummyLoaderScreen with improved error handling and loading state management.
  • Bug Fixes
    • Simplified URL construction in the CampaignCard component by removing unnecessary parameters.
  • Documentation
    • Updated header text in the DummyLoaderScreen for better context clarity.

@jagankumar-egov jagankumar-egov requested a review from a team as a code owner November 26, 2024 13:33
Copy link
Contributor

coderabbitai bot commented Nov 26, 2024

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (1)
  • health/micro-ui/web/micro-ui-internals/example/package.json is excluded by !**/*.json

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

📝 Walkthrough
📝 Walkthrough

Walkthrough

The changes in this pull request introduce significant updates to the DummyLoaderScreen component in fetchFromMicroplan.js, including new state management for toast notifications and fetching progress. A new hook, useFetchFromMicroplan, is added to manage campaign data interactions, while the OldCampaignCard.js file sees a simplification of a URL link. These modifications enhance error handling, loading state management, and user interface clarity without altering exported entities.

Changes

File Change Summary
health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js Refactored DummyLoaderScreen with new state management and effect hooks for toast notifications and fetching progress. Simplified rendering and updated header text.
health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/index.js Added import for useFetchFromMicroplan to the campaign object.
health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/useFetchFromMicroplan.js Introduced new hook with functions for fetching and creating campaigns, including error handling and state management with useQuery.
health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/OldCampaignCard.js Modified CampaignCard link by removing userId parameter from the URL, simplifying the link structure.

Possibly related PRs

Suggested reviewers

  • nipunarora-eGov

Poem

🐇 In the meadow where data flows,
Fetching campaigns, as progress grows.
Toasts for errors, a link made light,
In the world of microplans, all feels right!
Hopping through code, with joy we cheer,
For every change, a new frontier! 🌼


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@jagankumar-egov jagankumar-egov changed the title Fetch mp Fetch microplan related changes Nov 26, 2024
@jagankumar-egov jagankumar-egov merged commit 7c65754 into console Nov 26, 2024
3 checks passed
@jagankumar-egov jagankumar-egov deleted the fetch-mp branch November 26, 2024 13:35
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 8

🧹 Outside diff range comments (4)
health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/OldCampaignCard.js (3)

Line range hint 13-13: Plan migration timeline for deprecated component.

The comment indicates this component should be deleted after migration. Consider:

  1. Creating a tracking issue for the migration
  2. Documenting the replacement component
  3. Setting a timeline for the migration

Would you like me to create a GitHub issue to track this migration task?


Line range hint 20-20: Remove unused userId variable.

The userId variable is retrieved but no longer used after the URL parameter removal.

-  const userId = Digit.UserService.getUser().info.uuid;

Line range hint 28-29: Clean up commented code.

Remove commented-out count properties to improve code readability. If these counts are needed in the future, they should be tracked in a separate issue.

    {
      label: t("ACTION_TEST_MY_CAMPAIGN"),
      link: `/workbench-ui/employee/campaign/my-campaign`,
-      roles: ROLES.CAMPAIGN_MANAGER,
-      // count: isLoading?"-":data
+      roles: ROLES.CAMPAIGN_MANAGER
    },

Also applies to: 44-45, 50-51

health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js (1)

Line range hint 81-95: Clean up render logic with minor improvements.

A few suggestions to improve the render logic:

- <>
+ <Fragment>
  <Header styles={{ fontSize: "32px" }}>{t("MY_FETCH_FROM_MICROPLAN_HEADING")}</Header>
  <div className="sandbox-loader-screen" style={{ height: "100%" }}>
-   {showToast?.key != "error" && id?.key?.length > 0 && <div className="sandbox-loader"></div>}
+   {showToast?.key !== "error" && id?.key?.length > 0 && <div className="sandbox-loader" />}
    <ul className="sandbox-installation-steps">
      {steps.map((step, index) => (
        <li key={index} className={`sandbox-step ${index < currentStep ? "sandbox-visible" : ""}`}>
          <span className="sandbox-step-text">{t(step)}</span>
          {index < currentStep && <CheckCircle fill="#00703C" />}
        </li>
      ))}
    </ul>
  </div>
  {showToast && <Toast type={showToast?.key} label={t(showToast?.label)} onClose={closeToast} />}
- </>
+ </Fragment>
🧰 Tools
🪛 Biome (1.9.4)

[error] 84-84: JSX elements without children should be marked as self-closing. In JSX, it is valid for any element to be self-closing.

Unsafe fix: Use a SelfClosingElement instead

(lint/style/useSelfClosingElements)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: ASSERTIVE

📥 Commits

Reviewing files that changed from the base of the PR and between 82f25b2 and 1287780.

⛔ Files ignored due to path filters (5)
  • health/micro-ui/web/micro-ui-internals/example/package.json is excluded by !**/*.json
  • health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/package.json is excluded by !**/*.json
  • health/micro-ui/web/microplan/package.json is excluded by !**/*.json
  • health/micro-ui/web/package.json is excluded by !**/*.json
  • health/micro-ui/web/workbench/package.json is excluded by !**/*.json
📒 Files selected for processing (4)
  • health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js (4 hunks)
  • health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/index.js (2 hunks)
  • health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/useFetchFromMicroplan.js (1 hunks)
  • health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/OldCampaignCard.js (1 hunks)
🧰 Additional context used
📓 Path-based instructions (4)
health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js (1)

Pattern **/*.js: check

health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/index.js (1)

Pattern **/*.js: check

health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/useFetchFromMicroplan.js (1)

Pattern **/*.js: check

health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/OldCampaignCard.js (1)

Pattern **/*.js: check

🪛 Biome (1.9.4)
health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js

[error] 84-84: JSX elements without children should be marked as self-closing. In JSX, it is valid for any element to be self-closing.

Unsafe fix: Use a SelfClosingElement instead

(lint/style/useSelfClosingElements)

🔇 Additional comments (6)
health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/index.js (2)

20-20: LGTM! Import statement follows the established pattern.

The import statement is consistent with the file's existing import style and organization.


46-47: LGTM! Hook addition maintains consistency.

The new hook is properly integrated into the campaign object, maintaining alphabetical ordering.

Let's verify the imported hook exists:

✅ Verification successful

Hook implementation verified and properly exported

The useFetchFromMicroplan hook is correctly implemented with:

  • Proper React Query integration using useQuery
  • Well-documented functions with JSDoc comments
  • Comprehensive error handling
  • Proper data fetching and transformation logic
  • Correct default export
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the existence of useFetchFromMicroplan hook file
# Expected: Find the hook implementation file

fd --type f "useFetchFromMicroplan.js" --exec echo "Hook file found: {}"

# Verify the hook implementation
ast-grep --pattern 'export default function useFetchFromMicroplan() {
  $$$
}'

Length of output: 280


Script:

#!/bin/bash
# Let's verify the actual implementation of the hook
cat ./health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/useFetchFromMicroplan.js

Length of output: 4713

health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/OldCampaignCard.js (1)

37-37: Verify the impact of removing userId from the URL.

The removal of userId from the URL might affect the target page's functionality if it relies on this parameter.

✅ Verification successful

Let me gather more information about the target component to verify if userId is needed.


Let me check the ApprovedMicroplans component implementation specifically.


Based on the findings, I can now generate the final response:

Removing userId from the URL is safe, status parameter is correctly handled

The removal of userId from the URL is safe as the target page only uses the status parameter for filtering microplans. The status parameter is properly handled in the search criteria configuration (UICustomizations.js) and the userId was an unused parameter.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if the target route or any handlers expect userId parameter
# Search for route definitions or handlers that might expect userId
rg -A 5 "setup-from-microplan" 

# Search for any references to userId in URL handling
ast-grep --pattern 'const $_ = $$$?.params?.userId'

Length of output: 2604


Script:

#!/bin/bash
# Check the ApprovedMicroplans component implementation for any userId dependencies
ast-grep --pattern 'function ApprovedMicroplans() {
  $$$
}'

# Search for any URL parameter usage in the component
rg -A 5 "useParams|location.search" health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/

Length of output: 45660


Script:

#!/bin/bash
# Search for the ApprovedMicroplans component content
rg -A 10 "function ApprovedMicroplans" health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/

# Check if status parameter is used in the component
rg -A 5 "status.*=.*searchParams.get" health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/

Length of output: 1299

health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js (2)

Line range hint 1-18: LGTM! Clean initialization and proper imports.

The component setup follows React best practices with proper imports and clean state initialization.


Line range hint 1-95: Verify error handling for all edge cases.

Please ensure that the component handles these scenarios gracefully:

  1. Network timeouts during data fetching
  2. Invalid campaign IDs
  3. Missing permissions
  4. Server errors
✅ Verification successful

Let me analyze the error handling in the fetchFromMicroplan.js component based on the search results.

The component has comprehensive error handling that covers all the requested scenarios:

  1. Network timeouts/Server errors:
  • Uses error state from the hook: const { isLoading, data, error } = Digit.Hooks.campaign.useFetchFromMicroplan()
  • Shows error toast with generic message: setShowToast({ key: "error", label: t("SOME_ERROR_OCCURED_IN_FETCH") })
  • Redirects to employee homepage after error: history.push(/${window?.contextPath}/employee/)
  1. Invalid campaign IDs:
  • Handles through URL params validation: const id = searchParams.get("id")
  • Shows loader only for valid IDs: {showToast?.key != "error" && id?.key?.length > 0 && <div className="sandbox-loader"></div>}
  1. Missing permissions/Failed data fetch:
  • Handles through error state from hook
  • Shows error toast and redirects user
  • Uses cleanup with timeout: return () => clearTimeout(navigateTimeout)
  1. Progress indication:
  • Shows step-by-step progress through steps array
  • Uses CheckCircle indicators for completed steps
  • Has loading states with proper cleanup

The error handling implementation is robust and covers all edge cases appropriately.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for error handling patterns in related campaign files
rg -A 3 "catch|error|throw|try" --type js

Length of output: 105116

🧰 Tools
🪛 Biome (1.9.4)

[error] 84-84: JSX elements without children should be marked as self-closing. In JSX, it is valid for any element to be self-closing.

Unsafe fix: Use a SelfClosingElement instead

(lint/style/useSelfClosingElements)

health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/useFetchFromMicroplan.js (1)

112-117: Verify if creating a new campaign is intended when campaign data exists.

In fetchConsolidatedData, a new campaign is created even when existing campaign data is found. This could lead to duplicate campaigns based on existing data. Is it intended to always create a new campaign in this scenario?

Please confirm whether creating a new campaign when one already exists is the desired behavior.

Comment on lines +19 to +20
const { isLoading, data, error } = Digit.Hooks.campaign.useFetchFromMicroplan(tenantId, id, planConfigurationId);
console.log(data);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick (assertive)

Remove console.log statement.

Console statements should be removed from production code as they can expose sensitive information and impact performance.

  const { isLoading, data, error } = Digit.Hooks.campaign.useFetchFromMicroplan(tenantId, id, planConfigurationId);
- console.log(data);
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
const { isLoading, data, error } = Digit.Hooks.campaign.useFetchFromMicroplan(tenantId, id, planConfigurationId);
console.log(data);
const { isLoading, data, error } = Digit.Hooks.campaign.useFetchFromMicroplan(tenantId, id, planConfigurationId);

Comment on lines +34 to +53
useEffect(() => {
if (showToast?.key == "error") {
const navigateTimeout = setTimeout(() => {
history.push(`/${window?.contextPath}/employee/`);
}, 3000);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
}
}, [showToast]);
useEffect(() => {
const navigateTimeout = setTimeout(() => {
setShowToast({ key: "info", label: t("PLS_WAIT_UNTIL_PAGE_REDIRECTS") });
}, 3000);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
}, []);

const { isLoading, data: resourceData, isFetching } = Digit.Hooks.useCustomAPIHook(reqCriteriaResource);
useEffect(() => {
if (showToast?.key != "error" && error) {
setShowToast({ key: "error", label: t("SOME_ERROR_OCCURED_IN_FETCH") });
}
}, [error]);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick (assertive)

Consider consolidating toast management logic.

The toast management logic is spread across multiple useEffect hooks. Consider consolidating them into a single effect or custom hook for better maintainability.

  useEffect(() => {
-   if (showToast?.key == "error") {
+   if (error) {
+     setShowToast({ key: "error", label: t("SOME_ERROR_OCCURED_IN_FETCH") });
      const navigateTimeout = setTimeout(() => {
        history.push(`/${window?.contextPath}/employee/`);
-     }, 3000);
+     }, 5000); // Increased timeout for better user experience
      return () => clearTimeout(navigateTimeout);
    }
-  }, [showToast]);
+  }, [error]);

- useEffect(() => {
-   const navigateTimeout = setTimeout(() => {
-     setShowToast({ key: "info", label: t("PLS_WAIT_UNTIL_PAGE_REDIRECTS") });
-   }, 3000);
-   return () => clearTimeout(navigateTimeout);
- }, []);

- useEffect(() => {
-   if (showToast?.key != "error" && error) {
-     setShowToast({ key: "error", label: t("SOME_ERROR_OCCURED_IN_FETCH") });
-   }
- }, [error]);
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
useEffect(() => {
if (showToast?.key == "error") {
const navigateTimeout = setTimeout(() => {
history.push(`/${window?.contextPath}/employee/`);
}, 3000);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
}
}, [showToast]);
useEffect(() => {
const navigateTimeout = setTimeout(() => {
setShowToast({ key: "info", label: t("PLS_WAIT_UNTIL_PAGE_REDIRECTS") });
}, 3000);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
}, []);
const { isLoading, data: resourceData, isFetching } = Digit.Hooks.useCustomAPIHook(reqCriteriaResource);
useEffect(() => {
if (showToast?.key != "error" && error) {
setShowToast({ key: "error", label: t("SOME_ERROR_OCCURED_IN_FETCH") });
}
}, [error]);
useEffect(() => {
if (error) {
setShowToast({ key: "error", label: t("SOME_ERROR_OCCURED_IN_FETCH") });
const navigateTimeout = setTimeout(() => {
history.push(`/${window?.contextPath}/employee/`);
}, 5000); // Increased timeout for better user experience
return () => clearTimeout(navigateTimeout);
}
}, [error]);

Comment on lines +55 to +75
// Handle progress through steps
useEffect(() => {
const stepInterval = setInterval(() => {
if (currentStep < steps.length) {
setCurrentStep((prev) => prev + 1);
}
}, 3000); // 1 second delay for each step
if ((data?.campaignData && currentStep < 2) || (data?.newCampaignId && currentStep < 4) || (data?.fetchedCampaign && currentStep < 15)) {
const interval = setInterval(() => {
if (currentStep < steps.length) {
setCurrentStep((prev) => prev + 1);
}
if (currentStep === steps.length) {
clearInterval(interval); // Clear the interval to stop further updates
const navigateTimeout = setTimeout(() => {
searchParams?.set("id", data?.newCampaignId);
history.push(`/${window?.contextPath}/employee/campaign/setup-campaign?${searchParams?.toString()}`);
}, 1500);

if (currentStep === steps.length) {
clearInterval(stepInterval); // Clear the interval to stop further updates
const navigateTimeout = setTimeout(() => {
history.push(`/${window?.contextPath}/employee/campaign/setup-campaign?${searchParams?.toString()}`);
}, 1500);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
}
}, 3000);

return () => clearTimeout(navigateTimeout); // Cleanup timeout
return () => clearInterval(interval);
}

return () => {
clearInterval(stepInterval);
};
}, [currentStep]);
}, [currentStep, data]);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Improve progress management logic to prevent potential memory leaks.

The current implementation has several concerns:

  1. Complex nested timeouts within intervals
  2. Interval continues running even after navigation
  3. Cleanup logic doesn't handle all edge cases

Consider refactoring to this simpler and safer approach:

  useEffect(() => {
+   let timeoutId;
+   let intervalId;
+
    if ((data?.campaignData && currentStep < 2) || (data?.newCampaignId && currentStep < 4) || (data?.fetchedCampaign && currentStep < 15)) {
-     const interval = setInterval(() => {
+     intervalId = setInterval(() => {
        if (currentStep < steps.length) {
          setCurrentStep((prev) => prev + 1);
        }
        if (currentStep === steps.length) {
-         clearInterval(interval);
-         const navigateTimeout = setTimeout(() => {
+         clearInterval(intervalId);
+         timeoutId = setTimeout(() => {
            searchParams?.set("id", data?.newCampaignId);
            history.push(`/${window?.contextPath}/employee/campaign/setup-campaign?${searchParams?.toString()}`);
          }, 1500);
-
-         return () => clearTimeout(navigateTimeout);
        }
      }, 3000);

-     return () => clearInterval(interval);
+     return () => {
+       clearInterval(intervalId);
+       clearTimeout(timeoutId);
+     };
    }
  }, [currentStep, data]);
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
// Handle progress through steps
useEffect(() => {
const stepInterval = setInterval(() => {
if (currentStep < steps.length) {
setCurrentStep((prev) => prev + 1);
}
}, 3000); // 1 second delay for each step
if ((data?.campaignData && currentStep < 2) || (data?.newCampaignId && currentStep < 4) || (data?.fetchedCampaign && currentStep < 15)) {
const interval = setInterval(() => {
if (currentStep < steps.length) {
setCurrentStep((prev) => prev + 1);
}
if (currentStep === steps.length) {
clearInterval(interval); // Clear the interval to stop further updates
const navigateTimeout = setTimeout(() => {
searchParams?.set("id", data?.newCampaignId);
history.push(`/${window?.contextPath}/employee/campaign/setup-campaign?${searchParams?.toString()}`);
}, 1500);
if (currentStep === steps.length) {
clearInterval(stepInterval); // Clear the interval to stop further updates
const navigateTimeout = setTimeout(() => {
history.push(`/${window?.contextPath}/employee/campaign/setup-campaign?${searchParams?.toString()}`);
}, 1500);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
}
}, 3000);
return () => clearTimeout(navigateTimeout); // Cleanup timeout
return () => clearInterval(interval);
}
return () => {
clearInterval(stepInterval);
};
}, [currentStep]);
}, [currentStep, data]);
// Handle progress through steps
useEffect(() => {
let timeoutId;
let intervalId;
if ((data?.campaignData && currentStep < 2) || (data?.newCampaignId && currentStep < 4) || (data?.fetchedCampaign && currentStep < 15)) {
intervalId = setInterval(() => {
if (currentStep < steps.length) {
setCurrentStep((prev) => prev + 1);
}
if (currentStep === steps.length) {
clearInterval(intervalId);
timeoutId = setTimeout(() => {
searchParams?.set("id", data?.newCampaignId);
history.push(`/${window?.contextPath}/employee/campaign/setup-campaign?${searchParams?.toString()}`);
}, 1500);
}
}, 3000);
return () => {
clearInterval(intervalId);
clearTimeout(timeoutId);
};
}
}, [currentStep, data]);

source: "",
planId: planConfigId,
},
campaignName: `AUTOGENERATED_${Date.now()}`,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick (assertive)

Improve 'campaignName' formatting for better readability.

Using Date.now() directly in campaignName appends a millisecond timestamp, which may not be human-readable. Consider formatting the date to improve readability.

Here's an example using toISOString():

  campaignName: 
-   `AUTOGENERATED_${Date.now()}`,
+   `AUTOGENERATED_${new Date().toISOString()}`,
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
campaignName: `AUTOGENERATED_${Date.now()}`,
campaignName: `AUTOGENERATED_${new Date().toISOString()}`,

Comment on lines +125 to +127
console.error("Error fetching consolidated data:", error);
return { error };
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Allow errors to propagate in 'fetchConsolidatedData' for proper handling by 'useQuery'.

In fetchConsolidatedData, errors are caught and an object containing the error is returned. This can prevent useQuery from properly detecting the error state. To enable useQuery to handle errors correctly (e.g., setting the error state), consider rethrowing the error instead of returning it.

Apply this diff to let errors propagate:

  } catch (error) {
    console.error("Error fetching consolidated data:", error);
-   return { error };
+   throw error;
  }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
console.error("Error fetching consolidated data:", error);
return { error };
}
console.error("Error fetching consolidated data:", error);
throw error;
}

Comment on lines +65 to +67
console.error("Error creating campaign:", error);
return error;
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Consider rethrowing errors instead of returning error objects in 'createCampaign'.

In the catch block of createCampaign, returning the error object can lead to inconsistent error handling. It's better to rethrow the error so that it can be properly caught and managed by the calling function or error boundary.

Apply this diff to rethrow the error:

  } catch (error) {
    console.error("Error creating campaign:", error);
-   return error;
+   throw error;
  }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
console.error("Error creating campaign:", error);
return error;
}
console.error("Error creating campaign:", error);
throw error;
}

Comment on lines +26 to +29
} catch (error) {
console.error("Error fetching CampaignDetails:", error);
return error;
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Consider rethrowing errors instead of returning error objects in 'fetchFromMicroplan'.

In the catch block of fetchFromMicroplan, the error is logged and then returned. To ensure consistent error handling and to allow upstream functions or components to handle errors correctly, consider rethrowing the error instead of returning it.

Apply this diff to rethrow the error:

  } catch (error) {
    console.error("Error fetching CampaignDetails:", error);
-   return error;
+   throw error;
  }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
} catch (error) {
console.error("Error fetching CampaignDetails:", error);
return error;
}
} catch (error) {
console.error("Error fetching CampaignDetails:", error);
throw error;
}

Comment on lines +44 to +45
startDate: Date.now() + 86400000, // 1 day later
endDate: Date.now() + 259200000, // 3 days later
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick (assertive)

Use date libraries for clearer date calculations.

Adding milliseconds to Date.now() for date calculations can be error-prone and less readable. Consider using date manipulation libraries like date-fns for clearer and more maintainable code.

Example using date-fns:

+ import { addDays } from 'date-fns';

  const campaignPayload = {
    ...campaignData,
-   startDate: Date.now() + 86400000, // 1 day later
-   endDate: Date.now() + 259200000, // 3 days later
+   startDate: addDays(new Date(), 1).getTime(), // 1 day later
+   endDate: addDays(new Date(), 3).getTime(), // 3 days later
    id: null,
    auditDetails: null,
    // ...
  };

Committable suggestion skipped: line range outside the PR's diff.

jagankumar-egov added a commit that referenced this pull request Dec 9, 2024
* fixed assumption audit fixes (#1758)

* fixed draft issue of Setup campaign (#1757)

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* Summary css fix (#1755)

* updated css for summary screen

* removed log

* added null check

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Breadcrumb for usermanagement (#1761)

* Breadcrumb changes

* console.log removed

* indentations

* Finalised microplan download (#1762)

* Feat : Added download button for finalised microplans

* Added Todo

* fixed HCMPRE-776 and removed updated old validation (#1763)

* fixed HCMPRE-776 and removed updated old validation

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/pages/employee/SetupCampaign.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/MapView.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update MyCampaign.js

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/CampaignDates.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update CampaignDates.js

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/pages/employee/SetupCampaign.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update SetupCampaign.js

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix key (#1764)

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* Fixed UiCustomisation Digit issue (#1766)

Checking UisCustomisation

* Fixed double selection of boundaries (#1765)

Update MultiSelectDropdown.js

* Fixed loader,breadcrumb,table cells css and added placeholder text fo… (#1769)

Fixed loader,breadcrumb,table cells css and added placeholder text for assumption fields

* fixed targetvalidation and added no results in boundary (#1768)

* Dynamic column pop inbox (#1770)

* Added dynamic column inside pop inbox

* updated status to action in status logs

* updated status log

* added comment logs for edit population

* updated css version

* updated code rabbit comment and css version

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Feature/bug (#1773)

* z-index and camapaign-name in preview

* ui-ux-demo-review

* version updates

* ver

* Update ViewHierarchy.js

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* Updated the search dropdown (#1776)

updated the search dropdown

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Info ToolTip added (#1775)

* Added info icon on formula and assumptions

* Incremented CSS version

* Vesrion update (#1778)

* updated react-components version to fix icon issues in inbox screen

* updated versions everywhere

* myMicroplanFixes (#1777)

* My microplan data fixes, localisation fixes

* setup response screen fixes, breadcrumb localisation code correctify

* search bar fix

* fixes

* ADD NEW LOCALE

* roletable fixes for mobile number search, qa issue fix

* FIXES

* quickfixes

* quick fixes/ Tagging UI UX fixes

* fix

* added locale

* census table assignee issue fixes

* role table pop up css fix and my microplan click fix

* fixes and stepper click enable for back

* added user tag fixes

* UserAccessfixes

* Custom Assumption - Custom Formula

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/FormulaConfiguration.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Updated date formate (#1779)

* updated date formate and css

* updated css

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Fix for cycle draft ::changes for the draft flow (#1780)

* Fixed assumption form multi save (#1781)

Update SetupMicroplan.js

* user tagging fixes (#1782)

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* Usermanagement row on click redirect (#1783)

* Changes to usermanagement redirext on row click

* changes to onRow click in userManagement

* console removed

* changes

* null check

* changes

* removing extra mdms call

* changing useState

* removed var

* changes

* changes

* Plan and Pop inbox changes (#1784)

* removed popup for facilitya and population upload

* updated plan inbox

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Feature/bugs (#1785)

* bug/boundary

* changed field name

* added something

* Update checklistSearchConfig.js

* Update ViewHierarchy.js

* fixes

* fixes1

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/pages/employee/ViewHierarchy.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fixed order in boundary details and changed hierarchy master (#1786)

* added the checks for the update campaign flow (#1788)

* Open Boundary Management ui Info pending changes  (#1789)

* pending changes

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/hooks/useBoundaryHome.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/pages/employee/GeoPode.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/pages/employee/GeoPode.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Reverted action in assign to all, updated the column heading with pro… (#1790)

* reverted action in assign to all, updated the column heading with projecttype

* removed logs

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Usermanagement css and boundaryScreen css (#1791)

Changes to userManagement, css for boundary

* Vehicle Change Assumptions & Formula (#1787)

* user tagging fixes

* Vehicle Assumptions and Vehicle Formula

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/Hypothesis.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* yarn

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* css fixes (#1792)

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* LCOALISATION FIXES (#1793)

* user tagging fixes

* Vehicle Assumptions and Vehicle Formula

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/Hypothesis.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* yarn

* locaisaton code fixes

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* some-ui-fixes (#1794)

* some-ui-fixes

* version updates

* fixed boundary selection dropdown issue (#1796)

* fixed boundary selection dropdown issue

* fixed search juridiction dropdown

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Allowed to update the name of microplan (#1795)

* Allowed to update the name of microplan

* changed hardcoded date to 30 from 100

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* demo issue fixes (#1797)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* ui fixes (#1798)

* Added retry of failed campaign

* stepper rvert back (#1799)

* ESTIMATION & FORMULA FIXES (#1804)

* user tagging fixes

* Vehicle Assumptions and Vehicle Formula

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/Hypothesis.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* yarn

* locaisaton code fixes

* estimationa and formula fixes

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* error toast and checklist updates (#1805)

error taost and cehcklist updates

* HCMPRE 1131 (#1807)

* user tagging fixes

* Vehicle Assumptions and Vehicle Formula

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/Hypothesis.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* yarn

* locaisaton code fixes

* estimationa and formula fixes

* my microplan fix

* fixes

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Updated sidebar for microplan (#1802)

* Updated sidebar for microplan

* Update index.scss

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>
Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* style change of toolTip (#1806)

* toast and minor ui (#1809)

* ui/ux fixes (#1810)

* Changes to AssummptionList and stepper disable in setupConfig (#1811)

* Changes to assumptions list

* setupCompleted changes

* Formula View, and Select Acitivity Screen CSS changes (#1803)

* select-activity-commit

* Hover over formulaConfigView

* margin adjust

* removed console

* css changes

* package update

* changes to css

* package css update

* Revert "Allowed to update the name of microplan (#1795)" (#1812)

This reverts commit e32aad6.

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* updated message for header and label and added validation for max length (#1813)

* Cleaned up boundary Management code and add some validations

* redirect and ui (#1814)

* Assumptionlist fix (#1815)

changes

* changes in the delivery type and selection of boundary (#1816)

* to be picked (#1819)

* to be picked

* checklist and other changes

* role table fixes, drop down fix, pop up fix, use tag fix (#1820)

* user tagging fixes

* Vehicle Assumptions and Vehicle Formula

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/Hypothesis.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* yarn

* locaisaton code fixes

* estimationa and formula fixes

* my microplan fix

* fixes

* pull fixes

* user tag changes

* fixes

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fetch data type from mdms (#1822)

* fixed app delivery condition (#1825)

* not selected added in single value list (#1824)

* not selected added in single value list

* isActive added

* one more fix

* Facility dropdown (#1817)

* Added single dropdown in facilityCatchment

* tenantId fix

* Hierarchies fix

* Microplan name update (#1821)

* updated start date for campaign

* added update microplan name changes

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Internal demo fixes (#1827)

* disabled the viewer card

* updated suggested microplan name formate

* updated assignee to assigner in timeline wrapper

* updated button side in my microplan screen

* updated sucurity and accessibility edit buttons

* commented tranportation mode from accessibility details

* added assignee next to village updated comment

* updated plan inbox

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* tenant logo css fix (#1828)

* Facility data fix (#1829)

FacilityData Fix

* Added boundary manager access to the home card

* Updated activity selection screen to have view also (#1830)

updated activity selection screen to have view also

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Added confirmation pop up to finalise actions (#1832)

added confimation pop up to finalize actions

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Popup for userAccess boundary area and toast message for assign unassign (#1831)

* Changed localization

* Loc

* Changes for popup in userAccess

* changes

* My MICROPLAN fixes, formula fixes (#1835)

* Hcmpre 1290 (#1834)

* fixed app delivery condition

* added my microplan screen

* changes in the url

* changes

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* Inbox (#1838)

* fixed app delivery condition

* fixed hover issue on search screen

* demo review changes in boudnary management (#1836)

* demo review changes in boudnary management

* different download template for hierarchy from geopode and completely new

* info cards added

* code clean

* Update searchSavedPlansWithCampaign.js (#1839)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Space (#1840)

* fixed app delivery condition

* added space

* fixed miner issues (#1837)

* fixed miner issues

* fixed pop inbox issue

* fixed status log issue

* Update PopInbox.js

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>
Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Update searchSavedPlansWithCampaign.js (#1841)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Gepspatial map view (#1842)

* added minor css changes and basic logic for geospatial view

* updated css version

* updated chooseactivity screen

* fixed syntax issue

* PO finding fixes (#1843)

* Fix campaign Type in draft (#1846)

* Plan Inbox patch fix (#1847)

* added workflow for toast message

* updated workflow button color

* added count for assign to me and all tabs

* added back button

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Go Back button and microplan name quotes fix (#1844)

* Updated the core and other component version for landing page card  override

* Po finding fixes2 (#1845)

* added tooltip for residing boundary

* registered hierarchy tooltip inside component

* added different workflow message and alert header

* updated button color for workflow actions

* added info icons in select activity card

* added back button

* fixed action for facility

* updated css version

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Summary user role tagging and Response Screen (#1852)

* Changes ro userAccessTableWrapper

* Response Screen

* comment removed

* minor updates (#1853)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* toast localistaion (#1855)

* updated core component & css version

* updating the module versions

* Reverting the libraries version update

* Updated all the core component version from 1.8.3 to 1.8.10

* PO fixes (#1857)

* reverted column freeze as it was causing issues (#1858)

reverted column fix as it was causing issues

* Added column in sorted way, added assignee, added total pop (#1859)

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* added serving facility (#1860)

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* updated code (#1861)

* Formcomposer action bar fixes (#1862)

* added serving facility

* form composer action bar fix

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* Updated few localisation messages

* added loader screen to ftech data from microplan integration screen

* Updated UI Customizations file

* Approved microplan integration

* Added toast & success for api response

* plan inbox assignee fix (#1863)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* formula and assumption refresh issue (#1864)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

* formula and assumption refresh issue

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* minor changes (#1866)

* Action bar fixes, session fixes (#1867)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

* formula and assumption refresh issue

* action bar hidden fixes, session fixes

* Update index.js

* Update index.js

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* Download Button  (#1865)

* Loc changes to popInbox

* Loc

* Changes

* UICust update

* css package update

* Changes

* changes

* Update UICustomizations.js

* Name of file

* For Download update

* UI cust changes

* added return in UI

* Changes

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* User Role being displayed in Pop, Plan and Fac (#1854)

* changes localizations

* Adding userName and their roles

* resolved conflict

* css package update

* UIcustomization dropdown changes

* pop-inbox changes

* package update

* loc added

* loc changes

* dropdown options changed

* UICust making same as in example

* UnassignPopup

* comments

* loc

* Loader added

* changes

* changes to roletablecomposer for unassign popup

* changes

* Facility Catchment

* reverted facility popup

* Changes

* KPI Card

* package update

* Facility data keys

* changes according to comments

* Changes

* rowOn click redirection

* Dummy Data removed

* removed import

* removed for residing boundary

* removed 5000

* package update for css

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* fixes (#1869)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

* formula and assumption refresh issue

* action bar hidden fixes, session fixes

* fixes

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/FormulaConfiguration.js

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* patch fix (#1868)

* route back to home on back

* fixed refresh issue for pop inbox

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* polling fix (#1870)

* polling fix

* Update TimelineComponent.js

* assumptions fixes (#1871)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Facility pop up fix (#1872)

* Localizations and Actions being cut (#1874)

* Changes

* Package update

* Disabled updating security and accessibility details after finalize  … (#1873)

Disabled updating security and accessibility details after finalize  facility catchment

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Update PopInbox.js (#1875)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* scroll (#1876)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Update FacilityPopup.js (#1877)

* qquickfix (#1878)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

* formula and assumption refresh issue

* action bar hidden fixes, session fixes

* fixes

* fix

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* Updated the microplan integration piece

* adhoc changes (#1879)

* some fixes

* Update PlanInbox.js

* added checklist redirection (#1880)

* added checklist redirection

* removed console

* Updated workbench module version

* Plan and Pop inbox fix (#1881)

* fixed pop inbox boundary getting empty issue

* fixed back button issue

* updated search juridiction component

* fixed facility pop up boundary refresh

* removed pending for approval from status filter

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* updated table and other fixes (#1882)

* updated table and other fixes

* fixed table issue

* Latest KPI values and Heading change (#1883)

* Popup changed to alert type

* UserName to name

* userName to name

* changes to heading font wieght

* css package
update

* Removed i icon

* changes

* removed comments

* removed comments

* changes

* isLoading removed

* updated css

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Added count of villages and facilities in confirmation messages (#1885)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Update UserUpload.js (#1886)

* fixed localization issue (#1888)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Removed  Core HRMS and updated the timeout of fetch from microplan

* changed residing-boundary to multiselect dropdown, fixed table scroll… (#1889)

* changed residing-boundary to multiselect dropdown, fixed table scroll styles, made boundary selection popup dropdown searcheable

* fixed dropdown alignment

* fixed validation in boundary create and timeline button in the summary (#1890)

* fixed validation in boundary create and timeline button in the summary

* changed localisation condition

* Added missing the translation

* Added list of assignee for pop and plan inbox (#1887)

* added list of assignee for pop and plan inbox

* updated comments

* updated assignee for plan inbox

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Re render assumption fix, atleast one mdms check, blank custom name check, (#1884)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

* formula and assumption refresh issue

* action bar hidden fixes, session fixes

* fixes

* fix

* action bar fix, formula next back issue

* assumption and formula one mdms check and refetch blank label check

* remove status log column

* fix

* adhoc fix

* fix

* fix

* del session

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* fixed validation cond for app (#1891)

* fixed filestore call issue (#1895)

* toast fix, user tagging table dropdown fix and added comment toast (#1896)

* FIXES (#1893)

* added serving facility

* form composer action bar fix

* plan inbox assignee fix

* formula and assumption refresh issue

* action bar hidden fixes, session fixes

* fixes

* fix

* action bar fix, formula next back issue

* assumption and formula one mdms check and refetch blank label check

* remove status log column

* fix

* adhoc fix

* fix

* fix

* del session

* FIXES
1. After clicking on nextin vehicle after addinginvalid valu3 it redirects me to 1st assumption page
2. yes no buttton ki jagah same rakho na dono pop up me in formula and assumption pop up
3. User can add same duplicate text assumption and same value comess. similary for same dropdowns can be selected multiple times(in vehicle). Applies for formula and assumption
4. cache issue in pop of add new in assumption and formula. Entered value is not reset if they close and reopen the popup. Applies for formula and assumption
5. need different loc code for description for vehicle assumption and vehicle estimation

* revert

* a

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* ui fixes. (#1897)

* ui fixes.

* review changes

* review changes1

* Fetch microplan related changes (#1898)

* mychange

* added changes for fetch from microplan screen

* updated packege

* added back button, redirected checklist success and fixed null issue … (#1894)

added back button, redirected checklist success and fixed null issue for app

* fixed finalized button issue (#1899)

* added fixes for the campaign update and fetch from mp

* added timeout cleaned up & fetch will start after the data template download

* Employee search fix (#1892)

* button change

* Changes

* Formula name validation

* Changes

* console log removed

* changes

* changes

* changes

* Original formula config

* Formula config change for toast

* Update FormulaConfiguration.js

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Bug fix (#1900)

* fixed decimal issue and total not getting validated issue

* fixed user tagging multiselect dropdown issue

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Added few extra waiting steps for templates

* KPI card fix, and css change (#1903)

* Heading added

* changes to query, for kpi card

* css change

* css package update

* update to inbox codes (#1904)

updates

* Added dynamic columns in facility screen (#1902)

* Added dynamic columns in facility screen

* changed the filter condition

* Update FacilityPopup.js

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>
Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* validations done for assumptions and formula (#1906)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* localisation and error codes (#1905)

* Added fixes for timeout and redirection for fetch microplan (#1901)

* Added fixes for timeout and redirection for fetch microplan

* Update useFetchFromMicroplan.js

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Added fixes for the template generation

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/fetchFromMicroplan.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* updated

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* wait and retry message (#1909)

* Updated toast wran to warning message toast type

* checking popup issue in facility screen (#1910)

Co-authored-by: Swathi-eGov <swathi.chatrathi@egovernments.org>

* Adhoc fixes 91 (#1912)

* updates to validation

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/components/FormulaConfiguration.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* updated regex

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Pop inbox Pagination fix (#1907)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Facility Pagination Fix (#1908)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Feature/er (#1914)

* wait and retry message

* type of structure changed for irs

* fixed plan inbox issues (#1915)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Table changes (#1913)

* a lot of changes

* small change

* changes

* loc

* removed

* added fixes for sort, view summary issue, no results in dropdown (#1916)

added fixes

* fixed facility catchment pop up issue (#1917)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Fixed Audit issues (#1918)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* removed alphanumeric valiadtion (#1922)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* updated the loader screen loader styles as per ux audit

* Kpis integrate (#1919)

* Kpis integration

* Some style changes

* Some validations

* Remove console

* Removed merged changes

* Data null handled

* Data null handled

* Assumption Toast Validation and Irs removed 1 (#1921)

* changes

* changes

* changes

* Fixed accessibility dropdown issue (#1923)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Added extra steps and styles updated

* Added toast and changes primary, seccondary in Assumption,Formula (#1924)

* changes

* changes

* changes

* changes

* Changed hierarchy schema for microplan (#1925)

* Changed hierarchy schema for microplan

* Update UserUpload.js

* removed duplicate campaignId

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Fixed small issues (#1927)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Audit fixes main (#1926)

* audit fixes

* fixed campaign details css issue

* Update health/micro-ui/web/micro-ui-internals/packages/css/src/components/microplanning.scss

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* updated core, react-components,ui-components and releated css versions

* added icon for download and changed primary to secondary for action button

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* width fix for module card (#1929)

* Formula Checking Fix (#1930)

* small changes

* changes

* changes

* Edit Size button changed (#1931)

changes

* Update HypothesisWrapper.js (#1932)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Feature/fixes (#1928)

* microplan hover and campign fixes with checklist minor improvements

* bottom margin below add levels

* review changes

* Updates to formula (#1933)

* Update HypothesisWrapper.js

* Update FormulaConfigWrapper.js

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* fixed pop issue (#1934)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* css fix on card comp (#1935)

* Updated the campaign Card for the roles mapping

* Fixed screen breaking issue (#1936)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* validation update (#1937)

Update HypothesisWrapper.js

* Fixed assignee count for pop and plan inbox (#1938)

* Fixed assignee count for pop and plan inbox

* fixed back button issue in plan inbox

* removed logs

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Changes in facility kpis (#1939)

* Changes in facility kpis

* Some changes

* fixed product chip and summary issue (#1941)

fixed productchip and summary issue

* Mdms kpi (#1942)

* Kpis from mdms

* Some optimizations

* Update health/micro-ui/web/micro-ui-internals/packages/modules/microplan/src/hooks/useKpiDssSearch.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Dropdown popup fixes (#1943)

* removed custom loader, updated dropdown styles inside popup,fixed action drodpown css

* updated css version

* Added inline validations (#1944)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Added refetch (#1945)

* Assumption formula fixes (#1946)

* added a toast on back button

* updated formula source to CUSTOM when any custom assumption is used in

---------

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Update createUpdatePlanProject.js (#1948)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Fixed back button and edit population error message logic (#1949)

* fixed back button and edit population error message logic

* updated back button in facility screen

* added show on ui conditions on fields

* added translation function

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* localizations for user management and user tag (#1950)

* Loc in userManagement

* Changes to user tag loc

* added status filters (#1952)

* additional validations on assumptions + showing formulas in plan inbox based on show on estimation dashboard (#1953)

additional validations

* Updated Bread crumbs (#1954)

* fixed back button and edit population error message logic

* Updated breadcrumbs

* removed unused import

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* sort issue fix, title for buttons, actionbar fix (#1955)

* Patch fix (#1956)

* added list of roles for assigner

* added null check

---------

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Popup fix (#1958)

* fixed popup scroll issue

* updated versions

* Changes for kpis (#1960)

* Fixed toast issue + fixed invalidation of assumption and formula (#1963)

Co-authored-by: Nipun Arora <aroranipun1@gmail.com>

* Updated the loader text, updated the icon information, change log updated

* fixed error message issue (#1964)

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* Adhoc fixes 13: Fixed formula custom cascading changes + validations  (#1966)

* updated toast error in formulas

* Update createUpdatePlanProject.js

* updated mdms paths (#1968)

* Update searchDssChartV2.js (#1969)

* fixed resources,delivery screen issue and added campaign name (#1965)

* fixed resources,delivery screen issue and added campaign name

* added classname

* Update health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/BoundarySummary.js

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* removed logs

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* bug bash bug of download popup openinng again and again (#1961)

* bug bash bug of download popup openinng again and again

* review changes

* Update UploadData.js

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* changes from count to quantity (#1970)

* changes from count to quantity

* removed logs

* Feature/time (#1971)

* timeline fix for microplan

* ui

* Update campaign.scss

---------

Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* added campaign name in update (#1973)

* Updated loc codes (#1976)

Update Module.js

* Revert module changes for localisation (#1977)

Revert "Updated loc codes (#1976)"

This reverts commit cf596aa.

* Added fix for the buil issue for trying out the optional deepndency #1974 (#1978)

Added fix for the buil issue for trying out the optional deepndency

* Some handlings (#1980)

* Updated hrms path (#1979)

updated hrms path

Co-authored-by: rachana-egov <rachana.singh@egovernment.org>

* removed commented code

* fixed usermanagement toast issue (#1982)

* removed commented code

* Added core ui build to check performance

* Fixed error issue (#1983)

* updated the package version of campaign manager modules

* adding utils and remove hardcoding module name (#1984)

* adding utils and remove hardcoding module name

* Update UICustomizations.js

* Update index.js

---------

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: Jagankumar <53823168+jagankumar-egov@users.noreply.github.com>

* added title for all buttons (#1985)

* updated package versions

* filtering fixes (#1986)

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* Updated the config for the core app

* updated directory

* Feature/hcmpre1418 (#1988)

rounding off to nearest integer in attributes

* formatted

* Update health/micro-ui/web/core/install-deps.sh

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update health/micro-ui/web/core/install-deps.sh

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* updated changeQueryName for planfacilityserach as residingBoundaries … (#1989)

* updated changeQueryName for planfacilityserach as residingBoundaries is changed to multiselect dropdown

* fixed length change issue

* fixed page responsiveness issue for formula configuration screen (#1990)

* clearing console (#1991)

Co-authored-by: NabeelAyubee <nayubi7@gmail.com>

* fixed rerendering of summary screen in update dates (#1992)

---------

Co-authored-by: Swathi-eGov <137176788+Swathi-eGov@users.noreply.github.com>
Co-authored-by: Bhavya-egov <137176879+Bhavya-egov@users.noreply.github.com>
Co-authored-by: rachana-egov <137176770+rachana-egov@users.noreply.github.com>
Co-authored-by: rachana-egov <rachana.singh@egovernment.org>
Co-authored-by: abishekTa-egov <abishek.t@egovernments.org>
Co-authored-by: ashish-egov <137176738+ashish-egov@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: nabeelmd-eGov <nabeel.md@egovernments.org>
Co-authored-by: NabeelAyubee <nayubi7@gmail.com>
Co-authored-by: suryansh-egov <suryansh.singh@egovernments.org>
Co-authored-by: Nipun Arora <aroranipun1@gmail.com>
Co-authored-by: Swathi-eGov <swathi.chatrathi@egovernments.org>
Co-authored-by: Shashwat Mishra <71879793+shashwat-egov@users.noreply.github.com>
Co-authored-by: Anuraj <154124191+anuraj-egov@users.noreply.github.com>
Co-authored-by: Bhavya-egov <bhavya.mangal@egovernments.org>
@nabeelmd-eGov nabeelmd-eGov mentioned this pull request Dec 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant