Skip to content

[FEAT] Incremental Dataset Import#141

Merged
JonnyTran merged 24 commits into
fix/import-dataset-mappingfrom
feat/incremental-dataset-import
Aug 29, 2025
Merged

[FEAT] Incremental Dataset Import#141
JonnyTran merged 24 commits into
fix/import-dataset-mappingfrom
feat/incremental-dataset-import

Conversation

@JonnyTran
Copy link
Copy Markdown
Member

@JonnyTran JonnyTran commented Aug 26, 2025

This pull request introduces significant enhancements to the dataset creation workflow in the frontend, focusing on adding support for updating existing datasets with imported data, improving dialog management, and refining type safety. The changes include the addition of a new update dialog component, refactoring and renaming of the creation dialog, and updates to form logic and UI to support both creation and update workflows. TypeScript usage is improved across relevant files, and minor UX improvements are made.

Dataset Update Workflow Enhancements:

  • Added a new DatasetUpdateDialog.vue component to support updating existing datasets with imported data, including workspace selection, compatible dataset selection, field mapping preview, and import summary.
  • Updated DatasetConfigurationForm.vue to support both dataset creation and update workflows, including new methods and state for managing dialog visibility and workflow mode. [1] [2] [3]
  • Added logic to display "Update Dataset" and "Create Dataset" buttons based on the data source, and to open the appropriate dialog.

Dialog Refactoring and Type Safety:

  • Renamed DatasetConfigurationDialog.vue to DatasetCreateDialog.vue and updated all references for clarity and separation of concerns.
  • Improved prop validation and TypeScript usage in dialog and configuration components for better type safety and maintainability. [1] F311d3a1L102R106, [2] [3]

UI/UX Improvements:

  • Updated button area styling in DatasetConfigurationForm.vue for better spacing and clarity.
  • Ensured that the questions section is hidden during the update workflow to prevent unintended modifications.
  • Improved dialog layouts and interaction logic for both create and update dialogs, including better handling of workspace and split selection. [1] [2]

Minor Fixes and Cleanups:

  • Updated the frontend lint pre-commit hook to use ESLint cache for faster linting.
  • Removed redundant error notification logic from useDocumentViewModel.ts to streamline error handling.

These changes collectively improve the flexibility, usability, and maintainability of the dataset management UI.

@JonnyTran JonnyTran changed the base branch from develop to fix/import-dataset-mapping August 27, 2025 23:32
…ialog.

- Added DatasetUpdateDialog component for updating datasets, integrated data source selection, and improved dataset configuration forms. - Updated translations for button labels and added validation for compatible datasets.
- Introduced UpdateDatasetUseCase for handling dataset updates.
- Enhanced DatasetConfigurationForm and DatasetUpdateDialog to support source and target dataset selection.
- Added error handling and validation for dataset updates in the relevant components.
- Updated useDatasetConfigurationForm to include the new update method.
- Renamed DatasetConfigurationDialog to DatasetCreateDialog for clarity.
- Added new DatasetCreateDialog component to handle dataset creation with improved UI and validation.
- Updated useDatasetConfigurationNameAndWorkspace to remove unused imports.
- Prioritize specific error messages in AxiosErrorHandler based on business logic, detailed messages, and generic HTTP status messages.
- Update DocumentRepository to include a new error constant for listing documents and adjust error handling accordingly.
- Modify error detail in documents.py to provide more specific feedback when no documents are found.
- Updated DatasetConfigurationForm, DatasetConfigurationMetadataSelector, and DatasetCreateDialog to use TypeScript for improved type safety.
- Enhanced validator functions in DatasetConfigurationForm and DatasetCreateDialog to specify parameter types.
@JonnyTran JonnyTran marked this pull request as ready for review August 28, 2025 21:54
@JonnyTran JonnyTran requested review from a team as code owners August 28, 2025 21:54
JonnyTran and others added 13 commits August 28, 2025 15:12
…xternal_id with source_id and target_id.

- Updated DatasetCreation to use source_id and target_id for improved clarity in dataset mappings.
- Modified ImportHistoryDatasetBuilder to align with the new DatasetCreation structure, ensuring proper mapping of source_id and target_id.
This reverts commit 3ecb423.
@JonnyTran JonnyTran requested a review from a team as a code owner August 29, 2025 06:25
@JonnyTran JonnyTran self-assigned this Aug 29, 2025
@JonnyTran JonnyTran added the enhancement New feature or request label Aug 29, 2025
- Removed deprecated document methods from WorkspacesAPI.
- Updated document creation logic to directly use the Document class.
- Simplified the add_document method in the Workspace class.
- Cleaned up test cases related to document operations in WorkspacesAPI.
@JonnyTran JonnyTran merged commit be95c78 into fix/import-dataset-mapping Aug 29, 2025
11 checks passed
JonnyTran added a commit that referenced this pull request Aug 29, 2025
* updates

* added mapping to DatasetGetterDict

* added mapping to DatasetModel

* __fetch_dataset_related_attributes

* latest

* updated DatasetMapping

* latest

* latest

* [FEAT] Incremental Dataset Import (#141)

* added GET "/datasets/compatible"

* Add GetImportCompatibleDatasets use case and integrate into dataset configuration

* Enhance dataset creation workflow with update functionality and new dialog.

- Added DatasetUpdateDialog component for updating datasets, integrated data source selection, and improved dataset configuration forms. - Updated translations for button labels and added validation for compatible datasets.

* latest

* Implement dataset update functionality and improve error handling.

- Introduced UpdateDatasetUseCase for handling dataset updates.
- Enhanced DatasetConfigurationForm and DatasetUpdateDialog to support source and target dataset selection.
- Added error handling and validation for dataset updates in the relevant components.
- Updated useDatasetConfigurationForm to include the new update method.

* refactor

* Refactor dataset creation components and introduce DatasetCreateDialog.

- Renamed DatasetConfigurationDialog to DatasetCreateDialog for clarity.
- Added new DatasetCreateDialog component to handle dataset creation with improved UI and validation.
- Updated useDatasetConfigurationNameAndWorkspace to remove unused imports.

* refactoring

* Enhance error handling in AxiosErrorHandler and DocumentRepository.

- Prioritize specific error messages in AxiosErrorHandler based on business logic, detailed messages, and generic HTTP status messages.
- Update DocumentRepository to include a new error constant for listing documents and adjust error handling accordingly.
- Modify error detail in documents.py to provide more specific feedback when no documents are found.

* Refactor dataset configuration components to support TypeScript.

- Updated DatasetConfigurationForm, DatasetConfigurationMetadataSelector, and DatasetCreateDialog to use TypeScript for improved type safety.
- Enhanced validator functions in DatasetConfigurationForm and DatasetCreateDialog to specify parameter types.

* fix extralit/unit tests

* fix tests

* fix tests

* latest

* fix tests

* fix DatasetMapping

* Refactor DatasetCreation and ImportHistoryDatasetBuilder to replace external_id with source_id and target_id.

- Updated DatasetCreation to use source_id and target_id for improved clarity in dataset mappings.
- Modified ImportHistoryDatasetBuilder to align with the new DatasetCreation structure, ensuring proper mapping of source_id and target_id.

* test fixes

* fix tests

* fix tests

* Revert "fix tests"

This reverts commit 3ecb423.

* fix tests

* fix tests

* Refactor document handling in WorkspacesAPI and update related tests

- Removed deprecated document methods from WorkspacesAPI.
- Updated document creation logic to directly use the Document class.
- Simplified the add_document method in the Workspace class.
- Cleaned up test cases related to document operations in WorkspacesAPI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant