117 Commits

Author SHA1 Message Date
Zeke Zhang
97d2ad6f52
feat: support for displaying deeper level association fields in data blocks (#5243)
* feat(table): add support for selecting child fields of association fields

* style: fix style

* feat(details): add support for selecting child fields of association fields

* fix: correct sourceId retrieval

* test: add tests

* chore: fix build error

* chore: remove ConfigProvider

* test: update e2e tests
2024-09-10 11:13:37 +08:00
chenos
6d2f17a7c3
feat: provide more user-friendly application-level error messages (#5220)
* fix: display app maintaining message

* fix: app error
2024-09-07 07:53:50 +08:00
Zeke Zhang
70d96c3e33
fix: resolve tab switching issue (#5081)
* refactor: convert parameters to destructured object

* fix: resolve tab switching issue in multi-app pages

* fix: fix ineffective tab switching within nested popups
2024-08-18 08:38:52 +08:00
Zeke Zhang
4aaab331ae
fix(mobile): fix 'Edit link' setting (#5068) 2024-08-16 12:02:11 +08:00
jack zhang
4404f5fa13
feat: encryption field (#4975)
* feat: add @nocobase/plugin-field-encryption

* fix: bug

* fix: hook

* fix: add operators

* feat: add hidden

* fix: i18n

* fix: bug

* feat: env add ENCRYPTION_FIELD_KEY

* fix: exception handling

* fix: error message i18n

* fix: add `addFieldInterfaces()` alias

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: workflow env

* fix: bug

* fix: e2e

* fix: e2e bug

* fix: move `checkKey()` to field

* fix: move EncryptionField to database package

* fix: move encryption plugin to pro

* chore: encryption field in field type map

* fix: unit test

* fix: remove console

* fix: add more value check

* fix: bug

* fix: bug

* fix: bug

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: Chareice <chareice@live.com>
2024-08-09 17:14:37 +08:00
jack zhang
aa76b78da4
fix: mobile auth (#5015)
* fix(T-5026): mobile auth

* fix: bug

* fix: plugin settings only have link type

* fix: bug
2024-08-09 15:21:34 +08:00
jack zhang
a7c2f90260
refactor: support dynamic field component (#4932)
* refactor: support dynamic field component

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: add addFieldInterfaceComponentOption() doc

* fix: bug

* fix: bug

* fix: add unit test

* fix: bug

* fix: bug
2024-08-06 09:21:01 +08:00
jack zhang
61e9dd5cc1
feat: plugin mobile v2 (#4777)
* feat: init

* fix: mobile layout

* feat: more code

* feat: improve navigate bar

* fix: mobile title

* feat: improve code

* fix: add settings and initailzer

* fix: settings

* fix: tabbar items settings

* feat: tabbar initializer

* fix: api

* fix: styles

* feat: navbar

* feat: navigate bar tabs initializer

* feat: navigate bar tab settings

* feat: navigation bar actions

* fix: bug

* fix: bug

* fix: bug

* fix: tabbar active

* fix: bug

* fix: mobile login and layout

* fix: update version

* fix: build error

* feat: plugin settings support link

* fix: add mobile meta

* fix: desktop mode

* fix: remove old code and change collection name and mobile path

* fix: tabbar and tabs initialer layout

* fix: initializer style

* fix: adjust schema position

* fix: mobile style

* fix: delete relation resource and home page bug

* fix: support multi app

* fix: not found page

* fix: js bridge

* fix: bug

* fix: navigation bar schema flat

* fix: navigation bar action style

* fix: change version

* fix: mobile meta and real mobile test

* refactor: folder and name

* fix: navigation bar sticky and zIndex

* fix: full mobile schema

* fix: mobile readme and package.json

* fix: e2e bug

* fix: bug

* fix: tabbar style on productino

* fix: bug

* fix: rename MobileTabBar.Page

* fix: support tabbar sort

* fix: support  page tabs sort

* fix: i18n

* fix: settings utils import bug

* docs: api doc

* fix: qrcode refresh

* test: unit tests

* fix: bug

* fix: unit test

* fix: build bug

* fix: e2e test

* fix: overflow scroll

* fix: bug

* fix: scroll and overflow

* fix: bug

* fix: e2e expect await

* fix: e2e bug

* fix: bug

* fix: change name

* fix: add more e2e

* fix: page header

* fix: tab support icon

* fix: bug

* fix: bug

* fix: docs

* fix(T-4811): scroll bar too long

* fix(T-4810): desktop mode

* fix: e2e

* fix(T-4812): title empty

* fix: unit test

* feat: hide Open mode option in mobile mode

* feat: change default value of Open mode on mobile

* feat: add OpenModeProvider

* feat: support page mode

* fix: fix build

* test: update unit tests

* chore: remove pro-plugins

* fix: bug

* fix(T-4812): title is required

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* refactor: remove z-index

* refactor: make better for subpages

* fix: drag bug

* fix: bug

* fix: theme bug

* fix(T-4859): create tab bar title empty

* fix(T-4857): action too long

* fix: e2e bug

* fix: remove comment

* fix: bug

* fix: theme bug

* fix: should provider modal component

* fix: bug

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: Zeke Zhang <958414905@qq.com>
2024-07-22 14:06:36 +08:00
xilesun
128a000799 Merge branch 'main' into next 2024-07-16 11:34:19 +08:00
YANG QIA
90a48c847f
Revert "fix(client): sub application name (#4886)" (#4887)
This reverts commit ac2e2a2043617d36b33a85ad052cf50e6fd112fb.
2024-07-16 11:33:30 +08:00
xilesun
e759c9acfd Merge branch 'main' into next 2024-07-16 10:06:20 +08:00
YANG QIA
ac2e2a2043
fix(client): sub application name (#4886) 2024-07-16 10:04:06 +08:00
Chareice
2c4bea0a07
Merge branch 'main' into next 2024-07-12 10:18:28 +08:00
jack zhang
bb9ebe9852
fix: initializer select close (#4865) 2024-07-11 18:22:36 +08:00
Junyi
0ba1bca5d8
feat(client): add disabled option to props of SchemaSettingsItem (#4817)
* feat(client): add disabled option to props of SchemaSettingsItem

* docs(client): add doc and demo

* feat(client): add disabled option to SchemaInitializerItem
2024-07-05 13:28:59 +08:00
Zeke Zhang
05cf9986b0
feat: enable direct dialog opening via URL and support for page mode (#4706)
* refactor: optimize page tabs routing

* test: add e2e test for page tabs

* feat: add popup routing

* fix: resolve nested issue

* refactor: rename file utils to pagePopupUtils

* perf: enhance animation and overall performance

* fix: fix filterByTK

* fix(sourceId): resolve error when sourceId is undefined

* fix: fix List and GridCard

* fix: fix params not fresh

* fix: fix parent record

* fix: resolve the issue on block data not refreshing after popup closure

* feat: bind tab with URL in popups

* feat(sub-page): enable popup to open in page mode

* chore: optimize

* feat: support association fields

* fix: address the issue of no data in associaiton field

* fix: resolve the issue with opening nested dialog in association field

* fix: fix the issue of dialog content not refreshing

* perf: use useNavigateNoUpdate to replace useNavigate

* perf: enhance popups performance by avoiding unnecessary rendering

* fix: fix tab page

* fix: fix bulk edit action

* chore: fix unit test

* chore: fix unit tests

* fix: fix bug to pass e2e tests

* chore: fix build

* fix: fix bugs to pass e2e tests

* chore: avoid crashing

* chore: make e2e tests pass

* chore: make e2e tests pass

* chore: fix unit tests

* fix(multi-app): fix known issues

* fix(Duplicate): should no page mode

* chore: fix build

* fix(mobile): fix known issues

* fix: fix open mode of Add new

* refactor: rename 'popupUid' to 'popupuid'

* refactor: rename 'subPageUid' tp 'subpageuid'

* refactor(subpage): simplify configuration of router

* fix(variable): refresh data after value change

* test: add e2e test for sub page

* refactor: refactor and add tests

* fix: fix association field

* refactor(subPage): avoid blank page occurrences

* chore: fix unit tests

* fix: correct first-click context setting for association fields

* refactor: use Action's uid for subpage

* refactor: rename x-nb-popup-context to x-action-context and move it to Action schema

* feat: add context during the creation of actions

* chore: fix build

* chore: make e2e tests pass

* fix(addChild): fix context of Add child

* fix: avoid loss or query string

* fix: avoid including 'popups' in the path

* fix: resolve issue with popup variables and add tests

* chore(e2e): fix e2e test

* fix(sideMenu): resolve the disappearing sidebar issue and add tests

* chore(e2e): fix e2e test

* fix: should refresh block data after mutiple popups closed

* chore: fix e2e test

* fix(associationField): fix wrong context

* fix: address issue with special characters
2024-06-30 23:25:01 +08:00
jack zhang
54d1d2cdc9
fix: export filter component (#4757) 2024-06-26 18:26:25 +08:00
jack zhang
47a6d04c63
fix: clear plugin list cache (#4739) 2024-06-25 08:48:45 +08:00
jack zhang
c66744d4a8
fix: action modal icon and Initializer menu close when click (#4664)
* fix: action modal icon and Initializer menu close when click

* fix: bug

* fix: bug

* feat: bug

* fix: e2e bug
2024-06-15 18:03:33 +08:00
jack zhang
a5fc22c6b0
feat: tree block (#4566)
* feat: tree block

* fix: remove showSettings

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: table tree expand

* fix: bug

* fix: connection bug T-4501

* fix: template settings bug
2024-06-11 22:53:04 +08:00
Katherine
0b8f762d8b
feat: data block support setting block height (#4441)
* feat: data block support setting block height

* feat: form block support setting block height

* feat: form block support setting block height

* feat: detail block height

* test: fix

* fix: bug

* feat: grid card support block height

* feat: kanban support block height

* feat: kanban support block height

* feat: calender support block height

* feat: calender support block height

* feat: map support block height

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* test: skip

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* refactor: blockinitializers style improve

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* refactor: code improve

* refactor: code improve

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* refactor: code improve

* refactor: code improve

* fix: bug

* fix: bug

* fix: bug

* fix: bug

* refactor: code improve

* refactor: code improve

* fix: test

* fix: test

* fix: test
2024-06-04 17:32:01 +08:00
jack zhang
285f719f9f
fix: table borded (#4534)
* fix: table borded

* fix: unit test
2024-05-30 18:35:20 +08:00
jack zhang
d83c102492
Fix/initializer improve (#4533)
* fix: imporve code

* fix: test bug
2024-05-30 17:20:09 +08:00
YANG QIA
98a8e687b1
feat(client): refining error fallback for different components when catching errors (#4459)
* feat(client): refining error fallback for different components when catching errors

* fix: build

* refactor: `ErrorFallback.Inline` to `ErrorFallback.Modal`

* feat: toolbar error fallback

* chore: add deprecated comment

* fix: useSchemaToolbarRender
2024-05-28 13:26:38 +08:00
chenos
1e230ecbc2 fix(client): remove the "you are offline" prompt 2024-05-22 13:54:35 +08:00
Zeke Zhang
ef8e4aed48
fix(filter-form): fix operator not valid in block templates (#4390)
* fix(filter-form): fix operator not valid in block templates

* test: add e2e test

* test: clear data templates

* chore: fix e2e tests

* chore: stash

* chore: change import path to fix unit tests

* chore: change import path to fix unit tests

* chore: fix build
2024-05-20 16:50:34 +08:00
chenos
e24dd01a4c
feat: add process.env.API_CLIENT_STORAGE_PREFIX (#4395)
* feat: add process.env.API_CLIENT_STORAGE_PREFIX

* fix: test error

* fix: process.env.API_CLIENT_STORAGE_PREFIX
2024-05-19 12:22:04 +08:00
Zeke Zhang
ec558e3b98
refactor: flatten and merge Actions (#4336)
* chore: remove switch

* refactor: ensure compatibility with old code

* refactor: flatten Actions

* refactor: extract options

* refactor: remove isCusomeizeCreate

* refactor: merge addNew and addRecord actions

* refactor: merge Submit and Save record actions

* refactor: extract common options

* feat: add tow props called 'currentText' and 'otherText'

* chore: fix failed tests

* refactor: add ActionInitializerItem to replace ActionInitializer

* chore: fix failed tests

* fix: fix T-4284

* fix: fix inherit

* chore: fix failed test

* chore: add Switch

* chore: add Switch for delete button

* test: e2ePageObjectModel

---------

Co-authored-by: hongboji <j414562100@qq.com>
2024-05-17 09:37:23 +08:00
jack zhang
6f4c884799
fix: block error can delete (#4329)
* fix: block error can delete

* fix: test bug
2024-05-13 21:28:02 +08:00
jack zhang
2014729e01
fix: collection field support x-use-component-props (#4264)
* fix: collection field support x-use-component-props

* fix: bug

* fix: bug
2024-05-09 09:21:58 +08:00
jack zhang
1e5e015b73
fix: update doc demos (#4262)
* fix: update doc demos

* fix: change docs demo

* fix: bug

* fix: build bug

* fix: add english docs

* fix: add component english doc

* fix: lang change
2024-05-09 09:21:36 +08:00
jack zhang
95fef86880
client components (#4216)
* docs: update docs components

* docs: add more component docs

* docs: add more docs

* fix: add more docs

* fix: build bug

* feat: docs

* fix: build error

* fix: docs

* fix: change x-read-pretty to x-patten

* fix: upgrade docs and types

* fix: build bug

* fix: add more docs

* fix: build bug

* fix: cascader component

* fix: bug

* fix: add more docs

* fix: add backend ci time

---------

Co-authored-by: katherinehhh <katherine_15995@163.com>
2024-04-30 21:21:17 +08:00
jack zhang
62b2b5c68b
chore: add copyright information to the file header (#4028)
* fix: add license code

* fix: bug

* fix: bug

* fix: upgrade

* fix: improve

* chore: add copyright information to the file header

* fix: d.ts bug

* fix: bug

* fix: e2e bug

* fix: merge main

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2024-04-30 15:51:31 +08:00
Sun668
4165d8baae
feat: add plugin-field-markdown-vditor (#4065)
* feat: create vditor field type, use Vditor as Markdown Editor

* feat: clear Markdown Vditor value when set props.value to null

* feat: add plugin-field-markdown-field to preset local plugin

* fix: fix the plugin-field-markdown-vditor name in preset

* fix: fix the plugin-field-markdown-vditor version in preset

* feat: set vditor disable if props.disable is true after init

* feat: use data from localstorage as vditor upload request headers

* fix: plugin-field-markdown-vditor version to 0.21.0-alpha.11

* feat: when fileCollection is not defined, remove upload from vditor toolbar

* feat: add temp function to reset vditor value

* fix: temp function to reset vditor value may include reset tag

* feat: update plugin-field-markdown-vditor i18n

* fix: i18n

* feat: temp disable fullscreen

* fix: remove useless file

* fix: plugin description

* fix: plugin description

* fix: plugin-field-markdown-vditor componentCls

* fix: plugin-field-markdown-vditadd default toobar config

* fix: use long text to save mardkwon

* fix: vditor fullscreen style

* feat: change vditor field datatype

* fix: code review

* fix: code review

* feat: change import method of katex in plugin-field-markdown-vditor

* fix: version

* fix: resize will cause blur

* fix: vditor base font-size

* fix: vditor base font-size

* feat: use style config from token as vditor base size

* fix: plugin-field-markdown-vditor i18n

* fix: toobar config tooltip can not be seen

* fix: vditor toobar default config

* feat: plugin-field-markdown-vditor doc url

* feat: move cursor to end when reset vditor value

* fix: value change will not set vditor

* feat: support getHeaders

* fix: improve component

* fix: enhance vditor init

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2024-04-26 08:42:01 +08:00
chenos
b25db239a3
fix(client): get api url (#4161)
* fix(client): get api url

* fix: trim /
2024-04-25 16:30:46 +08:00
jack zhang
229e5d1a40
client unit test (#4150)
* fix: add more unit test
2024-04-24 20:33:14 +08:00
Zeke Zhang
785cc525c4
feat(Theme): add some tokens (#4137)
* chore: use token better

* chore: use rgba

* feat: add some custom tokens

* Revert "chore: use rgba"

This reverts commit dac660f6936ab795d52561ce79d0e6a7a721cc71.

* feat: adaptor tokens

* chore: adjust details

* chore: fix unit tests

* chore: remove box shadow from buttons in the upper right corner of the page

* fix: font size
2024-04-23 21:17:20 +08:00
Zeke Zhang
451bcca06f chore: add deprecated comment for CompatibleSchemaInitializer 2024-04-21 22:18:35 +08:00
ChengLei Shao
57449bb2df
chore(acl): disable register association fields actions (#4014)
* chore: disable register association fields actions

* chore: test

* chore: association field acl

* fix: snippet test

* fix: pm.data-source-manager

* fix: acl roles snippets

* chore: update snippet migration

* fix: bug (#4035)

Co-authored-by: katherinehhh <katherine_15995@163.com>

* fix: save role strategy

* fix: x-acl-action

* fix: acl snippet

* fix: bug

* fix: graph

* fix: association permission

* chore: data source manager snippet

* fix: test

* chore: test

* test: e2e test

* fix: undefined list

* fix: useApp

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: katherinehhh <katherine_15995@163.com>
2024-04-16 00:25:35 +08:00
jack zhang
91254bdf55
test: add frontend unit test (#3991)
* test: add unit test

* fix: build error

* fix: exclude requirejs

* fix: e2e bug

* fix: block delete refresh(T-3936)

* fix: add test utils

* fix: build bug

* fix: remove test only

* fix: kanban bug

* fix: add more unit tests

* fix: coverage bug

* fix: update

* fix: refactor

* fix: add more tests

* fix: unit test bug

* fix: refactor code

* fix: refactor nocobase test

* test: add test case

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2024-04-12 21:55:37 +08:00
chenos
e1533ec800
fix: get api url (#4020) 2024-04-11 23:02:34 +08:00
Zeke Zhang
286ddb6b38
fix(Picker): should display Allow add new data option (#3957) 2024-04-07 19:36:42 +08:00
Zeke Zhang
e572f6645e
refactor: change useProps to x-use-component-props (#3853)
* refactor: update TableV2 component props

* refactor: update Action component

* refactor: update Filter.Action

* refactor: update FormV2

* refactor: update TableV2.Selector

* refactor: update Details

* refactor: update Action.Link

* refactor: about acl

* refactor: useCustomizeUpdateActionProps

* refactor: update decrator FormV2

* refactor(plugin-data-visualization): useProps to x-use-component-props

* refactor: update Pagination

* refactor: update CalendarV2

* refactor: update TitleField

* refactor: useProps

* refactor: update AssociationFilter.Item

* feat(withDynamicSchemaProps): support function useComponentPropsStr

* refactor: update FormDataTemplates

* chore: fix unit tests

* chore: fix e2e

* refactor: update

* feat(withDynamicSchemaProps): support to use dot

* refactor: update

* refactor: update

* chore: avoid error
2024-04-02 21:38:40 +08:00
Zeke Zhang
65b5504d65
fix(withDynamicSchemaProps): change deep merge to shallow merge (#3899)
* fix(withDynamicSchemaProps): change deep merge to shallow merge to avoid error

* refactor: remove useless code
2024-04-02 14:20:18 +08:00
Zeke Zhang
80caec7050
feat: adjust menu of add new (#3884)
* feat: adjust menu of add new

* fix: fix known bugs

* fix: fix known bugs

* chore: fix e2e

* chore: rename

* chore: add translation

* chore: add translation

* chore: make test more stable

* test: add e2e

* refactor: extract templates

* chore: make e2e more stable
2024-04-01 17:14:19 +08:00
jack zhang
8a1345a5b8
feat: table performance (#3791)
* fix: table add useMemo and useCallback

* fix: memo bug

* fix: sub table bug

* fix: form item performance

* fix: settings center performance impove

* fix: bug

* fix: bug

* fix: form first value change check performance

* fix: revert first form change

* fix: css move out component

* fix: page change table should not render

* fix: pre process merge bug

* fix: assotion bug

* fix: input and useDeppMemoized performance

* fix: bug

* fix: bug

* fix: improve Action.tsx lazy show content

* fix: remove Action performance imporve

* fix: assocication read pretty not loading

* fix: cssInJs imporve

* fix: imporve kanban rerender

* fix: remove useless CurrentAppInfoProvider in plugin

* fix: divide the schema into several parts

* fix: tabs.tsx and Page.tsx divide

* fix: form-item imporve

* fix: add OverrideSchemaComponentRefresher

* fix: page and tabs bug

* fix: workflow bug

* fix: remove useDeepMemorized()

* fix: e2e bug

* fix: internal Tag and viewer

* fix: collection field read pretty mode skip

* fix: others performance

* fix: revert collection field read pretty

* fix: table column not render when value is null or undefined

* fix: table and grid add view check

* fix: kanban lazy render

* fix: remove table useWhyDidYouUpdate

* fix: table index skip loading

* fix: card drag rerender loading

* fix: e2e skip lazy render

* fix: e2e bug

* fix: action e2e bug

* fix: grid and kanban card

* fix: remove override refresher component

* fix: unit test bug

* fix: change schema component props name

* fix: e2e and unit test bug

* fix: e2e bug

* fix: not lazy render when data length less 10 (T-3784)

* chore: fix merge

* chore: fix e2e

* fix: drag bug (T-3807)

* fix: repetitive refresh (T-3729)

* fix: pre fix merge confict

---------

Co-authored-by: Zeke Zhang <958414905@qq.com>
2024-03-30 20:31:11 +08:00
jack zhang
7566a7b357
fix: client internal method (T-3711 and T-3712 and T-3713) (#3839)
* fix: client internal method (T-3711 and T-3712 and T-3712)

* fix: bug
2024-03-27 21:03:51 +08:00
Zeke Zhang
ac5a82fde3
fix(Table): fix invalid pagination (#3821)
* fix(Table): fix invalid pagination

* test: add test

* fix: unit test bug

---------

Co-authored-by: dream2023 <1098626505@qq.com>
2024-03-26 17:15:34 +08:00
chenos
c4aa8b78c2
chore: add tsdoc (#3788)
* chore: tsdoc

* chore: tsdoc

* fix: error

* chore: code format

* chore: code format
2024-03-26 17:08:45 +08:00
chenos
921696f40b
fix: useExpressionScope (#3805) 2024-03-24 12:51:41 +08:00