Commit Graph

58 Commits

Author SHA1 Message Date
ChengLei Shao
351bb88245
fix: postgres array operator (#200) 2022-02-20 10:33:26 +08:00
ChengLei Shao
86e0f071e4
fix: nest append (#194) 2022-02-17 12:56:52 +08:00
ChengLei Shao
99bfd75776
fix: test with database (#193)
* fix: ui schema test

* fix: sqlite array query

* fix: acl test

* fix: plugin-users test

* fix: database test with postgres

* fix: test with db.getTablePrefix

* fix: test with mysql database

* fix: test with sqlite database

* fix: test with  mysql

* fix: test order with mysql

* chore: test clean database

* chore: mockServer clean

* chore: app cleanDb

* chore: plugin-users cleanDb
2022-02-15 22:32:02 +08:00
chenos
6bf416d5c4 fix(database): remove dropAllTables 2022-02-15 09:09:13 +08:00
chenos
c5f639338f refactor: mockDatabase 2022-02-15 00:20:25 +08:00
chenos
db3285d452 fix(database): mock db 2022-02-13 13:41:17 +08:00
chenos
16d07e9b4a feat: add sortable parameter to collection options 2022-02-11 14:34:33 +08:00
ChengLei Shao
15950ece05
Application (#175)
* feat: getRepository

* getRepository return type

* export action

* add: acl

* feat: setResourceAction

* feat: action alias

* chore: code struct

* feat: removeResourceAction

* chore: file name

* ignorecase

* remove ACL

* feat: ACL

* feat: role toJSON

* using emit

* chore: test

* feat: plugin-acl

* feat: acl with predicate

* grant universal action test

* grant action test

* update resource action test

* revoke resource action

* usingActionsConfig switch

* plugin-ui-schema-storage

* remove global acl instance

* fix: collection manager with sqlite

* add own action listener

* add acl middleware

* add acl allowConfigure strategy option

* add plugin-acl allowConfigure

* change acl resourceName

* add acl middleware merge params

* bugfix

* append fields on acl action params

* acl middleware parse template

* fix: collection-manager migrate

* add acl association field test

* feat(plugin-acl): grant association field actions

* chore(plugin-acl): type name

* feat(plugin-acl): regrant actions on resource action update

* feat(plugin-acl): regrant action on field destroy

* fix(plugin-acl): test

* fix(plugin-acl): test run

* feat(plugin-acl): set default role

* feat(plugin-users): set user default role

* test(plugin-users): create user with role

* feat(plugin-users): create user with role

* feat(application): application hook

* feat(database): reconnect

* feat(database): application life cycle

* feat(database): sync with option

* feat(database): hook position

* feat(database): hook position

* feat(database): remove load in start

* fix(application): get plugin

* feat(test): loadAndInstall

* feat: improve code

* feat: improve code

* fix: listen options

* fix: bug

* test(database): add test case

Co-authored-by: chenos <chenlinxh@gmail.com>
2022-01-30 11:11:36 +08:00
ChengLei Shao
f67658129f
Feat/plugin UI schema v0.6 (#143)
* v0.6

* plugin-ui-schema: insert && getJsonSchema

* plugin-ui-schema: insert schema with sort

* plugin-ui-schema: node with x-index

* insert adjacent method

* chore: insert

* typo

* insert with x-uid

* fix: getSchema by subtree

* add ui-schema actions

* fix: mysql compatibility

* remove ui-schema when remove node tree

* ui schema patch

* ui_schemas.create

* test cases

* test cases

* fix(database): reset changed before update

* feat: insert ui schema node after created

* feat:  patch ui schema node after updated

* fix: sqlite error

* uid

* cleanup

* test cases

* feat: ui_schema items type support

* fix: insert items node

* fix: get inner type

* change items struct

* add insert return value

* add insert return value

Co-authored-by: chenos <chenlinxh@gmail.com>
2022-01-19 10:09:30 +08:00
ChengLei Shao
fd32705954
feat: acl (#153)
* feat: getRepository

* getRepository return type

* export action

* add: acl

* feat: setResourceAction

* feat: action alias

* chore: code struct

* feat: removeResourceAction

* chore: file name

* ignorecase

* remove ACL

* feat: ACL

* feat: role toJSON

* using emit

Co-authored-by: chenos <chenlinxh@gmail.com>
2022-01-18 16:38:03 +08:00
ChengLei Shao
246737906d
Feat/GitHub actions (#148)
* test github actions

* mod: github actions

* mod: github actions

* fix: yarn build

* fix: database pk key error

* fix: test

* skip failed tests

* github test with sqlite && mysql

* fix: mysql query error
2022-01-08 17:16:11 +08:00
chenos
10d520c22a feat: customizable magicAttribute 2022-01-07 22:06:31 +08:00
chenos
103a170917 add test case for magic-attribute-model 2022-01-07 21:47:10 +08:00
ChengLei Shao
2bf09bf9bb
feat: filter by target key (#146)
* feat: filter by target key

* fix: repository test

* change type name

* chore: test

* change PrimaryKey type to TargetKey

* rename filterTargetKey

* rename variables

* change option parser constructor

* add option parser targetKey

* change filter parser constructor

* fix: custom model

Co-authored-by: chenos <chenlinxh@gmail.com>
2022-01-07 20:08:01 +08:00
ChengLei Shao
79ba391aee
refactor: actions (#137)
* db test

* associated list action

* associated list action

* fix belongs to many repository test

* create action

* update action

* add update & destroy has one

* get action

* add action

* set action

* remove action

* toggle action

* chore: code import

* add sort field mutex

* change field mutex position

* feat: handle sort field scope change

* feat: sort actions

* fix: add action

* rename sort action to move action

* more actions params

* feat: repository destroy with filter and filterByPK

* feat: hasmany repository destroy with filter and filterByPK

* feat: belongsToMany repository destroy with filter and filterByPK

* fix: actions tests lock error

* feat: code cleanup

Co-authored-by: chenos <chenlinxh@gmail.com>
2021-12-16 16:46:54 +08:00
Chareice
8f0a71a1cf feat: collection autoGenId option 2021-12-16 10:58:51 +08:00
Chareice
9ff6575cff feat: filter with filterByPK 2021-12-12 19:57:20 +08:00
Chareice
90846686ac fix: update association value 2021-12-08 13:00:09 +08:00
chenos
bf2840b089
feat: context field type support (#131)
* feat: context field type support

* fix: missing options
2021-12-07 21:19:28 +08:00
Chareice
30e31a2e79 update options 2021-12-07 15:43:14 +08:00
Chareice
feea1bef48 fix array field update 2021-12-07 15:29:32 +08:00
chenos
732d31009e v0.6 2021-12-06 21:23:34 +08:00
ChengLei Shao
05ecb25d1b
feat: create nocobase app with simple & quickstart option (#87)
* feat: create nocobase app with simple & quickstart option

* chore: delete template file

* create-nocobase-app: add env API_PORT fallback

* chore: log

* env default fallback

* move config dir

* change has yarn

* chore: prettier

* fix: npm running issue

* database testing support sqlite

* once...

* chore: typo

* fix: sqlite test

* update readme

* feat: copy .env.example to .env at create-nocobase-app

* create-nocobase-app: change sqlite3 to github master

* create-nocobase-app: .env template

* create-nocobase-app: update .env

* chore: typo

* update README

* chore: Application constructor

* feat: sqlite demo data support

* fix test

* fix: application error

* chore: plugin-client run sql

* fix: application createCli

* fix: can choose whether to register actions

* chore: model compile error

* fix: support sqlite

* fix: demo data set index sequence on postgresql

* chore: code reduce

* fix: operators are compatible with sqlite

* add impor demo option to init command

* update env

Co-authored-by: chenos <chenlinxh@gmail.com>
2021-10-18 12:49:37 +08:00
chenos
248d59f6ec feat: improve code 2021-09-14 11:09:26 +08:00
chenos
c182c29161 feat: improve code 2021-09-08 00:18:41 +08:00
chenos
a8cd70017b feat add event emitter support to database 2021-09-07 00:28:16 +08:00
chenos
af02a895c3 lots of updates 2021-07-11 22:20:54 +08:00
chenos
18825af43d fix: async mode recommended over sync mode 2021-03-30 06:12:08 +08:00
chenos
ce4a22fbb9 style: code formatting 2021-03-28 13:34:51 +08:00
chenos
1242ba5aed feat: improve database.sync() 2021-01-14 10:35:15 +08:00
chenos
e51ee7d1e6 refactor: table.extend() method 2021-01-13 15:43:41 +08:00
chenos
b81b83d3f3 fix: do not change the field type 2021-01-08 15:49:37 +08:00
Junyi
62a7cc2b1f
test: skip bug test cases for ci passing (#52) 2021-01-05 15:19:36 +08:00
chenos
eafdddcd4d fix: allow set null with updateAssociations 2021-01-02 22:30:13 +08:00
Junyi
9fcf6fbd59
fix: avoid bug when update other field (#51)
* fix: avoid bug when update other field

* fix: optimize logic
2021-01-01 11:42:45 +08:00
Junyi
435cd9a7c9
feat: date-only operators (#50)
* feat: date-only operators

* feat: add opposite operators

* fix: use moment to parse date string

* fix: remove additional moment dependency.

* modify date filter operators

Co-authored-by: chenos <chenlinxh@gmail.com>
2020-12-30 14:05:28 +08:00
Junyi
3e75bbe6c3
Feature field for set default (#49)
* feat: add AsDefault field type

* fix: association definition in test case

* fix: logic of field as default in bulkCreate

* fix: change to asDefault field

* refactor: rename to radio and move unit test cases back to database package

* change to radio

Co-authored-by: chenos <chenlinxh@gmail.com>
2020-12-28 23:13:17 +08:00
Junyi
b2fe087fc2
Feature: custom operators for querying (#48)
* feat: add some custom operators for querying

* feat: add some custom operators for querying

* test: fix cases

* improve custom operator function

* improve filter field component

Co-authored-by: chenos <chenlinxh@gmail.com>
2020-12-28 21:08:13 +08:00
Junyi
57003c6c02
fix: toInclude bug with nested associations (#47) 2020-12-24 07:21:46 +08:00
chenos
1006b1a9a5 feat: add sub fields for the relation field 2020-12-16 10:17:30 +08:00
chenos
67e18352b6 add hooks for database 2020-12-15 20:16:55 +08:00
Junyi
787d2b611f
fix: Symbol property could not be iterated in for-in (#39) 2020-12-12 22:10:44 +08:00
Junyi
5662509f4c
Feature/sort (#38)
* refactor: change sort strategy from offset to targetId

* fix: remove unnecessary query to optimize performance

* refactor: change sort api to allow object

* refactor: change function member positions

* fix: test case names

* fix: static to instance
2020-12-12 16:38:08 +08:00
Junyi
841249f58c
Feature/sort (#36)
* feat: add sort value initialization via beforeCreate hook

* fix: after reinitialization, hooks are lost

* test: temp test for hook

* fix: hooks defined in the table options does not work

* refactor: change sort config into sort type field and fix updateAssociations to create with foreignKey

* refactor: abstract utility functions

* fix: type definition

* fix: type and where value type

Co-authored-by: chenos <chenlinxh@gmail.com>
2020-12-11 15:41:03 +08:00
chenos
437c49d211 refactor: change the field type names to uppercase 2020-12-10 14:47:13 +08:00
chenos
e86b573296 fix: hooks defined in the table options does not work 2020-12-10 11:18:44 +08:00
chenos
a96bf09316 test: add hook test cases 2020-12-10 10:12:27 +08:00
Junyi
7467441276
fix: field filter logic for create/update (#34)
* fix: field filter logic for create/update

* fix: add test cases
2020-12-08 14:27:51 +08:00
Junyi
05f815655f
Fix: change strategy from add to set for updateAssociations (#33)
* test: add belongsTo case

* fix: change update strategy from add to set
2020-12-06 14:28:23 +08:00
chenos
0a0d09119b
Test/ci (#31)
* Create node.js.yml

* fix: npm install command

* fix: try to fix github action fail by use same react version

* fix: try to fix github action fail by use same react version

* fix: try to fix github action fail by use same react version

* fix: try to fix github action fail by use same react version

* fix: try to fix github action fail by build dependencies

* fix: try to fix ci fail by types resolution

* fix: try to fix ci fail by types resolution

* fix: try to fix ci fail by types resolution

* fix: try to fix ci fail by types resolution

* fix: try to fix ci fail by types resolution

* fix: try to fix ci fail by set env

* fix: try to fix ci fail by pg version

* fix: try to fix ci fail by fix types

* fix(test): Type '""' is not assignable to type 'IndexType'.

* fix(test): Type '""' is not assignable to type 'IndexType'

Co-authored-by: Junyi <mytharcher@users.noreply.github.com>
Co-authored-by: mytharcher <mytharcher@gmail.com>
2020-12-05 09:27:24 +08:00