* fix(web): implement stale asset recovery in entry client and error boundary
Added event listeners in entry.client.tsx to handle stale asset errors in production, allowing for recovery from stale assets. Updated the ErrorBoundary component in root.tsx to utilize the same recovery mechanism for stale chunk failures, enhancing error handling and user experience.
* fix(web): improve stale asset recovery logic in entry client
Refactored the recoverFromStaleAsset function to return a boolean indicating whether a reload was triggered, enhancing the handling of stale asset errors. Updated the event listener in entry.client.tsx to prevent default behavior only when a recovery is in progress, improving error management in production environments.
* refactor: migrate constants (fetch-keys) from apps/web to @plane/constants
* refactor: migrate constants (ai, calenda, gaant) from apps/web to @plane/constants
* refactor: migrate constants (sidebar, favorites) from apps/web to @plane/constants
* refactor: migrate constants (editor) from apps/web to @plane/constants
* refactor: migrate constants (plans) from apps/web to @core/components
* resolved lint errors
* fix: resolve coderabbit comments
* refactor: resolve coderabbit comments
* refactor: migrate hooks (use-file-size) from web/app/ce to web/app/core
* refactor: migrate hooks (use-notification-preview) from web/app/ce to web/app/core
* refactor: migrate hooks (use-timeline-chart) from web/app/ce to web/app/core
* refactor: migrate hooks (use-page, use-page-store) from web/app/ce to web/app/core
* refactor: migrate hooks (app-rail, indexes) from web/app/ce to web/app/core
* refactor: migrate hooks (use-page-flag) from web/app/ce to web/app/core
* refactor: migrate hooks (use-editor-flagging) from web/app/ce to web/app/core
* refactor: migrate hooks (use-filters-operator-configs) from web/app/ce to web/app/core
* refactor: migrate hooks (use-additional-editor-mention) from web/app/ce to web/app/core
* refactor: migrate hooks (use-additional-favorite-item-details) from web/app/ce to web/app/core
* refactor: migrate hooks (use-extended-editor-extensions, use-pages-pane-extensions) from web/app/ce to web/app/core
* refactor: migrate hooks (use-work-items-filters-config) from web/app/ce to web/app/core
* refactor: migrate hooks (use-extended-editor-config) from web/app/ce to web/app/core
* refactor: migrate hooks (use-bulk-operations) from web/app/ce to web/app/core
* refactor: migrate hooks (use-debounced-duplicate-issues) from web/app/ce to web/app/core
* refactor: migrate hooks (use-issue-properties) from web/app/ce to web/app/core
* refactor: migrate hooks (use-workspace-issue-properties) from web/app/ce to web/app/core
* refactor: delete hook (use-issue-embed) from web/app/ce
* fix: coderabbit comments
* fix: React doctor comments
* fix: import structure for hooks
* refactor: remove command palette & sidebar components and related files from web/app/ce
* refactor: update analytics tab imports and add new analytics tab components
* feat: add project, work item, and workspace level modals for enhanced user interaction
* refactor: replace WorkspaceActiveCyclesRoot with WorkspaceActiveCyclesUpgrade and remove obsolete components
* refactor: migrate app-rail HOC to core components and remove obsolete index file
* refactor: remove unused automation components and simplify layout structure
* refactor: update import paths for CommonProjectBreadcrumbs and add new breadcrumb components
* refactor: update import path for WorkItemDetailRoot and add new work item detail component
* refactor: remove obsolete comments index file and introduce CommentBlock component in core
* refactor: update import paths for common components and introduce new ExtendedAppHeader, GlobalModals, and SubscriptionPill components
* refactor: remove obsolete index file and add MaintenanceMessage and InboxSourcePill components
* refactor: remove obsolete cycle components and introduce new cycle-related components in core
* refac: moved de-dupe directory to core
* refactor: add new desktop components and update import paths for sidebar functionality
* refactor: remove obsolete index file and introduce new version number and product updates components in core
* refactor: add EpicModal component and update import paths in issue layouts
* refactor: add HomePageHeader and HomePeekOverviewsRoot components, update import paths in home and issues sections
* refactor: remove obsolete home index file, update import paths for relation options in issue detail components, and introduce new activity helper functions
* refactor: remove AdditionalFilterValueInput from legacy path and reintroduce it in core filter value input component
* refactor: remove legacy workspace-notifications index file and introduce new notification components in core
* refactor: remove legacy license components and update import paths for PaidPlanUpgradeModal
* refactor: remove legacy navigation components and update import paths for navigation items in core
* refactor: introduce onboarding tour components and update import paths for tour-related files
* refactor: remove legacy theme switcher component and update import paths in profile settings
* refactor: update import paths for workflow components and introduce new workflow-related files in core
* refactor: remove legacy estimate components and introduce new estimate-related files in core
* refactor: remove legacy gantt-chart components and introduce new core components for gantt-chart functionality
* refactor: remove legacy helper components and introduce new access control and publish components in core
* refactor: introduce billing components and update import paths for billing-related files in core
* refactor: introduce new members components and update import paths for workspace members functionality
* refactor: update import paths for workspace components and introduce new workspace-related files
* refactor: remove deprecated components and clean up import paths across various modules
* refactor: remove unused components and clean up import paths across various modules
* refactor: remove unused sidebar components and update import paths in workspace notifications
* refactor: introduce new estimate, billing, and notification card components while updating import paths across various modules
* refactor: remove unused estimate and billing components, update import paths, and streamline workspace notification card structure
* refactor: update import paths for project components and remove unused files in the projects module
* refactor: remove unused power-k components and update import paths in the command palette module
* refactor: remove unused issue components and update import paths across the issues module
* refactor: remove unused mentions components and update import paths in the editor module
* refactor: remove unused components and update import paths across the pages module
* refactor: update type imports for issue properties in issue modal context
* fix: oxfmt
* fix: PR checks
* [GIT-254] Refactor: Store consolidation to @core/store (#9271)
* refactor: remove unused store files and update import paths across the application
* refactor: remove unused store files and update import paths across the core module
* refactor: remove unused issue filter and store files, and update import paths in the core module
* refactor: update import paths for timeline store files and introduce new base timeline store
* refactor: remove deprecated root store file and update import paths across the application
* refactor: update import paths for store files and correct root store type references
* refactor: standardize import comments and remove 'plane-web' artifacts across various components
* fix: CodeRabbit comments
* fix: format
* refactor: update TypeScript configuration and improve sorting method in TabNavigationRoot component
* refactor: replace toSorted with sort method for navigation item sorting in TabNavigationRoot component
---------
Co-authored-by: Rahulcheryala <rahulcheryala2004@gmail.com>
Co-authored-by: Prateek Shourya <prateekshourya29@gmail.com>
* fix(web): add Safari fallback for requestIdleCallback
* fix(web): use globalThis in idle-task fallbacks
Switch idle-task fallback paths from window.* to globalThis.* so the
fallback no longer crashes in environments where window is undefined.
Also thread IdleRequestOptions through requestIdleFallback so the
caller's timeout hint is honored when falling back.
Addresses CodeRabbit review feedback on #9137.
---------
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
* chore: replace Discord references with Forum links
* chore: migrate help and community CTAs from Discord to Forum
* refactor: replace Discord icons with lucide MessageSquare
* chore: rename Discord labels and keys to Forum
* chore: remove obsolete Discord icon component
* chore: update Discord references to Forum in templates
* chore: code refactoring
- Modified the invite link to include a token for enhanced security.
- Updated the WorkspaceJoinEndpoint to validate the token instead of the email.
- Adjusted the workspace invitation task to generate links with the token.
- Refactored the frontend to handle token in the invitation process.
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
* fix: robust way to handle socket connection and read from indexeddb cache when reqd
* fix: realtime sync working with failure handling
* fix: title editor added
* merge preview into fix/realtime-sync
* check
* page renderer props
* lint errors
* lint errors
* lint errors
* sanitize html
* sanitize html
* format fix
* fix lint
* feat: add timezone selection to workspace onboarding, creation and settings
* refactor: remove timezone selection from workspace creation and onboarding forms
* feat: enhance workspace settings layout and members page with new components
* refactor: update workspace settings layout and members page to use default exports
* refactor: settings layout import changes
* refactor: simplify workspaceSlug usage in settings layout
* feat: implement cover image handling and static image selection
- Added functionality to handle cover image uploads and selections in project and profile forms.
- Introduced a new helper for managing cover images, including static images and uploaded assets.
- Updated components to utilize the new cover image helper for displaying and processing cover images.
- Added a set of static cover images for selection in the image picker.
- Enhanced error handling for image uploads and processing.
This update improves the user experience by providing a more robust cover image management system.
* refactor: rename STATIC_COVER_IMAGES_ARRAY to STATIC_COVER_IMAGES for consistency
- Updated the cover image helper to export STATIC_COVER_IMAGES instead of STATIC_COVER_IMAGES_ARRAY.
- Adjusted the ImagePickerPopover component to utilize the renamed export for rendering static cover images.
* feat: enhance project creation and image handling
- Introduced default project form values with a random emoji for logo props.
- Updated cover image handling in various components, ensuring consistent usage of the new cover image helper.
- Refactored image picker to improve search functionality and loading states.
- Removed unused constants and streamlined cover image type checks for better clarity and performance.
This update enhances the user experience in project creation and image selection processes.
* refactor: simplify cover image type definition and clean up code
- Removed duplicate type from TCoverImageType, streamlining the definition.
- Cleaned up whitespace in the cover image helper for improved readability.
This update enhances code clarity and maintains consistency in cover image handling.
* refactor: update cover image type definitions and simplify logic
- Changed ICoverImageResult and ICoverImagePayload interfaces to type aliases for better clarity.
- Simplified the logic in getCoverImageDisplayURL function to enhance readability and maintainability.
This update improves the structure and clarity of the cover image helper code.
* refactor: remove unused project cover image endpoint and update cover image handling
- Removed the ProjectPublicCoverImagesEndpoint and its associated URL from the project.
- Updated the cover image handling in the cover-image helper to utilize imported assets instead of static paths.
- Cleaned up the ProjectFavoritesViewSet and FileService by removing the now obsolete getProjectCoverImages method.
This update streamlines the cover image management and eliminates unnecessary code, enhancing overall maintainability.
* refactor: update cover image imports to new asset structure
- Replaced static path imports for cover images with updated paths to the new asset structure.
- This change improves organization and maintainability of cover image assets in the project.
This update aligns with recent refactoring efforts to streamline cover image handling.
* feat: add additional cover images to the helper
- Imported new cover images (24 to 29) into the cover-image helper.
- This update expands the available cover image options for use in the project, enhancing visual variety.
* refactor: remove ProjectPublicCoverImagesEndpoint from project URLs and views
* refactor: update cover image imports to include URL query parameter
- Modified cover image imports in the cover-image helper to append a URL query parameter for better asset handling.
- This change enhances the way cover images are processed and utilized within the project.
* refactor: extract default project form values into a utility function
- Created a new utility function `getProjectFormValues` to encapsulate the default project form values.
- Updated the `CreateProjectForm` component to use this utility function for setting default form values, improving code organization and maintainability.
* feat: integrate project update functionality in CreateProjectForm
- Added `updateProject` method to the `CreateProjectForm` component for updating project cover images after creation.
- Enhanced cover image handling by ensuring the correct URL is set for both uploaded and existing cover images.
This update improves the project creation workflow and ensures cover images are accurately updated.
* fix: update documentation for cover image handling
- Corrected the comment regarding local static images to reflect that they are served from the assets folder instead of the public folder.
- This change ensures accurate documentation for the `getCoverImageType` and `getCoverImageDisplayURL` functions, improving clarity for future developers.
* feat: implement random cover image selection for project forms
- Replaced the default cover image URL with a new utility function `getRandomCoverImage` that selects a random cover image from the available options.
- Updated the `getProjectFormValues` function to utilize this new method, enhancing the project creation experience with varied cover images.
---------
Co-authored-by: Prateek Shourya <prateekshourya29@gmail.com>
* [WEB-5559] improve: chat support functionality and remove Intercom provider
- Added ChatSupportModal component for chat support integration.
- Replaced IntercomProvider with ChatSupportModal in AppProvider.
- Introduced useChatSupport hook to manage chat support state and actions.
- Updated help commands to utilize chat support instead of Intercom.
- Removed obsolete Intercom-related components and hooks.
* refactor: lazy load ChatSupportModal in AppProvider