Commit Graph

262 Commits

Author SHA1 Message Date
ChengLei Shao
5288cbb1cf
fix: eager load belongs to many association (#1906) 2023-05-22 16:09:37 +08:00
被雨水过滤的空气-Rairn
e27cff15c9
feat: support to-multi field variables (#1680)
* feat: support to parse association variable

* chore: change comment

* feat(operators): support array as value in string operator

* refactor: add a special marker

* feat: date support to-multi field variables

* feat: support for notIn

* refactor: rename

* test: fix test error

* Revert "test: fix test error"

This reverts commit 3d139698f6295678a39b77b08c88427f9fafe247.

* Revert "refactor: rename"

This reverts commit 2e16225c038e18ee25f1136d510cb4746bd9932f.

* Revert "feat: support for notIn"

This reverts commit 2087e5c4da1429b260890d5136c714ad541955a9.

* Revert "feat: date support to-multi field variables"

This reverts commit 0d7b2db0512ba7b632a2ab61f37cf83c0d06b9a1.

* Revert "refactor: add a special marker"

This reverts commit 7ba2e4bc00d79f60a2e90340df65b2938985750a.

* Revert "feat(operators): support array as value in string operator"

This reverts commit 0897cd19e9863248ef9e2af6c91ee14e805778a4.

* refactor: improve code

* test: fix can not import style file

* feat: only eq and ne oprators support mutil relation fields

* test: add example.test.ts

* refactor: remove jsonata

* Revert "test: add example.test.ts"

This reverts commit 0ad2ea458cd8a964891490d2021a5b000f391395.

* test: fix error

* fix: fix error

* refactor: remove async

* chore: rebase

* test: fix error

* test: fix errors
2023-05-21 17:18:35 +08:00
ChengLei Shao
aabc681245
fix: append belongs to association with fields (#1894) 2023-05-20 21:31:27 +08:00
ChengLei Shao
ccdc05b30b
fix: appends belongs to association (#1893)
* fix: merge stage in eager loading tree

* chore: test
2023-05-20 20:36:07 +08:00
ChengLei Shao
c0ef071baf
Refactor/append fields (#1883)
* chore: eager loading tree

* feat: load eager loading tree

* feat: merge stage of eager loading

* feat: merge stage of belongs to

* feat: merge stage of has one

* feat: merge stage of belongs to many

* chore: test

* chore: print tree

* chore: using eager loading tree in repository find

* fix: empty ids load

* fix: belongs to many query

* fix: load belongs to  association

* fix: eager load data accessor

* fix: has many

* fix: test

* fix: filter with appends

* chore: remove handle appends query

* chore: console.log

* chore: console.log

* fix: test
2023-05-19 16:39:00 +08:00
ChengLei Shao
ac5f3fd67e
chore: pg sql parser (#1890) 2023-05-19 15:30:44 +08:00
chenos
e0646650f0 fix(database): migrations table name missing table prefix 2023-05-18 14:51:51 +08:00
ChengLei Shao
f8fa36d016
feat: repository aggregate method (#1829)
* feat: repository aggregate method

* chore: aggregate with distinct

* feat: has many repository aggregation

* feat: belongs to  many repository aggregation

* chore: using model aggregate method

* chore: aggregate with association filter

* chore: aggregate type

* chore: type error
2023-05-11 15:16:33 +08:00
chenos
cf0a921f85 chore(versions): 😊 publish v0.9.3-alpha.1 2023-05-11 12:49:18 +08:00
katherinehhh
55efa40cdd
refactor: association field (#1838)
* feat: association field

* fix: bug

* refactor: association field

* style: style improve

* style: style improve

* refactor: support subtable

* refactor: support file collection

* refactor: locale improve

* refactor: subtable improve

* refactor: association select  improve

* refactor: association select  improve

* refactor: association select  improve

* refactor: useAssociationNames

* refactor: enable link

* refactor: selector

* refactor: selector

* refactor: locale improve

* refactor: on demand loading of relational data

* refactor: locale improve

* refactor: select button

* refactor: association field

* refactor: formformBlock provider

* refactor: formformBlock provider

* refactor: internalSelect recordPicker

* refactor: formBlocklockProvider

* fix: addNewer schema

* fix: useServiceOptions

* fix: useCreateActionProps

* fix: useCreateActionProps

* refactor: nester delete

* refactor: nester delete in detail

* refactor: subTable suport select

* refactor: subTable suport select

* style: style improve

* style: style improve

* chore: fileManger

* fix: association readPrety

* fix: filemanger

* refactor: field mode

* refactor: enable link

* chore: error message

* refactor: association schemaInitialize

* refactor: association schemaInitialize

* refactor: currentMode

* refactor: field mode default value

* fix: file manage readPretty

* fix: appends

* chore: file manage readPretty

* fix: updateAssociationValues

* fix: updateAssociationValues

* fix: updateAssociationValues

* fix: nester appends

* fix: nester appends

* fix:  tree collection association fields

* fix:  tree collection association fields

* fix: nester appends

* fix: subtable to select field value missing

* fix: subtable to select field value missing

* fix: compatible with historical blocks

* fix: compatible with historical blocks

* fix: compatible with historical blocks

* feat: add migration

* fix: filter block allow add new

* fix: compatible with historical blocks

* fix: skip if not RecordPicker

* fix: compatible with historical blocks

* fix: detail block not support nester

* fix: association select support data scope and sort setting

* fix: appends on demand loading

* fix: asociationSelect support multiple

* fix: recordPicker -> AssociationField

* fix: add migration

* fix: audit logs not show assication data

* fix: flattenNestedList

* refactor: file manager field mode

* refactor: field mode refactor

* fix: subtable action

* fix: subtable appends

* refactor: code improve

* fix: nester add new

* feat: sub table

* fix: data scope not effect immediately

* fix: association add new

* fix: association field failed to  add new and mutual influence

* style: style improve

* style: style improve

* refactor: updateAssociationValues

* refactor: form init values

* refactor: select options

* fix: form initialValues

* fix: record picker values

* fix: field value change when field mode change

* fix: select data scope

* feat: add migration

* fix: table column enable link

* fix: table column enable link

* refactor: locale improve

* fix: migration

* fix: mutiple config

* fix: readPretty enable link

* fix: appends on demand

* fix: enable link style

* refactor: locale improve

* refactor: locale improve

* feat: sub-form migration

* fix: skip migration

* fix: translation

* fix: skip migration

* fix: getLabelFormatValue

* fix: error TS2339: Property 'find' does not exist on type 'string | SchemaEnum<any>'

* refactor: remove the logic code for converting old record picker

* refactor: locale

* refactor: locale

* fix: sub-table should not support add new

* refactor: code improve

* refactor: locale

* fix: compatibility history Subtable

* fix: improve

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: Chareice <chareice@live.com>
2023-05-11 12:47:31 +08:00
ChengLei Shao
ecd7540f7a
fix: tree with fields option (#1833) 2023-05-10 16:32:36 +08:00
ChengLei Shao
8183ff5564
chore: should not return children property when child nodes are empty (#1825) 2023-05-09 16:48:40 +08:00
ChengLei Shao
088acd906d
fix: tree with sort field (#1822) 2023-05-09 12:10:53 +08:00
ChengLei Shao
2c29daedb5
fix: filter with appends (#1819) 2023-05-08 11:18:42 +08:00
ChengLei Shao
7b550ce5aa
Fix/filter by array field (#1813)
* test: filter by association array field

* fix: match operator in pg

* chore: cast
2023-05-07 23:08:41 +08:00
ChengLei Shao
b3d4e47ef3
Fix/empty tree query (#1814)
* fix: empty tree query

* fix: traverse get
2023-05-07 23:08:20 +08:00
ChengLei Shao
54432a4314
fix: update tree node (#1812)
* fix: update tree node

* chore: test
2023-05-06 15:14:05 +08:00
ChengLei Shao
258f4e980d
fix: list trees (#1810)
* fix: list trees

* fix: test
2023-05-06 14:28:13 +08:00
ChengLei Shao
b8c85c91b4
test: filter nested association (#1802)
* test: filter nested association

* chore: log

* fix: tree instance to json

* ci: test case

* chore: test

* chore: log

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-05-06 07:55:26 +08:00
ChengLei Shao
e5d286a131
fix: tree performance (#1779)
* chore: tree performance

* chore: build index value

* chore: get tree index

* fix: children key

* fix: test

* fix: tree child to json

* fix: tree with fields
2023-05-05 10:33:44 +08:00
ChengLei Shao
d4636311e8
Fix/recreate association field (#1789)
* chore: test

* fix: recreate association with same name as field
2023-05-03 08:05:55 +08:00
chenos
923f6e7884 chore(versions): 😊 publish v0.9.2-alpha.4 2023-04-26 22:33:55 +08:00
chenos
9756dd134b chore(versions): 😊 publish v0.9.2-alpha.3 2023-04-25 13:15:40 +08:00
chenos
883f1e6fd1
fix: eslint (#1759)
* fix: eslint

* fix: eslint --fix

* fix: changelog
2023-04-25 13:12:14 +08:00
YANG QIA
25d2ebf02a
chore(comment): collectionOptions.duplicator (#1752) 2023-04-23 18:29:48 +08:00
被雨水过滤的空气-Rairn
c02544c68b
fix(FilterFormBlock): fix association field can not to filter (#1699)
* feat: add getValuesByPath

* fix(FilterFormBlock): fix association field can not to filter

* test: hasMany filter test

* fix: remove null in filter

* fix: fix not responding for filter button

* fix: fix oho and o2m and obo

* fix: fix isInFilterFormBlock

* fix: fix errors

* fix: should filter out when params is empty

---------

Co-authored-by: chareice <chareice@live.com>
2023-04-19 23:06:20 +08:00
ChengLei Shao
ddb6d69676
fix: load view collection (#1727)
* fix: load view collection

* refactor: using graphlib at collections load

* test: destory through collection

* feat: throw error when collection manager cycle found

* test: view collection as through collection
2023-04-19 17:59:49 +08:00
chenos
3dfd5a1f7a chore(versions): 😊 publish v0.9.2-alpha.2 2023-04-19 13:10:55 +08:00
ChengLei Shao
9fc8f5389b
Fix/save through table data (#1714)
* fix: save through table data

* chore: variable name

* fix: format
2023-04-17 14:46:16 +08:00
ChengLei Shao
221c90d835
fix: find fields arg (#1710) 2023-04-16 17:30:39 +08:00
chareice
f35da4a2a0 fix: init sort field with null group 2023-04-09 12:52:42 +08:00
chareice
0c17d609fa fix: transaction params 2023-04-09 12:19:59 +08:00
ChengLei Shao
55c7bb5cf5
fix: sort field init performance (#1675)
* fix: sort field init performance

* chore: test table prefix

* fix: mysql compability
2023-04-08 22:08:32 +08:00
ChengLei Shao
c3a91e9758
chore: find inherit collection warn (#1663) 2023-04-07 19:44:44 +08:00
chenos
cefe678348
feat(filter-operators): eq and ne operators support array (#1658) 2023-04-07 13:34:39 +08:00
ChengLei Shao
242977983b
chore: inhertis api with difference schema (#1545)
* refactor: getTableNameWithSchema

* feat: allow create collection with same name in difference schema

* feat: support multiple schema with inherit

* feat: repository after find hook & relation repository __colection attribute

* chore: debug info

* chore: tmp commit

* fix: tableoid to tablename error

* feat: filter child table by tableoid

* feat: filter child table by collection name

* fix: sync runner

* chore: test

* fix: jest empty test error
2023-04-06 09:05:47 +08:00
ChengLei Shao
914260ed7e
fix: update field error (#1645) 2023-04-04 10:44:30 +08:00
ChengLei Shao
86abc251d9
fix: get pg view def (#1641)
* fix: get pg view def

* chore: console.log
2023-04-02 22:50:55 +08:00
ChengLei Shao
bec624eb54
fix: infer view column type with alias (#1634)
* fix: infer view column type with alias

* fix: build

* fix: type

* fix: test
2023-04-02 14:32:20 +08:00
ChengLei Shao
3f81d7cd7d
chore: disabled underscored in view collection. (#1633)
* chore: disabled underscored in view collection

* fix: test
2023-04-02 11:27:04 +08:00
ChengLei Shao
4f87de7da5
feat: database view collection (#1587)
* test: create view collection

* feat: view collection class

* feat: list view

* chore: skip sync view collection

* test: should create view collection in difference schema

* test: create view collection in collection manager

* feat: create view collection by user sql

* test: view resourcer

* feat: view collection

* feat: view collection cannot be added, deleted, or modified

* feat: view collection cannot be added, deleted, or modified

* feat: view collection cannot be added, deleted, or modified

* feat: view collection cannot be added, deleted, or modified

* refactor: connect to database view

* refactor: sync from database

* chore: rename list view sql

* chore: list view fields api

* chore: create collection without viewName

* feat: bring out fields when selecting a view

* chore: bring out fields when selecting a view

* feat: view field inference class

* chore: bring out fields when selecting a view

* chore: sync form database view

* chore: sync form database view

* refactor: view collection local

* feat: view get api

* feat: database type infer

* feat: integer map

* chore: remove from in view list

* chore: build error

* chore: uniq collection

* fix: typo

* chore: replace collection list source field

* fix: destroy view collection

* chore: timestamp field map

* refactor: interface avalableTypes

* refactor: interface avalableTypes

* chore: list fields test

* refactor: interface avalableTypes

* chore: uiSchema response in field source

* fix: view query

* chore: collection snippet

* refactor: view collection support preview

* fix: handle field source

* fix: typo

* fix: configure fileds title

* fix: configure fileds title

* fix: configure fileds title

* fix: sync from databse interface

* fix: sync from databse interface

* feat: set fields api

* fix: sync from databse fix

* feat: possibleTypes

* chore: fields get

* fix: sync from databse

* fix: list view test

* fix: view test in difference schema

* chore: comment

* feat: when there is only one source  collection, the view is a subset of a Collection

* feat: view collection add field

* fix: inherit query with schema

* fix: test

* fix: ci test

* fix: test with schema

* chore: set pg default search path

* chore: mysql test

* fix: test with schema

* chore: test

* chore: action test

* chore: view column usage return type

* feat: mysql field inference

* fix: tableName

* chore: node sql parser

* fix: sql build

* fix: database build

* fix: mysql test

* feat: view collection uiSchema title

* fix: incorrect field source display  when switching views

* refactor: view collection not allow modify

* fix: view collection is allow add, delete, and modify

* fix: mysql test

* fix: sqlite test

* fix: sqlite test

* fix: sqlite test

* fix: sqlite test

* chore: add id field as default target key

* style: style improve

* feat: load source field options

* style: style improve

* chore: disable remove column in view collection

* chore: support creating view collection with different schemas with the same name

* chore: support creating view collection with different schemas with the same name

* fix: query view in difference schema

* refactor: view collection viewname

* fix: query view collection in difference schema

* fix: field load

* chore: field options

* fix: mysql test

* fix: uiSchema component error when using a view field in a block

* fix: sqlite test

* chore: test

* fix: dump user views

* fix: view collection can be updated and edited in table block

* chore: sync from database display last field configuration

* chore: loadCollections

* chore: sync from database display last field configuration

* fix: field options merge issues

* style: preview table

* fix: view collection is allow using in kanban blocks

* refactor: code improve

* fix: view collection can be updated an edited in calendar block

* chore: disable infer field without interface

* feat: preview only shows source or interface fields

* fix: test

* refactor: locale

* feat: sql parser

* chore: remove node-sql-parser

* fix: yarn.lock

* test: view repository

* fix: view repository test

* chore: console.log

* chore: console.log

* fix: mysql without schema

* fix: mysql without schema

* chore: preview with field schema

* chore: tableActionInitializers

* style: preview style improve

* chore:  parameter is filter when there is no filterByTk

* fix: preview pagination

* fix: preview pagination

* style: preview table style improve

* fix: sync from database loading

* chore: preview performance optimization

* chore: preview performance optimization

* feat: limit & offset

* chore: preview performance optimization

* test: field with dot column

* fix: datetime interface display

* fix: missing boolean type

* fix: sync

* fix: sync from database

* style: style improve

* style: style improve

* style: style improve

* chore: preview table

* chore: preview table

* chore: preview table

* fix: styling

---------

Co-authored-by: katherinehhh <katherine_15995@163.com>
Co-authored-by: chenos <chenlinxh@gmail.com>
2023-04-01 21:56:01 +08:00
ChengLei Shao
2f8e7a8087
fix: init sort value in sort field with scopeKey (#1626) 2023-04-01 09:06:20 +08:00
chenos
db511a33fa
fix: find with attributes and group (#1411)
* fix: find with attributes and group

* fix: error

* fix: test

---------

Co-authored-by: Chareice <chareice@live.com>
2023-03-31 13:58:35 +08:00
被雨水过滤的空气-Rairn
098140d511
feat(parse-variables): support to parse variables in filter params (#1558)
* fix: add field linkage on setting default datetime

* fix: fix dateonly timezone problem

* fix: improve test

* docs(DatePicker): add demos

* fix(DatePicker): should return the beginning of a second

* feat(DatePicker): support non-UTC

* refactor: rename

* fix(RangePicker): get correct end date

* test(mapDatePicker): add test

* test(mapRangePicker): add test

* feat(Filter): use non-UTC to filter

* feat(FilterBlock): use non-UTC to filter

* feat: add '$dateBetween' operator in datetime

* feat: use RangePicker on toggled to 'dateBetween' operator

* feat: set ranges for RangePicker

* feat: backend support to parse 'dateBetween' operator

* fix: fix build error

* fix: adaptive content width

* feat: support to use var on data scope

* feat: add parse-variables plugin

* feat: support to parse variables

* feat: support only to set system variables

* test: rename

* feat: cover all

* fix: fix build error

* feat(RangePicker): extend more shortcut keys

* feat(parse-variables): support more date var

* feat: support user variables

* feat: disable unmatched options

* fix: use component name to filter option

* fix: fix build error

* feat: remove some operator of id

* chore: remove useless operators

* fix: built in plugin

* refactor: move to core from plugin

* refactor: remove code of plugin

* refactor: remove useless code

* fix: should after acl

* Update server.ts

* fix: compatible with old version

* feat: test cases

* refactor: rename to 'is between'

* refactor: parse filter

* fix: improve code

* feat: test cases

* fix: fix error

* fix: improve parse date

* fix: date variables

* fix: day range

* fix: test error

* fix: typo

* fix: test error

* feat: $user variable

* fix: toDate

* fix: fix the value range of shortcuts

* feat: add quarter and test

* feat: support to use user's association fields to filter

* refactor: use maxDepth

* refactor: remove useless code

* fix: make AssociationSelect.Designer to support variables

* fix: getField

* fix: parse utc

* fix: remove only

* fix: filter by ctx.db.getFieldByPath

* fix: avoid error

* fix: add translation

* fix(RangePicker): can be set to empty

* feat(utils): add hasEmptyValue

* fix: should not save empty

* fix: last few days should include today

* fix: limit user variable type to display

* fix: parse filter error

* fix: empty

* test: [skip ci]

* fix: remove ';'

* feat: improve code

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-03-30 23:49:57 +08:00
ChengLei Shao
e566d56c2d
fix: destroy through table record referencing collections table (#1611)
* test: destory through table record referencing collections table

* fix: belongs to many fields to reference
2023-03-28 12:26:30 +08:00
chenos
c43930fa7c fix: field path 2023-03-23 14:05:53 +08:00
ChengLei Shao
ca95edf295
refactor: multi-app (#1578)
* feat: compact theme

* fix: theme

* fix: styling

* fix: margin

* feat: improve

* fix: remove console.log

* test: enable plugin test

* refactor: multi app

* test: lazy load sync plugin

* test: lazy load test

* fix: beforeGetApplication Event

* feat: loadFromDatabase options in traverseSubApps

* fix: test

* fix: multi app manager test

* chore: test

* test: should upgrade sub apps when main app upgrade

* feat: plugin require check

* chore: yarn.lock

* fix: sql typo

* feat: share collections

* fix: record name

* test: belongs to many repository

* fix: belongs to many with targetKey alias

* fix: extend collection error

* fix: transaction error

* feat: collection graph

* fix: update options in collection

* chore: collections graph

* chore: export uitls

* feat: connected nodes method in collections graph

* feat: exclude params in connected nodes

* chore: sub app collection list params

* fix: collections graph

* feat: syncToApps migration

* fix:  translation

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-03-19 23:40:42 +08:00
Chareice
18a75e096c chore: disable hooks in sort update 2023-03-17 15:02:58 +08:00
chenos
a9e5e14429
feat: tree collection (#1561)
* feat: adjacency list

* fix: error

* feat: collection extender

* Revert "feat: collection extender"

This reverts commit a942eee769.

* fix: registerBuiltInListeners

* chore: getAllNodeIds

# Conflicts:
#	packages/plugins/acl/src/server.ts

* fix: get list data tree ids

# Conflicts:
#	packages/plugins/acl/src/__tests__/list-action.test.ts

* feat: suport add child

* feat: demo3

* feat: suport add child

* feat: support add child

* feat: support add child

* fix: tree true

* feat: suport expend and collapse

* feat: support expend and collapse

* feat: support expend and collapse

* feat:  table block of the selector supports tree table

* feat: expand and collapse are only displayed in the tree table

* fix: when the tree table is closed and opened, it needs to be refreshed to take effect

* fix: test

* refactor: add child is hidden when the tree table is closed

* refactor: tree table filter the children field

* refactor: tree table filter the children field

* refactor: tree table filter the children field

* refactor: expand and collapse button does not support modify name and icon

* refactor: parent cannot be modified when adding child

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: expand and collapse button hide when treetable is closed

* refactor: filter out the node itself when selecting parent

* refactor: filter out the node itself when selecting parent

* refactor:  tree collection locale

* refactor:  tree collection locale

* fix: parameter exception when creating data selector

* fix: translation

* refactor:  tree collection locale

* feat: data selector Support tree table

* fix: failed to uncheck when multiple data selectors are selected

* fix: open or disabled the tree table, and add child does not respond immediately

* feat: data selector Support tree table

* fix: can not hide add child button

* fix: improve code

* fix: tree table

* fix: dynamic children column

---------

Co-authored-by: Chareice <chareice@live.com>
Co-authored-by: katherinehhh <katherine_15995@163.com>
2023-03-17 09:20:56 +08:00
ChengLei Shao
e86e40b93a
fix: app manager reload (#1565)
* fix: app manager reload

* chore: plugin test order
2023-03-14 13:10:15 +08:00