Commit Graph

370 Commits

Author SHA1 Message Date
ChengLei Shao
b497ef125e
feat: collection factory (#3047) 2023-11-15 16:22:48 +08:00
chenos
b597aec1dc chore(versions): 😊 publish v0.15.0-alpha.2 2023-11-13 18:28:48 +08:00
chenos
29457cb2bc chore(versions): 😊 publish v0.15.0-alpha.1 2023-11-13 11:02:35 +08:00
chenos
3b5b732a1a
feat: plugin-mock-collections (#2988)
* feat: plugin-mock-collections

* fix: mock bug

* feat: field interfaces

* fix: field interface

* fix: formula

* fix: file collection

* fix: map

* refactor: change api path from :create to :mock

* fix: avoid test failed

* chore: remove useless code

* fix: mock records

* fix: association

* feat: custom data

* fix: mockAttachment

* fix: count

---------

Co-authored-by: Rain <958414905@qq.com>
2023-11-10 11:32:03 +08:00
chenos
3d0b42e72e
fix(import): remove commas from numbers (#3011) 2023-11-10 10:00:21 +08:00
ChengLei Shao
ac3f63b110
feat: drop table with cascade option (#2973)
* refactor: delete collection support cascade

* chore: remove collection from database

* feat: remove collection with cascade option

* chore: test

* chore: test

* chore: delete collection support cascade

* refactor: code improve

* refactor: locale improve

* style: delete collection modal style improve

* revert: filemanger-plugin

* revert: code improve

* revert: code improve

* revert: fix: bluk dele collection

* fix: cascade === true && cascade === 'true'

---------

Co-authored-by: katherinehhh <katherine_15995@163.com>
Co-authored-by: chenos <chenlinxh@gmail.com>
2023-11-06 11:50:37 +08:00
katherinehhh
9a730a8fec
test: client ui test (#2736)
* test: add menu group test

* test: add menu link  test

* test: insert befort page test

* test(e2e): better locators for designer buttons

* fix: make test passing

* test: esit menu title

* test: move menu

* test: move menu

* test: move menu

* test: menu insert page before

* test: menu insert page before

* test: menu test

* test: menu test

* test: menu test

* test: menu test

* test: menu test

* test: menu test

* test: insert page after

* test: insert page after

* test: create new page

* test: menu test refactor

* test: page test

* test: page header

* test: page title

* test: edit page title

* refactor: remove DesignerControl

* test: page test

* test: page test

* test: page tab test

* test: page tab move test

* test: page tab move test

* test: block test

* chore: better locators

* test: add block test

* test: block test

* test: action & field test

* fix: should not disable add-menu-item

* chore: better test id for block

* chore: optimize Action

* chore: remove role in BlockItem

* test: block test

* test: edit block title

* test: edit block title

* test: plugin manager ui test

* test: plugin manager remove ui test

* test: plugin manager remove ui test

* test: plugin manager remove ui test

* test: plugin manager enable ui test

* feat: improve locators

* test: menu test

* test: menu test

* test: menu test

* test: page  test

* test: page test

* test: block test

* test: block test

* test: block test

* test: field test

* test: field test

* test: field test

* test: field test

* test: field test

* test: field test

* chore: menu & add block

* test: action test

* chore: initializer

* chore: testid -> aria label

* chore: tabs

* test: action test

* test: action test

* test: action test

* chore: designers

* refactor: optimize schemaInitializer

* refactor: rename

* chore: add collectionName

* chore: block item

* chore: action

* fix: avoid crashting

* chore(e2e): add __E2E__

* chore: all dialog

* test: action test

* test: action test

* test: field test

* test: field test

* test: field test

* test: field test

* test: page test

* chore: add aria-label for block menu

* Revert "chore: add aria-label for block menu"

This reverts commit 6a840ef816ee1095484dc268b5dfa1bbe6cd8cbe.

* test: action test

* test: page test

* chore: optimize aria-label of Action

* test:  pm test

* chore: schema-initializer

* test:  pm test

* chore(e2e): increase timeout

* chore: schema settings

* chore: optimize table

* chore: workflow

* chore: plugin manager

* chore: collection manager and workflow

* chore: details of workflow

* chore: remove testid of Select

* test: fix unit-tests

* test: fix unit-tests

* test: menu test

* test: page test

* test(e2e): passing tests

* test: page test

* test: block test

* test: field test

* test: fix unit test

* chore: should use hover

* test: field test

* test: passing tests

* chore: passing tests

* test: action test

* chore: fix CI

* chore: fix CI

* test: pm test

* chore: increase timeout in CI

* test: blcok test

* revert: plugin card

* test: pm test

* test: pm test

* chore: remove testid for Modal

* refactor: rename testid

* fix: __E2E__ should be true in CI

* fix(buildPlugin): __E2E__ should be true in CI

* fix: __E2E__

* Revert "fix: __E2E__"

This reverts commit c899a33761fbfab94283f6bf41eae197f889068b.

* fix: __E2E__

* fix: passing tests

* test: action test optimize

* test: menu page pm test

* test: menu page pm test

---------

Co-authored-by: Rain <958414905@qq.com>
Co-authored-by: chenos <chenlinxh@gmail.com>
2023-11-04 12:39:44 +08:00
chenos
2bb0f7c51c chore(versions): 😊 publish v0.14.0-alpha.8 2023-11-01 09:52:49 +08:00
chenos
2008bfa54a fix(import): filter non-existent fields 2023-10-31 12:11:15 +08:00
chenos
e1c30f25e2
fix: theme migration error (#2929)
* fix: theme migration error

* fix: themeConfig:list public

* fix: item.changed

* refactor: make better

---------

Co-authored-by: Rain <958414905@qq.com>
2023-10-28 17:14:31 +08:00
ChengLei Shao
a1c425f733
fix: error when post create action with emtpy value (#2916)
* fix: error when post create action with emtpy value

* chore: sanitize
2023-10-26 11:42:09 +08:00
ChengLei Shao
cc676c3dda
feat(database): sync false option (#2864) 2023-10-19 16:12:12 +08:00
ChengLei Shao
02559b61ba
feat(ci): run backend tests concurrently (#2815)
* chore: run backend tests concurrently

* fix: mock app server create database

* chore: using @swc/jest instead of ts-jest

* chore: create test database

* chore: database distributor

* fix: test collection manager

* fix: test

* chore: to  use Jest.mock, change the formatter to the commonjs module

* chore: db acquire

* chore: github action

* fix: pg test action

* chore: formatter

* chore: jest workaround

* fix: mysql test

* chore: mysql github action

* chore: clean storage

* chore: gitignore

* chore: max workers
2023-10-17 22:22:45 +08:00
Dunqing
bf099a4364
feat(plugin-custom-request): support better custom-request (#2536)
* feat(plugin-custom-request): support better custom-request

* feat: re implement custom request

* feat: complete configuration

* feat: support request in server

* feat: improve usage

* feat: support request

* feat: remove customRequests when action is deleted

* feat: avoid override

* fix: the data is not latest

* feat: should autoSize in url

* feat: support title and acl

* fix: i18n

* feat: support display title

* feat: i18n supports

* refactor: acl check

* feat: better method

* fix: style

* fix: remove unused code

* fix: acl

* docs: update

* fix: upgrade

* feat: hidden skip validator option and display should display data

* feat: support root access all custom-request

* chore: update deps

* fix: limit height of modal body, Close T-1682

* fix: parse incorrect, Close T-1686

* fix: i18n, Close T-1684

* fix: linkage rules incorrect, Close T-1719

* fix: missing pass appends, Close T-1720

* fix: should update initialValues when it changed

* feat: update better message

* fix: permission incorrect

* test: setup

* refactor: fix locale

* chore: update deps

* feat: move to @nocobase

* fix: dir

* fix: ui.*

* feat: add listByCurrentRole action, add decorator instead of acl

* fix: remove title field

* feat: compatible pervious version

* feat: support passing x-* headers to custom-request

* feat: support list all keys

* fix: support baseURL, close T-2090

* fix: remove unused code

* fix: sqlite, Close T-2092

* fix: close T-2089

* feat: alert error when request settings doesn't configure, Close T-2101

* feat: improve message

* chore: fix eslint error

* fix: fix version of plugin-custom-request

* fix: build error

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: Rain <958414905@qq.com>
2023-10-13 15:16:50 +08:00
ChengLei Shao
1defb5db51
fix: create collections with multiple records (#2753)
* fix: create collections with multiple items

* chore: test

* fix: sync collection when pending field resolved

* fix: test
2023-10-09 17:35:04 +08:00
Rain
384cc1c56c chore(versions): 😊 publish v0.14.0-alpha.7 2023-10-07 15:53:49 +08:00
被雨水过滤的空气-Rain
573cde0a21
feat(variable): lazy load association fields (#2382)
* refactor: remove useless code

* feat: should always show user variable

* style: optimize style of variable input

* feat: change maxDepth of user varialbe to 3

* refactor: migrate getFieldDefaultValue to SchemaSettings.tsx

* feat: support to parse variables

* feat: support to parse array fields

* refactor: make testing more stable

* chore: fix CI

* feat: support to parse current user

* fix: fix tests

* feat: support to register variable

* feat: support to parse "$context"

* refactor: remove useless code

* fix: fix build

* fix: fix build

* test: make stable

* docs: add doc

* fix: fix T-1267

* fix: fix T-1268

* fix: fix T-1269

* fix: fix T-1271

* fix: fix T-1274

* refactor: improve code

* feat(variable): support local variable

* fix: fix T-1280

* refactor: close T-881

* refactor: remove useLazyLoadAssociation

* fix: fix T-1289,T-1290

* fix: fix T-1296

* refactor(AssignedField): replace user variable

* refactor: extract useBaseVariable

* refactor(AssignedField): replace variables

* feat(useVariables): support to use array as local variables

* refactor: improve variables (T-1295)

* feat: limit user choice (T-1297)

* fix: fix T-1305

* refactor: extract as SchemaSettings.DataScope

* refactor: improve linkage rules

* refactor: improve linkage rules of Action

* chore: fix build

* refactor: improve data scope of association fields

* chore: fix build

* feat: select limit

* refactor: use VariableInput to replace other

* fix: fix can not input

* fix(AssignedField): fix cannot close variables list

* test: fix errors

* refactor: migrate to new file

* fix: uniq

* fix: filter empty values

* fix: transform variables value

* fix: should sum numbers (T-1330)

* fix: fix Select (T-1337)

* refactor: use useMemo

* refactor: use hooks

* refactor: use hooks

* refactor: use hooks

* refactor: remove useless code

* refactor: rename `$form` to `$nForm` and `$record` to `$nRecord`

* fix: fix T-1334

* refactor(LinkageRuleActionGroup): use hooks

* refactor(FormButtonLinkageRuleAction): use hooks

* refactor: add type

* fix: avoid crashing

* refactor: rename `$date` to `$nDate`

* fix: fix T-1348

* perf: avoid duplicate requests

* test: fix error

* fix: fix T-1355

* fix: fix T-1355

* fix: fix T-1345

* fix: fix T-1346

* refactor(useVariableOptions): replace query with parameter

* fix: fix T-1335

* chore: fix build

* fix: fix T-1453

* refactor: remove useless code

* fix: fix T-1447

* fix: should update when seting default value

* fix: fix T-1454

* chore(eslint): ignore docker

* fix: fix T-1440

* refactor: use hooks

* fix: fix T-1332

* fix(defaultValue): should use Select mode

* fix(defaultValue): fix Checkbox

* refactor: rename and comment

* refactor: rename file name and hook name

* feat(subForm): support lazy load association fields

* fix: filter empty values

* fix(defaultValue): schema type of Checkbox should be void

* fix: fix T-1479

* fix: fix T-1491

* fix(ToOneNester): should use RecordProvider

* fix: fix T-1493

* chore: add comment

* fix: fix T-1495

* chore: fix build

* test: make pass

* fix: fix T-1503

* fix: fix T-1504

* fix: fix transformVariableValue

* fix: disable unsupport options

* refactor(useVariableOptions): add noDisabled params

* fix: data scope support to select to-many fields

* chore: add comment

* refactor: improve default value

* refactor: extract as useIsAllowToSetDefaultValue

* fix: should not support to set default value in edit mode

* fix: only the default values for sub-forms and sub-tables are valid

* fix: limit default value of association fields

* fix: fix '$nForm' variable

* fix: allow all inherit chain

* fix: optimize default value

* fix: optimize json field

* fix(currentObject): avoid error

* fix: should not show variable string

* fix: active fields

* fix: avoid errors

* feat: support special case

* fix: fix CI

* chore: fix build

* fix: json

* refactor: rename flag name

* fix: fix T-1559

* fix: fix T-1515

* fix: avoid crash

* fix: fix T-1520

* fix: fix T-1521

* fix: fix T-1523

* fix: fix T-1563

* fix: fix T-1565

* fix: fix T-1525

* fix: fix T-1524

* fix: fix T-1603

* fix: fix T-1332

* fix: fix T-1559

* fix: fix T-1602

* fix: fix T-1608

* fix: fix T-1612 T-1609

* fix: fix T-1681

* fix: fix T-1711

* fix: fix T-1713

* fix: fix T-1680

* chore: close T-1550

* fix: fix T-1507

* chore: avoid crashing

* fix: fix T-1557

* perf: close T-1726

* fix: fix T-1727

* fix: fix T-1741

* fix: fix T-1740

* chore(workflow): compact

* chore: should not to support to set default value in assign field values

* perf: compat and perf (T-1736)

* fix: fix T-1872

* fix: fix T-1877

* fix: fix quarter variables

* chore: add README

* chore: front-end should not depend on back-end code

* chore: should disable all variable options if no field is selected

* chore: should be a leaf if it has no children

* chore: fix build error

* fix: compat $form

* fix: compat $form

* chore: fix build

* chore: fix build

* fix: typeError: Cannot read properties of undefined (reading 'template')

* chore: fix test

* chore: add test

* fix: fix T-2072

* chore: optimize eslint

* perf: reduce number of requests

* fix: fix JSON

* test: fix error

* fix(e2e): avoid error

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-10-07 15:49:09 +08:00
ChengLei Shao
dbdd587b71
chore(database): clean invalid associations in collection model when set field failed (#2720)
* chore(database): clean invalid associations in collection model when set field failed

* fix: import

* chore: test
2023-09-27 22:03:04 +08:00
chareice
36f512f4b7 chore: jsonb field type map 2023-09-26 15:00:25 +08:00
ChengLei Shao
505c23b4e1
feat(database): append tree parent recursively (#2573)
* feat(database): append with options

* feat: recursively load parent instances

* chore: test

* fix: load with appends

* chore: test

* chore: load with belongs to many

* chore: test
2023-09-25 18:17:19 +08:00
ChengLei Shao
edbd15ab5b
feat: support load belongs to association with collection that without primary key (#2529)
* test: find without pk

* feat: load root models in eager loading tree
2023-09-25 15:34:36 +08:00
YANG QIA
89635982b4
feat(db): add sql collection (#2419)
* feat(db): add sql collection

* feat: frontend

* perf: issue of select

* fix: sql model

* fix: sql collection schema

* fix: implement sql collection

* fix: dependency

* fix: remove type declaration in actions

* fix: backend test

* chore: remove some ops of block using sql collection

* chore: remove sql collections from Form and Kanban

* feat: add execute button to sql input

* feat(backend): support infer fields by parsing sql

* feat(frontend): support infer interface by parsing sql

* fix: fix update issues and improve

* fix: update issue

* chore: update yarn.lock

* fix: fix T-1548

* fix: fix T-1544

* fix: fix T-1545

* fix: fix T-1549

* fix: test

* fix: fix T-1556

* fix: remove map action diviver

* chore: debug

* chore: remove schema of sql collection

* fix: sql collection schema

* chore: remove debug log & fix T-1555

* fix: fix T-1679

* fix: sql update issue

* fix: sql attribute issue

* fix: bug of star attribute

* fix: test

* fix: test

* fix: reset fields when updating sql collection

* fix(collection-manager): redundant fields after set collection fields

* fix: test

* fix: destory with individuals hook

* chore: save

* chore: test

* fix: fields sync issue

* fix: remove underscored option of sql collection

* chore: mutex in fields.afterDestroy

* fix: test

* chore: yarn.lock

* chore: update collections.setFields

* feat: improve sql input

* fix: fix T-1742 & improve

* chore: fix conflicts

* fix: workspace

* fix: build

* fix: test

* chore: add translations

* fix: reviewed issues

* chore: update yarn.lock

---------

Co-authored-by: ChengLei Shao <chareice@live.com>
2023-09-25 15:03:23 +08:00
chenos
e522e1f742 fix: upgrade failed 2023-09-24 11:41:26 +08:00
mytharcher
8eb634459d chore(versions): 😊 publish v0.14.0-alpha.6 2023-09-22 15:49:50 +08:00
mytharcher
bffa53a04e chore(versions): 😊 publish v0.14.0-alpha.5 2023-09-22 15:47:28 +08:00
mytharcher
d20398f73f chore(versions): 😊 publish v0.14.0-alpha.4 2023-09-21 23:25:31 +08:00
ChengLei Shao
c88c91e908
fix: collection schema not exists (#2669)
* fix: collection schema not exists

* chore: test
2023-09-21 17:19:13 +08:00
ChengLei Shao
de849b267c
feat(database): support read ssl file in database config (#2689) 2023-09-21 11:55:18 +08:00
ChengLei Shao
56d1d1b85f
feat(database): perform data validation before the update/create operation (#2681)
* chore: test

* chore: tmp commit

* feat: value guard check
2023-09-20 11:53:56 +08:00
ChengLei Shao
91095d8fe0
chore: test (#2677) 2023-09-19 18:43:04 +08:00
ChengLei Shao
a53a350f95
feat(database): database connecting backoff (#2668) 2023-09-18 10:00:11 +08:00
jack zhang
9e5e96b9e4
fix: improve build (#2643)
* fix: client lib require wrapper

* fix: bug

* fix: add tsconfig.paths.json

* fix: collection dir not exists

* fix: improve...

* fix: update yarn.lock

* fix: db.sync

* fix: bugs

* fix: bugs

* fix: bugs

* fix: bugs && allow user custom build config

* docs: user custom config docs

* refactor: custom user build config

* fix: bugs

* fix: build plugin-client bug

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-09-15 08:51:20 +08:00
chenos
6058850db1 chore(versions): 😊 publish v0.14.0-alpha.3 2023-09-13 18:29:38 +08:00
ChengLei Shao
6f68506eb4
chore: should update belongs to many through table when it is a view (#2635) 2023-09-13 07:15:43 +08:00
chenos
3670d670ac chore(versions): 😊 publish v0.14.0-alpha.2 2023-09-13 03:57:15 +08:00
chenos
117d4b8186 chore(versions): 😊 publish v0.14.0-alpha.1 2023-09-12 22:42:43 +08:00
Rain
fec17d5661 chore(versions): 😊 publish v0.13.0-alpha.10 2023-09-10 00:33:14 +08:00
chenos
b655517a74 chore(versions): 😊 publish v0.13.0-alpha.9 2023-09-07 12:46:24 +08:00
Rain
17d4476c10 chore(versions): 😊 publish v0.13.0-alpha.8 2023-09-07 09:04:08 +08:00
ChengLei Shao
97b4570bd2 chore(versions): 😊 publish v0.13.0-alpha.7 2023-09-05 09:01:30 +08:00
Rain
e5f5358be0 chore(versions): 😊 publish v0.13.0-alpha.6 2023-09-04 20:48:48 +08:00
chenos
af34fe10ab chore(versions): 😊 publish v0.13.0-alpha.5 2023-09-03 11:35:48 +08:00
jack zhang
08c5383bee
refactor: build tools (#2374)
* refactor: core/build and cli/build.js

* fix: build

* fix: bug

* fix: replaceAll to replace

* fix: node version check

* fix: add require check

* fix: esbuild other ext

* fix: process json

* fix: exlude jsx-runtime

* feat: split chunk

* fix: minify plugin client bundle

* fix: compatibility

* fix: support import()

* feat: update docs

* fix: server deps

* feat: demo

* fix: remove cjs treeshake

* fix: local error

* fix: bug

* fix: lazy load

* fix: rewrites

* fix: remove dynamic import  function

* feat: doc demo

* fix: codesanbox vite template

* fix: codesanbox demo

* fix: hide stackblitz

* fix: revert rspack

* fix: test bug

* fix: delete console

* fix: import dayjs locale

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-09-03 10:59:33 +08:00
ChengLei Shao
1694eb6d73
fix(collection-manager): redundant fields after set collection fields (#2575)
* fix(collection-manager): redundant fields after set collection fields

* fix: destory with individuals hook

* chore: save

* chore: test

* chore: mutex in fields.afterDestroy

* chore: yarn.lock

* chore: update collections.setFields
2023-09-01 13:51:48 +08:00
chenos
0fd38a5c56 chore(versions): 😊 publish v0.13.0-alpha.4 2023-08-27 10:04:58 +08:00
chenos
5278017fff chore(versions): 😊 publish v0.13.0-alpha.3 2023-08-26 16:43:41 +08:00
chenos
f4a1953980 chore(versions): 😊 publish v0.13.0-alpha.2 2023-08-24 23:14:03 +08:00
chenos
6debb8d00b chore(versions): 😊 publish v0.13.0-alpha.1 2023-08-24 17:49:13 +08:00
ChengLei Shao
0f9d946f09
fix: sort field init (#2520)
* fix: sort field init

* chore: sort field name
2023-08-24 14:26:03 +08:00
Dunqing
1e0bedca86
feat: api documentation plugin (#2255)
* feat: api doc plugin

* fix: merge

* chore: upgrade swagger ui to latest

* feat: get paths from recourser

* feat: configure security

* feat: add models

* feat: reimplement resource action

* feat: support render schemas correctly

* feat: support load swagger documentation

* refactor: implement `SwaggerManager`

* fix: re import

* feat: update info

* refactor: do not use the cache strategy for the time being

* feat: support collection builtin actions

* fix: incorrect tag

* feat: support different swagger json for different plugins

* feat: support load server package

* feat: support visit from plugin center

* feat: add schemas for mapConfiguration

* feat: update

* fix: update tags

* feat: support only render plugin that has swagger content

* refactor: use swagger-ui-react instead of swagger-ui-dist

* fix: clean

* fix: reset

* refactor: update plugin place

* fix: revert

* fix: remove version

* fix: type error

* feat: swagger doc

* refactor: improve apis

* feat: add doc

* feat: support destination cache

* fix: avoid authorization override

* fix: auth bug

* feat: update documentation

* fix: typo

* feat: support json

* fix: key

* fix: update yarn.lock

* feat: update swagger doc

* feat: swagger doc

* docs: add auth swagger files (#2341)

* docs: add auth swagger files

* fix: yarn.lock

* fix: skip core

* feat: swagger doc

* docs: improve auth docs

* fix(theme-editor): avoid crashing

* feat(theme-editor): improve api doc

* docs: add localization-management swagger

* docs(plugin-workflow): add api doc (#2379)

* fix: remove files

* fix: aaa

* fix: dist

* fix: load swagger

* feat: acl api doc (#2494)

* chore: acl api doc

* feat: ui schema api doc

* feat: multi apps api doc

* chore: ui schema doc

* feat: collection api doc

* chore: association api doc

* chore: single association doc

* feat: move action doc

* chore: list parameters

* feat: update swagger doc

* chore: collectionIndex to first

* fix: test error

* fix: ref

* chore: doc tags

* chore: template

* chore: doc with association options

* chore: single association doc

* chore: relation type

* chore: filter single association params

* chore: m2m api doc

* chore: params

* fix: 0.12.0-alpha.5

* fix: update yarn.lock

* chore: data wrap

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: YANG QIA <2013xile@gmail.com>
Co-authored-by: Rain <958414905@qq.com>
Co-authored-by: Junyi <mytharcher@users.noreply.github.com>
Co-authored-by: ChengLei Shao <chareice@live.com>
2023-08-24 00:27:57 +08:00