PromucFlow_constructor/app/client/src/actions/userActions.ts
Hetu Nandu 723ad29d7a
chore: Cleanup Redux Actions file (#35720)
## Description

Cleans out and reorganises the Redux Actions Constants file

Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10489649733>
> Commit: 9fa7003f7c2d1b43a6c693cb1d34ba5cc2c11832
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10489649733&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 21 Aug 2024 13:45:56 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced new interfaces for enhanced structured data handling
related to page management and property pane visibility.
- Added functionality to control widget panel visibility with a new
action.

- **Bug Fixes**
- Improved flexibility in closing property panes by adding an optional
parameter to the related function.

- **Refactor**
- Streamlined import statements for various types to improve
organization and maintainability.
- Removed unused functions and action handlers to simplify user and data
source management.
	- Updated action type constants for consistency across the application.
- Removed sagas related to URL redirection and history management,
simplifying navigation handling.

- **Chores**
- Cleaned up unused imports to reduce code clutter and improve
readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-22 09:49:30 +05:30

144 lines
3.9 KiB
TypeScript

import {
ReduxActionErrorTypes,
ReduxActionTypes,
} from "ee/constants/ReduxActionConstants";
import type { UpdateUserRequest, VerifyTokenRequest } from "ee/api/UserApi";
import type { FeatureFlags } from "ee/entities/FeatureFlag";
import type {
ProductAlert,
ProductAlertConfig,
ProductAlertState,
} from "reducers/uiReducers/usersReducer";
import type { ApiResponse } from "api/ApiResponses";
export const logoutUser = (payload?: { redirectURL: string }) => ({
type: ReduxActionTypes.LOGOUT_USER_INIT,
payload,
});
export const logoutUserSuccess = (isEmptyInstance: boolean) => ({
type: ReduxActionTypes.LOGOUT_USER_SUCCESS,
payload: isEmptyInstance,
});
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const logoutUserError = (error: any) => ({
type: ReduxActionErrorTypes.LOGOUT_USER_ERROR,
payload: {
error,
},
});
export const verifyInviteSuccess = () => ({
type: ReduxActionTypes.VERIFY_INVITE_SUCCESS,
});
export const verifyInvite = (payload: VerifyTokenRequest) => ({
type: ReduxActionTypes.VERIFY_INVITE_INIT,
payload,
});
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const verifyInviteError = (error: any) => ({
type: ReduxActionErrorTypes.VERIFY_INVITE_ERROR,
payload: { error },
});
export const invitedUserSignupSuccess = () => ({
type: ReduxActionTypes.INVITED_USER_SIGNUP_SUCCESS,
});
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const invitedUserSignupError = (error: any) => ({
type: ReduxActionErrorTypes.INVITED_USER_SIGNUP_ERROR,
payload: {
error,
},
});
export const updateUserDetails = (payload: UpdateUserRequest) => ({
type: ReduxActionTypes.UPDATE_USER_DETAILS_INIT,
payload,
});
export const updateIntercomConsent = () => ({
type: ReduxActionTypes.UPDATE_USER_INTERCOM_CONSENT,
});
export const updatePhoto = (payload: {
file: File;
callback?: (id: string) => void;
}) => ({
type: ReduxActionTypes.UPLOAD_PROFILE_PHOTO,
payload,
});
export const removePhoto = (callback: (id: string) => void) => ({
type: ReduxActionTypes.REMOVE_PROFILE_PHOTO,
payload: { callback },
});
export const updatePhotoId = (payload: { photoId: string }) => ({
type: ReduxActionTypes.UPDATE_PHOTO_ID,
payload,
});
export const leaveWorkspace = (workspaceId: string) => {
return {
type: ReduxActionTypes.LEAVE_WORKSPACE_INIT,
payload: {
workspaceId,
},
};
};
export const fetchFeatureFlagsInit = (
featureFlags?: ApiResponse<FeatureFlags>,
) => ({
type: ReduxActionTypes.FETCH_FEATURE_FLAGS_INIT,
payload: {
featureFlags,
},
});
export const fetchFeatureFlagsSuccess = (payload: FeatureFlags) => ({
type: ReduxActionTypes.FETCH_FEATURE_FLAGS_SUCCESS,
payload,
});
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const fetchFeatureFlagsError = (error: any) => ({
type: ReduxActionErrorTypes.FETCH_FEATURE_FLAGS_ERROR,
payload: { error, show: false },
});
export const fetchProductAlertInit = (
productAlert?: ApiResponse<ProductAlert>,
) => ({
type: ReduxActionTypes.FETCH_PRODUCT_ALERT_INIT,
payload: {
productAlert,
},
});
export const fetchProductAlertSuccess = (productAlert: ProductAlertState) => ({
type: ReduxActionTypes.FETCH_PRODUCT_ALERT_SUCCESS,
payload: productAlert,
});
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const fetchProductAlertFailure = (error: any) => ({
type: ReduxActionErrorTypes.FETCH_PRODUCT_ALERT_FAILED,
payload: { error, show: false },
});
export const updateProductAlertConfig = (config: ProductAlertConfig) => ({
type: ReduxActionTypes.UPDATE_PRODUCT_ALERT_CONFIG,
payload: config,
});