Skip to content

Conversation

Palanikannan1437
Copy link
Member

@Palanikannan1437 Palanikannan1437 commented Jul 10, 2025

Description

Adds tracking of creation of project pages

Summary by CodeRabbit

  • New Features
    • Added event tracking for page creation, capturing both successful and failed attempts.

Copy link
Contributor

coderabbitai bot commented Jul 10, 2025

Walkthrough

Event tracking has been integrated into the page creation workflow within the handleCreatePage function. Tracking calls are now made to log both successful and failed page creation attempts, utilizing newly imported constants and helper functions. No changes have been made to the component's public interface.

Changes

File(s) Change Summary
apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx Added event tracking calls (captureSuccess, captureError) to the page creation flow; updated imports for tracking utilities.

Suggested labels

ready to merge

Suggested reviewers

  • sriramveeraghanta

Poem

A page is born, the tracker cheers,
Success or error, the event appears.
With every click, a story told,
In logs and charts, the data's gold.
The rabbit hops, its task complete—
Eventful trails beneath its feet!

✨ Finishing Touches
  • 📝 Generate Docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ 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.
    • Explain this complex logic.
    • 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 explain this code block.
    • @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 explain its main purpose.
    • @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.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

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 generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this 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.

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: 0

🧹 Nitpick comments (1)
apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx (1)

57-69: Consider including error details in the tracking payload.

The error tracking implementation is functionally correct, but could be enhanced by including error details for better debugging and analytics.

Consider this enhancement to capture more context:

       .catch((err) => {
         captureError({
           eventName: PROJECT_PAGE_TRACKER_EVENTS.create,
           payload: {
             state: "ERROR",
+            error: err?.data?.error || err?.message || "Unknown error",
           },
         });

This would provide more actionable insights when analyzing failed page creation attempts.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fcb6e26 and 52b4dd7.

📒 Files selected for processing (1)
  • apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx (2 hunks)
🧰 Additional context used
🧠 Learnings (1)
apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx (2)
Learnt from: vamsikrishnamathala
PR: makeplane/plane#7061
File: web/core/components/workspace-notifications/root.tsx:18-18
Timestamp: 2025-05-14T13:16:23.323Z
Learning: In the Plane project codebase, the path alias `@/plane-web` resolves to the `ce` directory, making imports like `@/plane-web/hooks/use-notification-preview` correctly resolve to files in `web/ce/hooks/`.
Learnt from: prateekshourya29
PR: makeplane/plane#7188
File: web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/header.tsx:40-45
Timestamp: 2025-06-18T09:46:08.566Z
Learning: When reviewing breadcrumb components that accept projectId or similar props, check if empty strings are being passed during loading states, which can result in invalid URLs. The preferred approach is to handle these loading states internally within the component rather than requiring each consumer to manage the loading logic.
🧬 Code Graph Analysis (1)
apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx (2)
packages/constants/src/event-tracker/core.ts (1)
  • PROJECT_PAGE_TRACKER_EVENTS (157-170)
packages/ui/src/toast/index.tsx (1)
  • setToast (63-190)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Analyze (javascript)
🔇 Additional comments (2)
apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx (2)

7-18: LGTM! Clean import organization.

The new imports are properly organized and follow the project's existing conventions. The tracking constants and helper functions are imported from the appropriate packages.


47-53: LGTM! Proper success event tracking.

The success tracking is implemented correctly with the appropriate event name and payload structure. The timing is optimal - tracking occurs after the API call succeeds but before navigation.

@Palanikannan1437 Palanikannan1437 changed the title fix: add project page creation capturing [WEB-4407] fix: add project page creation capturing Jul 10, 2025
@Palanikannan1437 Palanikannan1437 changed the title [WEB-4407] fix: add project page creation capturing [WEB-4407] chore: add project page creation capturing Jul 10, 2025
Copy link

makeplane bot commented Jul 10, 2025

Pull Request Linked with Plane Work Items

Comment Automatically Generated by Plane

@pushya22 pushya22 changed the title [WEB-4407] chore: add project page creation capturing [WEB-4407] chore: add project page creation event tracking Jul 10, 2025
@sriramveeraghanta sriramveeraghanta merged commit db2f783 into preview Jul 14, 2025
5 of 6 checks passed
@sriramveeraghanta sriramveeraghanta deleted the chore/page-events-capturing branch July 14, 2025 10:00
cuongpham259 added a commit to cuongpham259/plane that referenced this pull request Aug 2, 2025
* [WEB-4481] optimize workspace member view by prefetching related assets (makeplane#7390)

* [WEB-4484]chore: streamline issue saving process with advisory locks for sequence management makeplane#7395

* testing

* feat : added Kabul to the list of timezones (makeplane#7370)

* [WEB-4485] - fix(dev): get local dev migrator working again makeplane#7397

* [WEB-4484]chore: streamline issue saving process with advisory locks for sequence management (makeplane#7396)

* chore: streamline issue saving process with advisory locks for sequence management

* fix: update advisory lock usage in issue model for improved concurrency management

* fix: local dev environment setup using yarn v4 (makeplane#7400)

* chore: adding typescript dependency to constants.

* chore: package deps update

* [WEB-4482] fix: kanban drag and delete makeplane#7402

* [INFRA-208] Reorganize deployment structure and update build workflows (makeplane#7391)

* refactor: reorganize deployment structure and update build workflows

- Restructure deployment directories from deploy/ to deployments/
- Move selfhost files to deployments/cli/community/
- Add new AIO community deployment setup
- Update GitHub Actions workflows for new directory structure
- Add Caddy proxy configuration for CE deployment
- Remove deprecated AIO build files and workflows
- Update build context paths in install scripts

* chore: update Dockerfile and supervisor configuration

- Changed `apk add` command in Dockerfile to use `--no-cache` for better image size management.
- Updated `build.sh` to ensure proper directory navigation with quotes around `dirname "$0"`.
- Modified `supervisor.conf` to set `stderr_logfile_maxbytes` to 50MB and added `stderr_logfile_backups` for better log management across multiple services.

* chore: consistent node and python version

---------

Co-authored-by: sriramveeraghanta <[email protected]>

* [WEB-4407] chore: add project page creation event tracking makeplane#7378

* [WEB-4468] fix: setting sidebar truncate makeplane#7403

* [WEB-4494] fix: kanban delete modal ux makeplane#7405

* [WIKI-545] fix: shrinking headings in page table of contents makeplane#7404

* [INFRA-209] Remove nginx related configurations from plane community (makeplane#7406)

* Remove deprecated Nginx configuration files and scripts, including Dockerfiles, environment scripts, and configuration templates, to streamline the project structure.

* Update environment configuration and Docker setup for proxy services

- Added LISTEN_PORT and LISTEN_SSL_PORT variables to .env.example and related files.
- Updated Docker Compose files to reference new port variables instead of deprecated NGINX_PORT.
- Adjusted README and variable documentation to reflect changes in port configuration.
- Changed build context for proxy services to use the new directory structure.

* Refactor port configuration in environment and Docker files

- Renamed LISTEN_PORT and LISTEN_SSL_PORT to LISTEN_HTTP_PORT and LISTEN_HTTPS_PORT in .env.example and related files.
- Updated Docker Compose configurations to reflect the new port variable names.
- Adjusted documentation in README and variables.env to ensure consistency with the new naming conventions.

* [WIKI-509] feat: comment copy link option (makeplane#7385)

* feat: comment copy link option

* chore: add translations

* chore: update block position

* chore: rename use id scroll hook

* refactor: setTimeout function

* refactor: use-hash-scroll hook

* [WIKI-542] refactor: editor extensions (makeplane#7345)

* refactor: editor extensions

* fix: placeholder extension

* [WIKI-277] fix: unable to delete last table column/row in editor (makeplane#7389)

* fix: delete column not working

* refactor: delete column commad

* fix: delete last row logic

* refactor: row count logic

* refactor: isCellSelection utility function

* [WEB-4498] improvement: remove workspace details from workspace members list API (makeplane#7407)

* [WEB-4498] improvement: remove workspace details from workspace members list API

* refactor: update select_related usage in workspace invitation and member views

---------

Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>

* [WEB-4504] chore: added migration for app rail and reactions makeplane#7408

* [WIKI-520] fix: update content disposition handling in asset download endpoints (makeplane#7380)

* [WEB-4506] fix: date range modal z-index makeplane#7410

* [WIKI-549] fix: comment scroll logic makeplane#7412

* [WIKI-551] refactor: work item activity logic makeplane#7417

* [WEB-4451] chore: work item header quick action enhancements (makeplane#7414)

* chore: work item header quick action enhancements

* chore: code refactor

* [WEB-4497] chore: reduce breadcrumb height (makeplane#7413)

* chore: reduce breadcrumb height from 3.75rem to 3.25rem

* chore: code refactor

* chore: code refactor

* [WEB-4479] feat: enable/disable SMTP configuration (makeplane#7393)

* feat: api update instance configuration

* chore: add enable_smtp key

* fix: empty string for enable_smtp key

* chore: update email_port and email_from

* fix: handled smtp enable disable

* fix: error handling

* fix: refactor

* fix: removed enabled toast

* fix: refactor

---------

Co-authored-by: gakshita <[email protected]>
Co-authored-by: Akshita Goyal <[email protected]>

* [WEB-1643] chore: support cyrillic characters in subject makeplane#7336

* [WEB-4515] fix: duplicate work item quick action makeplane#7421

* [WIKI-554] feat: delete multiple rows/columns from a table (makeplane#7426)

* [WEB-4520] chore: changed the serializer for cycle issues makeplane#7423

* [WEB-4510] fix: peek view ui layout (makeplane#7422)

* [WEB-4514]chore: moved EIssueLayoutTypes enum to types makeplane#7416

* [WEB-4281] chore: error code on project updation endpoint (makeplane#7218)

* [WIKI-547] fix: update find suggestion logic for emoji extension (makeplane#7411)

* fix: update find suggestion logic

* refactor: remove logs

* refactor : make logic simpler

* feat: check for one char to show suggestion

* refactor : import types from extension

* refactor: add early return

* refactor : put custom suggestion in helper

* fix : char

* fix: types

* [WEB-4346] chore: refactor copy_s3_object bg task (makeplane#7298)

* [INFRA-213] Fix aio dockerfile with new file structure (makeplane#7427)

* fix: update paths in Dockerfile and supervisor.conf for application directories

* fix: update live command in supervisor.conf to use server.js

* [WIKI-557] fix: keyboard navigation in tables (makeplane#7428)

* [WIKI-543] fix: unable to delete last cell of a table (makeplane#7394)

* fix: delete last cell of a table

* refactor: last cell selection logic

* fix: on-headers vulnerability (makeplane#7436)

* [WEB-4528] fix: calendar options interactions (makeplane#7437)

* [WEB-4525] fix: project create/update error handling (makeplane#7429)

* chore: project create/update error handling

* chore: code refactor

* fix: update tsup build packages (makeplane#7438)

* [WEB-561] refactor: editor build config (makeplane#7442)

* refactor: editor build config

* fix: type errors

* [WEB-4442] fix: removed the deleted labels from webhook payload (makeplane#7337)

* chore: removed the deleted label from payload

* chore: optimised the query

* chore: optimised the logic

* chore: defined function for prefetch

* [WEB-4522]fix: removed redundant state indicator (makeplane#7434)

* fix: removed redundant state indicator

* fix: removed redundant state indicator for relation list item

* [WEB-4192]fix: inactive member is hidden in created by makeplane#7435

* [WEB-4507] fix: webhooks translation makeplane#7424

* [WEB-4457] refactor: decouple work item properties from mobx store (makeplane#7363)

* fix: build errors in work item modal (makeplane#7450)

* [WIKI-357] fix: created by filter for pages list makeplane#7445

* [WEB-4531]chore: refactor for timeline chart (makeplane#7440)

* [WIKI-484] chore: update editor packages (makeplane#7265)

* [WEB-4546] chore: header enhancements + quickstart guide ui update + breadcrumb makeplane#7451

* [WEB-4546] chore: home update makeplane#7456

* [WEB-4552] chore: minor design changes for home makeplane#7459

* chore: upgrade axios version to 1.11.0 (makeplane#7469)

* [WEB-4552] fix: stickies layout + minified layout filter (makeplane#7466)

* [WEB-4558] fix: project test cases makeplane#7464

* [WIKI-563] refactor: subscription styles  (makeplane#7444)

* refactor: billing UI

* refactor : fix typo

* docs: add file paths to the new language guide (makeplane#7454)

* improve the comprehensiblity of translation contribution docs

* Update CONTRIBUTING.md to fix the code blocks appeareance

* [WEB-4547]fix: archived work item redirection makeplane#7471

* [WEB-4561] fix: SVG attributes in react components (makeplane#7470)

* chore: svg attribute fix (makeplane#7446)

* fix: replace invalid --env-file with dotenv-cli for tsup onSuccess

* fix: replace invalid --env-file usage in start script and move dotenv-cli to dependencies

* chor: update SVG attributes to camelCase for JSX compatibility

* chor: update SVG attributes to camelCase

* fix: removed dontenv-cli

* fix: svg attibute fixes

* chore: minor attribute customizations

---------

Co-authored-by: Donal Noye <[email protected]>

* [WIKI-565] chore: handle 404 messages in live server (makeplane#7472)

* chore: handle 404 messages in live server

* chore: removed error stack from response

* [WEB-4536] fix: remove inactive workspace members from lists and dropdowns (makeplane#7473)

* fix: remove commands from the docker compose file (makeplane#7476)

* [WEB-4523]fix: sub issues loader makeplane#7474

* [WEB-4045] feat: restructuring of the external APIs for better maintainability (makeplane#7477)

* Basic setup for drf-spectacular

* Updated to only handle /api/v1 endpoints

* feat: add asset and user endpoints with URL routing

- Introduced new asset-related endpoints for user assets and server assets, allowing for asset uploads and management.
- Added user endpoint to retrieve current user information.
- Updated URL routing to include new asset and user patterns.
- Enhanced issue handling with a new search endpoint for issues across multiple fields.
- Expanded member management with a new endpoint for workspace members.

* Group endpoints by tags

* Detailed schema definitions and examples for asset endpoints

* Removed unnecessary extension

* Specify avatar_url field separately

* chore: add project docs

* chore: correct all errors

* chore: added open spec in work items

* feat: enhance cycle API endpoints with detailed OpenAPI specifications

- Updated CycleAPIEndpoint and CycleIssueAPIEndpoint to include detailed OpenAPI schema definitions for GET, POST, PATCH, and DELETE operations.
- Specified allowed HTTP methods for each endpoint in the URL routing.
- Improved documentation for cycle creation, updating, and deletion, including request and response examples.

* chore: added open spec in labels

* chore: work item properties

* feat: enhance API endpoints with OpenAPI specifications and HTTP method definitions

- Added detailed OpenAPI schema definitions for various API endpoints including Intake, Module, and State.
- Specified allowed HTTP methods for each endpoint in the URL routing for better clarity and documentation.
- Improved request and response examples for better understanding of API usage.
- Introduced unarchive functionality for cycles and modules with appropriate endpoint definitions.

* chore: run formatter

* Removed unnecessary settings for authentication

* Refactors OpenAPI documentation structure

Improves the organization and maintainability of the OpenAPI documentation by modularizing the `openapi_spec_helpers.py` file.

The changes include:
- Migrates common parameters, responses, examples, and authentication extensions to separate modules.
- Introduces helper decorators for different endpoint types.
- Updates view imports to use the new module paths.
- Removes the legacy `openapi_spec_helpers.py` file.

This refactoring results in a more structured and easier-to-maintain OpenAPI documentation setup.

* Refactor OpenAPI endpoint specifications

- Removed unnecessary parameters from the OpenAPI documentation for various endpoints in the asset, cycle, and project views.
- Updated request structures to improve clarity and consistency across the API documentation.
- Enhanced response formatting for better readability and maintainability.

* Enhance API documentation with detailed endpoint descriptions

Updated various API endpoints across the application to include comprehensive docstrings that clarify their functionality. Each endpoint now features a summary and detailed description, improving the overall understanding of their purpose and usage. This change enhances the OpenAPI specifications for better developer experience and documentation clarity.

* Enhance API serializers and views with new request structures

- Added new serializers for handling cycle and module issue requests, including `CycleIssueRequestSerializer`, `TransferCycleIssueRequestSerializer`, `ModuleIssueRequestSerializer`, and intake issue creation/updating serializers.
- Updated existing serializers to improve clarity and maintainability, including the `UserAssetUploadSerializer` and `IssueAttachmentUploadSerializer`.
- Refactored API views to utilize the new serializers, enhancing the request handling for cycle and intake issue endpoints.
- Improved OpenAPI documentation by replacing inline request definitions with serializer references for better consistency and readability.

* Refactor OpenAPI documentation and endpoint specifications

- Replaced inline schema definitions with dedicated decorators for various endpoint types, enhancing clarity and maintainability.
- Updated API views to utilize new decorators for user, cycle, intake, module, and project endpoints, improving consistency in OpenAPI documentation.
- Removed unnecessary parameters and responses from endpoint specifications, streamlining the documentation for better readability.
- Enhanced the organization of OpenAPI documentation by modularizing endpoint-specific decorators and parameters.

* chore: correct formatting

* chore: correct formatting for all api folder files

* refactor: clean up serializer imports and test setup

- Removed unused `StateLiteSerializer` import from the serializer module.
- Updated test setup to include a noqa comment for the `django_db_setup` fixture, ensuring clarity in the code.
- Added missing commas in user data dictionary for consistency.

* feat: add project creation and update serializers with validation

- Introduced `ProjectCreateSerializer` and `ProjectUpdateSerializer` to handle project creation and updates, respectively.
- Implemented validation to ensure project leads and default assignees are members of the workspace.
- Updated API views to utilize the new serializers for creating and updating projects, enhancing request handling.
- Added OpenAPI documentation references for the new serializers in the project API endpoints.

* feat: update serializers to include additional read-only fields

* refactor: rename intake issue serializers and enhance structure

- Renamed `CreateIntakeIssueRequestSerializer` to `IntakeIssueCreateSerializer` and `UpdateIntakeIssueRequestSerializer` to `IntakeIssueUpdateSerializer` for clarity.
- Introduced `IssueSerializer` for nested issue data in intake requests, improving the organization of serializer logic.
- Updated API views to utilize the new serializer names, ensuring consistency across the codebase.

* refactor: rename issue serializer for intake and enhance API documentation

- Renamed `IssueSerializer` to `IssueForIntakeSerializer` for better clarity in the context of intake issues.
- Updated references in `IntakeIssueCreateSerializer` and `IntakeIssueUpdateSerializer` to use the new `IssueForIntakeSerializer`.
- Added OpenAPI documentation for the `get_workspace_work_item` endpoint, detailing parameters and responses for improved clarity.

* chore: modules and cycles serializers

* feat: add new serializers for label and issue link management

- Introduced `LabelCreateUpdateSerializer`, `IssueLinkCreateSerializer`, `IssueLinkUpdateSerializer`, and `IssueCommentCreateSerializer` to enhance the handling of label and issue link data.
- Updated existing API views to utilize the new serializers for creating and updating labels, issue links, and comments, improving request handling and validation.
- Added `IssueSearchSerializer` for searching issues, streamlining the search functionality in the API.

* Don't consider read only fields as required

* Add setting to separate request and response definitions

* Fixed avatar_url warning on openapi spec generation

* Made spectacular disabled by default

* Moved spectacular settings into separate file and added detailed descriptions to tags

* Specify methods for asset urls

* Better server names

* Enhance API documentation with summaries for various endpoints

- Added summary descriptions for user asset, cycle, intake, issue, member, module, project, state, and user API endpoints to improve clarity and usability of the API documentation.
- Updated the OpenAPI specifications to reflect these changes, ensuring better understanding for developers interacting with the API.

* Add contact information to OpenAPI settings

- Included contact details for Plane in the OpenAPI settings to enhance API documentation and provide developers with a direct point of contact for support.
- This addition aims to improve the overall usability and accessibility of the API documentation.

* Reordered tags and improved description relavancy

* Enhance OpenAPI documentation for cycle and issue endpoints

- Added response definitions for the `get_cycle_issues` and `delete_cycle_issue` methods in the CycleIssueAPIEndpoint to clarify expected outcomes.
- Included additional response codes for the IssueSearchEndpoint to handle various error scenarios, improving the overall API documentation and usability.

* Enhance serializer documentation across multiple files

- Updated docstrings for various serializers including UserAssetUploadSerializer, AssetUpdateSerializer, and others to provide clearer descriptions of their functionality and usage.
- Improved consistency in formatting and language across serializer classes to enhance readability and maintainability.
- Added detailed explanations for new serializers related to project, module, and cycle management, ensuring comprehensive documentation for developers.

* Refactor API endpoints for cycles, intake, modules, projects, and states

- Replaced existing API endpoint classes with more descriptive names such as CycleListCreateAPIEndpoint, CycleDetailAPIEndpoint, IntakeIssueListCreateAPIEndpoint, and others to enhance clarity.
- Updated URL patterns to reflect the new endpoint names, ensuring consistency across the API.
- Improved documentation and method summaries for better understanding of endpoint functionalities.
- Enhanced query handling in the new endpoint classes to streamline data retrieval and improve performance.

* Refactor issue and label API endpoints for clarity and functionality

- Renamed existing API endpoint classes to more descriptive names such as IssueListCreateAPIEndpoint, IssueDetailAPIEndpoint, LabelListCreateAPIEndpoint, and LabelDetailAPIEndpoint to enhance clarity.
- Updated URL patterns to reflect the new endpoint names, ensuring consistency across the API.
- Improved method summaries and documentation for better understanding of endpoint functionalities.
- Streamlined query handling in the new endpoint classes to enhance data retrieval and performance.

* Refactor asset API endpoint methods and introduce new status enums

- Updated the GenericAssetEndpoint to only allow POST requests for asset creation, removing the GET method.
- Modified the get method to require asset_id, ensuring that asset retrieval is always tied to a specific asset.
- Added new IntakeIssueStatus and ModuleStatus enums to improve clarity and management of asset and module states.
- Enhanced OpenAPI settings to include these new enums for better documentation and usability.

* enforce naming convention

* Added LICENSE to openapi spec

* Enhance OpenAPI documentation for various API endpoints

- Updated API endpoints in asset, cycle, intake, issue, module, project, and state views to include OpenApiRequest and OpenApiExample for better request documentation.
- Added example requests for creating and updating resources, improving clarity for API consumers.
- Ensured consistent use of OpenApi utilities across all relevant endpoints to enhance overall API documentation quality.

* Enhance OpenAPI documentation for various API endpoints

- Added detailed descriptions to multiple API endpoints across asset, cycle, intake, issue, module, project, state, and user views to improve clarity for API consumers.
- Ensured consistent documentation practices by including descriptions that outline the purpose and functionality of each endpoint.
- This update aims to enhance the overall usability and understanding of the API documentation.

* Update OpenAPI examples and enhance project queryset logic

- Changed example fields in OpenAPI documentation for issue comments from "content" to "comment_html" to reflect the correct structure.
- Introduced a new `get_queryset` method in the ProjectDetailAPIEndpoint to filter projects based on user membership and workspace, while also annotating additional project-related data such as total members, cycles, and modules.
- Updated permission checks to use the correct attribute name for project identifiers, ensuring accurate permission handling.

* Enhance OpenAPI documentation and add response examples

- Updated multiple API endpoints across asset, cycle, intake, issue, module, project, state, and user views to include new OpenApiResponse examples for better clarity on expected outcomes.
- Introduced new parameters for project and issue identifiers to improve request handling and documentation consistency.
- Enhanced existing responses with detailed examples to aid API consumers in understanding the expected data structure and error handling.
- This update aims to improve the overall usability and clarity of the API documentation.

* refactor: update terminology from 'issues' to 'work items' across multiple API endpoints for consistency and clarity

* use common timezones from pytz for choices

* Moved the openapi utils to the new folder structure

* Added exception logging in GenericAssetEndpoint to improve error handling

* Fixed code rabbit suggestions

* Refactored IssueDetailAPIEndpoint to streamline issue retrieval and response handling, removing redundant external ID checks and custom ordering logic.

---------

Co-authored-by: pablohashescobar <[email protected]>
Co-authored-by: NarayanBavisetti <[email protected]>

* fix: lint  (makeplane#7433)

* chore: fix lint

* fix: constants check:lint command

* chore(lint): permit unused vars which begin w/ _

* chore: rm dead code

* fix(lint): more lint fixes to constants pkg

* fix(lint): lint the live server

- fix lint issues

* chore: improve clean script

* fix(lint): more lint

* chore: set live server process title

* chore(deps): update to [email protected]

* chore(live): target node22

* fix(dev): add missing ui pkg dependency

* fix(dev): lint decorators

* fix(dev): lint space app

* fix(dev): address lint issues in types pkg

* fix(dev): lint editor pkg

* chore(dev): moar lint

* fix(dev): live server exit code

* chore: address PR feedback

* fix(lint): better TPageExtended type

* chore: refactor

* chore: revert most live server changes

* fix: few more lint issues

* chore: enable ci checks

Ensure we can build + confirm that lint is not getting worse.

* chore: address PR feedback

* fix: web lint warning added to package.json

* fix: ci:lint command

---------

Co-authored-by: sriram veeraghanta <[email protected]>

* fix: eslint warnings and errors (makeplane#7479)

* chore: add ci job names (makeplane#7478)

* chore: add ci job names

This makes them easier to find in the Github UI.

* chore: increase ci timeout

* [WIKI-537] refactor: document editor (makeplane#7384)

* refactor: document editor

* chore: update user prop

* fix: type warning

* chore: update value prop name

* chore: remove unnecessary exports

* hore: update initialValue type

* chore: revert initialValue type

* refactor: unnecessary string handlers

* [WEB-4544] chore: added field validations in serializer (makeplane#7460)

* chore: added field validations in serializer

* chore: added enum for roles

* [WEB-4513] refactor: consolidate password strength meter into shared ui package (makeplane#7462)

* refactor: consolidate password strength indicator into shared UI package

* chore: remove old password strength meter implementations

* chore: update package dependencies for password strength refactor

* chore: code refactor

* fix: lock file

---------

Co-authored-by: sriramveeraghanta <[email protected]>

* [WEB-4566] feat: add background color and goals field to Profile and Workspace models makeplane#7485

* chore: correct migration file 0098  (makeplane#7486)

* feat: restore background color and goals fields in Profile and Workspace models in migration 0099

* chore: update migration dependency to reflect recent changes in profile model migrations

* chore: version upgrade

* [WEB-4533] feat: read replica functionality (makeplane#7453)

* feat: read replica functionality

* fix: set use_read_replica to false

* chore: add use_read_replica to external APIs

* chore: remove use_read_replica on read endpoints

* chore: remove md files

* Updated all the necessary endpoints to use read replica

---------

Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>

* [WEB-4563]fix: image full screen modal makeplane#7491

* [WIKI-539] refactor: remove lite text read only editor (makeplane#7481)

* refactor: remove lite text read only editor

* chore: update types

* [WIKI-539] regression: editor build errors makeplane#7503

* [WIKI-539] regression: toolbar visible in comments card makeplane#7508

* chore(deps): bump linkifyjs in the npm_and_yarn group across 1 directory (makeplane#7506)

Bumps the npm_and_yarn group with 1 update in the / directory: [linkifyjs](https://github.com/nfrasser/linkifyjs/tree/HEAD/packages/linkifyjs).


Updates `linkifyjs` from 4.3.1 to 4.3.2
- [Release notes](https://github.com/nfrasser/linkifyjs/releases)
- [Changelog](https://github.com/nfrasser/linkifyjs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nfrasser/linkifyjs/commits/v4.3.2/packages/linkifyjs)

---
updated-dependencies:
- dependency-name: linkifyjs
  dependency-version: 4.3.2
  dependency-type: direct:production
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [WIKI-570] fix: image alignment for read only editor makeplane#7509

* chore: added validation for description  (makeplane#7507)

* added PageBinaryUpdateSerializer for binary data validation and update

* chore: added validation for description

* chore: removed the duplicated file

* Fixed coderabbit comments

- Improve content validation by consolidating patterns and enhancing recursion checks

- Updated `PageBinaryUpdateSerializer` to simplify assignment of validated data.
- Enhanced `content_validator.py` with consolidated dangerous patterns and added recursion depth checks to prevent stack overflow during validation.
- Improved readability and maintainability of validation functions by using constants for patterns.

---------

Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>

* [WIKI-573] regression: comment card padding makeplane#7512

* fix(cli): improve API service readiness check in install script (makeplane#7468)

* fix: improve API service readiness check in install script

* fix(cli): correct python indentation in api health check

* fix(cli): prevent false positive api ready message on timeout

* [WEB-4544] chore: added field validations in serializer (makeplane#7460)

* chore: added field validations in serializer

* chore: added enum for roles

* [WEB-4603] feat: add missing event trackers (makeplane#7513)

* feat: add event trackers for password creation

* feat: add event trackers for project views

* feat: add event trackers for product updates and changelogs

* chore: use element name instead of event name for changelog redirect link

* [WEB-4599] feat: add marketing email consent field to Profile model and timezone migration makeplane#7510

* [WEB-4597] fix: project icon render in switcher makeplane#7504

* fix: header observer for state changes

* [WEB-4602] fix: 500 error on draft wi labels update makeplane#7515

* fix: adding proxy command

* fix: enable email notification by default for new users (makeplane#7521)

* Potential fix for code scanning alert no. 631: Incomplete URL scheme check (makeplane#7514)

* Potential fix for code scanning alert no. 631: Incomplete URL scheme check

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* fix: ignore warning in this file

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* [INFRA-219] fix: update Dockerfile and docker-compose for proxy service (makeplane#7523)

* fix: update Dockerfile and docker-compose for version v0.28.0 and improve curl commands in install script

* fix: update docker-compose to use 'stable' tag for all services

* fix: improve curl command options in install script for better reliability

* feat: update new logo on readme (makeplane#7530)

* feat: update new logo on readme

Changed logo on Readme

* fix: image url

---------

Co-authored-by: sriramveeraghanta <[email protected]>

* docs: update README.md (makeplane#7531)

changed tagline

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>
Co-authored-by: Nikhil <[email protected]>
Co-authored-by: Masoom Wahid <[email protected]>
Co-authored-by: Aaron Heckmann <[email protected]>
Co-authored-by: sriram veeraghanta <[email protected]>
Co-authored-by: Anmol Singh Bhatia <[email protected]>
Co-authored-by: Manish Gupta <[email protected]>
Co-authored-by: M. Palanikannan <[email protected]>
Co-authored-by: Aaryan Khandelwal <[email protected]>
Co-authored-by: Akshat Jain <[email protected]>
Co-authored-by: Prateek Shourya <[email protected]>
Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>
Co-authored-by: Bavisetti Narayan <[email protected]>
Co-authored-by: Sangeetha <[email protected]>
Co-authored-by: gakshita <[email protected]>
Co-authored-by: Akshita Goyal <[email protected]>
Co-authored-by: Vamsi Krishna <[email protected]>
Co-authored-by: Vipin Chaudhary <[email protected]>
Co-authored-by: merrime-n <[email protected]>
Co-authored-by: Donal Noye <[email protected]>
Co-authored-by: pablohashescobar <[email protected]>
Co-authored-by: NarayanBavisetti <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rishi <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Vihar Kurama <[email protected]>
Co-authored-by: P B <[email protected]>
cuongpham259 added a commit to cuongpham259/plane that referenced this pull request Aug 2, 2025
* Merge preview updates into dev (#1)

* [WEB-4481] optimize workspace member view by prefetching related assets (makeplane#7390)

* [WEB-4484]chore: streamline issue saving process with advisory locks for sequence management makeplane#7395

* testing

* feat : added Kabul to the list of timezones (makeplane#7370)

* [WEB-4485] - fix(dev): get local dev migrator working again makeplane#7397

* [WEB-4484]chore: streamline issue saving process with advisory locks for sequence management (makeplane#7396)

* chore: streamline issue saving process with advisory locks for sequence management

* fix: update advisory lock usage in issue model for improved concurrency management

* fix: local dev environment setup using yarn v4 (makeplane#7400)

* chore: adding typescript dependency to constants.

* chore: package deps update

* [WEB-4482] fix: kanban drag and delete makeplane#7402

* [INFRA-208] Reorganize deployment structure and update build workflows (makeplane#7391)

* refactor: reorganize deployment structure and update build workflows

- Restructure deployment directories from deploy/ to deployments/
- Move selfhost files to deployments/cli/community/
- Add new AIO community deployment setup
- Update GitHub Actions workflows for new directory structure
- Add Caddy proxy configuration for CE deployment
- Remove deprecated AIO build files and workflows
- Update build context paths in install scripts

* chore: update Dockerfile and supervisor configuration

- Changed `apk add` command in Dockerfile to use `--no-cache` for better image size management.
- Updated `build.sh` to ensure proper directory navigation with quotes around `dirname "$0"`.
- Modified `supervisor.conf` to set `stderr_logfile_maxbytes` to 50MB and added `stderr_logfile_backups` for better log management across multiple services.

* chore: consistent node and python version

---------

Co-authored-by: sriramveeraghanta <[email protected]>

* [WEB-4407] chore: add project page creation event tracking makeplane#7378

* [WEB-4468] fix: setting sidebar truncate makeplane#7403

* [WEB-4494] fix: kanban delete modal ux makeplane#7405

* [WIKI-545] fix: shrinking headings in page table of contents makeplane#7404

* [INFRA-209] Remove nginx related configurations from plane community (makeplane#7406)

* Remove deprecated Nginx configuration files and scripts, including Dockerfiles, environment scripts, and configuration templates, to streamline the project structure.

* Update environment configuration and Docker setup for proxy services

- Added LISTEN_PORT and LISTEN_SSL_PORT variables to .env.example and related files.
- Updated Docker Compose files to reference new port variables instead of deprecated NGINX_PORT.
- Adjusted README and variable documentation to reflect changes in port configuration.
- Changed build context for proxy services to use the new directory structure.

* Refactor port configuration in environment and Docker files

- Renamed LISTEN_PORT and LISTEN_SSL_PORT to LISTEN_HTTP_PORT and LISTEN_HTTPS_PORT in .env.example and related files.
- Updated Docker Compose configurations to reflect the new port variable names.
- Adjusted documentation in README and variables.env to ensure consistency with the new naming conventions.

* [WIKI-509] feat: comment copy link option (makeplane#7385)

* feat: comment copy link option

* chore: add translations

* chore: update block position

* chore: rename use id scroll hook

* refactor: setTimeout function

* refactor: use-hash-scroll hook

* [WIKI-542] refactor: editor extensions (makeplane#7345)

* refactor: editor extensions

* fix: placeholder extension

* [WIKI-277] fix: unable to delete last table column/row in editor (makeplane#7389)

* fix: delete column not working

* refactor: delete column commad

* fix: delete last row logic

* refactor: row count logic

* refactor: isCellSelection utility function

* [WEB-4498] improvement: remove workspace details from workspace members list API (makeplane#7407)

* [WEB-4498] improvement: remove workspace details from workspace members list API

* refactor: update select_related usage in workspace invitation and member views

---------

Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>

* [WEB-4504] chore: added migration for app rail and reactions makeplane#7408

* [WIKI-520] fix: update content disposition handling in asset download endpoints (makeplane#7380)

* [WEB-4506] fix: date range modal z-index makeplane#7410

* [WIKI-549] fix: comment scroll logic makeplane#7412

* [WIKI-551] refactor: work item activity logic makeplane#7417

* [WEB-4451] chore: work item header quick action enhancements (makeplane#7414)

* chore: work item header quick action enhancements

* chore: code refactor

* [WEB-4497] chore: reduce breadcrumb height (makeplane#7413)

* chore: reduce breadcrumb height from 3.75rem to 3.25rem

* chore: code refactor

* chore: code refactor

* [WEB-4479] feat: enable/disable SMTP configuration (makeplane#7393)

* feat: api update instance configuration

* chore: add enable_smtp key

* fix: empty string for enable_smtp key

* chore: update email_port and email_from

* fix: handled smtp enable disable

* fix: error handling

* fix: refactor

* fix: removed enabled toast

* fix: refactor

---------

Co-authored-by: gakshita <[email protected]>
Co-authored-by: Akshita Goyal <[email protected]>

* [WEB-1643] chore: support cyrillic characters in subject makeplane#7336

* [WEB-4515] fix: duplicate work item quick action makeplane#7421

* [WIKI-554] feat: delete multiple rows/columns from a table (makeplane#7426)

* [WEB-4520] chore: changed the serializer for cycle issues makeplane#7423

* [WEB-4510] fix: peek view ui layout (makeplane#7422)

* [WEB-4514]chore: moved EIssueLayoutTypes enum to types makeplane#7416

* [WEB-4281] chore: error code on project updation endpoint (makeplane#7218)

* [WIKI-547] fix: update find suggestion logic for emoji extension (makeplane#7411)

* fix: update find suggestion logic

* refactor: remove logs

* refactor : make logic simpler

* feat: check for one char to show suggestion

* refactor : import types from extension

* refactor: add early return

* refactor : put custom suggestion in helper

* fix : char

* fix: types

* [WEB-4346] chore: refactor copy_s3_object bg task (makeplane#7298)

* [INFRA-213] Fix aio dockerfile with new file structure (makeplane#7427)

* fix: update paths in Dockerfile and supervisor.conf for application directories

* fix: update live command in supervisor.conf to use server.js

* [WIKI-557] fix: keyboard navigation in tables (makeplane#7428)

* [WIKI-543] fix: unable to delete last cell of a table (makeplane#7394)

* fix: delete last cell of a table

* refactor: last cell selection logic

* fix: on-headers vulnerability (makeplane#7436)

* [WEB-4528] fix: calendar options interactions (makeplane#7437)

* [WEB-4525] fix: project create/update error handling (makeplane#7429)

* chore: project create/update error handling

* chore: code refactor

* fix: update tsup build packages (makeplane#7438)

* [WEB-561] refactor: editor build config (makeplane#7442)

* refactor: editor build config

* fix: type errors

* [WEB-4442] fix: removed the deleted labels from webhook payload (makeplane#7337)

* chore: removed the deleted label from payload

* chore: optimised the query

* chore: optimised the logic

* chore: defined function for prefetch

* [WEB-4522]fix: removed redundant state indicator (makeplane#7434)

* fix: removed redundant state indicator

* fix: removed redundant state indicator for relation list item

* [WEB-4192]fix: inactive member is hidden in created by makeplane#7435

* [WEB-4507] fix: webhooks translation makeplane#7424

* [WEB-4457] refactor: decouple work item properties from mobx store (makeplane#7363)

* fix: build errors in work item modal (makeplane#7450)

* [WIKI-357] fix: created by filter for pages list makeplane#7445

* [WEB-4531]chore: refactor for timeline chart (makeplane#7440)

* [WIKI-484] chore: update editor packages (makeplane#7265)

* [WEB-4546] chore: header enhancements + quickstart guide ui update + breadcrumb makeplane#7451

* [WEB-4546] chore: home update makeplane#7456

* [WEB-4552] chore: minor design changes for home makeplane#7459

* chore: upgrade axios version to 1.11.0 (makeplane#7469)

* [WEB-4552] fix: stickies layout + minified layout filter (makeplane#7466)

* [WEB-4558] fix: project test cases makeplane#7464

* [WIKI-563] refactor: subscription styles  (makeplane#7444)

* refactor: billing UI

* refactor : fix typo

* docs: add file paths to the new language guide (makeplane#7454)

* improve the comprehensiblity of translation contribution docs

* Update CONTRIBUTING.md to fix the code blocks appeareance

* [WEB-4547]fix: archived work item redirection makeplane#7471

* [WEB-4561] fix: SVG attributes in react components (makeplane#7470)

* chore: svg attribute fix (makeplane#7446)

* fix: replace invalid --env-file with dotenv-cli for tsup onSuccess

* fix: replace invalid --env-file usage in start script and move dotenv-cli to dependencies

* chor: update SVG attributes to camelCase for JSX compatibility

* chor: update SVG attributes to camelCase

* fix: removed dontenv-cli

* fix: svg attibute fixes

* chore: minor attribute customizations

---------

Co-authored-by: Donal Noye <[email protected]>

* [WIKI-565] chore: handle 404 messages in live server (makeplane#7472)

* chore: handle 404 messages in live server

* chore: removed error stack from response

* [WEB-4536] fix: remove inactive workspace members from lists and dropdowns (makeplane#7473)

* fix: remove commands from the docker compose file (makeplane#7476)

* [WEB-4523]fix: sub issues loader makeplane#7474

* [WEB-4045] feat: restructuring of the external APIs for better maintainability (makeplane#7477)

* Basic setup for drf-spectacular

* Updated to only handle /api/v1 endpoints

* feat: add asset and user endpoints with URL routing

- Introduced new asset-related endpoints for user assets and server assets, allowing for asset uploads and management.
- Added user endpoint to retrieve current user information.
- Updated URL routing to include new asset and user patterns.
- Enhanced issue handling with a new search endpoint for issues across multiple fields.
- Expanded member management with a new endpoint for workspace members.

* Group endpoints by tags

* Detailed schema definitions and examples for asset endpoints

* Removed unnecessary extension

* Specify avatar_url field separately

* chore: add project docs

* chore: correct all errors

* chore: added open spec in work items

* feat: enhance cycle API endpoints with detailed OpenAPI specifications

- Updated CycleAPIEndpoint and CycleIssueAPIEndpoint to include detailed OpenAPI schema definitions for GET, POST, PATCH, and DELETE operations.
- Specified allowed HTTP methods for each endpoint in the URL routing.
- Improved documentation for cycle creation, updating, and deletion, including request and response examples.

* chore: added open spec in labels

* chore: work item properties

* feat: enhance API endpoints with OpenAPI specifications and HTTP method definitions

- Added detailed OpenAPI schema definitions for various API endpoints including Intake, Module, and State.
- Specified allowed HTTP methods for each endpoint in the URL routing for better clarity and documentation.
- Improved request and response examples for better understanding of API usage.
- Introduced unarchive functionality for cycles and modules with appropriate endpoint definitions.

* chore: run formatter

* Removed unnecessary settings for authentication

* Refactors OpenAPI documentation structure

Improves the organization and maintainability of the OpenAPI documentation by modularizing the `openapi_spec_helpers.py` file.

The changes include:
- Migrates common parameters, responses, examples, and authentication extensions to separate modules.
- Introduces helper decorators for different endpoint types.
- Updates view imports to use the new module paths.
- Removes the legacy `openapi_spec_helpers.py` file.

This refactoring results in a more structured and easier-to-maintain OpenAPI documentation setup.

* Refactor OpenAPI endpoint specifications

- Removed unnecessary parameters from the OpenAPI documentation for various endpoints in the asset, cycle, and project views.
- Updated request structures to improve clarity and consistency across the API documentation.
- Enhanced response formatting for better readability and maintainability.

* Enhance API documentation with detailed endpoint descriptions

Updated various API endpoints across the application to include comprehensive docstrings that clarify their functionality. Each endpoint now features a summary and detailed description, improving the overall understanding of their purpose and usage. This change enhances the OpenAPI specifications for better developer experience and documentation clarity.

* Enhance API serializers and views with new request structures

- Added new serializers for handling cycle and module issue requests, including `CycleIssueRequestSerializer`, `TransferCycleIssueRequestSerializer`, `ModuleIssueRequestSerializer`, and intake issue creation/updating serializers.
- Updated existing serializers to improve clarity and maintainability, including the `UserAssetUploadSerializer` and `IssueAttachmentUploadSerializer`.
- Refactored API views to utilize the new serializers, enhancing the request handling for cycle and intake issue endpoints.
- Improved OpenAPI documentation by replacing inline request definitions with serializer references for better consistency and readability.

* Refactor OpenAPI documentation and endpoint specifications

- Replaced inline schema definitions with dedicated decorators for various endpoint types, enhancing clarity and maintainability.
- Updated API views to utilize new decorators for user, cycle, intake, module, and project endpoints, improving consistency in OpenAPI documentation.
- Removed unnecessary parameters and responses from endpoint specifications, streamlining the documentation for better readability.
- Enhanced the organization of OpenAPI documentation by modularizing endpoint-specific decorators and parameters.

* chore: correct formatting

* chore: correct formatting for all api folder files

* refactor: clean up serializer imports and test setup

- Removed unused `StateLiteSerializer` import from the serializer module.
- Updated test setup to include a noqa comment for the `django_db_setup` fixture, ensuring clarity in the code.
- Added missing commas in user data dictionary for consistency.

* feat: add project creation and update serializers with validation

- Introduced `ProjectCreateSerializer` and `ProjectUpdateSerializer` to handle project creation and updates, respectively.
- Implemented validation to ensure project leads and default assignees are members of the workspace.
- Updated API views to utilize the new serializers for creating and updating projects, enhancing request handling.
- Added OpenAPI documentation references for the new serializers in the project API endpoints.

* feat: update serializers to include additional read-only fields

* refactor: rename intake issue serializers and enhance structure

- Renamed `CreateIntakeIssueRequestSerializer` to `IntakeIssueCreateSerializer` and `UpdateIntakeIssueRequestSerializer` to `IntakeIssueUpdateSerializer` for clarity.
- Introduced `IssueSerializer` for nested issue data in intake requests, improving the organization of serializer logic.
- Updated API views to utilize the new serializer names, ensuring consistency across the codebase.

* refactor: rename issue serializer for intake and enhance API documentation

- Renamed `IssueSerializer` to `IssueForIntakeSerializer` for better clarity in the context of intake issues.
- Updated references in `IntakeIssueCreateSerializer` and `IntakeIssueUpdateSerializer` to use the new `IssueForIntakeSerializer`.
- Added OpenAPI documentation for the `get_workspace_work_item` endpoint, detailing parameters and responses for improved clarity.

* chore: modules and cycles serializers

* feat: add new serializers for label and issue link management

- Introduced `LabelCreateUpdateSerializer`, `IssueLinkCreateSerializer`, `IssueLinkUpdateSerializer`, and `IssueCommentCreateSerializer` to enhance the handling of label and issue link data.
- Updated existing API views to utilize the new serializers for creating and updating labels, issue links, and comments, improving request handling and validation.
- Added `IssueSearchSerializer` for searching issues, streamlining the search functionality in the API.

* Don't consider read only fields as required

* Add setting to separate request and response definitions

* Fixed avatar_url warning on openapi spec generation

* Made spectacular disabled by default

* Moved spectacular settings into separate file and added detailed descriptions to tags

* Specify methods for asset urls

* Better server names

* Enhance API documentation with summaries for various endpoints

- Added summary descriptions for user asset, cycle, intake, issue, member, module, project, state, and user API endpoints to improve clarity and usability of the API documentation.
- Updated the OpenAPI specifications to reflect these changes, ensuring better understanding for developers interacting with the API.

* Add contact information to OpenAPI settings

- Included contact details for Plane in the OpenAPI settings to enhance API documentation and provide developers with a direct point of contact for support.
- This addition aims to improve the overall usability and accessibility of the API documentation.

* Reordered tags and improved description relavancy

* Enhance OpenAPI documentation for cycle and issue endpoints

- Added response definitions for the `get_cycle_issues` and `delete_cycle_issue` methods in the CycleIssueAPIEndpoint to clarify expected outcomes.
- Included additional response codes for the IssueSearchEndpoint to handle various error scenarios, improving the overall API documentation and usability.

* Enhance serializer documentation across multiple files

- Updated docstrings for various serializers including UserAssetUploadSerializer, AssetUpdateSerializer, and others to provide clearer descriptions of their functionality and usage.
- Improved consistency in formatting and language across serializer classes to enhance readability and maintainability.
- Added detailed explanations for new serializers related to project, module, and cycle management, ensuring comprehensive documentation for developers.

* Refactor API endpoints for cycles, intake, modules, projects, and states

- Replaced existing API endpoint classes with more descriptive names such as CycleListCreateAPIEndpoint, CycleDetailAPIEndpoint, IntakeIssueListCreateAPIEndpoint, and others to enhance clarity.
- Updated URL patterns to reflect the new endpoint names, ensuring consistency across the API.
- Improved documentation and method summaries for better understanding of endpoint functionalities.
- Enhanced query handling in the new endpoint classes to streamline data retrieval and improve performance.

* Refactor issue and label API endpoints for clarity and functionality

- Renamed existing API endpoint classes to more descriptive names such as IssueListCreateAPIEndpoint, IssueDetailAPIEndpoint, LabelListCreateAPIEndpoint, and LabelDetailAPIEndpoint to enhance clarity.
- Updated URL patterns to reflect the new endpoint names, ensuring consistency across the API.
- Improved method summaries and documentation for better understanding of endpoint functionalities.
- Streamlined query handling in the new endpoint classes to enhance data retrieval and performance.

* Refactor asset API endpoint methods and introduce new status enums

- Updated the GenericAssetEndpoint to only allow POST requests for asset creation, removing the GET method.
- Modified the get method to require asset_id, ensuring that asset retrieval is always tied to a specific asset.
- Added new IntakeIssueStatus and ModuleStatus enums to improve clarity and management of asset and module states.
- Enhanced OpenAPI settings to include these new enums for better documentation and usability.

* enforce naming convention

* Added LICENSE to openapi spec

* Enhance OpenAPI documentation for various API endpoints

- Updated API endpoints in asset, cycle, intake, issue, module, project, and state views to include OpenApiRequest and OpenApiExample for better request documentation.
- Added example requests for creating and updating resources, improving clarity for API consumers.
- Ensured consistent use of OpenApi utilities across all relevant endpoints to enhance overall API documentation quality.

* Enhance OpenAPI documentation for various API endpoints

- Added detailed descriptions to multiple API endpoints across asset, cycle, intake, issue, module, project, state, and user views to improve clarity for API consumers.
- Ensured consistent documentation practices by including descriptions that outline the purpose and functionality of each endpoint.
- This update aims to enhance the overall usability and understanding of the API documentation.

* Update OpenAPI examples and enhance project queryset logic

- Changed example fields in OpenAPI documentation for issue comments from "content" to "comment_html" to reflect the correct structure.
- Introduced a new `get_queryset` method in the ProjectDetailAPIEndpoint to filter projects based on user membership and workspace, while also annotating additional project-related data such as total members, cycles, and modules.
- Updated permission checks to use the correct attribute name for project identifiers, ensuring accurate permission handling.

* Enhance OpenAPI documentation and add response examples

- Updated multiple API endpoints across asset, cycle, intake, issue, module, project, state, and user views to include new OpenApiResponse examples for better clarity on expected outcomes.
- Introduced new parameters for project and issue identifiers to improve request handling and documentation consistency.
- Enhanced existing responses with detailed examples to aid API consumers in understanding the expected data structure and error handling.
- This update aims to improve the overall usability and clarity of the API documentation.

* refactor: update terminology from 'issues' to 'work items' across multiple API endpoints for consistency and clarity

* use common timezones from pytz for choices

* Moved the openapi utils to the new folder structure

* Added exception logging in GenericAssetEndpoint to improve error handling

* Fixed code rabbit suggestions

* Refactored IssueDetailAPIEndpoint to streamline issue retrieval and response handling, removing redundant external ID checks and custom ordering logic.

---------

Co-authored-by: pablohashescobar <[email protected]>
Co-authored-by: NarayanBavisetti <[email protected]>

* fix: lint  (makeplane#7433)

* chore: fix lint

* fix: constants check:lint command

* chore(lint): permit unused vars which begin w/ _

* chore: rm dead code

* fix(lint): more lint fixes to constants pkg

* fix(lint): lint the live server

- fix lint issues

* chore: improve clean script

* fix(lint): more lint

* chore: set live server process title

* chore(deps): update to [email protected]

* chore(live): target node22

* fix(dev): add missing ui pkg dependency

* fix(dev): lint decorators

* fix(dev): lint space app

* fix(dev): address lint issues in types pkg

* fix(dev): lint editor pkg

* chore(dev): moar lint

* fix(dev): live server exit code

* chore: address PR feedback

* fix(lint): better TPageExtended type

* chore: refactor

* chore: revert most live server changes

* fix: few more lint issues

* chore: enable ci checks

Ensure we can build + confirm that lint is not getting worse.

* chore: address PR feedback

* fix: web lint warning added to package.json

* fix: ci:lint command

---------

Co-authored-by: sriram veeraghanta <[email protected]>

* fix: eslint warnings and errors (makeplane#7479)

* chore: add ci job names (makeplane#7478)

* chore: add ci job names

This makes them easier to find in the Github UI.

* chore: increase ci timeout

* [WIKI-537] refactor: document editor (makeplane#7384)

* refactor: document editor

* chore: update user prop

* fix: type warning

* chore: update value prop name

* chore: remove unnecessary exports

* hore: update initialValue type

* chore: revert initialValue type

* refactor: unnecessary string handlers

* [WEB-4544] chore: added field validations in serializer (makeplane#7460)

* chore: added field validations in serializer

* chore: added enum for roles

* [WEB-4513] refactor: consolidate password strength meter into shared ui package (makeplane#7462)

* refactor: consolidate password strength indicator into shared UI package

* chore: remove old password strength meter implementations

* chore: update package dependencies for password strength refactor

* chore: code refactor

* fix: lock file

---------

Co-authored-by: sriramveeraghanta <[email protected]>

* [WEB-4566] feat: add background color and goals field to Profile and Workspace models makeplane#7485

* chore: correct migration file 0098  (makeplane#7486)

* feat: restore background color and goals fields in Profile and Workspace models in migration 0099

* chore: update migration dependency to reflect recent changes in profile model migrations

* chore: version upgrade

* [WEB-4533] feat: read replica functionality (makeplane#7453)

* feat: read replica functionality

* fix: set use_read_replica to false

* chore: add use_read_replica to external APIs

* chore: remove use_read_replica on read endpoints

* chore: remove md files

* Updated all the necessary endpoints to use read replica

---------

Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>

* [WEB-4563]fix: image full screen modal makeplane#7491

* [WIKI-539] refactor: remove lite text read only editor (makeplane#7481)

* refactor: remove lite text read only editor

* chore: update types

* [WIKI-539] regression: editor build errors makeplane#7503

* [WIKI-539] regression: toolbar visible in comments card makeplane#7508

* chore(deps): bump linkifyjs in the npm_and_yarn group across 1 directory (makeplane#7506)

Bumps the npm_and_yarn group with 1 update in the / directory: [linkifyjs](https://github.com/nfrasser/linkifyjs/tree/HEAD/packages/linkifyjs).


Updates `linkifyjs` from 4.3.1 to 4.3.2
- [Release notes](https://github.com/nfrasser/linkifyjs/releases)
- [Changelog](https://github.com/nfrasser/linkifyjs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nfrasser/linkifyjs/commits/v4.3.2/packages/linkifyjs)

---
updated-dependencies:
- dependency-name: linkifyjs
  dependency-version: 4.3.2
  dependency-type: direct:production
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [WIKI-570] fix: image alignment for read only editor makeplane#7509

* chore: added validation for description  (makeplane#7507)

* added PageBinaryUpdateSerializer for binary data validation and update

* chore: added validation for description

* chore: removed the duplicated file

* Fixed coderabbit comments

- Improve content validation by consolidating patterns and enhancing recursion checks

- Updated `PageBinaryUpdateSerializer` to simplify assignment of validated data.
- Enhanced `content_validator.py` with consolidated dangerous patterns and added recursion depth checks to prevent stack overflow during validation.
- Improved readability and maintainability of validation functions by using constants for patterns.

---------

Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>

* [WIKI-573] regression: comment card padding makeplane#7512

* fix(cli): improve API service readiness check in install script (makeplane#7468)

* fix: improve API service readiness check in install script

* fix(cli): correct python indentation in api health check

* fix(cli): prevent false positive api ready message on timeout

* [WEB-4544] chore: added field validations in serializer (makeplane#7460)

* chore: added field validations in serializer

* chore: added enum for roles

* [WEB-4603] feat: add missing event trackers (makeplane#7513)

* feat: add event trackers for password creation

* feat: add event trackers for project views

* feat: add event trackers for product updates and changelogs

* chore: use element name instead of event name for changelog redirect link

* [WEB-4599] feat: add marketing email consent field to Profile model and timezone migration makeplane#7510

* [WEB-4597] fix: project icon render in switcher makeplane#7504

* fix: header observer for state changes

* [WEB-4602] fix: 500 error on draft wi labels update makeplane#7515

* fix: adding proxy command

* fix: enable email notification by default for new users (makeplane#7521)

* Potential fix for code scanning alert no. 631: Incomplete URL scheme check (makeplane#7514)

* Potential fix for code scanning alert no. 631: Incomplete URL scheme check

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* fix: ignore warning in this file

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* [INFRA-219] fix: update Dockerfile and docker-compose for proxy service (makeplane#7523)

* fix: update Dockerfile and docker-compose for version v0.28.0 and improve curl commands in install script

* fix: update docker-compose to use 'stable' tag for all services

* fix: improve curl command options in install script for better reliability

* feat: update new logo on readme (makeplane#7530)

* feat: update new logo on readme

Changed logo on Readme

* fix: image url

---------

Co-authored-by: sriramveeraghanta <[email protected]>

* docs: update README.md (makeplane#7531)

changed tagline

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>
Co-authored-by: Nikhil <[email protected]>
Co-authored-by: Masoom Wahid <[email protected]>
Co-authored-by: Aaron Heckmann <[email protected]>
Co-authored-by: sriram veeraghanta <[email protected]>
Co-authored-by: Anmol Singh Bhatia <[email protected]>
Co-authored-by: Manish Gupta <[email protected]>
Co-authored-by: M. Palanikannan <[email protected]>
Co-authored-by: Aaryan Khandelwal <[email protected]>
Co-authored-by: Akshat Jain <[email protected]>
Co-authored-by: Prateek Shourya <[email protected]>
Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>
Co-authored-by: Bavisetti Narayan <[email protected]>
Co-authored-by: Sangeetha <[email protected]>
Co-authored-by: gakshita <[email protected]>
Co-authored-by: Akshita Goyal <[email protected]>
Co-authored-by: Vamsi Krishna <[email protected]>
Co-authored-by: Vipin Chaudhary <[email protected]>
Co-authored-by: merrime-n <[email protected]>
Co-authored-by: Donal Noye <[email protected]>
Co-authored-by: pablohashescobar <[email protected]>
Co-authored-by: NarayanBavisetti <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rishi <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Vihar Kurama <[email protected]>
Co-authored-by: P B <[email protected]>

* Update docker-compose.yml

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>
Co-authored-by: Nikhil <[email protected]>
Co-authored-by: Masoom Wahid <[email protected]>
Co-authored-by: Aaron Heckmann <[email protected]>
Co-authored-by: sriram veeraghanta <[email protected]>
Co-authored-by: Anmol Singh Bhatia <[email protected]>
Co-authored-by: Manish Gupta <[email protected]>
Co-authored-by: M. Palanikannan <[email protected]>
Co-authored-by: Aaryan Khandelwal <[email protected]>
Co-authored-by: Akshat Jain <[email protected]>
Co-authored-by: Prateek Shourya <[email protected]>
Co-authored-by: Dheeraj Kumar Ketireddy <[email protected]>
Co-authored-by: Bavisetti Narayan <[email protected]>
Co-authored-by: Sangeetha <[email protected]>
Co-authored-by: gakshita <[email protected]>
Co-authored-by: Akshita Goyal <[email protected]>
Co-authored-by: Vamsi Krishna <[email protected]>
Co-authored-by: Vipin Chaudhary <[email protected]>
Co-authored-by: merrime-n <[email protected]>
Co-authored-by: Donal Noye <[email protected]>
Co-authored-by: pablohashescobar <[email protected]>
Co-authored-by: NarayanBavisetti <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rishi <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Vihar Kurama <[email protected]>
Co-authored-by: P B <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants