* dev: password confirmation logic in mobile signup
* dev: updated the invitation acceptance in google and github authentication
* dev: handled the password strength in signin
* dev: updated password strength validation
* dev: seperated the file structure for page queries
* dev: updated page mutation file structure
* dev: removed comments
* dev: shared pages in workspace and project level
* dev: updated project level shared page query
* dev: updated user level shared page query
* dev: updated yoour work page query
* dev: handled the isShared and isSharedAccess in page type
* dev: handled the page detail shated permission
* dev: handled the feature flag and handled it in workspace page permission
* dev: handled the move_to_page in global search
---------
Co-authored-by: Sainath <sainath@Sainaths-MacBook-Pro-2.local>
- instead of setting bot_type as APP_BOT on all bots, only set when
is_mentionable is True on the application
- add migration to back migrate all existing bot users
* chore: replace ScatterChart with BarChart in analytics components and update chart configurations
* chore: update chart labels and tooltip end date in ModuleProgress component
* refactor: swap labels and colors for created and resolved issues in CreatedVsResolved component
- Added a method to validate the order_by parameter in both IssueViewSet and IssueDetailEndpoint, ensuring it corresponds to a defined set of sortable fields.
- Defaulted to sorting by created_at if the provided field is invalid, improving query robustness and consistency across views.
- Implemented a method to validate the order_by parameter, ensuring it corresponds to valid sortable fields.
- Defaulted to sorting by created_at if the provided field is invalid, enhancing query flexibility and robustness.
* [WIKI-495] feat: add customer request fields to ViewIssueListSerializer and update WorkspaceViewIssuesViewSet for feature flag checks
- Enhanced ViewIssueListSerializer to conditionally include customer request fields based on user access.
- Updated WorkspaceViewIssuesViewSet to prefetch customer request issues when the feature flag is enabled for the workspace.
- Improved context handling in the serializer for better data representation.
* fix: improve pagination logic in OffsetPaginator
- Updated the pagination logic to use a duplicated queryset for accurate result slicing.
- Adjusted next_cursor calculation to ensure it reflects the correct number of results available for pagination.
* feat: enhance ViewIssueListSerializer to include customer request IDs
- Added a method to retrieve customer request IDs associated with issues.
- Updated the serializer's representation to include the new customer request IDs field.
* feat: add type_id to ViewIssueListSerializer representation
- Included type_id in the serialized output of ViewIssueListSerializer to enhance issue data representation.
* fix: refine pagination logic in OffsetPaginator
- Updated page_results to use .values("id") for optimized data retrieval.
- Adjusted next_cursor calculation to use page_results.count() for accurate pagination state.
* fix: live server shared access
* fix: optimized this
* chore: changed the variable name
---------
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
* fix: handle division by zero in projects insight table percentage calculation
* fix: handle NaN in percentage calculation for completed work items in projects insight table
* feat: add IssueListDetailSerializer for detailed issue representation
- Introduced IssueListDetailSerializer to enhance issue data representation with expanded fields.
- Updated issue detail endpoint to utilize the new serializer for improved data handling.
- Added methods for retrieving related module, label, and assignee IDs, along with support for expanded relations.
* feat: add ViewIssueListSerializer and enhance issue ordering
- Introduced ViewIssueListSerializer for improved issue representation, including assignee, label, and module IDs.
- Updated WorkspaceViewIssuesViewSet to utilize the new serializer and optimized queryset with prefetching.
- Enhanced order_issue_queryset to maintain consistent ordering by created_at alongside other fields.
- Modified pagination logic to support total count retrieval for better performance.
* fix: optimize issue filtering and pagination logic
- Updated WorkspaceViewIssuesViewSet to apply filters more efficiently in the issue query.
- Refined pagination logic in OffsetPaginator to ensure consistent behavior using limit instead of cursor.value, improving overall pagination accuracy.
* fix: improve pagination logic in OffsetPaginator
- Updated the next_cursor calculation to use the length of results instead of cursor.value, ensuring accurate pagination behavior.
- Added a comment to clarify the purpose of checking for additional results after the current page.
* Move the common permission filters into a separate method
* fix: handle deleted related issues in serializers
- Updated IssueListDetailSerializer to skip null related issues when building relations.
- Enhanced ViewIssueListSerializer to safely access state.group, returning None if state is not present.
- Removed unused User import in base.py for cleaner code.
---------
Co-authored-by: Dheeraj Kumar Ketireddy <dheeru0198@gmail.com>
* feat: added feature flag for confluence importer
* feat: modified content parser for removing default PTag extension
* feat: made controller generic for supporting both notion and confluence
* feat: moved notion extensions into driver folder
* feat: created zip driver factory and types
* feat: added notion import driver as extracted part
* chore: removed existing content parser
* feat: added body extractor extension
* feat: added collapsable and notes extension
* feat: added colors and icon parser extension
* feat: added file and page parser extensions
* feat: added task list extension for confluence
* feat: added confluence import driver
* feat: modified zip manager to extract out the tree logic
* feat: modified phases and base to use the driver instead of concrete implementation
* feat: added confluence as migrator job
* feat: added confluence import page
* feat: added notion and confluence components into common zip importer components
* feat: modified hooks and services to use common zip importer
* feat: modified services and store references for using confluence
* fix: remove unnecessary file
* fix: removed comment
* feat: corrected components for using serviceName as title
* feat: added translations
* chore: self review 1
* chore: self review 2, comments, phases and exports
* fix: path getting longer than 255 characters
* feat: added test for content parser
* fix: removed json stringify for colormap
* fix: resolved comments
* fix: enabled feature flag
* fix: shared pages initilization for view access
* chore: optimised the logic for shared pages
* fix: lock control
* chore: cursor rules in gitignore
* chore: optimised the page query
* chore: combined the user map
* fix: should render
* chore: added the logic to unshare
* fix: can current user access page
* fix: blocking pages
* fix: page doesn't exist
* fix: empty state and unshared realtime
* fix: console log payload
* chore: updated the permission layer
---------
Co-authored-by: Palanikannan M <akashmalinimurugu@gmail.com>
* refactor: move app bot addition to project save method
- Removed the signal handler for adding app bots to a project.
- Integrated app bot addition directly into the Project model's save method.
- Updated the add_app_bots_to_project function to exclude the user who created the project.
* Fixed import issues
* feat: add short_id and slug fields to Template model with migration
* Added short_id and slug fields to the Template model for better identification and SEO.
* Implemented a migration to populate these fields for existing templates.
* Enhanced save method to generate short_id and slug if not set, ensuring uniqueness and proper formatting.
* feat: enhance Template model and serializers with short_id and URL validation
* Added a name_changed flag to the Template model to track name changes.
* Updated TemplateSerializer to include short_id and slug in read-only fields.
* Implemented URL validation in the name field of TemplateSerializer to prevent names containing URLs.
* Introduced a new utility function, generate_short_id, for generating unique identifiers.
* Modified PublishedTemplateEndpoint to use short_id instead of UUID for template retrieval.
* add unit tests for EE utilities and identifier generation
* Introduced unit tests for the EE utilities package, focusing on the identifier generation function.
* Implemented tests for various scenarios including default and custom lengths, uniqueness, character set validation, and cryptographic quality.
* Created new test files and directories to organize the unit tests effectively.