Commit Graph

3224 Commits

Author SHA1 Message Date
katherinehhh
b64ce6a2b3
fix: default value for multiple select cannot be set (#2031) 2023-06-14 10:56:45 +08:00
Dunqing
3332a488ca
fix: display on the PC side of moblie access is incomplete (#2039)
* fix: display on the PC side of moblie access is incomplete

* fix: need refresh should work

* fix: again

* fix: keep 0.1
2023-06-14 10:41:07 +08:00
katherinehhh
af37e26640
fix: enable tab and deleting tab page will result in an error (#2045) 2023-06-14 10:37:15 +08:00
被雨水过滤的空气-Rairn
58840e5fab
refactor(PluginManager): remove useless code (#2022)
* refactor(PluginManager): remove useless code

* chore: fix build error
2023-06-14 09:35:09 +08:00
Dunqing
4ac01b28db
fix(mobile-client): some mobile-client bugs (#2017)
* fix: avoid delete last tab will brake mobile client

* fix: when schema not exists

* feat: support redirect to mobile route in app

* fix: re-insert repeat routes

* feat: sync title

* fix: sync title

* fix: when TabBar is empty will cause page crashed

* fix: default label i18n not work

* fix: delete last menu will cannot add block ,Close T-434

* fix: tab cannot add block in drawer, Close T-437

* fix: hidden connect data block

* fix: login should use replace

* feat: display configuration of mobile-client address
2023-06-13 11:31:34 +08:00
katherinehhh
a6892dfff3
fix: error reported after deleting the associationFilter block linkage field (#2038) 2023-06-13 10:12:51 +08:00
chenos
97a4ef7422
fix(association-field): default values for the fields of a association field (#2037) 2023-06-13 09:46:01 +08:00
ChengLei Shao
97106c28e8
chore(database): return emtpy fields when attributes not specified (#2034)
* test: append nested field

* chore: return emtpy fields when attributes not specified

* fix: test

* fix: data template error

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-12 18:44:43 +08:00
katherinehhh
82ebd0eb44
refactor: child and parent field are not linked (#2030) 2023-06-12 15:40:59 +08:00
YANG QIA
f1feb56743
fix(oidc): bugs of integration with logto (#2032)
* fix(oidc): iss validate bug

* chore: pass iss instend of all values

* fix(oidc): use BroadcastChannel & add alg options

* chore(oidc): improve
2023-06-12 11:50:56 +08:00
chenos
47859c0f99
fix(data-template): filter out foreign keys (#2033) 2023-06-11 23:12:43 +08:00
Junyi
dd9cb723d4
fix(client): fix json input component value handling (#2028)
* fix(client): fix json input component value handling

* fix(client): fix json input test case

* refactor(client): remove format button from json variable component

* refactor(client): move json input style to global

* test(client): remove unused test case
2023-06-11 00:33:52 -07:00
chenos
91d6f09fc3 fix: acl missing 2023-06-10 16:57:09 +08:00
chenos
fe989bb71c fix(acl): import SettingsCenterContext 2023-06-10 12:43:36 +08:00
Rairn
7e9f3dfa17 chore: avoid test error 2023-06-10 07:31:32 +08:00
chenos
8d4123d8d6
feat: filter out IDs in sub-forms (#2025) 2023-06-09 23:45:04 +08:00
chenos
84e52448f5 fix: model toJSON 2023-06-09 21:33:33 +08:00
Dunqing
77225a4e25
fix(GridCard): column count not work (#2023) 2023-06-09 20:02:39 +08:00
Dunqing
69bbfee67a
feat: use ActionContextProvider instated of ActionContext.Provider (#2019) 2023-06-09 13:05:05 +08:00
Dunqing
151949362b
fix: re-insert repeat routes (#2018) 2023-06-09 12:23:53 +08:00
Junyi
9a376e4116
refactor(plugin-workflow): change node config api render to component (#2014)
* refactor(plugin-workflow): change node config api render to component

* fix(plugin-workflow): fix trigger drawer error and remove unused api

* fix(plugin-workflow): fix return value of request node run phase

* fix(client): fix classname order in action button
2023-06-08 21:09:22 -07:00
Rairn
b7cb9a45c2 fix(Variable): fix can not select 2023-06-09 11:47:20 +08:00
Rairn
0a21c3bed2 test: fix test fialed 2023-06-09 09:49:40 +08:00
ChengLei Shao
f1cc991c1c
chore(github-actions): separate frontend and backend tests (#2013) 2023-06-09 09:23:04 +08:00
Dunqing
9c165db0f7
feat(plugin-mobile-client): support mobile-side client (#1879)
* feat: init mobile client

* feat: add plugin

* feat: ready to develop

* feat: update pm styels

* feat: add mobile center

* feat: router ready

* feat: support menu block, then menu ready

* fix: incorrect path

* feat: support TabBar

* feat: tabbar, menu support dragging

* feat: support page and header

* feat: mobile view

* fix: optional schema

* feat: improve styles

* fix: user-scalable

* feat: support pc component show in mobile

* feat: hidden divider

* fix: improve drawer props

* feat: support list block

* feat: rename to details list

* feat: page support tabs

* feat: improve designer css

* feat: complete enable/disabled header of page

* feat: some improve

* feat: improve empty data

* fix: header info cannot displayed

* chore: update deps

* fix: incorrect spacing

* fix: menu designer

* refactor: re implement

* feat: support page template

* feat: clean code

* feat: support i18n

* chore: update lock

* feat: support GirdCard in mobile

* fix: build failed

* feat: only render one column in mobile interface

* fix: back button should not display in container

* fix: switch to padding

* fix: fixedBlockDesignRItem shouldn't display in dosen't support block

* fix: update font family

* fix: remove gridcard title

* fix: dragging scope is too wide

* fix: add menu cannot direct display

* refactor: improve tabbar schema usage

* refactor: improve menu schema

* feat: should to use simple pagination

* feat: the tag should pre-wrap

* feat: improve the configuration button

* feat: improve name

* fix: clear data when modal is closed

* fix: the tag is too long

* fix: i18n

* fix: font incorrect

* feat: add map block

* fix: some maps error

* feat: support global action in page

* feat: improve border color

* feat: improve performance, the count stop early

* style: improve

* fix: incorrect font

* fix: style conflict

* chore: update version

* chore: missing dep

* feat: support setting block

* feat: improve settings block and improve

* feat: support onBackPressed

* fix: ts error

* feat: improve cannot find tab should navigate to mobile

* docs: update

* chore: update deps

* fix: showTitle state is incorrect

* feat: improve jsbridge apis

* fix: navigate to admin after signout

* chore: remove mgrid block

* fix: ts error

* fix: switch role will reload to root page

* fix: update deps

* fix: upgrade formily to 2.2.24

---------

Co-authored-by: dream2023 <1098626505@qq.com>
Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-08 19:54:00 +08:00
ChengLei Shao
b401c54442
chore(database): append inherit inspect attribute with eager load (#2010) 2023-06-08 17:58:39 +08:00
YANG QIA
24601aa66f
feat(auth): support custom authentication (#2007)
* feat(auth): init auth package & collection

* feat(auth): register

* feat(auth): use authenticator

* feat(auth): mapRoles

* feat(auth): refactor

* feat(auth): base auth class

* feat(auth): add plugin

* chore(auth): test

* chore(auth): add test cases

* feat(auth): authenticators pane

* chore(auth): custom hook useAuthTypes

* feat(auth): authenticator pane

* chore(auth): store options schema using context

* feat(auth): signInPage provider

* feat(auth): signUpPage provider

* chore(auth): solve build errors

* chore(auth): add dependency

* chore(auth): remove dependency cycles

* chore(auth): add plugin-auth to preset

* chore(auth): fix test

* feat(auth): authenticator enable status

* fix(test): fix test using new authentication

* feat(auth): migration, set up basic auth

* chore(auth): can set options ui by component

* fix(test): workflow manunal.test

* fix(test): typo

* feat(auth): support multi-language

* chore(auth): imporve code

* chore(auth): hide button if no configuration

* chore(auth): readme

* chore(auth): remove allowSignup prop

* chore(auth): move configure pane to edit form

* fix(auth): jwt options bug

* feat(auth): init sms-auth

* chore(auth): at least authenticator required

* chore(auth): add test

* feat(auth): support sms auth

* fix(auth): fix test

* chore(auth): move findOrCreateUser to AuthModel

* chore(auth): history compatible processing

* feat(auth): support SAML auth

* chore(auth): saml auth list

* chore(saml-auth): improve ui

* Merge branch 'main' into feat/authentication

* chore(auth): improve code

* fix(saml-auth): fix bug

* fix(saml-auth): fix saml options

* chore(saml-auth): compatible processing && ut

* fix(auth): signin page bug

* chore(auth): saml compatible processing

* feat(auth): oidc-auth

* fix(oidc-auth): bug

* fix(oidc-auth): bug

* fix(auth): fix test

* chore(auth): filter enabled authenticator

* chore(oidc): add field map

* chore(auth): update readme

* docs(auth): create sms-auth readme

* feat(auth): allow signup config

* test(auth): fix test

* feat(auth): allow saml and oidc use http

* chore(oidc-auth): extends timeout

* docs(auth): update readme

* feat(auth): support sort

* docs(saml): update readme

* feat(auth): support sort all authenticator

* Merge branch 'main' into feat/authentication

* Merge branch 'main' into feat/authentication

* feat: improve code

* docs(auth): add doc

* Merge branch 'main' into feat/authentication

* chore: update yarn.lock

* feat: improve code

* chore(acl): write role to acl if it exists in database and not found … (#2001)

* chore(acl): write role to acl if it exists in database and not found in acl

* fix: test

* fix: eager load with nested association (#2002)

* chore: upgrade vitest

* chore: edit

* refactor: auth class

* fix: set options

* chore(acl): write role to acl if it exists in database and not found … (#2001)

* chore(acl): write role to acl if it exists in database and not found in acl

* fix: test

* fix: eager load with nested association (#2002)

* chore: upgrade vitest

* chore: add migrations

* test: fix api-client test

* chore: add sms-auth

* feat: avoid no permission after auth type disabled

* fix: translation

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-07 23:46:42 +08:00
Junyi
0c150eaf9b
feat(plugin-fm): add option for storage to remove file physically or not (#2005)
* feat(plugin-fm): add server side destroy action for removing files of attachments

* feat(plugin-fm): add client option for storage
2023-06-07 05:44:16 -07:00
chenos
a1872fa75b Revert "fix: the edit drawer's audit logs block can only get records by this … (#1917)"
This reverts commit 42ad77da68.

# Conflicts:
#	packages/core/client/src/block-provider/TableBlockProvider.tsx
#	packages/core/client/src/schema-component/antd/filter/useValues.ts
2023-06-07 20:14:02 +08:00
ChengLei Shao
5e4682be72 fix: emit async 2023-06-07 17:25:06 +08:00
Rairn
ad2908dd76 chore: upgrade vitest 2023-06-07 15:43:15 +08:00
ChengLei Shao
e8e9c038e3
fix: eager load with nested association (#2002) 2023-06-07 15:31:29 +08:00
ChengLei Shao
43f3cb7cfe
chore(acl): write role to acl if it exists in database and not found … (#2001)
* chore(acl): write role to acl if it exists in database and not found in acl

* fix: test
2023-06-07 15:01:50 +08:00
katherinehhh
c3c02d8925
feat: duplicate action (#1973)
* feat: depulicate action

* feat: depulicate action

* refactor: duplicate action

* refactor: duplicate action

* refactor: duplicate action

* refactor:  support quick duplicate

* refactor: local improve

* refactor: local improve

* fix: duplicate intialValue

* refactor: detail action support duplicate

* refactor: action role check

* fix: duplicate support linkage rule

* fix: duplicate action support openMode and openSize

* fix: duplicate action support linkage rule

* refactor: locale

* refactor: detail block support duplicate action

* refactor: code improve

* refactor: code improve

* refactor: duplicate action improve

* refactor:  wait time after click is too long, a Duplicating is required

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-07 11:25:32 +08:00
katherinehhh
8809df3f51
refactor(association-field): useAssociationNames hook (#1956)
* chore: useAssociationNames

* refactor: code improve

* refactor: support blocktemplate

* refactor: support blocktemplate

* refactor: useAssociationNames in block template

* fix: cross hierarchical association field layout

* fix: normal field of association field should be append

* refactor: useAssociationNames

* refactor: useCreateActionProps

* refactor: useAssociationNames params

* fix: cleanup

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-07 11:18:35 +08:00
ChengLei Shao
83dc81c51b
chore(collection-manager): should not throw error when source collection destoryed (#1999) 2023-06-07 11:06:35 +08:00
katherinehhh
83a6cae4e5
fix: assignedField can not select dynamicValue (#2000) 2023-06-07 10:54:03 +08:00
被雨水过滤的空气-Rairn
47838889f4
test: add tests for client (#1960)
* feat: add test utils

* test: fix compatibility problem

* refactor: use esm

* refactor: change require to import

* test: add a test

* chore: optimize launch.json

* chore(jest): optimize config

* test: fix failed

* test(Action): fix failed

* test: migration test from nocobase-next

* test: fix failed

* chore: set css to false

* fix: fix errors

* test(Filter): add test

* test(BlockItem): add test

* test(Calendar): add test

* refactor: migrate testUtils to client

* fix: avoid error

* refactor: fix lint error

* Revert "refactor: migrate testUtils to client"

This reverts commit ae569e2021a5c720111518cf3f2236e761a7186d.

* test: fix test failed

* refactor: migrate tesetUtils to @nocobase/test/client

* fix(Select): fix BUG

* refactor: remove useless code

* Revert "refactor: migrate tesetUtils to @nocobase/test/client"

This reverts commit 70d2211d5af546ae3fffaf5b53a326be8e194b34.

* test(AssociationSelect): add test

* test(CardItem): add test

* test(CollectionSelect): add test

* test(Cron): add test

* test(Details): add test

* test(ErrorFallback): add test

* test(Form): add test

* fix: fix CI

* test(FormItem): add test

* test(FormV2): add test

* test(G2Plot): add test

* test(Gantt): add test

* test(Grid): add test

* test(GridCard): add test

* test(Kanban): add test

* test(List): add test

* test(Menu): add test

* test(Page): add test

* test(Pagination): add test

* test(Preview): add test

* test(RemoteSelect): add test

* test: fix: failed

* refactor: remove useless code

* test(Table): add test

* test(TableV2): add test

* test(Tabs): add test

* test(Variable): add test

* test(Upload): add test

* chore: comment

* Revert "refactor: change require to import"

This reverts commit 3a23607e6faeda6f8b5bee02b9d8fa33bf9d2684.

* refactor: remove useless code

* fix: fix translation bug

* fix: fix export position

* test: update snap
2023-06-07 10:37:10 +08:00
katherinehhh
ac070de216
fix: display title enable (#1995) 2023-06-07 00:18:44 +08:00
Junyi
a8191ed26f
fix(plugin-formula): fix result component caused page crash (#1996) 2023-06-06 09:04:13 -07:00
ChengLei Shao
c604f37222
feat(collection-manger): lazy load collection field (#1993)
* feat(collection-manger): lazy load collection field

* chore: console.log
2023-06-06 22:48:43 +08:00
black
42ad77da68
fix: the edit drawer's audit logs block can only get records by this … (#1917)
* chore: rename resource function and add comment

* chore: remove AuditLogsDesigner when create audit logs schema

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-06 20:13:06 +08:00
chenos
e6a2a292b3
feat: upgrade formily (#1880)
* feat: upgrade formily

* fix: upgrade @formily/json-schema

* fix: optimizing performance

* fix: performance code

* refactor: `React.memo` and `observer` component add `displayName` property

* fix: add cache to Schema.compile

* feat: 优化代码

* fix: 修复卡顿最终的问题

* Update SchemaComponentProvider.tsx

* feat: 再次优化代码

* feat: optimized code

---------

Co-authored-by: dream2023 <1098626505@qq.com>
2023-06-06 19:33:04 +08:00
Junyi
36d16bc015
refactor(plugin-fm): change api and allow to select storage (#1250)
* refactor(plugin-fm): change api and allow to select storage

* fix(plugin-fm): fix lint errors and demo actions

* refactor(plugin-fm): refactor action codes

* fix(plugin-fm): fix api in test

* fix(plugin-fm): fix build

* fix(plugin-fm): fix locale

* refactor(plugin-fm): hide storage from api and use sourceField param

* fix(plugin-fm): fix storage select load

* fix: improve code

* fix(plugin-fm): change to attachmentField

* refactor(plugin-fm): change middleware name

* fix(plugin-fm): fix params in test cases

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-06 19:30:42 +08:00
被雨水过滤的空气-Rairn
b33c00be8f
fix: fix default value is invalid in subform (#1989)
* fix: fix default value is invalid in subform

* perf: use useMemo

* fix: change null to {}
2023-06-06 14:42:37 +08:00
ChengLei Shao
d7e6b7b320
feat(database): add firstOrCreate and updateOrCreate in repository (#1943)
* chore: tmp commit

* feat: firstOrCreate

* chore: firstOrCreate

* feat: updateOrCreate

* chore: test

* feat: values to filter

* feat: firstOrCreate http api

* fix: build error
2023-06-06 11:36:18 +08:00
ChengLei Shao
57d47371da
feat(database): append child collection name after eager load (#1978)
* test: eager load with inherit collection name

* feat: append child collection name after eager load

* chore: call build eager loading tree
2023-06-06 11:30:35 +08:00
icezohu
bc00bd161a
fix(multip-app-manager): init multiple Application instances while starting up a sub app (#1986)
* fix: init multiple Application instances while
starting up sub app

by Jacob

* fix: import error

by Jacob

* feat: use async-mutex for locking process

by Jacob

* revert: unused update

by Jacob

* test: should get same obj ref
when asynchronously access with same sub app name

by Jacob

* feat: add async-mutex dependency
to multi-app-manager package.json

by Jacob
2023-06-06 10:47:50 +08:00
Junyi
2c9ce09304
feat(plugin-workflow): manual forms (#1748)
* feat(plugin-workflow): add create record form for manual node

* feat(plugin-workflow): add update form for manual node

* fix(plugin-workflow): fix antd version and menu

* refactor(plugin-workflow): change collection config modal to initializer sub-menu

* test(plugin-workflow): add test case

* fix(plugin-workflow): fix todo components based on forms

* fix(plugin-workflow): fix cycling trigger when create or update

* fix(plugin-workflow): fix transaction in manual processor

* refactor(plugin-workflow): optimize todo list data loading

* fix(plugin-workflow): fix uncommitted manual action effects

* fix(plugin-workflow): fix save multiple forms and only submit one

* chore(plugin-workflow): fix lint

* fix(plugin-workflow): fix lint error

* refactor(plugin-workflow): abstract workflow scoped FormBlockProvider

* fix(plugin-workflow): adjust designable api to use current schema in refresh

* fix(plugin-workflow): fix schema config and support block template

* fix(plugin-workflow): fix lint and build error

* fix(plugin-workflow): adjust components and scope to inner schema component

* fix(plugin-workflow): fix ref template in todo drawer

* fix(plugin-workflow): fix todo form undefined

* fix(plugin-workflow): fix manual form schema

* fix(plugin-workflow): fix manual createdBy/updatedBy user

* fix(plugin-workflow): disable save to template on create form

* fix(plugin-workflow): fix manual form variables

* fix(plugin-workflow): fix FormBlockProvider for default field value

* fix(plugin-workflow): fix manual node variables
2023-06-05 16:52:43 +08:00
YANG QIA
ecb2af8fd6
fix(charts): fields undefined bug (#1980) 2023-06-05 13:13:06 +08:00