* feat: agent mode and group tools
* feat: optimize code previee and display
* perf: aichat ui
perf: chat agent
* chore: update ai slogan
* chore: add i18n for agent waiting state
* chore: resolve the dev redis connection
* feat: implement mul hybrid coding model (#1685)
* feat: add more agent for ai chat (#1686)
* chore: update i18n
* chore: delete useless component
* perf: first frame for ai panel
* perf: add build base agent for complex apps builder task
* chore: add more buildbase operator
* chore: update teable ai icon
* perf: smooth build base (#1692)
* feat: ai automation (#1710)
* chore: update type and i18n automation ai relative
* chore: update lock file
* perf: build base UI (#1731)
* perf: use queue to show the process of build base
* perf: limit `table`、`field`、`view` display when create base by ai
* feat: create operator by ai need to confirm
* feat: app
* perf: limit model level setting (#1741)
* feat: limit the model for ai chat
* test: update space e2e
* fix: user should not get full ai model info (#1744)
* fix: user should not get full ai model info
* perf: optimise ai integration display
* perf: ai relative ui (#1757)
* fix: delete temperature for supporting `gpt-5` (#1761)
* feat: user friendly interface
* feat: chat attachment (#1762)
* refactor: model setting (#1764)
* perf: agent task UI (#1763)
* perf: update ai config do not trigger ai enable in setting
* perf: build base task list
* chore: update i18n
* style: better dark mode
* chore: permission tips
* chore: better api token create experience
* feat: better shared bases
* feat: better collaborators display
* chore: update agent type
* feat: attachment ui (#1771)
* perf: ai chat abort i18n (#1773)
* feat: update uploadFromUrl params
* perf: add analyze attachment i18 (#1777)
* feat: permission for app
* feat: ai chat add suggestions (#1779)
* perf: ai generate animation border (#1780)
* feat: add app config
* fix: ai preview e2e (#1781)
* fix: ai preview e2e (#1782)
* feat: add app usage limit
* perf: ai ui adjust
* feat: ai ui
* revert: billable
* feat: show all collaborators for space
* fix: free user conflict ai ui (#1785)
* fix: badge show timing
* feat: app usage limit
* feat: add web search (#1789)
* perf: csv excel ai analze (#1790)
* fix: lint error
* perf: add a function to resolve excel and csv
* fix: lint error (#1791)
* perf: ai ui optimise (#1792)
---------
Co-authored-by: caoxing <caoxing9@gmail.com>
Co-authored-by: SkyHuang <sky.huang.fe@gmail.com>
Co-authored-by: Bieber <artist@teable.io>
* feat: add undo redo event
* fix: merge conflict
* fix: use inish instead of end to ensure that the stream operation is closed
* chore: read stream use end
* fix: ensure stream operation closed
* fix: local unit test
* refactor: restructure settings management and introduce OpenAPI endpoints
* refactor: clean up setting module and introduce admin OpenAPI endpoints
* refactor: update app module to include new admin OpenAPI endpoints and clean up imports
* refactor: initialize instanceId in setting service and update schema validation
* fix: enhance e2e tests with CLS context and user management utilities
* chore: remove debug log from e2e test for auth controller
* fix: handle null values in setting service updates and creation
* fix: add check for non-array settings in setting service
* chore: update migration scripts to drop old setting tables and ensure unique index on new settings
* fix: update migration script to convert setting values to JSON format for consistency
* feat: support cell-level permission control
* fix: typecheck error
* refactor: duplicate record response interface
* fix: paste endpoints to return the correct effect ranges
* chore: remove log code
* fix: e2e
* fix: selection unit tests
* feat: handle can't read one field records status
* fix: aggregation search e2e
* fix: ai field and inplace import field permission
* fix: projection is empty array
* fix: search index projection
* fix: e2e
* fix: e2e strict
* feat: support base export and import
* feat: support space template feture
* feat: add link junction table relative import and export
* fix: duplicate table lookup losing link field
* fix: duplicate lookup field error
* chore: add template db-migration
* fix: package error
* feat: use html tag for export notification
* fix: template relative
* fix: lint error
* fix: template e2e
* feat: base export auth
* fix: delete previous snapshot base when create new snapshot
* feat: optimise template category creating process
* fix: import base zip field error
* fix: import base error
* fix: date field type record insert
* fix: view options duplicate
* fix: view share enable duplicate
* fix: view duplicate
* refactor: simplify duplicate logic
* fix: some duplicate base bugs and e2e
* fix: duplicate view with share relative
* feat: update template relative api auth setting
* fix: attachment job judgement when import base
* fix: base import task
* fix: import attachment losing mimetype when import base
* feat: add shareid unique constraint
* fix: get mimetype from file suffix when import base
* feat: add tsvector for search
* feat: add tsvector trigger
* feat: search hits with full text search
* perf: optimize search query logic for speed
* fix: search ts vector with blank
* fix: search e2e test
* fix: index error when enable hidden match field for search
* perf: optimize search sql
* feat: trgm index for search
* perf: brand new search design
* fix: global filter date field type
* feat: add table index repair for search
* test: add search e2e with index
* feat: add create or repair search index tip
* fix: person view take the view condition
* chore: update sqlite search index logic
* test: shield useless e2e
* test: fix sqlite search e2e error
* fix: index length is to long
* chore: delete todo annotation
* fix: delete duplicate field search field
* fix: search cursor out-date when cooperate
* chore: update search relative description
* feat: add enable index tip when rowcount over 10000
* feat: update search index enable tips
* feat: filter boolean and date field when all field search mode
* fix: person view should search abnormal
* fix: lint error
* fix: search e2e test
* feat: add max with for search tooltips
* feat: update search index relative tooltips
* fix: codefactor recomand
---------
Co-authored-by: caoxing <caoxing9@gmail.com>
* feat: trash
* fix: clean up resources for the spaces and bases when permanently deleting
* refactor: rename permanent delete table api
* feat: clean related resources when permanently deleting a space, base or table
* chore: update e2e testing utils
* chore: e2e testing for trash
* chore: trash migration
* fix: the trash id is not correctly obtained
* chore: update unit test
* feat: support to get user information by access token
* feat: oauth server
* feat: oauth server & supplementary e2e
* chore: fix code factor
* chore(db-main-prisma): oauth migration
* fix: oauth-server unit test
* feat: oauth server page
* fix: unit test
* fix: some issues in the oauth process
* fix: oauth e2e
* fix: oauth server unit test
* refactor: remove the functionality of fetching table content (view, field, record) from the API
* chore: public convertProjection method in record.service
* fix: multiple socket connections and resolve readonly user role confusion after snapshot changes
* refactor: sharedb work flow
* chore: remove non-existent var
* chore: remove useless e2e test
* fix: uniform registration of global guard positions to ensure execution order
* fix: e2e set port
* fix: socket error
* chore: remove test code
* feat: add isPending status for field calculation
* feat: optmize static field convert
* refactor: change nodeId to tableId
* feat: add design table page
* feat: better ui for table design
* refactor: view api
* refactor: table api
* fix: test fail
* refactor: sort query
* style: lint fix
* fix: user field aggregation `unique` func
* fix: field value to db value `null`
* style: lint
* chore: update `pnpm-lock.yaml`
---------
Co-authored-by: pengap <penganpingprivte@gmail.com>
* feat: fast and accurate plan
* fix: use dynamic year
* refactor: unified basic query parameters
* fix: sqlite need give count name
* chore: remove qs
* fix: new e2e params
* refactor: attachment and new minio adapter
* fix: unit test
* fix: type error
* fix: repair attachment presignUrl
* fix: e2e run
* refactor: gen presignedUrl
* refactor: remove useless code
* test: change nextjs-app from jest to vitest
* test: change packages from jest to vitest
* fix: remove error jest types
* test: run backend e2e with vitest
* test: remove all jest
* fix: duplicate provider
* test: optimize test setting
* feat: toolbar operator support api collaborate
* feat: move column meta to view from field
feat: supplement view open api
* test: add set view option test
* chore: set env from sqlite to pg
* fix: update column meta getter
* chore: delete legacy annotation
* chore: add migration sql script
* test: move e2e field order test to view
* fix: insert column order should update view column meta
* chore: fix lint warning
* test: fix e2e error because of random fields order