* chore: added code split for the analytics store
* chore: done some refactor
* refactor: update entity keys in analytics and translations
* chore: updated the translations
* refactor: simplify AnalyticsStoreV2 class by removing unnecessary constructor
* feat: add AnalyticsStoreV2 class and interface for enhanced analytics functionality
* feat: enhance WorkItemsModal and analytics store with isEpic functionality
* feat: integrate isEpic state into TotalInsights and WorkItemsModal components
* refactor: remove isEpic state from WorkItemsModalMainContent component
* refactor: removed old analytics components and related services
* refactor: new analytics
* refactor: removed all nivo chart dependencies
* chore: resolved coderabbit comments
* fix: remove duplicate isEpic prop in WorkItemsModal component
* fix: update type for tab parameter in processUrl method of AnalyticsV2Service
* fix: update processUrl to handle custom-work-items in peek view
* feat: implement CSV export functionality in InsightTable component
* feat: add user analytics components and extend analytics functionality
* feat: enhance analytics service with filter parameters and improve data handling in InsightTable
* feat: add projects analytics components
* feat: add cycles, modules, and intake analytics components with corresponding data handling and visualization
* feat: add new translation keys for various statuses across multiple languages
* chore: update analytics components and translations
* [WEB-4246] fix: enhance analytics components to include 'isEpic' parameter for improved data fetching
* refactor: clean up imports and update translation keys in analytics components
* chore: added project logo props in charts
* feat: integrate project logo display in analytics tables
* chore: added feature flag
* chore: disabled users
* chore: added feature flag
* chore: added payment failure vaidation
* feat: enhance analytics page with subscription upgrade tooltip and update translations
* updated translations
* chore: added additional parameters in payload
* added state icons in module and cycle table
* fix: handle empty date values in cycles and modules insight tables
* chore: added the keys for module
* chore: added custom tooltip for cycles and modules
* chore: added color to the scatter points
* refactor: centralize module status colors and update chart point colors and yaxis domain
* fix: update comment to clarify display name usage in WorkItemInsightColumns
* feat: add completed work items count to analytics and update chart components
* refactor: update trend-piece component to use new status variants for analytics
* feat: enhance ee analytics tables with export functionality and added project logo in intake
* refactor: clean up fetch keys and simplify analytics component structure
* refactor: rename analytics fields constants for consistency and clarity
* refactor: update analytics feature flag for improved clarity and consistency
* chore: changed the feature flag of analytics
* refactor: streamline analytics tab structure and introduce locked tab labels for feature flag check while rendering tab label
* chore: remove unused translation key for entity count in English locale
* fix: import of intake
* fix: append percentage sign to completion percentage label in cycles insight table
* refactor: simplify completion percentage calculation in ModulesCyclesTooltip and enhance Avatar component styling in UserAvatarName
* refactor: update AnalyticsWrapper titles to use i18n keys and clean up imports in analytics components
* fix: update isEpic handling in WorkItemsModal to consider isPeekView state
* fix: update i18n title in AnalyticsWrapper for Intake component
---------
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
Co-authored-by: Aaryan Khandelwal <aaryankhandu123@gmail.com>
* refactor: move web utils to packages
* fix: build and lint errors
* chore: update drag handle plugin
* chore: update table cell type to fix build errors
* fix: build errors
* chore: sync few changes
* feat: add pi base url to constants
* chore: update all util imports in ee folder
* chore: refactor web utils imports
* chore: update imports
* fix: build errors
* fix: build errors
* fix: update utils import
* chore: minor fixes related to duplicate assets imports
* chore: update duplicate assets service
* [WEB-4316] chore: new endpoints to download an asset (#7207)
* chore: new endpoints to download an asset
* chore: add exception handling
* [WEB-4323] refactor: Analytics refactor (#7213)
* chore: updated label for epics
* chore: improved export logic
* refactor: move csvConfig to export.ts and clean up export logic
* refactor: remove unused CSV export logic from WorkItemsInsightTable component
* refactor: streamline data handling in InsightTable component for improved rendering
* feat: add translation for "No. of {entity}" and update priority chart y-axis label to use new translation
* refactor: cleaned up some component and added utilitites
* feat: add "at_risk" translation to multiple languages in translations.json files
* refactor: update TrendPiece component to use new status variants for analytics
* fix: adjust TrendPiece component logic for on-track and off-track status
* refactor: use nullish coalescing operator for yAxis.dx in line and scatter charts
* feat: add "at_risk" translation to various languages in translations.json files
* feat: add "no_of" translation to various languages in translations.json files
* feat: update "at_risk" translation in Ukrainian, Vietnamese, and Chinese locales in translations.json files
* refactor: rename insightsFields to ANALYTICS_INSIGHTS_FIELDS and update analytics tab import to use getAnalyticsTabs function
* feat: update AnalyticsWrapper to use i18n for titles and add new translation for "no_of" in Russian
* fix: update yAxis labels and offsets in various charts to use new translation key and improve layout
* feat: define AnalyticsTab interface and refactor getAnalyticsTabs function for improved type safety
* fix: update AnalyticsTab interface to use TAnalyticsTabsBase for improved type safety
* fix: add whitespace-nowrap class to TableHead for improved header layout in DataTable component
* [WEB-4311] fix: membership data handling and state reversal on error (#7205)
* [WEB-4231] Pie chart tooltip #7192
* fix: build errors
* fix: utils imports
* chore: fix build errors
* yarn lock file update
---------
Co-authored-by: Aaryan Khandelwal <65252264+aaryan610@users.noreply.github.com>
Co-authored-by: JayashTripathy <76092296+JayashTripathy@users.noreply.github.com>
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
* add types for clickup entities
* add api service for clickup
* add pull and transform methods
* clickup folder
* add migrator and bulk transformer for clickup
* add clickup apk service for store
* add clickup data store
* add UI components and page clickup importer
* add UI components and page clickup importer
* fix bugs related to clickup import labels attachment issue type
* fix duplicate comments
* resolve plane client conflict
* content parser for description
* add relation map update for import job
* fix issues regarding custom field types options and values
* add translations + feature flag for clickup
* fix missing integration type export
* fix relation mapping across projects
* fix false comment actors in data import task
* fix cancel import job translation
* fix cancel import job translation
* fix rate limit issues for clickup import
* push unique work items to transform job
* handle username null in members
* increase refetch timing for jobs
* add rate limit fixes for pull in import job
* remove protect in pull job as not required now
* clickup additional data migrator for comments and attachments
* clickup additional migrator setup
* comment clickup importer
* fix status mapping for custom status in list n folders
* fix issues with clickup additional data migrator
* add changes to etl pull method clickup
* increase the rate limit for oauth tokens
* add pulling percent logs
* add batching to pull in clickup additional migrator
* add mq changes for error handling from preview
* Add migration for completed batch count + fix issues with progress of clickup additional migrator
* add support for external id and source in project and state external apis
* creation of project and state before transform if missing
* UI changes to support only space selection and start all folder import job
* Bug fixes for enhanced ClickUp importer with multi folder import; Translations; UI changes to support enhanced clickup importer
* migration to support enhanced clickup changes
* add emoji for project + no priority fix
* add logs to debug job stuck issue
* batch api calls to apiserver
* Fix edge-case in data import task to handle empty batches, preventing jobs from getting stuck in "TRANSFORMING" state.
* add retry logic for job finished in race condn and last batch failure
* feat: Update API routes with count increment endpoint, refactor import report logic, and enhance logging for job processing
* refactor: Improve logging in data import task and adjust batch completion logic for better handling of empty lists + UI fixes
* refactor: Enhance logging in data import task and streamline batch completion handling for empty issue lists
* refactor: remove batch locks
* refactor: enhance error handling in data migration
* chore: remove storing of members in config, skip sending relation map in get jobs
* refactor: logs and labels transform
* fix no page batch completion + feature flag clickup
* fix duplicate state mapping and transforming stuck
* reduce batching in state creation
* fix: remove multer package and resolved build errors
---------
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
* Added cover_image_asset to Template model
* use the right property
* Test case for Template Model
* [SILO-317] feat: add cover image upload to template publish form
* improve: add cover image loader
* feat: add paste support to pill input
* chore: add cover_image in the serializer
* chore: update cover image url field key
* improvement: update translations for cover image field
* chore: minor icon updates
---------
Co-authored-by: Dheeraj Kumar Ketireddy <dheeru0198@gmail.com>
Co-authored-by: sangeethailango <sangeethailango21@gmail.com>
* chore: updated label for epics
* chore: improved export logic
* refactor: move csvConfig to export.ts and clean up export logic
* refactor: remove unused CSV export logic from WorkItemsInsightTable component
* refactor: streamline data handling in InsightTable component for improved rendering
* feat: add translation for "No. of {entity}" and update priority chart y-axis label to use new translation
* refactor: cleaned up some component and added utilitites
* feat: add "at_risk" translation to multiple languages in translations.json files
* refactor: update TrendPiece component to use new status variants for analytics
* fix: adjust TrendPiece component logic for on-track and off-track status
* refactor: use nullish coalescing operator for yAxis.dx in line and scatter charts
* feat: add "at_risk" translation to various languages in translations.json files
* feat: add "no_of" translation to various languages in translations.json files
* feat: update "at_risk" translation in Ukrainian, Vietnamese, and Chinese locales in translations.json files
* refactor: rename insightsFields to ANALYTICS_INSIGHTS_FIELDS and update analytics tab import to use getAnalyticsTabs function
* feat: update AnalyticsWrapper to use i18n for titles and add new translation for "no_of" in Russian
* fix: update yAxis labels and offsets in various charts to use new translation key and improve layout
* feat: define AnalyticsTab interface and refactor getAnalyticsTabs function for improved type safety
* fix: update AnalyticsTab interface to use TAnalyticsTabsBase for improved type safety
* fix: add whitespace-nowrap class to TableHead for improved header layout in DataTable component
* chore: updated label for epics
* chore: improved export logic
* refactor: move csvConfig to export.ts and clean up export logic
* refactor: remove unused CSV export logic from WorkItemsInsightTable component
* refactor: streamline data handling in InsightTable component for improved rendering
* feat: add translation for "No. of {entity}" and update priority chart y-axis label to use new translation
* refactor: cleaned up some component and added utilitites
* feat: add "at_risk" translation to multiple languages in translations.json files
* refactor: update TrendPiece component to use new status variants for analytics
* fix: adjust TrendPiece component logic for on-track and off-track status
* refactor: use nullish coalescing operator for yAxis.dx in line and scatter charts
* feat: add "at_risk" translation to various languages in translations.json files
* feat: add "no_of" translation to various languages in translations.json files
* feat: update "at_risk" translation in Ukrainian, Vietnamese, and Chinese locales in translations.json files
* dev: handled the signup logic for password and magic code
* dev: removed is_mobile in authentication
* chore: handled the invitation id for google and github
* chore: updated the types imports
* chore: updated url
* chore: handled the google and github click
* chore: updated auth adapter props
* chore: updated the str validation
* chore: classname Typo
* chore: updated key in mobile magic_code view
* chore: updated the invitation logic in email and magic
* chore: typo
* feat: remove scope filter from teamspace statistics
* feat: remove project dropdown from create or update teamspace form
* feat: remove scope filter from teamspace views
* feat: remove scope filter from teamspace pages
* feat: remove scope filter from teamspace work items
* chore: add endpoint to add multiple projects to teamspaces also remove
auto member addition to project
* choe: add uuid import
* feat: teamspaces detail in project settings
* feat: re-write permission layer to handle project roles through teamspaces
* improvement: toast message for teamspace list in project settings
* chore: remove teamspace projects module.
* feat: UI revamp for project settings members page
* refactor: single source of truth for project member roles
* improvement: project member settings page header.
* chore: remove teamspace list if feature is disabled
* chore: add teamspace validation for project endpoints
* chore: update permissions
* chore: teamspace filter
* chore: correct indentation
* chore: update teamspaces permission endpoint
* chore: update teamspace filters
* chore: update project members me api to return the current member project
* chore: update permissions to accomodate team permissions
* chore: remove the util function and use the manager queryset to filter project access
* chore: update permission for issue types
* chore: update querysets for epics and issue types
* chore: update page access
* improvement: permission layer and other minor UI changes
* improvement: minor UI enhancements
* chore: update project roles endpoint
* chore: update project members endpoint
* chore: update project members endpoint
* chore: remove member annotation
* refactor: project member role and original role
* refactor: project membership store
* improvement: project member list loader
* fix: search issues endpoint
* improvement: translation support for teamspaces project settings.
* chore: added option to clear existing members while fetching project members.
* chore: add extra validation for places where guests have restricted view
* chore: add caching for workspace feature flag
* fix: role update logic.
* fix: project members me api when user is guest for the project
* chore: remove duplicates returned from the api
* improvement: update link project modal
* improvement: ui / ux and translations enhancements
* feat: add all translations for teamspaces
* chore: minor component updates
* chore: minor fixes related to permission layer
* fix: strict type checks for permission layer
* fix: empty state and broken links for teamspaces
* fix: delete teamspace members when user is removed from workspace
* improve: members settings page
---------
Co-authored-by: pablohashescobar <nikhilschacko@gmail.com>
Co-authored-by: Nikhil <118773738+pablohashescobar@users.noreply.github.com>
* Migrates to OpenSearch for enhanced search
Migrates from Elasticsearch to OpenSearch to leverage its capabilities.
- Updates dependencies and configurations to use OpenSearch.
- Introduces OpenSearchHelper to streamline query building and execution,
featuring standardized filters, query DSL with custom analyzers,
field-specific boosts, pagination, and source field filtering.
- Implements edge n-gram analyzer for improved prefix matching in search queries.
- Modifies search views to utilize OpenSearchHelper for efficient and
organized search results.
- Adds AttrDictField to properly serialize AttrDict objects
This migration enhances the search functionality and ensures compatibility
with the new OpenSearch infrastructure.
* Added opensearch to requirements and removed elasticsearch
* increased timeout for opensearch connections
* Minor updates to index signal handler
* Better search capability for workitem id
* Minor optimization for helper class
* Query performance improvements
* Modified management command to handle opensearch
* Replaced elasticsearc references to opensearch
* Update OpenSearch index names to include a configurable prefix from settings. Added support for OPENSEARCH_INDEX_PREFIX in Cycle, Issue, Module, Page, Project, Teamspace, View, and Workspace documents.
* Update default OpenSearch index prefix to an empty string in common settings.
* chore: added code split for the analytics store
* chore: done some refactor
* refactor: update entity keys in analytics and translations
* chore: updated the translations
* refactor: simplify AnalyticsStoreV2 class by removing unnecessary constructor
* feat: add AnalyticsStoreV2 class and interface for enhanced analytics functionality
* feat: enhance WorkItemsModal and analytics store with isEpic functionality
* feat: integrate isEpic state into TotalInsights and WorkItemsModal components
* refactor: remove isEpic state from WorkItemsModalMainContent component
* refactor: removed old analytics components and related services
* refactor: new analytics
* refactor: removed all nivo chart dependencies
* chore: resolved coderabbit comments
* fix: update processUrl to handle custom-work-items in peek view
* feat: implement CSV export functionality in InsightTable component
* feat: enhance analytics service with filter parameters and improve data handling in InsightTable
* feat: add new translation keys for various statuses across multiple languages
* [WEB-4246] fix: enhance analytics components to include 'isEpic' parameter for improved data fetching
* chore: update yarn.lock to remove deprecated @nivo packages and clean up unused dependencies
* feat: airgapped draft
* feat: enhance airgapped installation script and build process
- Added installation checks for Docker and Docker Compose versions.
- Implemented yq for dynamic updates to docker-compose.yml, including setting environment variables and handling service volumes.
- Improved build.sh to install yq if not present and manage Docker images for airgapped setups.
- Updated install.sh to streamline the installation process and ensure necessary files are in place before proceeding.
* feat: enhance airgapped install script with domain input and OS compatibility
- Added prompts for user input of installation directory and application domain/IP address.
- Implemented OS-specific handling for `sed` commands to ensure compatibility across macOS and Linux.
- Improved user experience with additional confirmation messages during installation.
* feat: update installation script and versioning for airgapped deployment
- Enhanced the installation script to prompt for confirmation when the setup directory is not empty, allowing users to proceed with caution.
- Updated application version to v1.9.2 in both the docker-compose configuration and environment variables for consistency.
- Improved final confirmation message for clarity during installation.
* chore: airgapped upload license endpoint
* feat: added endpoint for uploading file in airgapped mode
* chore: file upload to handle formdata
* feat: license activation using file upload
* feat: add GitHub Actions workflow for building airgapped images
- Introduced a new workflow to build airgapped images with customizable platform options.
- Implemented steps for dependency installation, Docker setup, AWS credentials configuration, and environment preparation.
- Enhanced docker-compose.yml processing to include airgapped-specific configurations and manage service volumes.
- Added functionality to pull and save Docker images, and create a distribution tarball for S3 upload.
* feat: enhance build script for airgapped deployment
- Added support for customizable build platform and application release version through command-line flags.
- Implemented usage instructions for the build script to guide users on required and optional parameters.
- Improved handling of environment variable updates in docker-compose.yml and plane.env for different operating systems.
- Included cleanup steps to remove temporary data and logs after the build process.
* checking build
* refactor: simplify Docker setup in GitHub Actions workflow
- Removed redundant volume configuration for buildx cache in the build-branch-ee.yml workflow.
* feat: enhance build process by installing yq if missing
- Added a check in the GitHub Actions workflow to install yq if it is not already present, ensuring the build script can dynamically update docker-compose.yml.
- Removed redundant directory creation in the build script, streamlining the volume mapping process.
- Adjusted sed command handling for macOS and Linux to improve compatibility.
* feat: update airgapped artifact packaging in GitHub Actions workflow
- Modified the condition for packaging airgapped artifacts to include 'Release' build type.
- Streamlined the setup of yq by using an action instead of manual installation.
- Enhanced the build script to dynamically set the release version based on the build type, improving flexibility for different deployment scenarios.
- Updated S3 upload path to include the artifact suffix for better organization.
* feat: add AWS credentials to GitHub Actions workflow
- Introduced environment variables for AWS access key and secret key in the build-branch-ee.yml workflow, enabling secure access to AWS resources during the build process.
* fix: correct syntax for environment variable assignment in GitHub Actions workflow
- Updated the assignment of environment variables in the build-branch-ee.yml workflow to use the correct syntax for string interpolation.
- Ensured consistency in setting the AIRGAPPED_RELEASE_VERSION based on the build type condition.
* feat: add AWS CLI installation step to GitHub Actions workflow
- Introduced a step to install the AWS CLI in the build-branch-ee.yml workflow, ensuring necessary tools are available for AWS interactions.
- Updated environment variable assignments for consistency and clarity in the packaging process of airgapped artifacts.
* fix: streamline S3 upload command in GitHub Actions workflow
- Simplified the S3 upload command in the build-branch-ee.yml workflow by removing unnecessary directory navigation, directly referencing the airgapped tarball for upload.
- Improved clarity and efficiency in the artifact deployment process.
* chore: comment out S3 upload command in GitHub Actions workflow
- Commented out the S3 upload command in the build-branch-ee.yml workflow to prevent execution during the build process.
- This change allows for easier testing and debugging of the artifact packaging without uploading to S3.
* fix: correct syntax in GitHub Actions workflow for airgapped release version
- Fixed the conditional syntax in the build-branch-ee.yml workflow to properly close the if statement.
- Ensured the S3 upload command is correctly referenced, maintaining clarity in the artifact deployment process.
* fix: install yq if not present in GitHub Actions workflow
- Added a conditional check to install yq in the build-branch-ee.yml workflow if it is not already installed, ensuring the build process can proceed without errors related to missing dependencies.
- This change enhances the reliability of the workflow by automating the installation of necessary tools.
* fix: optimize Docker cleanup and S3 upload command in GitHub Actions workflow
- Added Docker cleanup commands to remove unused images and prune the system, improving resource management during the build process.
- Streamlined the S3 upload command to directly pipe the tarball, enhancing efficiency in artifact deployment.
* fix: improve confirmation prompt in installation script
- Added README.md contents
- Updated the confirmation prompt in install.sh for clarity, changing "YES" to "Yes" to enhance user understanding during the installation process.
* fix: update runner configuration for airgapped artifacts packaging in GitHub Actions workflow
- Changed the runner from 'ubuntu-22.04' to 'ubuntu-22.04-4-cores' to optimize resource allocation during the packaging process of airgapped artifacts.
- This adjustment aims to enhance performance and efficiency in the build workflow.
* fix: update runner configuration for airgapped artifacts packaging in GitHub Actions workflow
- Changed the runner from 'ubuntu-22.04-4-cores' to 'ubuntu-latest-4-cores' to ensure the use of the latest stable environment for improved compatibility and performance during the packaging process of airgapped artifacts.
* fix: update runner configuration for airgapped artifacts packaging in GitHub Actions workflow
- Changed the runner from 'ubuntu-latest-4-cores' back to 'ubuntu-22.04' to align with the previous configuration, ensuring compatibility and stability during the packaging process of airgapped artifacts.
* fix: simplify yq installation in GitHub Actions workflow
- Removed the conditional check for yq installation in the build-branch-ee.yml workflow, ensuring yq is always installed during the setup process. This change enhances the reliability of the workflow by eliminating potential errors related to missing dependencies.
* refactor: reorganize build steps in GitHub Actions workflow
- Restored and structured the build-push steps for various Docker images (admin, web, space, live, silo, apiserver, proxy, monitor, email) in the build-branch-ee.yml workflow.
- Updated the dependencies for the packaging of airgapped artifacts to ensure all build steps are executed in the correct order.
- Enhanced clarity and maintainability of the workflow by explicitly defining each build-push job.
* fix: comment out hardcoded airgapped release version in GitHub Actions workflow
- Commented out the hardcoded AIRGAPPED_RELEASE_VERSION in the build-branch-ee.yml workflow to allow for dynamic versioning based on the branch name, enhancing flexibility in the build process.
* refactor: update image handling in airgapped build and install scripts
- Modified build.sh to save each Docker image individually to a tar file and remove the image after saving, improving image management.
- Updated install.sh to load multiple tar files instead of a single hardcoded tarball, enhancing flexibility in image loading during setup.
* test build
* enhance: add build summary and usage instructions for airgapped artifacts in GitHub Actions workflow
- Introduced a build summary section in the build-branch-ee.yml workflow to provide details about the airgapped artifacts, including release version and S3 path.
- Added usage instructions for downloading and installing the airgapped artifacts, improving user guidance and accessibility.
* chore: remove deprecated build-airgapped workflow
- Deleted the build-airgapped.yml workflow file as it is no longer needed.
- Updated build-branch-ee.yml to streamline the packaging process for airgapped artifacts and improve S3 upload commands.
* fix: update file handling for license activation to support JSON format
- Changed file validation to accept only .json files in the frontend and backend.
- Updated the API to read and forward the activation file correctly.
- Enhanced error handling for unsupported file types and server responses.
* enhance: improve build summary and usage instructions in GitHub Actions workflow
- Added Git commit hash and branch information to the build summary in build-branch-ee.yml for better traceability.
- Updated usage instructions formatting to enhance clarity and user experience when downloading and installing airgapped artifacts.
* enhance: add presigned URL generation for airgapped artifacts in GitHub Actions workflow
- Implemented the creation of a presigned URL for airgapped artifacts, allowing for secure access for 30 days.
- Updated the build summary to include the presigned URL, improving user guidance for downloading artifacts.
* style: improve formatting of usage instructions in GitHub Actions workflow
- Updated the usage instructions in build-branch-ee.yml to use inline code formatting for better readability and clarity.
- Enhanced user guidance for downloading and installing airgapped artifacts.
* refactor: enhance build summary and usage instructions in GitHub Actions workflow
- Improved the formatting of the build summary in build-branch-ee.yml for better readability.
- Updated usage instructions to include code blocks, enhancing clarity for users downloading and installing airgapped artifacts.
* fix: time format issue with RFC, added custom marshaller
* feat: integrate crane for optimized image handling in airgapped build process
- Added installation of crane in the GitHub Actions workflow to enhance image pulling and saving efficiency.
- Updated build.sh to utilize crane for pulling images when available, providing a fallback to Docker if not.
- Improved user feedback during image handling, ensuring clarity on the process and success of operations.
* fix: update crane installation method in GitHub Actions workflow
- Changed the crane installation command to download the tarball to a file before extraction, improving reliability and error handling during the installation process.
* fix: streamline crane installation in GitHub Actions workflow
- Updated the crane installation command to directly pipe the download into extraction, simplifying the process and reducing the need for intermediate files.
* feat: add airgapped mode support for license file handling
- Introduced a new setting to enable airgapped mode.
- Added LicenseFileFetchEndpoint to fetch license files for workspaces in airgapped mode.
- Enhanced LicenseDeActivateEndpoint to delete license files when in airgapped mode.
- Updated LicenseActivateUploadEndpoint to restrict access based on airgapped mode.
- Implemented S3Storage method for deleting files from S3.
* fix: update environment variable formatting in GitHub Actions workflow
- Changed the format of environment variable assignments in build-branch-ee.yml to use `key=value` syntax, improving clarity and consistency in the workflow.
* fix: update airgapped artifact packaging in GitHub Actions workflow
- Refactored the packaging step in build-branch-ee.yml to utilize environment variables for better clarity and maintainability.
- Enhanced the presigned URL generation to extend the expiry to 90 days, improving access security for airgapped artifacts.
* fix: refine AIRGAPPED_RELEASE_VERSION handling in GitHub Actions workflow
- Updated the assignment of AIRGAPPED_RELEASE_VERSION to improve clarity and consistency in the build process.
- Enhanced the build summary to reflect the changes in variable usage, ensuring accurate information is presented to users.
- Streamlined the presigned URL handling for better integration within the workflow.
* fix: update airgapped artifact workflow with environment variable enhancements
- Refactored the build process in build-branch-ee.yml to utilize environment variables for AIRGAPPED_RELEASE_VERSION, S3_PATH, COMMIT_HASH, and PRESIGNED_URL, improving clarity and maintainability.
- Enhanced the build summary to reflect the updated variable usage, ensuring accurate information is presented to users.
- Streamlined the presigned URL handling and extended its expiry to 90 days for improved access security.
* improvement: upload license file form UI
* fix: enhance airgapped build summary in GitHub Actions workflow
- Updated the build summary in build-branch-ee.yml to include a temporary file for the presigned URL, improving security and clarity.
- Added the Git commit hash to the summary for better traceability of builds.
- Streamlined the summary formatting for improved readability and user guidance.
* fix: update airgapped artifact workflow to include presigned URL upload
- Commented out the previous artifact packaging steps for airgapped builds to streamline the process.
- Added functionality to create a temporary file for the presigned URL and upload it as an artifact, enhancing accessibility and security.
- Improved clarity in the workflow by ensuring the presigned URL is logged and stored appropriately.
* fix: reduce presigned URL expiry in airgapped artifact workflow
- Updated the PRESIGNED_URL_EXPIRY from 90 days to 7 days to enhance security and limit access duration.
- Commented out the previous expiry setting for clarity and future reference.
* fix: enhance airgapped artifact workflow with S3 region support
- Added S3_REGION environment variable to specify the AWS region for presigned URL generation, improving flexibility and accuracy in artifact handling.
- Updated the presigned URL command to include the region parameter, ensuring correct URL generation for S3 access.
- Modified the build summary to replace the presigned URL placeholder with a generic "<presigned-url>" for clarity in usage instructions.
* fix: streamline airgapped artifact workflow by enabling packaging steps
- Re-enabled the packaging steps for airgapped artifacts in the workflow, ensuring that the build process includes the creation and upload of artifacts to S3.
- Clarified the presigned URL expiry comment to indicate it is set to the maximum allowed by AWS for improved understanding of security settings.
* fix: enhance airgapped artifact workflow with multi-platform support
- Added support for building and uploading airgapped artifacts for both amd64 and arm64 architectures in the GitHub Actions workflow.
- Updated the S3 paths and presigned URL handling to accommodate the new architecture-specific artifacts.
- Improved user guidance in the installation script by providing clearer instructions for starting services and checking logs.
* fix: update airgapped artifact workflow to use consistent build platform flag
- Changed the build platform flag from `--build-platform` to `--platform` in the airgapped artifact workflow for both amd64 and arm64 builds, ensuring consistency across the build commands.
* chore: license activation changes
* feat: added mock implemation of airgapped api
* fix: enhance airgapped artifact workflow with detailed service images
- Added specific Docker image references for various services in the airgapped installation README, improving clarity on required files for offline deployment.
- Updated the workflow to ensure all necessary images are included for a comprehensive airgapped setup.
* fix: cases for workspace replace and seats
* fix: improve airgapped artifact workflow with conditional arm64 build support
- Added conditional logic to build and package arm64 artifacts based on the AIRGAPPED_ARM64_BUILD environment variable, enhancing flexibility in the workflow.
- Updated the presigned URL handling for arm64 artifacts to ensure proper access management.
- Improved the build summary to include arm64 S3 path only when applicable, streamlining output clarity.
* fix: update airgapped README to include email service Docker image
- Added reference to the Docker image for the email service in the airgapped installation README, enhancing clarity on required files for offline deployment.
* fix: add arm64 build support to airgapped artifact workflow
- Introduced ARM64_BUILD environment variable to manage conditional logic for arm64 builds in the workflow.
- Updated the build steps to set ARM64_BUILD based on the target branch, enhancing flexibility for multi-architecture support.
* fix: refactored logic for license management
* fix: ensure members_list is properly formatted as JSON in license activation
* fix: verification threshold
* feat: enhance airgapped license handling with versioning and improved error logging
- Added `Version` field to `AirgappedLicensePayload` for better tracking.
- Updated database population logic to use the new `Version` field.
- Improved error handling in `GetManualSyncHandler` with additional logging for license and feature flag refresh failures.
- Refined license deactivation logic for airgapped licenses based on current period end date.
* chore: update workspace activation check
* feat: improve airgapped handling in API views and tasks
- Added checks for airgapped settings in `CheckUpdateEndpoint`, `version_check`, and `register_instance_ee` to return early if the environment is airgapped.
- Enhanced code readability and maintainability by centralizing airgapped logic.
* improvement: remove seat management and subscription management for airgapped workspaces
* fix: update airgapped artifact workflow to extract tarball into specific directory
- Modified the extraction command in the airgapped installation instructions to specify the target directory, improving organization and clarity for users during the installation process.
* fix: update application version to v1.10.0 in deployment configurations
- Updated the APP_VERSION in coolify-compose.yml, docker-compose-caddy.yml, portainer-compose.yml, and variables.env to reflect the new version v1.10.0, ensuring consistency across deployment files.
* feat: enhance license activation response with workspace member details
- Updated the LicenseFileFetchEndpoint to include a list of active workspace members in the response.
- Converted user IDs to strings for consistency in the returned data structure.
* feat: added sync endpoint for download file
* feat: added logic for manual sync handler
* feat: added private key to prime airgapped api
* feat: implement job registration for instance license resync in airgapped mode
- Added a new job to the worker for resyncing instance licenses using a context-aware handler.
- Updated the HTTP handler port to "8090" for consistency.
- Changed the airgapped check to always return true in the workspace product handler.
* fix: update license activation response to return workspace members directly
- Modified the LicenseFileFetchEndpoint to return the workspace members list directly instead of converting it to a list, ensuring the response structure is consistent with the expected data format.
* feat: add command configuration for monitor service in airgapped build script
- Updated the build script to include a command for the monitor service, setting it to ["prime-monitor", "start-airgapped"] when the service is detected.
* docs: update airgapped README with installation instructions and prerequisites
- Enhanced the prerequisites section for clarity on Docker and Docker Compose requirements.
- Added a detailed installation process, including steps for running the installation script and the resulting directory structure.
- Updated post-installation steps to guide users on starting services and monitoring logs.
* improvement: handle error message for license activation
* feat: enhance airgapped cron job scheduling
- Introduced a new cron handler for scheduling airgapped cron jobs, including a License Refresh Job.
- Updated the worker to register the new cron job for instance license resync.
* minor fixes as sugged by reviewer
* fix: update HTTP handler port to use dynamic PORT variable in airgapped command
* fix: added version and api environment variables
* chore: update handlers to use isAirgapped method
* fix: converted db open calls to transactions in product handler
* fix: ensure UUIDs are only generated for unset IDs in License, UserLicense, and Flags models
* chore: update error message
* fix: add API_HOSTNAME environment variable to deployment configurations
- Introduced API_HOSTNAME variable in coolify-compose.yml, docker-compose-caddy.yml, portainer-compose.yml, and variables.env to standardize API endpoint configuration across deployment files.
* fix: update API_HOSTNAME format in deployment configurations
- Changed the API_HOSTNAME variable in coolify-compose.yml, docker-compose-caddy.yml, portainer-compose.yml, and variables.env to include the protocol (http://), ensuring consistent and correct API endpoint formatting across deployment files.
* feat: enhance airgapped installation and configuration
- Updated build.sh to insert "name: Plane-airgapped" into the docker-compose.yml file.
- Modified install.sh to set a default installation directory, improve user prompts, and handle upgrades more gracefully.
- Added checks for existing installations and running instances to prevent conflicts during upgrades.
- Enhanced the configuration display for better user clarity during setup.
* feat: improve environment variable handling in airgapped installation script
- Added a new function to update environment variables in the plane.env file.
- Enhanced the logic for reading and processing key-value pairs from the backup file, ensuring proper trimming and handling of empty values.
- Streamlined the update process for environment variables during installation and upgrades.
* feat: add Docker and docker-compose version checks in airgapped installation script
- Implemented checks for Docker version to ensure it meets the minimum requirement.
- Added validation to confirm that Docker is running before proceeding with installation.
- Included checks for the presence of either docker-compose or the new docker compose command.
- Enhanced error handling for version checks to improve user feedback during installation.
---------
Co-authored-by: Thomas Taylor <twtaylor7@gmail.com>
Co-authored-by: Manish Gupta <manish@plane.so>
Co-authored-by: Henit Chobisa <chobisa.henit@gmail.com>
Co-authored-by: Prateek Shourya <prateekshourya29@gmail.com>
Co-authored-by: Manish Gupta <59428681+mguptahub@users.noreply.github.com>
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
Co-authored-by: akshat5302 <akshatjain9782@gmail.com>
* fix: initiatives modal
* fix: icons
* feat: add and list initiatives to a project
* feat: add and list initiatives to epic
* fix: api integrations
* fix: build issues
* fix: refactor
* fix: null value in initiative_ids
* chore: add initative_ids in the issue detail endpoint
* chore: use prefetch
* fix: return empty list for no initiative ids
* chore: insert created_by
* fix: initiative epics not getting inserted
* fix: refactoring
---------
Co-authored-by: sangeethailango <sangeethailango21@gmail.com>
* refactor: permission layer
* refactor: add original_role to project member serializer
* chore: minor fixes related to permission layer
* fix: strict type checking while checking user permissions
* [SILO-284] Endpoint to copy/install published template from marketplace
* Append (copy) to the tempalte name to maintain integrity
* Added workspace-selector to restricted slug list
* feat: update workspace selector to install templates
* [WEB-4198] Added new fields and migrations for template and application. Updated template categories
* contact_email is optional
* [WEB-4198] feat: template publish form improvements
* chore: remove template keywords computed function
* chore: add english translations for template publish form
---------
Co-authored-by: Dheeraj Kumar Ketireddy <dheeru0198@gmail.com>
* feat: publish template to marketplace form
* Sample fixture for template categories
* Updated serializer with new fields and made changes to api endpoints to use serializer while creating templates (#3205)
* improvement: add more fields to the template publish form
* improvement: ui update and error validations for template publish form
* Added extra fields to marketplace template urls
* improvement: minor ui/ ux enhancements
* feat: add translations for template publish
* chore: update string utils for joinWithConjunction
* fix: build error
* Remove workspace and template_type from serializer validation
* improvement: updated template categories computed function to computed value
* improvement: ensure terms & conditions and privacy policy urls have http protocol
* Only return verified project templates for the meta endpoint
* improvement: updated template keywords dropdown placeholder
* improvement: update translations
* improvement: add loader for publish template page
* improvement: docs comments for string utils
* Add validation for publishing and unpublish option for management command
* fixed formatting
* change support_url to support_email while validating
---------
Co-authored-by: Dheeraj Kumar Ketireddy <dheeru0198@gmail.com>
* chore: added cycles and modules in analytics peek view
* chore: added cycles and modules analytics
* chore: added project filter for work items
* chore: added a peekview flag and based on that table columns
* chore: added peek view
* chore: added check for display name
* chore: cleaned up some code
* chore: fixed export csv data
* chore: added distinct work items
* chore: assignee in peek view
* updated csv fields
* chore: updated workitems peek with assignee
* fix: removed type assersions for workspaceslug
* chore: added day wise filter in cycles and modules
* chore: added extra validations
---------
Co-authored-by: JayashTripathy <jayashtripathy371@gmail.com>
* feat: implement a generic oauth module for all callbacks
- Strategy based pattern to implement OAuth callbacks for any
third party integration
- Implement strategy for Plane's internal OAuth
- Add endpoint for fetching app installations
* add missing fields for integration helper in github controller
* pass client id, secret to strategy during init
* revert conflict changes
* use getPlaneAPIClient for consistency
* chore: analytics endpoint
* added anlytics v2
* updated status icons
* added area chart in workitems and en translations
* active projects
* chore: created analytics chart
* chore: validation errors
* improved radar-chart , added empty states , added projects summary
* chore: added a new graph in advance analytics
* integrated priority chart
* chore: added csv exporter
* added priority dropdown
* integrated created vs resolved chart
* custom x and y axis label in bar and area chart
* added wrapper styles to legends
* added filter components
* fixed temp data imports
* integrated filters in priority charts
* added label to priority chart and updated duration filter
* refactor
* reverted to void onchange
* fixed some contant exports
* fixed type issues
* fixed some type and build issues
* chore: updated the filtering logic for analytics
* updated default value to last_30_days
* percentage value whole number and added some rules for axis options
* fixed some translations
* added - custom tick for radar, calc of insight cards, filter labels
* chore: opitmised the analytics endpoint
* replace old analytics path with new , updated labels of insight card, done some store fixes
* chore: updated the export request
* Enhanced ProjectSelect to support multi-select, improved state management, and optimized data fetching and component structure.
* fix: round completion percentage calculation in ActiveProjectItem
* added empty states in project insights
* Added loader and empty state in created/resolved chart
* added loaders
* added icons in filters
* added custom colors in customised charts
* cleaned up some code
* added some responsiveness
* updated translations
* updated serrchbar for the table
* added work item modal in project analytics
* fixed some of the layput issues in the peek view
* chore: updated the base function for viewsets
* synced tab to url
* code cleanup
* chore: updated the export logic
* fixed project_ids filter
* added icon in projectdropdown
* updated export button position
* export csv and emptystates icons
* refactor
* code refactor
* updated loaders, moved color pallete to contants, added nullish collasece operator in neccessary places
* removed uneccessary cn
* fixed formatting issues
* fixed empty project_ids in payload
* improved null checks
* optimized charts
* modified relevant variables to observable.ref
* fixed the duration type
* optimized some code
* updated query key in project-insight
* updated query key in project-insight
* updated formatting
* chore: replaced analytics route with new one and done some optimizations
* removed the old analytics
---------
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>