99 Commits

Author SHA1 Message Date
YANG QIA
febaef9cf9
fix(auth): token assignment in AuthProvider (#6593) 2025-03-31 12:53:25 +08:00
YANG QIA
27c2538d40
fix(l10n): localization for fields of sign up page (#6556) 2025-03-26 11:02:00 +08:00
YANG QIA
e7702b8537
fix(auth): trim authenticator options (#6527)
* fix: trim authenticator options

* fix: bug
2025-03-22 20:15:38 +08:00
chenos
f7a81858ea
fix: missing authenticator (#6526) 2025-03-22 08:48:00 +08:00
chenos
dd47ca4552 fix: locale error 2025-03-18 15:23:13 +08:00
N3tN00b3r
97940d246c
Updating italian translations (#6434)
* Add italian translation

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Update it-IT.json

* Create it-IT.json

* Create it-IT.json

* Update it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

The following strings have been intentionally not translated to avoid misinterpretation of the technical terms:

Access Key ID
Access Key Secret
Secret ID
Secret Key

* Create it-IT.json

* Create it-IT.json

* Update it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Create it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Create it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Create it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json

* Update it-IT.json
2025-03-12 21:39:47 +08:00
Jonas Fleischer
9d572bf8f4
feat: add German localization files for NocoBase core and plugins (#6435)
* feat: add German localization files for NocoBase core and plugins

* feat: expand German localization for NocoBase plugins compared to chinese translation

This commit adds and enhances German translation files across multiple NocoBase plugins, including:
- Workflow plugins (action trigger, manual, notification, etc.)
- File management
- Charts and data visualization
- Async task management
- Import/export functionality
- Theme editor
- And several other core and extension plugins
2025-03-12 21:35:26 +08:00
Sheldon Guo
69c75566e0
fix(auth): user has no roles should redirect error message page (#6408) 2025-03-11 03:46:28 +08:00
Sheldon Guo
79ef798b38
fix(auth): handle non-existent user with 401 error and update locale messages (#6381)
* fix(auth): handle non-existent user with 401 error and update locale messages

* fix(auth): enhance error handling for 401 status with specific error codes

* fix(auth): improve 401 error handling by checking for specific error codes
2025-03-09 08:09:13 +08:00
nocobase[bot]
1670cead6c Merge branch 'main' into next 2025-03-07 09:16:37 +00:00
N3tN00b3r
a1fe85bd03
Adding italian translation for plugins (#6316)
* Add italian translation

* Create it-IT.json
2025-03-07 17:16:16 +08:00
Sheldon Guo
f2c3f54109
fix(auth): accidentally logged out due to WebSocket authorization. (#6342)
* fix(auth): improve logging by including full context and error details

* fix(auth): enhance logging with error handling for token renewal

* feat(auth): init checkToken

* feat(auth): implement checkToken method with detailed token status and user information

* fix(auth): update check method to handle expired tokens and improve token renewal process
2025-03-04 06:54:01 +08:00
Sheldon Guo
8d52fc6c84
refactor: remove unnecessary NavigateIfNotSignIn wrapper from AdminProvider (#6268)
* refactor: remove unnecessary NavigateIfNotSignIn wrapper from AdminProvider

* refactor: remove NavigateToSigninWithRedirect and NavigateIfNotSignIn

* refactor: streamline error handling in authCheckMiddleware

* fix: prevent notification for user role errors in authCheckMiddleware

* fix: use app error to show error message for USER_HAS_NO_ROLES_ERR in authCheckMiddleware
2025-02-25 13:13:35 +08:00
nocobase[bot]
ef54fc895f Merge branch 'main' into next 2025-02-19 15:02:29 +00:00
Junyi
43e71edf69
fix(plugin-auth): support to trigger workflow when change password (#6248)
* fix(plugin-auth): support to trigger workflow when change password

* fix(plugin-auth): fix await
2025-02-19 23:02:01 +08:00
Sheldon Guo
acb61e214f
fix(auth): enhance token concurrent update and auth error handling logic (#6208)
* fix: add optional chaining for safe access to response headers in auth middleware

* fix: add skipNotify option to handle error notifications in SSE stream

* fix: handle expired session error in auth flow and remove unused cache update

* fix: implement renewed JTI cache duration and update related tests

* fix: add skipNotify option to updateUnreadMsgsCount for improved notification handling
2025-02-14 10:55:02 +08:00
nocobase[bot]
9b94e77d9f Merge branch 'main' into next 2025-02-13 05:15:33 +00:00
YANG QIA
dd7c7f641c
fix(auth): ws auth issue (#6209) 2025-02-13 13:15:08 +08:00
Sheldon Guo
feb9074e56
refactor(test): modify the test function login to be asynchronous and update the relevant test cases (#6181)
* refactor(test): modify the test function login to be asynchronous and update the relevant test cases
2025-02-08 13:53:30 +08:00
Sheldon Guo
0144e2e510
fix(auth): use loginWithJti to update authentication-related test cases and prevent errors (#6175)
* refactor(auth): update login method to use loginWithJti for test cases
2025-02-07 17:45:48 +08:00
Sheldon Guo
cab54e9ebb
fix(auth): update client auth middleware logic to prevent token update failure due to concurrency (#6135)
* feat(auth): add logging for token renewal process and new error code for stream requests

* feat(auth): session expiration check everytime

* feat(auth): validate token validity period against session validity period

* fix(auth): correct wording for session validity period in localization file

* fix(auth): update redirect logic to handle specific auth error codes

* fix(auth): correct error response structure for token renewal and stream requests

* fix(auth): add token expiration check to update token status

* fix(notification): add skipAuth option to SSE stream request

* fix(auth): simplify redirect logic in auth check middleware

* fix(auth): update logging to include request headers and enhance error handling in auth middleware
2025-02-06 15:31:18 +08:00
Chareice
2b58c13aa5
chore: migration rules 2025-01-24 22:31:39 +08:00
Sheldon Guo
c46cdd37ae
fix(plugin-auth): update migration rules for issued tokens and token policy config (#6107) 2025-01-21 10:46:33 +08:00
Sheldon Guo
8e5fd9359f
fix(auth): fix redirecting unauthenticated users from registration/public forms to the login page (#6094)
* feat(auth): add skipAuth option to API requests and update auth middleware

* feat(auth): implement removeBasename function to streamline pathname handling
2025-01-19 18:37:14 +08:00
Sheldon Guo
cc6928c7d0
feat(auth): support token security (#5948)
* feat(auth): support token security config
---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: xilesun <2013xile@gmail.com>
2025-01-18 22:18:51 +08:00
Chareice
8928b97534
Merge branch 'next' into develop 2025-01-16 20:02:53 +08:00
ChengLei Shao
27b45e8dae
chore: ws api (#6080)
* chore: ws api

* fix: ws error

* fix: send ws message response
2025-01-16 19:45:43 +08:00
Katherine
5d5f455b3c
feat: supports configuring dynamic environment variables and secrets (#5966)
* feat: environments plugin

* feat: improve code

* fix: improve code

* feat: improve code

* refactor: package description

* feat: bulk import

* fix: remove

* refactor: file manager support environment variables

* refactor: file manager support environment variables

* refactor: map manager support environment variables

* refactor: support environment variables

* refactor: support environment variables

* refactor: support delete environment variables

* fix: bug

* refactor: workflow support environment variables

* refactor: email  environment variables

* refactor: support bulk import

* refactor: support bulk import

* refactor: support bulk import

* refactor: support bulk import

* refactor: code improve

* feat: env

* chore: update

* feat: environment

* fix: bug

* fix: acl snippet

* fix: acl snippets

* chore: map manager

* refactor: support line break

* refactor: support password

* chore: environment variables

* fix: bug

* fix: bug

* chore: enviroment variables

* chore: system settings

* fix: improve code

* feat: verification

* feat: map

* feat: file-manager

* feat: notification

* fix: bug

* feat: workflow

* fix: improve code

* fix: bug

* feat: data-source

* feat: auth

* fix: error

* fix: bug

* refactor: description

* refactor: locale

* refactor: locale

* refactor: locale

* refactor: code improve

* refactor: locale

* refactor: locale

* style: style improve

* fix: error

* fix: bug

* fix: bug

* refactor: environment

* fix: ellipsis

* refactor: password

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* chore: test

* fix: cache

* fix: mysql dialect options

* refactor: email config form

* fix: bug

* fix: bug

* fix: authenticator.dataValues parse

* fix: include undefined

* fix: json

* fix: json parse

* chore: enviromentProvider

* fix: acl

* fix: rowKey

* fix: update ProviderOptions.tsx

* feat: get app instance

* fix: bug

* fix: text

* fix: build error

* fix: error

* chore: migration rules options

* chore: migration rules

* refactor: code improve

* feat: env v2

* chore: environment varibales

* chore: environment serve

* fix: getVariables

* feat: improve code

* fix: bug

* chore: collection options for migration

* chore: tree collection options

* chore: migration rules

* chore: migration rules

* chore: env api

* chore: env api

* fix: optionsKeysNotAllowedInEnv

* fix: required true

* fix: improve code

* fix: app refresh

* fix: remove db.import

* fix: type error

* fix: map

* refactor: locale improve

* refactor: tx-cos

* fix: undefined

* refactor: code improve

* chore: use bookworm

* fix: npm add user

* fix: npm login

* fix: npm adduser

* fix: npm adduser

* fix: expect

* fix: expect

* fix: environmentVariables

* refactor: support bulk delete & filter

* refactor: locale improve

* feat: filter

* refactor: useGlobalVariable

* fix: scope

* fix: bug

* fix: optionsKeysNotAllowedInEnv

* fix: test error

* fix: test

* fix: test

* feat: improve code

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: Chareice <chareice@live.com>
2025-01-08 09:32:49 +08:00
nocobase[bot]
bb49b11d23 Merge branch 'next' into develop 2025-01-01 16:22:31 +00:00
Chareice
617c4cba10
fix: auth websocket 2025-01-02 00:22:05 +08:00
nocobase[bot]
97306be77c Merge branch 'next' into develop 2025-01-01 14:29:17 +00:00
Chareice
c1eb366701
fix: logout error 2025-01-01 22:28:50 +08:00
nocobase[bot]
30ea467dc8 Merge branch 'next' into develop 2024-12-31 12:16:25 +00:00
ChengLei Shao
61e7a89067
refactor: export action (#5665)
* chore: export xlsx command

* chore: container service

* chore: report export progress

* chore: export

* chore: performInsert

* chore: export command

* chore: base exporter

* chore: limit option

* chore: export

* chore: export

* chore: types

* chore: ws socket with auth

* refactor: refactor exporter, change addRows method to handleRow method to support row-by-row processing

* chore: xlsx exporter

* chore: base exporter

* chore: export limit

* chore: import action

* chore: load websocket

* chore: import action

* chore: object to cli args

* chore: import options

* chore: import action

* chore: import runner

* chore: import action

* chore: import options

* chore: import options

* chore: plugin load event

* chore: test

* chore: i18n

* chore: i18n

* chore: i18n

* fix: ws auth status

* chore: cache in data source

* chore: load datasource

* chore: import with field alias

* fix: build

* fix: test

* fix: build

* fix: import schema settings

* fix: import action

* fix: import progress

* chore: template creator

* fix: import error message

* fix: import error message

* chore: test

* chore: workflow dispatch event

* chore: export alias

* fix: typo

* chore: error render

* fix: event error

* chore: send message to tags

* fix: test

* fix: import action setting
2024-12-31 20:16:03 +08:00
YANG QIA
84cfa82304
feat: security (#5923)
* feat: password policy

* feat: password validator

* fix(inbox): i18n of channel title

* feat: atomic counter

* fix: bug

* fix: bloom

* chore: i18n

* fix: counter

* fix: build

* fix: bug

* fix: z-index

* fix: export

* test: add redis cache test

* fix: test

* fix: test

* fix: test

* fix: bug

* fix: form reset

* fix: locale

* fix: version

* fix: separate cache for sub apps

* chore: update
2024-12-29 08:33:27 +08:00
xilesun
702bdbe3d9 Merge branch 'main' into next 2024-12-19 10:31:07 +08:00
YANG QIA
3eb4907fcc
fix(users): optimize API validation for user profile editing and password updates (#5912)
* fix(users): optimize API validation for user profile editing and password updates

* chore: update

* test: add test cases
2024-12-19 10:21:54 +08:00
Zhi Chen
21bd55422f
refactor(audit-manager): optimize the logic of getting metadata (#5814)
* chore: optmize log output

* chore: optmize log output
2024-12-13 10:00:41 +08:00
nocobase[bot]
9a7abf3ce6 Merge branch 'next' into develop 2024-12-06 06:58:53 +00:00
ChengLei Shao
ba1446c77f
chore: empty filter check (#5806)
* chore: empty filter check

* chore: test

* fix: test

* fix: test

---------

Co-authored-by: xilesun <2013xile@gmail.com>
2024-12-06 14:57:58 +08:00
Zeke Zhang
501e4276cb chore(e2e): update register case 2024-11-28 14:04:48 +08:00
Zhi Chen
3d1e856d55
feat: add audit manager (#5601)
* feat: 部分代码

* feat: auditmanager

* feat: remove plugin and update Audit test case

* fix: build error

* feat: update audit value

* fix: some action like create remove can not work correctly

* fix: metadata data

* feat: update some dataSource

* fix: filterKeys error

* style: update code format

* feat: add getMetaData test & add audit log in specific module

* fix: bug

* refactor: registerAction and getAction

* refactor: registerAction and getAction

* fix: log

* fix: fix middleware

* chore: add getResourceUk

* chore: use response code as status

* chore: log error

* chore: get role from response header

* chore: auth signIn getUserInfo

* chore: add X-Forwarded-For

* chore: adjust IP acquisition and add log user updateprofile

* fix: getAction bug

* fix: get ip from header

* chore: register uiSchemas actions

* chore: register uiSchemas:insertAdjacent

* chore: record source and target

* chore:  record auth:changePassword

* chore: add getSourceAndTarget

* chore: auditManager tests

* fix: delete submodule

* chore: delete debug port

* fix: module not found

* chore: save path and swap the values of source and target

---------

Co-authored-by: yujian.sun <yujian.sun@dmall.com>
Co-authored-by: sunyujian <565974029@qq.com>
Co-authored-by: xilesun <2013xile@gmail.com>
2024-11-28 12:32:47 +08:00
Zeke Zhang
f9f217e01d chore(e2e): update register case 2024-11-28 09:25:24 +08:00
nocobase[bot]
049ddc95e9 Merge branch 'next' into develop 2024-11-27 06:25:20 +00:00
YANG QIA
78a20e8fd9
feat(basic-auth): allows to add more fields of user collection in sign up form (#5741)
* feat(basic-auth): allows to add more fields in sign up form

* feat: backend

* feat: add reactions

* fix: bug

* fix: bug

* chore: optimize
2024-11-27 14:24:56 +08:00
nocobase[bot]
b15f532ce2 Merge branch 'next' into develop 2024-11-27 04:24:25 +00:00
YANG QIA
d62f9507a6
Revert "feat(basic-auth): allows to add more fields in sign up form (#5717)" (#5739)
This reverts commit ac80dd8a3c1aae04d95599e9c2cfd0776825662b.
2024-11-27 12:24:00 +08:00
nocobase[bot]
0b62ae834a Merge branch 'next' into develop 2024-11-27 03:43:01 +00:00
YANG QIA
ac80dd8a3c
feat(basic-auth): allows to add more fields in sign up form (#5717)
* feat(basic-auth): allows to add more fields in sign up form

* feat: backend

* feat: add reactions

* fix: bug
2024-11-27 11:42:35 +08:00
Zeke Zhang
c0055ce826
perf(Page): improve performance (#5515)
* refactor(Tabs): remove observer and add memo

* refactor(useFilterFieldProps): use useCallback

* perf(FilterProvider): use startTransition

* perf(BlockRequestProvider): split context to improve rendering performance

* fix: make e2e tests pass

* perf(FilterBlockProvider): avoid rerender when updating state

* perf(DocumentTitleProvider): avoid rerender when updating state

* chore: set the default page title to empty string

* perf(BlockRequestProvider_deprecated): remove useless code

* perf(RecordProvider): add memo

* chore(Table): add comment

* perf: add memo to avoid rerender

* perf(InternalSchemaToolbar): improve style performance

* perf(ActionPage): improve style performance

* perf(BlockItem): improve style performance

* perf(Grid): improve style performance

* perf(IconField): improve style performance

* perf(MenuItem): improve style performance

* refactor(style): remove useless code

* perf(ArrayCollapse): improve style performance

* perf(acl): improve style performance

* perf(LinkageRules): improve style performance

* perf(ActionDrawerUsedInMobile): improve style performance

* perf(InternalPopoverNesterUsedInMobile): improve style performance

* perf(MobileActionPage): improve style performance

* perf(MobileTabsForMobileActionPage): improve style performance

* perf(Mobile): improve style performance

* perf(MobileTabBar): improve style performance

* perf(MobilePageContentContainer): improve style performance

* perf(MobilePageHeader): improve style performance

* perf(MobilePageNavigationBar): improve style performance

* perf(MobileNavigationBarAction): improve style performance

* chore: fix build error

* perf: some minor optimizations

* perf(CollectionFieldInternalField): optimize performance of default value processing

* refactor(CollectionFieldInternalField): remove useless code

* perf(PageContent): improve performance

* refactor(Table): use skeleton component

* perf(Table): improve pagination performance

* perf(TableSkeleton): improve skeleton component performance

* style(TableSkeleton): optimize style

* perf(PageTabs): cache rendered content to prevent re-rendering

* fix: fix add tab

* chore: make unit tests pass

* refactor: remove deprecated API

* fix(filterBlocks): make e2e tests pass

* fix(Action): make e2e tests pass

* perf(CollectionField): use custom RecursionField component to avoid unnecessary re-renders

* perf(Map): extract style

* Revert "perf(CollectionField): use custom RecursionField component to avoid unnecessary re-renders"

This reverts commit 203ecc1334429a8b77177337c8649ece1abdaeed.

* fix: fix e2e error

* fix: fix unit tests

* chore: fix build error

* perf(useResourceName): avoid unnecessary re-renders

* perf(TableBlockProvider): prevent unnecessary re-renders by splitting context

* perf(useDataBlockRequest): prevent unnecessary re-renders

* perf(useBlockCollection): avoid unnecessary re-renders

* perf(ActionContextProvider): add useMemo for context value

* perf(useTableBlockProps): avoid unnecessary re-renders

* perf(Details): add skeleton component

* chore(SchemaSettingsDropdown): make menu visibility more stable

* perf(withSkeletonComponent): use useDeferredValue

* refactor(ErrorBoundary): optimize code

* perf(plugin-charts-old): ignore old plugin context

* perf(CollectionHistoryProvider): optimize location context

* perf(MenuEditor): optimize router context

* fix(InternalAdminLayout): fix the issue of missing left sidebar menu

* perf(MenuEditor): prevent unnecessary re-renders

* perf(RouteSchemaComponent): prevent unnecessary re-renders

* perf(react-router-hooks): improve performance

* perf: add skeleton component for other blocks

* perf(CurrentUserProvider): remove loading

* refactor: remove useless code

* fix: fix the issue of redirecting to the homepage after refreshing the page

* perf(SystemSettingsProvider): remove loading

* perf(CollectionHistoryProvider): remove loading

* perf(useCurrentAppInfo): remove loading

* perf(RemoteCollectionManagerProvider): remove loading

* perf(RequestSchemaComponent): remove loading

* refactor(MenuEditor): remove useless code

* refactor: remove useless code

* perf(Page): reduce white screen time

* Revert "Revert "perf(CollectionField): use custom RecursionField component to avoid unnecessary re-renders""

This reverts commit b3a4201a82617534b9f5c3d16d4769f1327b3b02.

* perf(wip): add custom RecursionField component

* perf(RecursionField): complete custom RecursionField component

* perf(FilterAction): avoid unnecessary re-rendering

* perf(InputReadPretty): improve render performance

* fix(NocoBaseRecursionField): fix the issue where the page does not update

* perf(ReadPrettyInternalViewer): remove observer

* perf(Table): remove unnecessary context

* perf(NocoBaseField): customize a Field component

* chore: add comments

* fix(ButtonEditor): fix the issue where button title does not update after modification

* fix(ellipsis): fix the issue where the page does not refresh after modification

* refactor(NocoBaseField): rename and improve performance

* fix(NocoBaseField): add compile

* perf(Table): avoid rendering popup content

* chore: fix build error

* fix(popup): fix the issue where popups cannot be opened in embedded pages

* perf(CollectionField): remove ErrorBoundary

* chore(NocoBaseRecursionField): add isUseFormilyField

* perf(TemplateBlockProvider): use performance hooks

* refactor(FormV2): optimize skeleton screen effect

* perf(EditableAssociationField): remove observer

* perf(CollectionField): reduce nested component hierarchy

* refactor(SchemaSettingsSwitchItem): prevent UI refresh issues

* fix: fix field issues

* refactor(CollectionField): extract CollectionFieldInternalField component

* fix(DataSources): fix table error issue

* fix(drawer): fix drawer error

* fix(CollectionManagerSchemaComponentProvider): fix incorrect scope value

* fix(BodyRowComponent): fix issue with empty record

* fix(usePopupSettings): fix issue with popup not opening

* fix(BlockTemplates): fix table error issue

* refactor(NocoBaseRecursionField): set default value of isUseFormilyField to true

* refactor(Action): replace RecursionField with NocoBaseRecursionField

* fix(RequestSchemaComponent): fix issue with subpage not opening on mobile devices

* feat(loading): add delay for loading component

* fix(workflow): fix workflow table display issue

* chore(NocoBaseField): add compile method for default value

* fix(CollectionField): compatibility with legacy version

* fix(CollectionField): compatibility with legacy version

* fix(e2e): remove memoize function

* fix: add back dn.refresh

* refactor(CollectionField): reduce component rendering in specific cases

* Revert "fix(drawer): fix drawer error"

This reverts commit da8b43d9322aed39a1adf0ccdf24beca52a228ef.

* fix(popup): fix the issue where the second layer popup cannot be opened

* Revert "fix(popup): fix the issue where the second layer popup cannot be opened"

This reverts commit 71e9a43f361dd806affe9707254ed30882c27178.

* fix(popup): fix the issue where the second layer popup cannot be opened

* fix(popup): fix the issue where content is not displayed when reopening the popup

* fix(NocoBaseRecursionField): add default value

* refactor: revert to RecursionField version

* fix(Duplicate): fix the issue where values are not displayed

* Revert "refactor: revert to RecursionField version"

This reverts commit 087dcd4dc4d8d83f41272ac1b270dea281f49e08.

* fix(association-field): use NocoBaseRecursionField

* fix(menu): fix the issue where menu items are not displayed after adding

* fix(grid-card): make e2e pass

* fix(NocoBasePageHeader): fix the issue where title is not updated after modification

* fix(AdminLayout): fix page navigation issue

* fix(e2e): make e2e pass

* fix(e2e): fix the issue where data is not refreshed after closing the popup

* fix(e2e): fix the issue where relationship field popup variables are displayed incorrectly

* fix(e2e): fix JSON.stringify circular reference issue

* fix(e2e): make mobile e2e more stable

* fix(e2e): fix subform display issue

* fix(e2e): fix field pattern state

* chore(test): make some unit tests pass

* fix(test): make some unit tests pass

* fix(test): make unit tests pass

* perf(SortableItem): reduce unnecessary component rendering in non-configuration mode

* chore(Table): use startTransition

* perf(page): implement keep-alive effect

* chore: remove loading delay

* chore(e2e): skip one e2e

* chore: fix build error

* refactor: extract KeepAlive component and fix e2e test errors

* fix(test): make unit tests pass

* fix(KeepAlive): children should be a function

* fix(popup): avoid being affected by KeepAlive

* perf(KeepAlive): reduce lag when switching pages

* refactor(DndContext): extract InternalDndContext component

* refactor(KeepAlive): avoid memory overflow

* chore: limit maximum number of cached pages

* refactor: use useEffect instead of useLayoutEffect

* refactor(AdminLayout): extract NocoBaseLogo component

* perf: reduce lag when switching pages

* chore(KeepAlive): increase maximum number of cached pages

* perf(Grid): optimize rendering performance in non-configuration mode

* perf(Table): reduce one re-render when switching pagination

* refactor(SubTable): separate SubTable's Table component from normal Table component

* chore(test): make unit tests pass

* fix(e2e): fix the issue where table data does not refresh after form submission

* chore(e2e): update some e2e tests

* fix(Table): fix the issue where Dropdown component disappears after adding association fields

* perf(Table): optimize refresh performance

* refactor(NocoBaseField): simplify code writing

* perf(Context): improve performance

* perf(Context): improve render performance

* perf(Menu): improve menu performance

* perf: lower the priority of updating title

* perf(Page): avoid re-layout when switching pages

* perf(Table): reduce repainting time

* perf(popup): improve popup opening speed

* perf(popup): using toJSON for deep clone, faster than lodash's cloneDeep

* perf(withSkeletonComponent): defer loading state update

* perf(PopupRouteContextResetter): improve render performance

* perf(popup): improve popup closing speed

* perf(popup): improve popup closing performance

* perf(SchemaToolbar): avoid excessive style calculations

* perf(SchemaSettingsDropdown): avoid using useLayoutEffect

* perf(popup): improve popup opening speed

* fix(pageTab): fix the error when switching tab pages

* fix(popup): fix the issue of duplicate URLs caused by rapid button clicks

* refactor: extract NocoBasePageHeaderTabs

* fix(pageTabs): fix settings not refreshing after changes

* chore(test): make unit tests pass

* chore(test): update test case

* chore(SchemaInitializerSwitch): update unit test

* chore(useVariables): update unit tests

* chore(e2e): make some e2e tests pass

* chore(e2e): make e2e tests pass

* chore(e2e): update tests to make it pass

* fix(SideMenu): fix the issue where is not refresh when adding a page

* fix(Menu): fix the issue where is not refresh when changing menu

* fix(e2e): fix e2e error

* fix(e2e): fix refresh issues

* fix(e2e): fix some bugs

* fix(e2e): fix e2e error

* fix(test): fix unit tests

* fix(popup): prevent rapid clicking issues

* fix(e2e): fix e2e error

* fix(e2e): fix refresh issues

* fix(Table): do not change table pagination after switching pages

* perf(Menu): improve performance

* perf(Table): reduce row render times

* fix(KeepAlive): fix lag when switching designable

* fix(e2e): fix e2e error

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2024-11-27 07:19:52 +08:00