* feat(database): add trim option for string field
* refactor(database): change to setDataValue instead of hooks
* fix(database): fix test case of view collection
* fix: unix timestamp accuracy
* fix: unixTimestamp support int value
* fix: tojson
* fix(database): fix unix timestamp input value on number type
* chore(database): remove only in test
---------
Co-authored-by: katherinehhh <katherine_15995@163.com>
Co-authored-by: mytharcher <mytharcher@gmail.com>
* feat: pub/sub manager
* fix: test case
* fix: test error
* fix: test error
* feat: skip self
* feat: debounce
* feat: improve code
* fix: test error
* feat: test cases
* feat: test cases
* fix: improve code
* fix: improve code
* feat: improve code
* fix: improve code
* fix: test case
* fix: typo
* fix: createPubSubManager
* fix: delete messageHandlers
* fix: test case
* feat: improve code
* fix: test error
* fix: test error
* refactor(server): adapt to new api and fix test
* fix(plugin-data-source-main): fix changed api
* fix: test error
* fix: remove sync-manager test case
* chore(server): remove legacy code
* fix(plugin-workflow): fix send sync message with transaction
* chore(server): remove legacy code
* chore(server): remove legacy code
* fix(plugin-workflow): fix test case
* fix(plugin-workflow): fix test case
* test(server): test skip-install parameter in cluster
* test(server): avoid multiple installation in cluster
* test(server): installation in cluster
* feat: sync collection using sync manager (#4920)
* chore: sync collection message
* chore: sync acl
* fix: typo
* chore: sync data source
* chore: remove collection
* fix: typo
* fix: test
* chore: sync sub app event
* chore: sync collection test
* chore: collection test
* chore: test
* chore: data source sync message
* chore: sync multi app
* chore: test
* chore: test
* chore: test
* chore: test
* chore: test
* chore: error message
* fix(server): add type and remove log
* fix(server): not to publish when adpater is not connected
* refactor(server): refine types
* chore: timeout
* fix(server): fix pubSubManager options
* test(ci): test ci checkout
* feat(server): add lock manager to server
* feat: update ci
* feat: pub/sub manager (#4933)
* feat: pub/sub manager
* fix: test case
* fix: test error
* fix: test error
* feat: skip self
* feat: debounce
* feat: improve code
* fix: test error
* feat: test cases
* feat: test cases
* fix: improve code
* fix: improve code
* feat: improve code
* fix: improve code
* fix: test case
* fix: typo
* fix: createPubSubManager
* fix: delete messageHandlers
* fix: test case
* feat: improve code
* fix: test error
* fix: test error
* refactor(server): adapt to new api and fix test
* fix(plugin-data-source-main): fix changed api
* fix: test error
* fix: remove sync-manager test case
* chore(server): remove legacy code
* fix(plugin-workflow): fix send sync message with transaction
* chore(server): remove legacy code
* chore(server): remove legacy code
* fix(plugin-workflow): fix test case
* fix(plugin-workflow): fix test case
* test(server): test skip-install parameter in cluster
* test(server): avoid multiple installation in cluster
* test(server): installation in cluster
* feat: sync collection using sync manager (#4920)
* chore: sync collection message
* chore: sync acl
* fix: typo
* chore: sync data source
* chore: remove collection
* fix: typo
* fix: test
* chore: sync sub app event
* chore: sync collection test
* chore: collection test
* chore: test
* chore: data source sync message
* chore: sync multi app
* chore: test
* chore: test
* chore: test
* chore: test
* chore: test
* chore: error message
* fix(server): add type and remove log
* fix(server): not to publish when adpater is not connected
* refactor(server): refine types
* chore: timeout
* fix(server): fix pubSubManager options
* test(ci): test ci checkout
---------
Co-authored-by: mytharcher <mytharcher@gmail.com>
Co-authored-by: ChengLei Shao <chareice@live.com>
* refactor(server): refactor api and local lock
* refactor(server): change variable names and use singleton for local lock
* fix: lockManager.close
* refactor(server): adjust types
* feat(server): add api
* refactor(core): move lock-manager to independent package to be used in db
* refactor(plugins): change to new lock manager to use locks
* fix(auth): fix test case
* chore: ttl of sort field lock
* fix: ttl
* fix(plugins): revert lock usage back for some plugins
* refactor(plugin-field-sort): move sort field to plugin
* chore: update build ci
* fix(server): fix build errors
* fix(plugin-field-sort): fix test case
* fix(plugin-field-sort): fix register move action
* fix(plugin-field-sort): fix load logic
* fix(plugin-data-source-main): fix lock usage
* chore(plugin-data-source-main): remove unused import
* fix(server): fix import crypto in pub sub manager (#5111)
* fix(plugin-field-sort): fix build and test cases
* fix(plugin-user-data-sync): fix test with sort field
* fix(plugin-users): fix test with sort field
---------
Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: ChengLei Shao <chareice@live.com>
* feat(database): allows to filter child nodes in tree collections (#4770)
* feat(collection-tree): add collection tree plugin
* feat(collection-tree): add collection tree path handle function
* feat(collection-tree): add collection tree path root and depth column handle function
* feat(collection-tree): add exist tree collection data migrate function
* feat(collection-tree): improve exist tree collection data migrate function
* feat(collection-tree): improve exist tree collection data migrate function
* feat(collection-tree): add collection tree to build in plugin
* feat(collection-tree): modify collection tree plugin version
* feat(collection-tree): fix collection tree build bug
* feat(collection-tree): fix tree collection path create bug and add tree table search function
* feat(collection-tree): add tree table pagination function
* feat(collection-tree): fix tree table pagination function
* feat(collection-tree): fix tree table pagination function
* feat(collection-tree): fix tree table search function
* feat(collection-tree): fix tree table search function
* feat(collection-tree): improve tree table search filter function
* feat(collection-tree): update collection tree plugin version and preset package dependancy
* feat(collection-tree): improve tree collection function
* feat(collection-tree): remove the duplicate function
* feat(collection-tree): fix tree collection db exist bug
* feat(collection-tree): improve tree collection db variable name
* feat(collection-tree): remove migration file
* feat(collection-tree): add collection tree sync create function
* feat(collection-tree): add collection tree sync create function
* feat(collection-tree): disable collection tree search function
* feat(collection-tree): enable collection tree search function
* feat(collection-tree): modify collection tree signal to adapt test case
* feat(collection-tree): modify code to fix test case
* feat(collection-tree): improve code and abstract define collection tree path
* feat(collection-tree): modify rootPK to rootPk to avoid underscored behavior
* feat(collection-tree): update collection tree version and add collection tree plugin for test
* feat(collection-tree): fix filter collection tree root null bug
* feat(collection-tree): migrate tree test case to collection tree plugin directory
* feat(collection-tree): add transaction for collection tree table delete
* feat(collection-tree): fix collection tree switch bug
* feat(collection-tree): remove tree filter switch
* feat(collection-tree): fix test case
* feat(collection-tree): fix test case
* feat(collection-tree): fix DB UNDERSCORED bug
* feat(collection-tree): fix relate collections not exist bug
* feat(collection-tree): add common parent function
* feat(collection-tree): add compatible function for sqlite
* feat(collection-tree): modify collection tree path create method
* feat(collection-tree): migrate tree test case to no acl
* feat(collection-tree): migrate tree test case to no acl and fix collections undefined bug
* feat(collection-tree): migrate tree test case
* feat(collection-tree): fix test case bug
* feat(collection-tree): fix test case bug
* feat(collection-tree): fix test case bug
* feat(collection-tree): improve tree search function
* feat(collection-tree): merge the next branch code to fix confilct
* feat(collection-tree): merge the next branch code to fix confilct
* feat(collection-tree): merge the next branch code to fix confilct
* feat(collection-tree): split the collection tree test to new file and fix filterbytk bug
* feat(collection-tree): fix filter tree collection primary key bug
* feat(collection-tree): remove recursive test case and fix collection tree filter bug
* feat(collection-tree): fix collection tree filter bug
* feat(collection-tree): fix collection tree filter bug and modify test case
* feat(collection-tree): add parentid column for tree collection and modify test case
* feat(collection-tree): disable sync exist tree collection path table create logic
* feat(collection-tree): add sync exist tree collection path table create logic on plugin afterLoad
* feat(collection-tree): remove debug code
* feat(collection-tree): fix collection tree delete bug
* feat(collection-tree): improve collection tree filter find and count implement
* feat(collection-tree): improve path table name variable implement
* feat(collection-tree): remove unnecessary plugin for test case code
* feat(collection-tree): add await for delete synchronous path function
* feat(collection-tree): improve tree path create function
* feat(collection-tree): remove unnecessary code
* feat(collection-tree): remove unnecessary code
* feat(collection-tree): improve tree path create function
* feat(collection-tree): improve tree filter function
* feat(collection-tree): improve tree filter datasource to dynamic
* feat(collection-tree): improve find common parent code
* feat(collection-tree): add collection tree path table not found warning log
* feat(collection-tree): improve get collection primary key implementation
* feat(collection-tree): fix tree root path not delete bug and tree path definition bug
* feat(collection-tree): fix findAndCount function variable definition bug
* feat(collection-tree): modify migrate exist collection tree migration function
* feat(collection-tree): correct variable name
* feat(collection-tree): remove duplicate code
* feat(collection-tree): fix sync exist collection tree path function variable bug
* feat(collection-tree): improve collection tree path update logic
* feat(collection-tree): remove await for get collection
* test: add test cases
* feat(collection-tree): modify filter parameter for collection tree
* feat(collection-tree): remove await for get collection
* feat(collection-tree): remove necessary code
* feat(collection-tree): add exist tree collection path migration function
* feat(collection-tree): remove unused sync exist tree collection table function
* feat(collection-tree): use get method to replace use dataValues function
* feat(collection-tree): use get method to replace use dataValues function
* feat(collection-tree): fix migration rootPk variable bug
* feat(collection-tree): use get method to replace use dataValues function
* feat(collection-tree): improve get tree path logic
* feat(collection-tree): remove unused test case code
* feat(collection-tree): add sync collection tree test case
* feat(collection-tree): add tree path test case and fix migration bug
* feat(collection-tree): add migration db variable
* feat(collection-tree): change logger function
* feat(collection-tree): remove unused library
* feat(collection-tree): add plugin information
* feat(collection-tree): remove await for get collection and use this.db instead of this.app.db
* feat(collection-tree): improve the performance of exist data migration to path table
* feat(collection-tree): modify get tree path implement to avoid infinite loop bug
* feat(collection-tree): fix path create bug
* feat(collection-tree): add index for path table
* feat(collection-tree): fix related node path bug when some node parent changed
* feat(collection-tree): add transaction for get tree path function
* feat(collection-tree): add tree path test case
* feat(collection-tree): change parent field id name to dynamic
* feat(collection-tree): migrate some test case to path.test.ts file
* feat(collection-tree): add some test case for path table
* feat(collection-tree): fix sqlite and mysql json type search path data bug
* feat(collection-tree): fix sqlite query related data sql bug
* feat(collection-tree): fix list action test case query data with related data bug
* feat(collection-tree): try to fix mysql test case bug to remove index
* feat(collection-tree): remove unnecessary code
* chore: string field with length option
* feat(collection-tree): change path type to string and set max length to 1024
* fix: merge conflicts
* feat(collection-tree): modify query path filter to adapt the path change to string
* feat(collection-tree): remove append parent condition
* feat(collection-tree): split the path test case
* feat(collection-tree): remove unused code and fix test case plugin bug
* feat(collection-tree): improve get tree path implementation
* feat(collection-tree): disable one failed test case for full test
* feat(collection-tree): add transaction for collection tree migration
* feat(collection-tree): fix collection tree migration bug
* feat(collection-tree): remove sqlite handle condition code
* feat(collection-tree): add tree test case
* feat(collection-tree): add tree test case
* feat(collection-tree): modify test case to match the expection
* feat(collection-tree): modify tree implementation to root parent
* feat(collection-tree): remove unused function
* feat(collection-tree): add count function to solve tree data pagination implementation
* feat(collection-tree): split tree failed test case to legacy file
* feat(collection-tree): correct legacy tree test case to expection
* feat(collection-tree): add new tree test for legacy test case to meet expection
* feat(collection-tree): fix legacy test case to meet expection
* feat(collection-tree): modify legacy test case to meet expection and add new test case
* feat(collection-tree): improve tree test case
* feat(collection-tree): improve tree test case
* feat(collection-tree): improve tree test case
* feat(collection-tree): add tree test case
* feat(collection-tree): add tree count test case
* feat(collection-tree): add tree find and count test case
* feat(collection-tree): add tree find one test case
* feat(collection-tree): improve migration get path performance
* feat(collection-tree): improve get tree path function to avoid undefined parent data situation
* feat(collection-tree): add tree and raw parameter variable
* fix: test
* feat(collection-tree): modify index length
* feat(collection-tree): fix index snake case bug
* feat(collection-tree): improve tree filter search
* feat(collection-tree): fix tree search pagination parameter omit bug
* chore: optimize
* chore: optimize
* fix: build
* fix: type
* fix: bug
* chore: move tree repo to plugin
* fix: build
* fix: test
* chore: remove ts-ignore
* fix: issue of getting filter target key
---------
Co-authored-by: xilesun <2013xile@gmail.com>
Co-authored-by: Chareice <chareice@live.com>
* fix(tree): issue of building tree node map (#5072)
---------
Co-authored-by: jimmy201602 <zhengge2012@gmail.com>
Co-authored-by: xilesun <2013xile@gmail.com>
Co-authored-by: Chareice <chareice@live.com>
* feat(collection-tree): add collection tree plugin
* feat(collection-tree): add collection tree path handle function
* feat(collection-tree): add collection tree path root and depth column handle function
* feat(collection-tree): add exist tree collection data migrate function
* feat(collection-tree): improve exist tree collection data migrate function
* feat(collection-tree): improve exist tree collection data migrate function
* feat(collection-tree): add collection tree to build in plugin
* feat(collection-tree): modify collection tree plugin version
* feat(collection-tree): fix collection tree build bug
* feat(collection-tree): fix tree collection path create bug and add tree table search function
* feat(collection-tree): add tree table pagination function
* feat(collection-tree): fix tree table pagination function
* feat(collection-tree): fix tree table pagination function
* feat(collection-tree): fix tree table search function
* feat(collection-tree): fix tree table search function
* feat(collection-tree): improve tree table search filter function
* feat(collection-tree): update collection tree plugin version and preset package dependancy
* feat(collection-tree): improve tree collection function
* feat(collection-tree): remove the duplicate function
* feat(collection-tree): fix tree collection db exist bug
* feat(collection-tree): improve tree collection db variable name
* feat(collection-tree): remove migration file
* feat(collection-tree): add collection tree sync create function
* feat(collection-tree): add collection tree sync create function
* feat(collection-tree): disable collection tree search function
* feat(collection-tree): enable collection tree search function
* feat(collection-tree): modify collection tree signal to adapt test case
* feat(collection-tree): modify code to fix test case
* feat(collection-tree): improve code and abstract define collection tree path
* feat(collection-tree): modify rootPK to rootPk to avoid underscored behavior
* feat(collection-tree): update collection tree version and add collection tree plugin for test
* feat(collection-tree): fix filter collection tree root null bug
* feat(collection-tree): migrate tree test case to collection tree plugin directory
* feat(collection-tree): add transaction for collection tree table delete
* feat(collection-tree): fix collection tree switch bug
* feat(collection-tree): remove tree filter switch
* feat(collection-tree): fix test case
* feat(collection-tree): fix test case
* feat(collection-tree): fix DB UNDERSCORED bug
* feat(collection-tree): fix relate collections not exist bug
* feat(collection-tree): add common parent function
* feat(collection-tree): add compatible function for sqlite
* feat(collection-tree): modify collection tree path create method
* feat(collection-tree): migrate tree test case to no acl
* feat(collection-tree): migrate tree test case to no acl and fix collections undefined bug
* feat(collection-tree): migrate tree test case
* feat(collection-tree): fix test case bug
* feat(collection-tree): fix test case bug
* feat(collection-tree): fix test case bug
* feat(collection-tree): improve tree search function
* feat(collection-tree): merge the next branch code to fix confilct
* feat(collection-tree): merge the next branch code to fix confilct
* feat(collection-tree): merge the next branch code to fix confilct
* feat(collection-tree): split the collection tree test to new file and fix filterbytk bug
* feat(collection-tree): fix filter tree collection primary key bug
* feat(collection-tree): remove recursive test case and fix collection tree filter bug
* feat(collection-tree): fix collection tree filter bug
* feat(collection-tree): fix collection tree filter bug and modify test case
* feat(collection-tree): add parentid column for tree collection and modify test case
* feat(collection-tree): disable sync exist tree collection path table create logic
* feat(collection-tree): add sync exist tree collection path table create logic on plugin afterLoad
* feat(collection-tree): remove debug code
* feat(collection-tree): fix collection tree delete bug
* feat(collection-tree): improve collection tree filter find and count implement
* feat(collection-tree): improve path table name variable implement
* feat(collection-tree): remove unnecessary plugin for test case code
* feat(collection-tree): add await for delete synchronous path function
* feat(collection-tree): improve tree path create function
* feat(collection-tree): remove unnecessary code
* feat(collection-tree): remove unnecessary code
* feat(collection-tree): improve tree path create function
* feat(collection-tree): improve tree filter function
* feat(collection-tree): improve tree filter datasource to dynamic
* feat(collection-tree): improve find common parent code
* feat(collection-tree): add collection tree path table not found warning log
* feat(collection-tree): improve get collection primary key implementation
* feat(collection-tree): fix tree root path not delete bug and tree path definition bug
* feat(collection-tree): fix findAndCount function variable definition bug
* feat(collection-tree): modify migrate exist collection tree migration function
* feat(collection-tree): correct variable name
* feat(collection-tree): remove duplicate code
* feat(collection-tree): fix sync exist collection tree path function variable bug
* feat(collection-tree): improve collection tree path update logic
* feat(collection-tree): remove await for get collection
* test: add test cases
* feat(collection-tree): modify filter parameter for collection tree
* feat(collection-tree): remove await for get collection
* feat(collection-tree): remove necessary code
* feat(collection-tree): add exist tree collection path migration function
* feat(collection-tree): remove unused sync exist tree collection table function
* feat(collection-tree): use get method to replace use dataValues function
* feat(collection-tree): use get method to replace use dataValues function
* feat(collection-tree): fix migration rootPk variable bug
* feat(collection-tree): use get method to replace use dataValues function
* feat(collection-tree): improve get tree path logic
* feat(collection-tree): remove unused test case code
* feat(collection-tree): add sync collection tree test case
* feat(collection-tree): add tree path test case and fix migration bug
* feat(collection-tree): add migration db variable
* feat(collection-tree): change logger function
* feat(collection-tree): remove unused library
* feat(collection-tree): add plugin information
* feat(collection-tree): remove await for get collection and use this.db instead of this.app.db
* feat(collection-tree): improve the performance of exist data migration to path table
* feat(collection-tree): modify get tree path implement to avoid infinite loop bug
* feat(collection-tree): fix path create bug
* feat(collection-tree): add index for path table
* feat(collection-tree): fix related node path bug when some node parent changed
* feat(collection-tree): add transaction for get tree path function
* feat(collection-tree): add tree path test case
* feat(collection-tree): change parent field id name to dynamic
* feat(collection-tree): migrate some test case to path.test.ts file
* feat(collection-tree): add some test case for path table
* feat(collection-tree): fix sqlite and mysql json type search path data bug
* feat(collection-tree): fix sqlite query related data sql bug
* feat(collection-tree): fix list action test case query data with related data bug
* feat(collection-tree): try to fix mysql test case bug to remove index
* feat(collection-tree): remove unnecessary code
* chore: string field with length option
* feat(collection-tree): change path type to string and set max length to 1024
* fix: merge conflicts
* feat(collection-tree): modify query path filter to adapt the path change to string
* feat(collection-tree): remove append parent condition
* feat(collection-tree): split the path test case
* feat(collection-tree): remove unused code and fix test case plugin bug
* feat(collection-tree): improve get tree path implementation
* feat(collection-tree): disable one failed test case for full test
* feat(collection-tree): add transaction for collection tree migration
* feat(collection-tree): fix collection tree migration bug
* feat(collection-tree): remove sqlite handle condition code
* feat(collection-tree): add tree test case
* feat(collection-tree): add tree test case
* feat(collection-tree): modify test case to match the expection
* feat(collection-tree): modify tree implementation to root parent
* feat(collection-tree): remove unused function
* feat(collection-tree): add count function to solve tree data pagination implementation
* feat(collection-tree): split tree failed test case to legacy file
* feat(collection-tree): correct legacy tree test case to expection
* feat(collection-tree): add new tree test for legacy test case to meet expection
* feat(collection-tree): fix legacy test case to meet expection
* feat(collection-tree): modify legacy test case to meet expection and add new test case
* feat(collection-tree): improve tree test case
* feat(collection-tree): improve tree test case
* feat(collection-tree): improve tree test case
* feat(collection-tree): add tree test case
* feat(collection-tree): add tree count test case
* feat(collection-tree): add tree find and count test case
* feat(collection-tree): add tree find one test case
* feat(collection-tree): improve migration get path performance
* feat(collection-tree): improve get tree path function to avoid undefined parent data situation
* feat(collection-tree): add tree and raw parameter variable
* fix: test
* feat(collection-tree): modify index length
* feat(collection-tree): fix index snake case bug
* feat(collection-tree): improve tree filter search
* feat(collection-tree): fix tree search pagination parameter omit bug
* chore: optimize
* chore: optimize
* fix: build
* fix: type
* fix: bug
* chore: move tree repo to plugin
* fix: build
* fix: test
* chore: remove ts-ignore
* fix: issue of getting filter target key
---------
Co-authored-by: xilesun <2013xile@gmail.com>
Co-authored-by: Chareice <chareice@live.com>
* refactor: uuid & nanoid support default value
* chore: autoFill attribute in uuid & nanoid field
* chore: test
---------
Co-authored-by: Chareice <chareice@live.com>
* feat: mariadb support
* feat: mariadb test
* chore: mariadb test
* chore: test
* fix: sort field test
* fix: sort field test
* fix: test
* fix: test
* fix(bi): chart query support mariadb
* chore: test timeout
* chore: test
---------
Co-authored-by: xilesun <2013xile@gmail.com>
* fix: sort by association collection
* fix: test
* chore: test
* chore: create sortfield if hasmany sortable set true
* fix: drag sort
* chore: update sort by options
* chore: sync collection after update sortBy
* chore: test
* chore: test
* chore: test
* fix: sort by
* fix: model.syncSortByField
* fix: hasmany only
* fix: sortBy
---------
Co-authored-by: chenos <chenlinxh@gmail.com>
* chore: yarn.lock
* feat: add jsonb option in field drawer
* feat: only postgres can use JSONB
* chore: add test
* refactor: make better
* fix: fix build
* fix: fix build
* fix: should disable JSONB on editing field