Commit Graph

2246 Commits

Author SHA1 Message Date
chenos
7e9b4a8f45 fix: add createdAt/updatedAt/createdBy/updatedBy options to the collections table for developer mode 2020-12-18 19:41:40 +08:00
chenos
afce1142d9 fix: improve field options 2020-12-18 18:25:06 +08:00
chenos
184adb924d fix: use database hook to trigger add createdBy/updatedBy fields 2020-12-18 15:50:03 +08:00
chenos
272b64b81b feat: add relation field component for table and detail 2020-12-18 15:36:38 +08:00
chenos
d755558009 feat: add user check middleware 2020-12-18 15:33:34 +08:00
chenos
a351d52226 fix: improve createdBy/updatedBy default options 2020-12-18 15:32:45 +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
50a081c861 fix: page menu sort 2020-12-16 08:43:09 +08:00
chenos
866549ce26 fix: do not clear data when migrating data 2020-12-16 08:42:37 +08:00
chenos
1aa7ee65ab fix: association destroy with individualHooks 2020-12-15 22:45:35 +08:00
chenos
b2801a00dc fix: view can be displayed in data menu 2020-12-15 22:44:20 +08:00
chenos
67e18352b6 add hooks for database 2020-12-15 20:16:55 +08:00
chenos
8739ea79d2 fix: add view filter to action params 2020-12-15 14:32:56 +08:00
chenos
a342c30175 fix: dynamic action params 2020-12-15 09:58:42 +08:00
Junyi
7fcce0943a
fix: use wrapped and logic for merging filters (#42) 2020-12-14 22:07:23 +08:00
chenos
d45d37cabf feat: add field renderer 2020-12-13 20:48:48 +08:00
chenos
ab90b15ffc feat: add icon field 2020-12-13 20:46:40 +08:00
chenos
71b2d9bfeb feat: improve field options 2020-12-13 17:20:54 +08:00
chenos
d03f927bc1 refactor: collections test cases 2020-12-13 17:17:41 +08:00
chenos
a7c9461cc0 fix: remove required parameter from the field options 2020-12-13 17:16:54 +08:00
chenos
a3107721c2 fix: page showInMenu=true 2020-12-13 17:15:02 +08:00
Junyi
b6bce5a2dc
fix: filterByFields should return same value when input == null (close 0) (#41) 2020-12-13 17:12:44 +08:00
chenos
5fd8139767 improve filter & sort... 2020-12-13 00:09:25 +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
chenos
4decab86be feat: pages actions & tabs 2020-12-12 16:36:02 +08:00
chenos
2dbbe29223 feat: improve filter action 2020-12-12 16:32:18 +08:00
chenos
c776229540 feat: remove view options from collections 2020-12-12 16:31:05 +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
6b84446697 feat: add onTrigger to Actions component 2020-12-11 15:11:45 +08:00
chenos
2fd4e2fa61 fix: JSON.stringify for filter 2020-12-11 15:09:39 +08:00
chenos
eb501e3461 fix: get pageTitle with first string field 2020-12-11 15:00:33 +08:00
chenos
4f4064ad11 fix: model destroy with individualHooks 2020-12-11 14:36:12 +08:00
chenos
a604eed44d refactor: menu component 2020-12-11 12:34:50 +08:00
chenos
5bb0d9f336 feat: add default icon 2020-12-11 12:22:54 +08:00
chenos
3571f357cd when the field migrate, load the collection options if is not in the database 2020-12-11 10:37:43 +08:00
chenos
880737c5c8 feat: add internal parameter to collection options 2020-12-11 10:31:00 +08:00
chenos
f12c619603 use createFormActions instead of createSyncFormActions 2020-12-10 20:39:15 +08:00
chenos
f8e8b2b9c7 feat: add registerable icon component 2020-12-10 20:32:44 +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
f948896365 fix: missing options when finding 2020-12-09 23:04:53 +08:00
chenos
2828a82f7d feat: add percent field component 2020-12-09 20:49:17 +08:00
chenos
cbc81f1173 add example collection options for app 2020-12-09 20:47:58 +08:00
chenos
9b73e2a7d3 feat: improve fields & views tables options 2020-12-09 20:46:57 +08:00
chenos
13385b8ab3 fix: change the field options merge strategy 2020-12-09 20:45:15 +08:00
chenos
96510cc929 fix: after reinitialization, hooks are lost 2020-12-09 17:14:42 +08:00
chenos
f24d948f83 fix: change the interface options override of the field 2020-12-09 12:23:57 +08:00
Junyi
32a8483336
feat: add filter and transaction for destroy action (#35)
* feat: add filter and transaction for destroy action

* fix: batch destroy in to-many relactionship
2020-12-08 21:20:30 +08:00
chenos
0d3d30e0c2 feat: add support for filter action 2020-12-08 21:19:39 +08:00
chenos
a44bab62fc fix: add transaction to migrate options 2020-12-08 14:35:50 +08:00
chenos
276d218357 feat: add ctx.state.developerMode 2020-12-08 14:33:28 +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
caa98f6d08 feat: improve developer mode support 2020-12-08 10:02:41 +08:00
chenos
a3155f687f feat: load database table dynamically 2020-12-08 09:59:41 +08:00
chenos
524103f6b3 fix: field migrate bug when import collection options 2020-12-08 09:01:15 +08:00
chenos
ed43bfe86d feat: generate random name for actions/views/tabs 2020-12-07 23:24:43 +08:00
chenos
ae6ea41c52 feat: menu sync & refresh 2020-12-07 17:25:36 +08:00
chenos
efc51355dd feat: add user profile & logout... 2020-12-07 17:23:05 +08:00
chenos
fb7706094b feat: load the saved collection options 2020-12-07 17:21:14 +08:00
chenos
e6f9973531 fix: model update associations with transaction in hook 2020-12-07 17:13:42 +08:00
Junyi
4e41e630ac
Feature: action fields options for create/update (#32)
* feat: add fields options for create/update actions

* test: add test case for json

* fix: minor update for reviews

* fix: test case

* fix: change fields filter strategy for create/update

* feat: add transaction for create/update
2020-12-07 11:54:23 +08:00
chenos
312571fba8 feat: add developer mode support 2020-12-07 08:53:18 +08:00
chenos
190fc6b37a feat: add db-migrate for app 2020-12-07 08:51:50 +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
chenos
3e3cb416b6
feat: improve collection hooks/fields/actions/views... (#30)
* feat: add onFinish callback

* fix: update json attribute unsaved after query

* refactor: collection hooks

* feat: add migrate options
2020-12-04 21:09:39 +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
868dd1aaaa refactor: change registerHandler to registerActionHandler 2020-12-02 13:48:19 +08:00
chenos
b6cb185380
feat: add virtual attribute geter & setter support (#27) 2020-12-01 23:38:10 +08:00
chenos
befe5661f8 feat: add optgroup support for select 2020-12-01 20:18:03 +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
chenos
d9e6d2e614
feat(users): add users module (#26)
* feat(users): add users module
* user check
2020-11-29 16:26:53 +08:00
Junyi
3da40bd35b
feat: add sort action (#22) 2020-11-26 15:01:22 +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
chenos
578454d07f
feat: pagination options (#20)
* feat: pagination options

* fix: data: {list, total}
2020-11-21 23:49:59 +08:00
Junyi
85e42f95a5
test: refactor test in database and add more (#17) 2020-11-19 23:30:30 +08:00
chenos
eb93f0734f
feat: actions & views (#18)
* feat: 视图新增支持 associated 的情况

* fix: 解决关系数据的视图问题

* 表单数据初始化

* feat: sortable table

* 排序

* 表格细节调整

* feat: field actions
2020-11-19 21:12:15 +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
Junyi
53729e188a
Refactor: change global injection of test for actions package. (#15)
* Refactor: change global injection to index.ts to simplify all test files.

* Fix: typo.
2020-11-16 20:38:56 +08:00
chenos
9daae13c68
feat: improve plugins (#14)
* feat: delete defined resources

* feat: api client

* feat: view fields & tab field options & page info...

* fix: view type
2020-11-13 22:01:14 +08:00
Junyi
92160d0fe5
Doc: add README.md for server. (#12)
* Doc: add README.md for server.

* Fix: typo.

* Fix: typo.

* Fix: move env out.

* Fix: change description.

* Fix: change environment variable name.
2020-11-13 22:00:35 +08:00
chenos
77dc7227a0
fix: parseRequest & registerHandlers (#10) 2020-11-12 11:48:54 +08:00
chenos
1023e317f3
fix #9 (#11)
* fix #9

* fix: database env variables
2020-11-12 11:48:27 +08:00
chen
204a516165 test: add a few test cases 2020-11-11 22:52:27 +08:00
chen
bf2e315c9e refactor: code cleanup 2020-11-11 20:57:18 +08:00
chen
812cd0766d feat: initializing resources from the database 2020-11-11 18:16:18 +08:00
chenos
b00c24d5c6
feat: support register and call partial actions (#7) 2020-11-11 16:32:18 +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