Commit Graph

30 Commits

Author SHA1 Message Date
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
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
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
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
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
Junyi
eb0089190e
fix(utils): fix json-templates bug and moved to utils (#1784) 2023-04-28 22:22:08 +08:00
chenos
77a6cbf773 chore: cleanup 2023-04-26 22:32:45 +08:00
chenos
883f1e6fd1
fix: eslint (#1759)
* fix: eslint

* fix: eslint --fix

* fix: changelog
2023-04-25 13:12:14 +08:00
Junyi
a5b4684a48
refactor(plugin-workflow): change single form to custom form block (#1707)
* refactor(plugin-workflow): change single form to custom form block

* fix(plugin-workflow): fix migration

* fix(plugin-workflow): fix manual node initializer

* test(plugin-workflow): migrate test cases

* refactor(plugin-workflow): split custom form code

* fix(plugin-workflow): fix types

* refactor(plugin-workflow): change manual form config data structure

* fix(plugin-workflow): fix no options manual node variable

* fix(plugin-workflow): fix migration script
2023-04-18 18:41:18 -07:00
Junyi
52329df140
feat: (plugin-workflow) dynamic expression (#1560)
* feat(plugin-formula): add dynamic expression field

* feat(plugin-workflow): add dynamic expression for calculation

* refactor(client): allow select part of paths in variable component

* fix(client): fix types

* feat(plugin-formula): add dynamic expression config

* feat(plugin-workflow): add dynamic calculation

* refactor(plugin-formula): move expression field type to workflow plugin

* fix(plugin-workflow): fix types

* fix(plugin-workflow): fix register field in client

* fix(plugin-workflow): fix expression result value default

* fix(plugin-workflow): fix dynamic expression field error when switch collection

* fix(plugin-workflow): test component value change

* test(plugin-workflow): test component linkages

* refactor(plugin-workflow): change to expression collection template

* fix(client): fix hooks of Variable.TextArea

* fix(client): fix to import evaluators in client

* fix(evaluators): move renderReference method to plugin

* fix(plugin-workflow): fix missed component

* fix(plugin-workflow): fix dynamic expression test case

* refactor(client): change popover to double click to choose entire object

* refactor(plugin-workflow): make variable options and filter more sensible

* fix(plugin-workflow): fix form effect

* fix(plugin-workflow): fix variable filtering in collection trigger

* fix(plugin-workflow): fix types

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-04-07 19:52:31 -07:00
Junyi
d8e8f5ec45
feat(plugin-workflow): add failOnEmpty option for query node (#1599) 2023-03-24 23:15:03 -07:00
Junyi
cc50b38a12
fix(plugin-workflow): use toJSON instead of get to get valid result (#1596) 2023-03-24 23:54:07 +08:00
ChengLei Shao
0832a56868
feat: multiple apps (#1540)
* chore: skip yarn install in pm command

* feat: dump sub app by sub app name

* feat: dump & restore by sub app

* chore: enable application name to edit

* chore: field belongsTo uiSchema

* test: drop schema

* feat: uiSchema migrator

* fix: test

* fix: remove uiSchema

* fix: rerun migration

* chore: migrate fieldsHistory uiSchema

* fix: set uiSchema options

* chore: transaction params

* fix: sql error in mysql

* fix: sql compatibility

* feat: collection group api

* chore: restore & dump action template

* chore: tmp commit

* chore: collectionGroupAction

* feat: dumpableCollection api

* refactor: dump command

* fix: remove uiSchemaUid

* chore: get uiSchemaUid from tmp field

* feat: return dumped file url in dumper.dump

* feat: dump api

* refactor: collection groyoup

* chore: comment

* feat: restore command force option

* feat: dump with collection groups

* refactor: restore command

* feat: restore http api

* fix: test

* fix: test

* fix: restore test

* chore: volta pin

* fix: sub app load collection options

* fix: stop sub app

* feat: add stopped status to application to prevent duplicate application stop

* chore: tmp commit

* test: upgrade

* feat: pass upgrade event to sub app

* fix: app manager client

* fix: remove stopped status

* fix: emit beforeStop event

* feat: support dump & restore subApp through api

* chore: dumpable collections api

* refactor: getTableNameWithSchema

* fix: schema name

* feat:  cname

* refactor: collection 同步实现方式

* refactor: move collection group manager to database

* fix: test

* fix: remove uiSchema

* fix: uiSchema

* fix: remove settings

* chore: plugin enable & disable event

* feat: modal warning

* fix: users_jobs namespace

* fix: rolesUischemas namespace

* fix: am snippet

* feat: beforeSubAppInstall event

* fix: improve NOCOBASE_LOCALE_KEY & NOCOBASE_ROLE_KEY

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-03-10 19:16:00 +08:00
Junyi
ea4d4ac062
feat(plugin-workflow) config preload associations in triggers and nodes (#1548)
* feat(plugin-workflow): add preload associations for triggers and nodes

* feat(plugin-workflow): add appends parameter to schedule trigger

* fix(plugin-workflow): fix import

* fix(plugin-workflow): fix component injection

* test(plugin-workflow): add test case
2023-03-10 16:36:58 +08:00
Junyi
86d9eaf2fb
refactor(plugin-workflow): migrate evaluators (#1485)
* fix(plugin-formula): fix locale

* refactor(client): migrate variable component

* refactor(plugin-workflow): use core evaluators

* refactor(plugin-workflow): migrate calculation engines to evaluators
2023-02-22 23:45:03 +08:00
Junyi
a18918576b
fix(plugin-workflow): fix condition config param (#1483) 2023-02-22 17:35:22 +08:00
Junyi
4fbad75ea9
Feat(plugin-workflow) manual instruction (#1339)
* feat(plugin-workflow): add prompt node

* feat(plugin-workflow): useValueGetter for all instructions and triggers

* feat(plugin-workflow): add workflow block initializer

* refactor(plugin-workflow): change prompt node type to manual

* feat(plugin-workflow): add ModeConfig component for mode

* feat(plugin-workflow): add todo drawer

* feat(plugin-workflow): add block value provider

* feat(plugin-workflow): improve todo block and drawer

* fix(plugin-workflow): fix instruction name in test cases

* fix(plugin-workflow): fix test cases

* refactor(plugin-workflow): change param type of collection field initializer

* feat(plugin-workflow): add filter types for getters

* fix(plugin-workflow): fix assignees variable

* fix(plugin-workflow): filter todo by exist workflow

* fix(plugin-workflow): fix duplicated save action in manual config

* fix(plugin-workflow): fix transaction

* feat(plugin-workflow): destroy workflow will be cascaded

* fix(plugin-workflow): fix merge

* fix(plugin-workflow): fix locale

* fix(plugin-workflow): allow open ui view when executed

* fix(plugin-workflow): change todo table filter

* feat(plugin-workflow): use formula for calculation

* fix(plugin-workflow): fix variable template regexp

* fix(plugin-workflow): fix sub-options logic with types

* refactor(plugin-workflow): drop useless component

* fix(plugin-workflow): fix manual node action button

* feat(plugin-workflow): add new variable input component

* refactor(plugin-workflow): change all variable to new component

* fix(plugin-workflow): fix type

* fix(plugin-workflow): fix functions init

* fix(plugin-workflow): change jsonb to json for stable order

* fix(plugin-workflow): fix duplicated field name when initialize

* fix(plugin-workflow): fix manual result in manual block

* test(plugin-workflow): log field initializer props

* fix(plugin-workflow): fix nullable arguments

* test(plugin-workflow): test initializer fields schema

* fix: observer

* fix(plugin-workflow): adjust hints

* fix(plugin-workflow): fix locale and cursor in variable input

* refactor(plugin-workflow): change status keys

* fix(plugin-workflow): fix parallel instruction

* fix(plugin-workflow): fix calculation migration

* fix(plugin-workflow): move tasks native filter to server

* fix(plugin-workflow): fix manual options for variable

* fix(plugin-workflow): fix conflict

* fix(plugin-workflow): fix some bugs

* fix(plugin-workflow): fix todo list filter and locale

* fix(plugin-workflow): fix update action of workflow

* refactor(plugin-workflow): add legacy condition calculation as basic engine

* fix(plugin-workflow): fix type

* fix(plugin-workflow): fix condition basic calculation

* fix(plugin-workflow): fix type

* fix(plugin-workflow): fix migration

* fix(plugin-workflow): fix evaluators and scope

* fix(plugin-workflow): remove disabled type select in schema config

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

---------

Co-authored-by: chenos <chenlinxh@gmail.com>
2023-02-20 11:52:06 +08:00
Junyi
3115134f3a
fix(plugin-workflow): use promise to request (#1426) 2023-02-04 16:03:25 +08:00
Junyi
51ce0afc06
Fix(plugin-workflow): request node (#1367)
* fix(plugin-workflow): fix json data

* refactor(plugin-workflow): change ejs to json-templates in request

* feat(plugin-workflow): add variable insert button to json input

* fix(plugin-workflow): fix main locales

* fix(plugin-workflow): fix params in request

* fix(plugin-workflow): fix types

* feat(plugin-workflow): add ejs migration
2023-01-15 12:56:04 +08:00
Junyi
a1127300ae
refactor(plugin-workflow): refactor request instruction (#1356) 2023-01-12 02:22:06 -08:00
Junyi
a951d49f55
Fix(plugin-workflow): client refactor (#1163)
* fix(plugin-workflow): avoid to delete using node

* fix(plugin-workflow): refactor operand

* fix(plugin-workflow): simplify code

* fix(plugin-workflow): fix condition calculator
2022-12-06 02:18:40 -08:00
lyf-coder
9b4139e28a
feat(workflow): support Http Request Node (#1102)
* feat(workflow): support Http Request Node

* style(workflow): hTTP Request ui title

* style(workflow): request node ui title fix

* feat(workflow): support timeout config,ignoreFail etc

* refactor(workflow): request node Instruction remove unused input.result from templateVars

* fix(workflow): fix locale

* fix(workflow): perfect request implementation
2022-11-23 02:29:18 -08:00
Junyi
0288243a33
fix(plugin-workflow): fix transaction chain in trigger (#1089) 2022-11-15 13:35:10 +08:00
Junyi
c470209ecd
refactor(plugin-workflow): split transaction for collection trigger (#1080)
* refactor(plugin-workflow): split transaction for collection trigger

* fix(plugin-workflow): fix delay test case

* refactor(plugin-workflow): use micro queue to dispatch executions

* fix(plugin-workflow): fix usages of private api

* fix(plugin-workflow): fix wrong variable
2022-11-14 20:05:01 +08:00
Junyi
8a8478cf4c
refactor(plugin-workflow): adjust some api (#1067) 2022-11-10 13:33:52 +08:00
Junyi
cadaa8a2c2 fix(plugin-workflow): add req context to processor (#936) 2022-10-24 09:02:30 +08:00
Junyi
58b4febdf8
refactor(plugin-workflow): change files mode to 644 (#755) 2022-08-19 10:00:20 +08:00
Junyi
a73c37c927
feat(plugin-workflow): add assignees config for prompt instruction (#690) 2022-07-27 18:23:16 +08:00
Junyi
4a3cb6e65f
Refactor(plugin workflow): move client files into plugin (#556)
* refactor(plugin-workflow): move client files into plugin

* fix(client): fix package path block build

* test(plugin-workflow): trigger ci
2022-06-29 23:42:03 +08:00