Commit Graph

666 Commits

Author SHA1 Message Date
chenos
40c1a2b2ce fix(client): migration error 2023-06-24 12:28:43 +08:00
Junyi
19341952b9
fix(plugin-workflow): fix branch and exit logic (#2103) 2023-06-23 08:21:19 -07:00
chenos
bdcbe7392f
chore(deps): bump formily from 2.2.24 to 2.2.26 (#2088)
* chore(deps): bump formily from 2.2.24 to 2.2.25

* chore(deps): bump formily from 2.2.25 to 2.2.26

* chore: update yarn.lock

---------

Co-authored-by: Rairn <958414905@qq.com>
2023-06-23 07:55:44 +08:00
被雨水过滤的空气-Rairn
6eed9ac2bb
refactor: fix warning of antd 4.x (#1998)
* refactor: fix warning by codemod

* refactor: fix warning of Dropdown

* perf: use memo

* refactor: resolve SchemaInitializer

* refactor: fix lint

* refactor: remove SettingsForm

* refactor: resolve SchemaInitializer

* refactor: fix lint

* refactor: move useMenuItem to root dir

* chore: fix conflicts

* refactor: resolve SchemaSetting

* refactor: fix lint

* test: fix failed

* chore: upgrade Vite

* fix: fix style

* refactor: fix lint

* refactor: extract component

* refactor: resovle Menu

* refactor: resolve Tabs

* refactor(getPopupContainer): should return the unique div

* refactor(Drawer): change style to rootStyle and className to rootClassName

* chore: update yarn.lock

* fix: fix T-432

* fix: fix T-338

* fix: fix T-490

* fix: collection fields

* fix: fix style

* fix: fix T-500

* fix: fix SettingMenu error (close T-516)

* fix: fix tanslation of Map (T-506)

* style: fix style (T-508)

* fix: fix schemaSetting switch of mobile (T-517)

* fix: fix T-518

* fix: fix T-524

* fix: fix T-507

* perf: optimize SchemaInitializer.Button

* perf: optimize SchemaSettings

* fix: fix serch of SchemaInitializer (T-547)

* chore: change delay

* fix: fix button style (T-548)

* fix: fix scroll bar

* fix: update yarn.lock

* fix: fix build error

* fix: should update sideMenu when change it

* fix: fix build error

* chore: mouseEnterDelay

* fix: fix group menu can not selected
2023-06-22 19:51:16 +08:00
Junyi
5fc5428d03
fix(plugin-workflow): fix job button style (#2098) 2023-06-21 08:03:54 -07:00
Dunqing
b80aaacb38
fix(mobile-client): fix multiple bugs and do some improvement (#2072) 2023-06-21 22:26:15 +08:00
Junyi
6254fceb04
fix(plugin-verification): fix duplication of installation (#2097) 2023-06-21 06:59:19 -07:00
chenos
daa48302df fix(acl): change route.uiSchemaUid to useAdminSchemaUid 2023-06-21 16:37:56 +08:00
Junyi
6a589543f9
refactor(db): add batch logic to update for better performance (#2070)
* refactor(db): add batch logic to update for better performance

* test(plugin-workflow): fix test cases

* fix(db): treat belongsTo field in update values as foreignKey

* fix(db): also handle object with id for belongsTo field

* fix(db): avoid 0 as falsy

* fix(db): fix test case
2023-06-21 16:37:06 +08:00
chenos
64070b81b9
refactor: migrate adminSchemaUid & mobileSchemaUid to system settings (#2084)
* refactor: migrate adminSchemaUid & mobileSchemaUid to system settings

* fix: error
2023-06-21 11:02:49 +08:00
Junyi
56e6d0c3b1
fix(plugin-workflow): fix occasional error on enter workflow page (#2086) 2023-06-20 19:53:31 -07:00
chenos
0b06e2cd69 chore(versions): 😊 publish v0.10.0-alpha.2 2023-06-20 11:51:16 +08:00
jack zhang
d76e8fb87f
refactor: upgrade umi, react and react-router-dom (#1921)
* refactor: update umi version 3.x to version 4.x

* refactor: update react-router-dom version to 6.x

* refactor(react-router-dom): change Layout Component `props.children` to `<Outlet />`

* refactor(react-router-dom): change <Route /> props and <RouteSwitch /> correct

* refactor(react-router-dom): replace `<Redirect />` to `<Navigate replace />`

* refactor(react-router-dom): replace `useHistory` to `useNavigate`

* refactor(react-router-dom): replace `useRouteMatch` to `useParams`

* refactor(react-router-dom & dumi): fix <RouteSwitch /> & umi document bug

* refactor(react-router-dom): `useRoutes` Optimize `<RouteSwitch />` code

* refactor(react-router-dom): update `Route` types and docs

* refactor(react-router-dom): optimize RouteSwitch code

* refactor(react-router-dom): `useLocation` no generics type

* refactor(react-router-dom): add `less v3.9.0` to `resolutions` to solve the error of `gulp-less`

* refactor(react-router-dom): fix `<RouteSwitch />`  `props.routes` as an array is not handled

* chore: upgrade `dumi` and refactor docs

* fix: completed code review, add `targets` to solve browser compatibility & removed `chainWebpack`

* refactor(dumi): upgraded dumi under `packages/core/client`

* refactor(dumi): delete `packages/core/dumi-theme-nocobase`

* refactor(dumi): degrade `react`  & replace `dumi-theme-antd` to `dumi-theme-nocobase`

* refactor(dumi): solve conflicts between multiple dumi applications

* fix: login page error in react 17

* refactor(dumi): remove less resolutions

* refactor(dumi): umi add `msfu: true` config

* fix: merge bug

* fix: self code review

* fix: code reivew and test bug

* refactor: upgrade react to 18

* refactor: degrade react types to 17

* chore: fix ci error

* fix: support routerBase & fix workflow page params

* fix(doc): menu externel link

* fix: build error

* fix: delete

* fix: vitest error

* fix: react-router new code replace

* fix: vitest markdown error

* fix: title is none when refresh

* fix: merge error

* fix: sidebar width is wrong

* fix: useProps error

* fix: side-menu-width

* fix: menu selectId is wrong & useProps is string

* fix: menu selected first default & side menu hide when change

* fix: test error & v0.10 change log

* fix: new compnent doc modify

* fix: set umi `fastRefresh=false`

* refactor: application v2

* fix: improve code

* fix: bug

* fix: page = 0 error

* fix: workflow navigate error

* feat: plugin manager

* fix: afterAdd

* feat: update docs

* feat: update docs

* fix: page tab change not work

* fix: login redirect query param doesn't work

* fix: bug and doc

* feat: update docs

* fix: ci error

* fix: merge main

* feat: update docs

* feat: update docs

* feat: update docs

* chore(versions): 😊 publish v0.10.0-alpha.1

* fix: translations

* chore: backend node test max old space size

* docs: add useSearchParams

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: ChengLei Shao <chareice@live.com>
2023-06-20 11:48:02 +08:00
ChengLei Shao
d8ad98e2f7
fix(collection-manager): share collection when COLLECTION_MANAGER_SCHEMA not set (#2081)
* fix: share collection when COLLECTION_MANAGER_SCHEMA not set

* fix: test
2023-06-20 11:28:54 +08:00
xilesun
c9f51ca416 fix(oidc): field map bug 2023-06-19 21:53:33 +08:00
Junyi
0606637a73
fix(plugin-formula): fix formula field effect and read-pretty component (#2076) 2023-06-19 06:47:29 -07:00
Zhou
44549fdfee
Update README.zh-CN.md 2023-06-19 21:32:16 +08:00
xilesun
f99bedfab4 docs(oidc): add README 2023-06-19 21:13:03 +08:00
Dunqing
6d0f5c1fe0 fix(mobile-client): the JsBridge is not work 2023-06-18 10:30:27 +08:00
Dunqing
21efc5c66c fix(mobile-client): fix navigate is incorrect 2023-06-17 22:55:55 +08:00
chenos
106f9d90f5 fix(file-manager): only allow logged-in users to upload files 2023-06-17 21:53:49 +08:00
Junyi
e5bab3249a
refactor(plugin-workflow): manual collection block migration (#2064)
* refactor(plugin-workflow): change all collection node initializer in manual config

* refactor(plugin-workflow): clean code

* fix(plugin-workflow): fix custom form field in manual config

* refactor(plugin-workflow): add migration

* fix(plugin-workflow): fix custom form block migration

* fix(plugin-workflow): fix detail read-pretty for association fields
2023-06-15 23:06:47 -07:00
katherinehhh
4faf64f905
refactor(association-field): support sub table (#1862)
* 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: association field support sub-table

* refactor: locale

* fix: sub-table should not support add new

* refactor: code improve

* refactor: locale

* fix: compatibility history Subtable

* fix: getNesterAppends filter bug

* refactor: useFieldModeOptions

* refactor: subTable

* fix: associationSelect

* fix: associationSelect

* fix: associationSelect

* fix: getAssociationAppends

* fix: sub-form collection context

* refactor: code improve

* refactor: code improve

* refactor: code improve

* refactor: code improve

* refactor: code improve

* fix: sub-table

* fix: appends

* fix: sub-table-appends

* fix: undefine id

* fix: sub-table appends

* refactor: sub-table

* refactor: sub-table supoort delete

* fix: sub-table-appends

* refactor: sub table initvvalue

* fix: sub-table-appends

* fix:  association field appends

* fix:  association field appends

* fix:  association field appends

* style: style improve

* style: style improve

* refactor: textArear Markdown RichText

* style: style improve

* fix: title field

* refactor: code improve

* fix: system fields are not allowed to be edited

* refactor: subtable does not support inline operations

* refactor: jons edit in table

* refactor: sequence readOnly in table

* refactor: json readOnly in table

* fix: sub-table appends

* fix: runWhenParamsChanged

* fix: runWhenParamsChanged

* fix: sub-table appends

* fix: sub-table appends

* refactor: sub-table

* style: checkbox group intable

* style: delete button style improve

* fix: json edit in table

* fix: sub-table appends

* style: upload file in table column

* refactor: map edit in table

* refactor: map edit in table

* refactor: map field display in sub-table

* fix: support mutiple row

* refactor: sub-table

* refactor: sub-table not support sortable

* fix: sub-table appends

* fix: sub-table appends

* chore: useAssociationNames

* refactor: code improve

* refactor: support blocktemplate

* refactor: support blocktemplate

* fix: subtable

* fix: subtable initValue

* refactor: useAssociationNames in block template

* fix: cross hierarchical association field layout

* fix: normal field of association field should be append

* style: upload field in table

* refactor: sub table should not row selection

* style: checkboxGroup and radioGroup display in sub-table

* refactor: locale

* refactor: code improve

* refactor: quickEdit in sub-table

* refactor: quickEdit

* refactor: quickEdit

* refactor: quickEdit

* refactor: quickEdit

* style: quickEdit style improve

* style: quickEdit style improve

* style: quickEdit style improve

* refactor: sub-table support required config

* refactor: cell validate

* refactor: cell validate

* refactor: cell required validate

* refactor: cell required validate

* refactor: sub-table display when readPretty

* refactor: sub-table required

* refactor: sub-table required

* refactor: sub-table required

* refactor: sub-table initialValue

* refactor: table

* refactor: sub-tble field  required

* refactor: sub-table style improve

* refactor: sub-table attachemnt

* refactor: code improve

* test: tableV2 snap

* fix: subtable drag

* test: tableV2 snap

* refactor: checkbox group and radio group in sub-table

* refactor: sub-table required style

* style: markdown style in sub-table

* refactor: markdown display in sub-table

* refactor: json field display in sub-table

* refactor: code improve

* style: style improve

* style: style improve

* refactor: inserView when designable

* refactor:  china-region load data when dropdown click

* refactor: code improve

* refactor: code improve

* refactor: display loading when the form is first loaded

* refactor: display loading when the form is first loaded

* fix: verification exception when deleting sub table rows

* refactor: sub-table code improve

* refactor: sub-table code improve

* fix: json error feedback

* refactor: code improve

* fix: json onchange

* fix:  sub table data did not change when switching data templates

* test: variable test

* test: variable test

* refactor: data template

* refactor: code improve

* refactor: code improve

* fix: upload readpretty

* fix: attach upload in sub-tabl

* fix: remove small

* fix: attach upload in sub-table

* refactor: association fields should not display in sub-table

* fix: dropdownMatchSelectWidth

* refactor: association fields should not display in sub-table

* refactor: selectFile is false in sub-table

* refactor: attacattachment in sub-table

* refactor: attacattachment in sub-table

* fix: selector style

* refactor: quick edit component

* fix: zindex

* style: style improve

* style: style improve

* feat: styling

* fix: style

* fix: style

* refactor: quickEdit getContainer

* refactor: quickEdit

* refactor: quickEdit

* fix: improve code

* refactor: code improve

* refactor: code improve

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-06-16 12:07:43 +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
被雨水过滤的空气-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
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
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
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
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
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
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
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
被雨水过滤的空气-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
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
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
ChengLei Shao
c7b9e6ac51
feat: infer belongs to association field in view collection (#1756)
support belongs to field in view collection
2023-06-04 13:04:56 +08:00
ChengLei Shao
78095d1128 chore(collection-manager): load source field options 2023-05-31 19:04:01 +08:00
Junyi
cf4e91b0f2
fix(plugin-formula): fix read-pretty component when used in association field (#1957) 2023-05-30 16:15:42 +08:00
lincode
4296db5859
feat(plugin-manager): better plugin manager experience (#1927) 2023-05-29 11:06:54 +08:00
ChengLei Shao
ebae59507f
test(audit-logs): audit log changes (#1928)
* test: audit log changes

* chore: test
2023-05-28 07:57:59 +08:00
chenos
d7f21460c6 chore(versions): 😊 publish v0.9.4-alpha.2 2023-05-26 17:05:46 +08:00
YANG QIA
849956b8ea
feat(multi-app-manager): support auto start (#1931)
* feat(multi-app-manager): support auto start

* perf(multi-app-manager): move filter to sql
2023-05-26 09:55:11 +08:00
Junyi
17ccdee9ab
fix(client): fix some warnings (#1934)
* fix(client): fix some warnings

* fix(client): fix warning
2023-05-25 18:54:06 -07:00
chenos
9c94840c6b chore(versions): 😊 publish v0.9.4-alpha.1 2023-05-25 22:48:39 +08:00
ChengLei Shao
710bd2dfd2
fix: append acl resource params (#1923)
* test: append acl resource params

* fix: test
2023-05-24 21:31:12 +08:00
katherinehhh
e299f5452c
refactor: initialization when switching field components (#1915)
* fix: toManyNester only display one data

* fix: sub-nester

* fix: initialValue

* fix: [null]

* fix: record picker initValue

* fix: initValue filter

* fix: association select  initialValue filter

* fix: association select  initialValue filter

* fix: [null]

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-05-24 10:36:29 +08:00
ChengLei Shao
6fb569cf0d
fix: eager load with belongs to many with custom source key (#1913) 2023-05-23 15:03:32 +08:00
Junyi
920bdf8705
fix(plugin-formula): use read-pretty component in result (#1911) 2023-05-22 18:15:51 -07:00
YANG QIA
d35f67d2e1
feat(app): add clear cache button (#1909) 2023-05-22 17:16:12 +08:00
ChengLei Shao
5288cbb1cf
fix: eager load belongs to many association (#1906) 2023-05-22 16:09:37 +08:00
YANG QIA
eac034cb23
feat: support reboot application manually (#1889)
* feat(reload-btn): reload application manually

* feat(app): support reboot

* feat: collections load after upgrade

* feat(reboot): support reboot manually

* chore(reboot): some typo

* fix(reboot): fix storage path

* fix(reboot): change restart file path

* fix: menu divider

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-05-19 20:34:22 +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
Junyi
16444ae6ab
fix(plugin-workflow): fix language (#1886) 2023-05-18 08:27:18 -07:00
Junyi
2060bd4d44
feat(plugin-workflow): add node description to drawer when edit node (#1882)
* feat(plugin-workflow): add node description to drawer when edit node

* fix(plugin-workflow): fix manual description

* fix(plugin-workflow): fix languages
2023-05-18 19:42:30 +08:00
chenos
e0646650f0 fix(database): migrations table name missing table prefix 2023-05-18 14:51:51 +08:00
Junyi
c988c3705a
fix(plugin-workflow): fix variable api caller in loop (#1877) 2023-05-17 17:29:18 +08:00
chenos
be50cb5929 chore: remove link to field and association fields filter 2023-05-17 17:04:33 +08:00
Chareice
390c12ab2d fix: sub app running mode when standlone deploy 2023-05-17 16:07:24 +08:00
Junyi
0264d89d14
fix(plugin-workflow): fix trigger title when workflow not loaded (#1875) 2023-05-17 14:24:50 +08:00
Junyi
f4064767c6
feat(plugin-workflow): aggregate (#1852)
* feat(plugin-workflow): add aggregate instruction

* test(plugin-workflow): add test cases

* fix(plugin-workflow): fix types

* fix(plugin-workflow): fix double result type

* test(plugin-workflow): fix test cases in mysql

* refactor(plugin-workflow): consolidate variables api

* fix(plugin-workflow): fix create node variable

* fix(plugin-workflow): fix aggregate association name

* fix(plugin-workflow): fix test cases

* fix(plugin-workflow): fix aggregate node config for duplication

* fix(plugin-workflow): fix variable api

* fix(plugin-workflow): fix variable api caller

* fix(plugin-workflow): fix job button style
2023-05-17 13:37:03 +08:00
JoGosGitHub
770f53ec4e
Feat/translation es_ES (#1801)
* feat: client and plugin translation ES

* fix: es translation

* fix: es translation
2023-05-17 11:39:37 +08:00
Rairn
2e4636a8ca chore: avoid errors generated by collectionField 2023-05-16 20:09:36 +08:00
Junyi
0eb1c31514
feat(client): allow search by title in collection select (#1869) 2023-05-16 02:07:56 -07:00
ChengLei Shao
29956150ba
chore: skip get standalone deployment sub application (#1868)
* chore: skip get standalone deployment sub application

* feat: standalone deployment

* fix: link

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-05-16 16:38:17 +08:00
Junyi
9931e6a486
fix(plugin-workflow): remove useless context option (#1867) 2023-05-15 23:16:13 -07:00
Junyi
238af440e3
feat(plugin-workflow): loop (#1787)
* feat(plugin-workflow): add loop instruction

* fix(plugin-workflow): fix lint error

* feat(plugin-workflow): add loop variable in client

* feat(plugin-workflow): refactor and add job list to nodes in execution

* feat(plugin-workflow): allow to query multiple records

* fix(plugin-workflow): fix i18n

* fix(plugin-workflow): fix undefined value in component

* fix(plugin-workflow): fix parse context value with current node

* fix(plugin-workflow): fix revision with scope variable

* test(plugin-workflow): add failing case

* fix(plugin-workflow): fix revision with scope variable

* chore(plugin-workflow): fix lint errors

* fix(plugin-workflow): fix workflow canvas page style

* fix(plugin-workflow): revert abstracted node config drawer back to each node

* fix(plugin-workflow): fix parallel extra call

* fix(plugin-workflow): fix parallel branch end

* fix(plugin-workflow): fix jobs variable in processor

* fix(plugin-workflow): fix workflow canvas scroll style

* fix(plugin-workflow): fix slowly opening job modal

* fix(plugin-workflow): fix cycling reference
2023-05-15 18:45:45 -07:00
Dunqing
3a77e4376a
feat: support List and Grid Card block (#1753)
* feat: support details block

* feat: rename to list

* fix: imports

* feat: improve list block

* feat: support title hidden

* fix: showTitle default value

* feat: support table column actions

* feat: support appendsOnDemand

* feat: reuse same schema items

* feat: shouldn't display pagination when pages only one

* feat: block order

* feat: support card list

* fix: appends on demand

* fix: remove unused code

* fix: params

* fix: improve default pageSize

* feat: improve performance

* feat: add title designer

* feat: improve huge performance

* fix: better key

* feat: improve schema perf

* feat: improve initializer

* fix: improve grid perf

* fix: avoid haven't properties

* feat: support automatic run service when params changed

* fix: revert params

* fix: grid col width

* refactor: improve CardList performance

* fix: initializer related

* feat: i18n supports

* fix: improve get schema

* fix: create new form

* fix: revert code

* feat: css improve

* fix: i18n copy

* refactor: the CardList rename to GridCard

* feat: remove AssociationFilter item

* fix: edit and view data is incorrect

* feat: remove bulk actions

* feat: improve action bar

* feat: supports configuration of columns with different screen sizes

* fix: incorrect place to save the template

* feat: keep height in all card

* fix: remove console

* fix: rename

* refactor: improve GridCard implementation

* feat: support import/export actions

* fix: remove padding when actions is empty

* fix: remove incorrect import

* fix: remove unused props

* fix: action place

* feat: improve column count

* refactor: remove appendsOnDemand, and use useAssociationNames instated it

* fix: incorrect component

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-05-16 09:05:47 +08:00
ChengLei Shao
1c757bd025
feat: support running single sub app (#1853) 2023-05-14 16:48:53 +08:00
Junyi
6c149aadfc
feat(plugin-workflow): add delete button in workflow canvas page (#1844)
* feat(plugin-workflow): add delete button in workflow canvas page

* fix(plugin-workflow): fix redirect url after deleted

* fix(plugin-workflow): fix antd version
2023-05-11 07:48:10 -07:00
Rairn
d34b3fc5e3 chore: add translations 2023-05-11 16:56:05 +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
Junyi
7fcdc5d336
fix(plugin-workflow): select menu width (#1820) 2023-05-07 22:50:43 -07: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
Junyi
eb0089190e
fix(utils): fix json-templates bug and moved to utils (#1784) 2023-04-28 22:22:08 +08:00
Junyi
4db3b283b0
fix(evaluators): fix date result in variable (#1781) 2023-04-28 14:50:35 +08:00
李小斐
7ddc5fb33c
fix: fix button design about edit action (#1755)
* fix: fix button design about edit action

* fix: fix import module

* Update packages/core/client/src/schema-component/antd/expand-action/Expand.Action.Design.tsx

Co-authored-by: 被雨水过滤的空气-Rairn <958414905@qq.com>

* Update packages/core/client/src/schema-component/antd/expand-action/Expand.Action.tsx

Co-authored-by: 被雨水过滤的空气-Rairn <958414905@qq.com>

* Update packages/core/client/src/schema-component/antd/expand-action/Expand.Action.tsx

Co-authored-by: 被雨水过滤的空气-Rairn <958414905@qq.com>

* fix: fix merge error

---------

Co-authored-by: 被雨水过滤的空气-Rairn <958414905@qq.com>
2023-04-27 15:09:45 +08:00
chenos
923f6e7884 chore(versions): 😊 publish v0.9.2-alpha.4 2023-04-26 22:33:55 +08:00
chenos
77a6cbf773 chore: cleanup 2023-04-26 22:32:45 +08:00
被雨水过滤的空气-Rairn
e45b3ce95c
fix: hide default value for expression (#1765) 2023-04-26 00:23:31 -07:00
black
00b3c8c257
fix(filter-block): fix association fields not being filtered (#1758) 2023-04-26 10:43:48 +08:00
被雨水过滤的空气-Rairn
95e4e7e7b0
fix(variable-input): fix style (#1761)
* fix(variable-input): fix style

* refactor: avoid lint error

* feat: add invariable

* fix: fix the default value variable of the expression is empty
2023-04-26 09:56:25 +08:00
ChengLei Shao
9101bbbb1b
chore: skip sync overriding field default value (#1762)
* chore: skip sync overriding field default value

* chore: test

* chore: override field does not allow setting default values

---------

Co-authored-by: katherinehhh <katherine_15995@163.com>
2023-04-25 19:31:16 +08:00