[WEB-5537]refactor: rename IssueUserProperty to ProjectUserProperty and update related references (#8206)

* refactor: rename IssueUserProperty to ProjectUserProperty and update related references across the codebase

* migrate: move issue user properties to project user properties and update related fields and constraints

* refactor: rename IssueUserPropertySerializer and IssueUserDisplayPropertyEndpoint to ProjectUserPropertySerializer and ProjectUserDisplayPropertyEndpoint, updating all related references

* fix: enhance ProjectUserDisplayPropertyEndpoint to handle missing properties by creating new entries and improve response handling

* fix: correct formatting in migration for ProjectUserProperty model options

* migrate: add migration to update existing non-service API tokens to remove workspace association

* migrate: refine migration to update existing non-service API tokens by excluding bot users from workspace removal

* chore: changed the project sort order in project user property

* chore: remove allowed_rate_limit from APIToken

* chore: updated user-properties endpoint for frontend

* chore: removed the extra projectuserproperty

* chore: updated the migration file

* chore: code refactor

* fix: type error

---------

Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
Co-authored-by: sangeethailango <sangeethailango21@gmail.com>
Co-authored-by: vamsikrishnamathala <matalav55@gmail.com>
Co-authored-by: Anmol Singh Bhatia <anmolsinghbhatia@plane.so>
This commit is contained in:
Nikhil 2026-01-06 15:37:19 +05:30 committed by GitHub
parent 3d5e427894
commit ea1f92e0c6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
27 changed files with 304 additions and 256 deletions

View file

@ -74,12 +74,6 @@ export interface IProjectLite {
logo_props: TLogoProps;
}
export type ProjectPreferences = {
pages: {
block_display: boolean;
};
};
export interface IProjectMap {
[id: string]: IProject;
}

View file

@ -1,3 +1,4 @@
import type { IProjectMemberNavigationPreferences } from "./project";
import type { TIssue } from "./issues/issue";
import type { LOGICAL_OPERATOR, TSupportedOperators } from "./rich-filters";
import type { CompleteOrEmpty } from "./utils";
@ -194,6 +195,16 @@ export interface IIssueFiltersResponse {
display_properties: IIssueDisplayProperties;
}
export interface IProjectUserPropertiesResponse extends IIssueFiltersResponse {
sort_order: number;
preferences: {
pages: {
block_display: boolean;
};
navigation: IProjectMemberNavigationPreferences;
};
}
export interface IWorkspaceUserPropertiesResponse extends IIssueFiltersResponse {
navigation_project_limit?: number;
navigation_control_preference?: "ACCORDION" | "TABBED";