- Added a new package `@teable/v2-field-dependency-core` to manage field dependencies, including edge-building and parsing functionalities.
- Implemented various utility functions for constructing dependency edges, parsing options, and extracting condition field IDs.
- Created comprehensive tests for the new functionalities, ensuring robust validation of field dependency chains and edge cases.
- Enhanced existing packages to integrate with the new field dependency core, improving overall architecture and maintainability.
These changes establish a foundational structure for managing field dependencies, facilitating better data relationships and computations across the system.
- Adjusted expectations in computed field update tests to reflect changes in the number of steps in various computed plans.
- Updated inline snapshots to ensure they accurately represent the computed steps after recent optimizations.
- Enhanced assertions to verify the presence of rollup and symmetric link steps in computed plans, improving test coverage and reliability.
These changes ensure that the tests accurately validate the behavior of computed field updates in different scenarios.
- Updated TableMetaPage to use the Link component from react-router instead of the navigate function for record navigation.
- Removed the handleOpenRecord function and adjusted the button to a Link for improved routing and user experience.
- This change enhances the clarity of navigation within the playground component, aligning with best practices for routing in React applications.
- Integrated field type icons into the RecordDetailCard component for improved visual representation of fields.
- Updated the layout to include icons alongside field names, enhancing user experience and clarity in data presentation.
These changes improve the usability of the playground by providing a more informative and visually appealing record detail view.
Fix incorrect path alias pointing to non-existent package. This was causing
TypeScript to fail resolving @teable/v2-adapter-table-repository-postgres
imports unless packages were built first.
- adapter-schema-repository-postgres -> adapter-table-repository-postgres
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
ConditionalRollup and conditionalLookup fields now correctly register
dependencies on fields referenced in their filter conditions. When these
fields change, the computed field will recalculate.
- Add conditionFieldIds extraction from filter objects
- Create cross_record dependency edges for each condition field
- Update snapshots for new edge counts
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
- Add tables create command to create tables from JSON schema
- Add tables describe-schema command to output field schema documentation
- Add SchemaChecker service to validate table schemas
- Add TableCreator service to create tables via commandBus
- Fix MockRecordsLive to use transaction for insert (fixes tmp_computed_dirty error)
- Update SKILL.md with new commands documentation
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
- Introduced a new package for generating mock/fake data for Teable v2 tables.
- Implemented CLI commands for generating test data, seeding tables, and creating sample records.
- Added support for reproducible data generation using seeds and dry-run options for previewing data.
- Enhanced documentation to guide users on how to utilize the mock records generator effectively.
- Integrated with existing dependencies and ensured compatibility with localhost PostgreSQL connections for security.
- Added a new adapter for PostgreSQL table repository, including necessary configurations and types.
- Implemented various utility functions and query builders to enhance database interactions.
- Updated existing packages to integrate with the new adapter, ensuring compatibility and improved functionality.
- Removed obsolete files and configurations from the previous adapter to streamline the codebase.
- Add CreateRecordsStreamCommand/Handler for batch record creation
- Add ImportCsvCommand/Handler for CSV file import with auto table creation
- Add ICsvParser port and PapaparseCsvParser adapter
- Add insertManyStream to ITableRecordRepository for streaming inserts
- Add internal batching to PostgresTableRecordRepository.insertMany to bypass PG param limit
- Add Table.createRecordsStream() generator for memory-efficient batch creation
- Register csvParser in browser, node, and test containers
- Add ImportCsvDialog component in Playground UI
- Add importCsv endpoint to contract-http and ORPC router
- Add e2e tests for CSV import (10 test cases)
- Add benchmark tests for streaming vs non-streaming record creation