Commit Graph

144 Commits

Author SHA1 Message Date
chenos
301229ef88
feat: route permissions (#58)
* feat: routes permissions

* fix: try to fix roles.pages action

* 多态关联

* bugfix

* fix: auto generate when option value is undefined or null

* feat: add pages' permissions saving/listing

* feat: add permission filter for getRoutes

* roles description

* feat: get root permissions all true and create user with default role

* feat: roles.collections list output with permission

* add permissions description

* fix: add context to parseApiJson

* fix: typo

* 小细节补充

Co-authored-by: mytharcher <mytharcher@gmail.com>
2021-01-22 10:18:02 +08:00
chenos
1242ba5aed feat: improve database.sync() 2021-01-14 10:35:15 +08:00
Junyi
c5f089d7b7
feat: add permissions plugin (#53)
* test: skip bug test cases for ci passing

* feat: add base structure of plugin-permissions

* fix: user token parsing

* Refactor action parameter for better mergeParams (#55)

* refactor: add parameter types to handle parameters in action [WIP]

* fix: action parameter

* fix: test cases

* test: try to fix build error

* remove unused packages

* fix: revert compatibility back

Co-authored-by: chenos <chenlinxh@gmail.com>

* 补充权限界面相关功能

* bugfix

* fix: developer mode does not work

* feat: add action scope and fields limitation in permission

* 改进权限配置表单

* feat: get/update action for role.collection

* add scope select component

* add role users tabs

* typings

* test: temp skip

Co-authored-by: chenos <chenlinxh@gmail.com>
2021-01-13 16:23: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
chenos
6a9bf9572c fix: view filtering does not work 2020-12-31 21:04:03 +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
chenos
519f8de40b fix: improve filters 2020-12-29 14:53:39 +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
chenos
4d07ef5116 chore: allow specific build package 2020-12-24 07:35:53 +08:00
Junyi
57003c6c02
fix: toInclude bug with nested associations (#47) 2020-12-24 07:21:46 +08:00
chenos
40bcfb7edc fix: remove through.updateAssociations 2020-12-22 17:28:30 +08:00
chenos
93d8426c84 feat(database): add afterUpdateAssociations hook 2020-12-21 14:15:08 +08:00
Junyi
8bdbd804f0
feature: add file manager base architecture (#44)
* feature: add file manager base architecture

* 修改 action 注册方式

* put upload action and middleware together

* bugfix

Co-authored-by: chenos <chenlinxh@gmail.com>
2020-12-19 08:45:19 +08:00
Junyi
110d5bcc9c
feat: add createdBy/updatedBy field config for table managed by collections (#43)
* feat: add createdBy/updatedBy field config for table managed by collections

* fix: update by different users and field initialization

* fix: function argument

* add: test cases

Co-authored-by: chenos <chenlinxh@gmail.com>
2020-12-18 09:04:40 +08:00
chenos
59db7a34dc fix: model is not null 2020-12-17 21:47:23 +08:00
chenos
aef6b85736 fix: allow custom sort value 2020-12-16 20:47:10 +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
chenos
a7c9461cc0 fix: remove required parameter from the field options 2020-12-13 17:16:54 +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
d1372e273a
refactor: change sort strategy from offset to targetId (#37)
* refactor: change sort strategy from offset to targetId

* fix: remove unnecessary query to optimize performance
2020-12-11 22:36:02 +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
chenos
96510cc929 fix: after reinitialization, hooks are lost 2020-12-09 17:14:42 +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
chenos
fb7706094b feat: load the saved collection options 2020-12-07 17:21:14 +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
Junyi
1980464f63
Fix/model update associations (#29)
* refactor: change updateAssociations from set null to small grouped handling

* feat: add transaction for updateAssociations

* test: add more basic cases

* fix: pick options for different model methods

* fix: adjust options picking strategy
2020-12-04 17:20:08 +08:00
Junyi
dd1d4fc7bf
fix: database test cases and table options (#28) 2020-12-02 15:54:19 +08:00
chenos
b5ddd6a6ba
feat: collection options & hooks (#21)
* feat: collection hooks

* export action middlewares

* add associated middleware

* cleanup

* add field interface options

* 调整配置参数

* 补充字段类型 options

* 继续调整配置参数

* 支持排序

* filterable & sortable & draggable

* feat: add random name for creating table (#23)

* feat: add random name for creating table

* fix: random number

* Feature: collections field (#24)

* feat: add random name for field and update table options

* fix: make field name required

* fix: this declaration

* showInXX 参数调整

* showInXX 放 component 里

* 继续调整参数

* 字段分组、pages 表配置参数等

* change date to datetime

* 选择类型字段的 options 改为 dataSource

* feat: refactor hooks initialization and add field options by interface (#25)

* feat: refactor hooks initialization and add field options by interface

* refactor: use model.set to build input values

* refactor: extend setter/getter to adapt field options

* fix: try to fix virtual field

* refactor: setter/getter of FieldModel

* 改进自定义 model 等细节

* 补充注释

* bugfix

Co-authored-by: Junyi <mytharcher@users.noreply.github.com>
2020-12-01 20:11:39 +08:00
Junyi
cd0b357887
Test/list (#19)
* test: add more case for list

* feat: allow order by associations in sorting

* fix: add more utils test in resourcer and fix except usage

* test: fix cases

* fix: page default value and max page size

* fix: page params and cases

* fix: list params

* fix: constants in list action

* fix: count when include, attributes when except and cases

* test: add case for hasMany.
2020-11-23 16:49:46 +08:00
Junyi
85e42f95a5
test: refactor test in database and add more (#17) 2020-11-19 23:30:30 +08:00
Junyi
b0ba1472bb
Test cases for database (#16)
* fix: remove unused import

* fix: use env instead of hard code for create database instance

* refactor: change most "all" hook to "each" hook

* refactor: split test suits into files

* add: use DB_LOG_SQL in env to control SQL in log

* add: test for logical operator and fixes
2020-11-18 10:35:37 +08:00
chenos
dcdb21d398
发布核心框架 (#6)
* api/ui 改名为 server/client

* 微调

* 继续完善 pages

* Fix env file and file mode. (#1)

* Fix: ignore .env file and environment variable names.

* Fix: correct file mode.

* fix: put environment variables together

* fix: separate data and ui resourcer

* feat: collection loader

* feat: redirectTo

* feat: fields & actions & views

* feat: fields & actions

* feat: app & pages & collections...

* feat: collections & pages & permissions...

* Doc: add readme (#2)

* Doc: add README.md.

* Util: add .editorconfig.

* Fix: use glob ignore option instead of additional checking. (#3)

* Fix: typo. (#4)

* feat: permissions

* feat: getCollection & getView actions

* refactor: code cleanup

Co-authored-by: Junyi <mytharcher@users.noreply.github.com>
2020-11-11 15:23:39 +08:00
chen
e5d30b30ba first commit 2020-10-24 15:34:43 +08:00