Commit Graph
17924 Commits
Author SHA1 Message Date
nocobase[bot] ec4f3301ef Merge branch 'next' into develop 2026-07-29 05:50:58 +00:00
nocobase[bot] 8921543008 Merge branch 'main' into next 2026-07-29 05:48:43 +00:00
nocobase[bot] deeddcffc4 chore(versions): 😊 publish v2.1.32 v2.1.32 2026-07-29 05:47:54 +00:00
nocobase[bot] b4461741b2 Merge branch 'next' into develop 2026-07-29 03:48:39 +00:00
nocobase[bot] 0f4cad1651 Merge branch 'main' into next 2026-07-29 03:48:05 +00:00
Katherine 1edf24b169 fix(plugin-data-source-manager): enable target collection and key search (#10194)
* fix(plugin-data-source-manager): enable target collection search

* fix(plugin-data-source-manager): enable target key search
2026-07-29 11:47:20 +08:00
YANG QIA cc46463693 fix: authenticate portal registry requests (#10198) 2026-07-29 11:26:30 +08:00
nocobase[bot] 0514a73e97 Merge branch 'next' into develop 2026-07-29 03:02:06 +00:00
Drol 31c0e75734 fix(plugin-ai): resolve AI employee beta regressions (#10162)
* feat(plugin-ai): add AI chat box demo block

* chore(plugin-ai): document chatbox runtime model design

* feat(plugin-ai): add chatbox runtime models

* feat(plugin-ai): add chatbox runtime context

* feat(plugin-ai): migrate chatbox consumers to runtime

* test(plugin-ai): cover global chatbox runtime behavior

* refactor(plugin-ai): remove obsolete chatbox store facades

* test(plugin-ai): complete chatbox runtime regression pass

* fix(plugin-ai): make chatbox session state reactive

* fix(plugin-ai): expose global chatbox runtime for dependents

* fix(plugin-ai): support explicit chatbox runtime injection

* docs(plugin-ai): plan conversation runtime migration

* docs(plugin-ai): design conversation runtime ownership

* feat(plugin-ai): add conversation workflow runtime models

* refactor(plugin-ai): migrate chatbox consumers to runtime models

* refactor(plugin-ai): remove conversation selector stores

* refactor(plugin-ai): align runtime model declarations

* fix(plugin-ai): remove stale conversation store export

* chore(plugin-ai): preserve demo chatbox runtime

* feat(plugin-ai): add chatbox runtime mode and sender state

* feat(plugin-ai): add production ai chat box model skeleton

* feat(plugin-ai): add ai chat box block layout shell

* feat(plugin-ai): add ai chat box settings

* feat(plugin-ai): connect ai chat box sender runtime

* feat(plugin-ai): add ai chat box conversations

* feat(plugin-ai): support chat box conversation scope

* test(plugin-ai): cover chat box action runtime integration

* feat(plugin-ai): route employee tasks to chat box blocks

* docs(plugin-ai): record ai chat box implementation validation

* fix(plugin-ai): adjust ai chat box height and layout

* fix(plugin-ai): prevent ai chat sender from overlapping messages

* fix(plugin-ai): keep chat messages above sender

* fix(plugin-ai): constrain demo chat sender layout

* fix(plugin-ai): keep block chat sender in flex flow

* fix(plugin-ai): expand chat box after adding body blocks

* Revert "fix(plugin-ai): expand chat box after adding body blocks"

This reverts commit b6a893a6477dcd7a6fd86a55df89e60ff9b11519.

* fix(plugin-ai): use common block height settings

* fix(plugin-ai): align chat messages scrollbar style

* fix(plugin-ai): preserve native chat message scrollbar

* fix(plugin-ai): preserve native chat message layout

* fix(plugin-ai): restrict chat box display blocks

* fix(plugin-ai): set chat box core minimum width

* fix(plugin-ai): avoid nested chat message horizontal scroll

* fix(plugin-ai): polish AI chat box block

* fix(plugin-ai): prevent chat sender overflow

* fix(plugin-ai): keep chat core below body blocks

* fix(plugin-ai): sync AI chat box block state

* fix(plugin-ai): register AI employee action in v1 entry

* fix(plugin-ai): preserve chat box scope for employee tasks

* fix(plugin-ai): initialize chat box employee shortcuts

* fix(plugin-ai): filter chat box conversations by scope

* fix(plugin-ai): use block runtime for chat box employee actions

* fix(plugin-ai): clean up AI chat box block

* fix(plugin-ai): resolve chat box declaration errors

* refactor(plugin-ai): centralize chat box default width

* fix(plugin-ai): initialize chat box scope

* refactor(plugin-ai): organize chat box view state

* refactor(plugin-ai): organize chat box sender state

* refactor(plugin-ai): simplify AI chat box core view

* fix(plugin-ai): preserve chat box model restrictions

* refactor(plugin-ai): align AI chat box items

* refactor(plugin-ai): align AI chat box sub models

* refactor(plugin-ai): resolve chat box scope at runtime

* fix(plugin-ai): avoid block chat conversation refresh fanout

* refactor(plugin-ai): isolate chat box unread badge rendering

* perf(plugin-ai): avoid sender input mobx updates

* fix(plugin-ai): adapt chatbox tests to runtime models

* feat(plugin-ai): support targeting AI chat box in triggerTask

* docs: sync ctx.ai chatBoxUid translations

* feat(plugin-ai): support file attachments in RunJS

* docs: sync AI file upload translations

* feat(plugin-ai): expose response loading state in RunJS

* docs: add AI Chat box block guide

* docs: link AI Chat box from interface builder

* docs: sync AI Chat box guide translations

* fix(plugin-ai): skip block shortcut flow context

* fix(plugin-ai): keep block picker active in chat box

* fix(plugin-ai): show duplicate employee username error

* fix(plugin-ai): validate duplicate model IDs

* fix(plugin-ai): include detail record data in AI context

* fix(ai): drop ppt support and update officeparser

* fix(plugin-ai): show workflow tasks for disabled employees

* fix(ai): honor data source permissions for aggregate queries

* fix(plugin-ai): constrain provider select popup width

* fix(plugin-ai): validate AI employee names

* fix(plugin-ai): avoid duplicate messages after chat failures

* fix(plugin-ai): sync block context to active conversation

* fix(plugin-ai): keep skill loader for skill-only tasks

* fix(plugin-ai): use latest editor refs in coding tools

* fix(plugin-data-source-manager): align aggregate query types

* fix(plugin-ai): include form item custom label in AI form context

* fix(plugin-ai): validate custom model IDs on submit

* fix(plugin-ai): clear stale draft work context

* fix(test): stabilize frontend CI tests
2026-07-29 11:01:22 +08:00
nocobase[bot] b512c56d79 Merge branch 'next' into develop 2026-07-29 02:09:13 +00:00
nocobase[bot] 90f2e9cf71 Merge branch 'main' into next 2026-07-29 02:08:36 +00:00
Leonardo Alves Guimaraes fbfd9b2878 feat: add Brazilian Portuguese (pt-BR) README translation (#10150) 2026-07-29 10:07:49 +08:00
YANG QIA a59ddf9050 feat: add plugin-owned portal registries (#10193)
* feat: add plugin-owned portal registries

* fix: harden portal registry lifecycle

* feat(portal): add Registry sync command

* fix(portal): support snapshot Registry package versions

* feat(plugin-client): add portal users example

* fix(plugin-ai): avoid chat crash without configuration

* fix(plugin-ai): handle missing employees in demos

* docs: add portal registry CLI reference
2026-07-29 09:38:31 +08:00
nocobase[bot] d4961c993b Merge branch 'next' into develop 2026-07-29 01:01:00 +00:00
Drol e2162c1673 feat(plugin-ai): add AI chat box block (#10125)
* feat(plugin-ai): add AI chat box demo block

* chore(plugin-ai): document chatbox runtime model design

* feat(plugin-ai): add chatbox runtime models

* feat(plugin-ai): add chatbox runtime context

* feat(plugin-ai): migrate chatbox consumers to runtime

* test(plugin-ai): cover global chatbox runtime behavior

* refactor(plugin-ai): remove obsolete chatbox store facades

* test(plugin-ai): complete chatbox runtime regression pass

* fix(plugin-ai): make chatbox session state reactive

* fix(plugin-ai): expose global chatbox runtime for dependents

* fix(plugin-ai): support explicit chatbox runtime injection

* docs(plugin-ai): plan conversation runtime migration

* docs(plugin-ai): design conversation runtime ownership

* feat(plugin-ai): add conversation workflow runtime models

* refactor(plugin-ai): migrate chatbox consumers to runtime models

* refactor(plugin-ai): remove conversation selector stores

* refactor(plugin-ai): align runtime model declarations

* fix(plugin-ai): remove stale conversation store export

* chore(plugin-ai): preserve demo chatbox runtime

* feat(plugin-ai): add chatbox runtime mode and sender state

* feat(plugin-ai): add production ai chat box model skeleton

* feat(plugin-ai): add ai chat box block layout shell

* feat(plugin-ai): add ai chat box settings

* feat(plugin-ai): connect ai chat box sender runtime

* feat(plugin-ai): add ai chat box conversations

* feat(plugin-ai): support chat box conversation scope

* test(plugin-ai): cover chat box action runtime integration

* feat(plugin-ai): route employee tasks to chat box blocks

* docs(plugin-ai): record ai chat box implementation validation

* fix(plugin-ai): adjust ai chat box height and layout

* fix(plugin-ai): prevent ai chat sender from overlapping messages

* fix(plugin-ai): keep chat messages above sender

* fix(plugin-ai): constrain demo chat sender layout

* fix(plugin-ai): keep block chat sender in flex flow

* fix(plugin-ai): expand chat box after adding body blocks

* Revert "fix(plugin-ai): expand chat box after adding body blocks"

This reverts commit b6a893a6477dcd7a6fd86a55df89e60ff9b11519.

* fix(plugin-ai): use common block height settings

* fix(plugin-ai): align chat messages scrollbar style

* fix(plugin-ai): preserve native chat message scrollbar

* fix(plugin-ai): preserve native chat message layout

* fix(plugin-ai): restrict chat box display blocks

* fix(plugin-ai): set chat box core minimum width

* fix(plugin-ai): avoid nested chat message horizontal scroll

* fix(plugin-ai): polish AI chat box block

* fix(plugin-ai): prevent chat sender overflow

* fix(plugin-ai): keep chat core below body blocks

* fix(plugin-ai): sync AI chat box block state

* fix(plugin-ai): register AI employee action in v1 entry

* fix(plugin-ai): preserve chat box scope for employee tasks

* fix(plugin-ai): initialize chat box employee shortcuts

* fix(plugin-ai): filter chat box conversations by scope

* fix(plugin-ai): use block runtime for chat box employee actions

* fix(plugin-ai): clean up AI chat box block

* fix(plugin-ai): resolve chat box declaration errors

* refactor(plugin-ai): centralize chat box default width

* fix(plugin-ai): initialize chat box scope

* refactor(plugin-ai): organize chat box view state

* refactor(plugin-ai): organize chat box sender state

* refactor(plugin-ai): simplify AI chat box core view

* fix(plugin-ai): preserve chat box model restrictions

* refactor(plugin-ai): align AI chat box items

* refactor(plugin-ai): align AI chat box sub models

* refactor(plugin-ai): resolve chat box scope at runtime

* fix(plugin-ai): avoid block chat conversation refresh fanout

* refactor(plugin-ai): isolate chat box unread badge rendering

* perf(plugin-ai): avoid sender input mobx updates

* fix(plugin-ai): adapt chatbox tests to runtime models

* feat(plugin-ai): support targeting AI chat box in triggerTask

* docs: sync ctx.ai chatBoxUid translations

* feat(plugin-ai): support file attachments in RunJS

* docs: sync AI file upload translations

* feat(plugin-ai): expose response loading state in RunJS

* docs: add AI Chat box block guide

* docs: link AI Chat box from interface builder

* docs: sync AI Chat box guide translations

* fix(plugin-ai): skip block shortcut flow context

* fix(plugin-ai): keep block picker active in chat box

* fix(test): stabilize frontend CI tests

* fix(plugin-ai): validate AI chat box scope

* fix(plugin-ai): ignore whitespace-only messages

* fix(plugin-ai): restrict AI file access to owners

* fix(plugin-ai): allow owners to preview AI files

* fix(plugin-ai): authorize AI file previews by owner
2026-07-29 09:00:22 +08:00
nocobase[bot] 2ec457e839 Merge branch 'next' into develop 2026-07-29 00:58:37 +00:00
katherinehhh 86c9dbbb5c Merge branch 'main' into next 2026-07-29 08:57:40 +08:00
nocobase[bot] 6aa306c21a Merge branch 'next' into develop 2026-07-29 00:31:11 +00:00
Junyi 627e28a634 refactor(plugin-workflow): group task stats by workflow (#10173)
* feat(plugin-workflow): add workflow task stats

* refactor(plugin-workflow): group task stats by workflow

* fix(plugin-workflow-manual): correct task callback dependencies

* fix(plugin-workflow): fix sidebar style

* fix(plugin-workflow): test cases of stats

* fix(plugin-workflow-request): fix test cases

* fix: build error

* fix(plugin-workflow): fix types

* fix(plugin-workflow): fix migrations

* fix(plugin-workflow-manual): fix types

* fix(plugin-workflow-cc): fix types

* fix(plugin-workflow): fix task stats logic

* fix(plugin-workflow-manual): fix column name

* fix(plugin-workflow-cc): fix types
2026-07-29 08:30:31 +08:00
Junyi 2d7b91a26e fix(plugin-workflow): load all workflow revisions (#10190) 2026-07-28 21:12:36 +08:00
Katherine 120046828c fix(plugin-environment-variables): show v2 submit errors (#10181)
* fix(plugin-environment-variables): show v2 submit errors

* fix(plugin-environment-variables): exclude secrets from value filters
2026-07-28 19:28:35 +08:00
PiEgg 79c1f07582 Merge branch 'next' into develop 2026-07-28 17:55:48 +08:00
nocobase[bot] faaa5e2b03 Merge branch 'main' into next 2026-07-28 09:36:08 +00:00
PiEgg 95d185f625 feat(docs): group search results by section and rank docs above plugin pages (#10185) 2026-07-28 17:35:22 +08:00
nocobase[bot] a64c7e16a9 Merge branch 'next' into develop 2026-07-28 08:44:43 +00:00
nocobase[bot] 2d05eed826 Merge branch 'main' into next 2026-07-28 08:44:05 +00:00
hongbojiandkatherinehhh 7cb3791912 fix(client-v2): refresh table action linkage state (#10186)
* fix(client-v2): update linkage rules immutably

* fix(client-v2): restore action linkage disabled state

* fix(client-v2): narrow linkage rule state updates

* fix(client-v2): harden action linkage state recovery

* fix(client-v2): treat action disabled state as transient

---------

Co-authored-by: katherinehhh <katherine_15995@163.com>
2026-07-28 16:43:19 +08:00
nocobase[bot] c157974219 chore(versions): 😊 publish v2.2.0-alpha.11 v2.2.0-alpha.11 2026-07-28 07:28:18 +00:00
chenos 8b5a7e4f5e fix(cli): render extracted client entry mode (#10188)
* fix(cli): render extracted client entry mode

* fix(plugin-multi-portal): generate portal config files
2026-07-28 15:25:49 +08:00
nocobase[bot] 53fa05ddb8 chore(versions): 😊 publish v2.2.0-alpha.10 v2.2.0-alpha.10 2026-07-28 04:29:08 +00:00
chenos 76039a6630 feat: support vibe coding portal init (#10155)
* feat: support vibe coding portal init

* feat: support vibe coding portal init

* fix(cli): remove duplicate init flag typings

* feat(server): support app-scoped portals

* feat(server): support local portal template paths

* feat(cli): prepare initial portal templates during install

* fix(cli): isolate portal install build environment

* fix(cli): refine init development mode prompts

* feat(cli): support portal defaults and routes

* fix(cli): handle portal initialization defaults and routes

* fix(cli): reinstall portal template dependencies

* fix(cli): simplify init development mode prompt

* feat(server): use default portal template for vibe coding

* fix(plugin-calendar): import date-fns locales by name

* fix(client): proxy portal paths in dev

* fix(plugin-calendar): fix date-fns locale imports

* feat(cli): enable quickstart for source dev

* chore: install package managers in Docker image

* feat(cli): add portal workspace commands

* feat(cli): support portal dev and deploy sync

* chore: move multi-portal plugin to plugins

* fix(plugin-multi-portal): allow managing default portals

* feat(cli): add portal list and destroy commands

* feat(cli): add portal info output

* fix: error

* fix(cli): add portal routes to nginx template

* fix(cli): normalize portal deploy dist permissions

* fix(plugin-multi-portal): use yarn html build for portal templates

* chore: update portal template dependencies and tests

* fix: yarn.lock

* fix: yarn.lock

* fix(cli): resolve initial portal template packages

* feat(cli): support portal source config sync

* refactor(plugin-multi-portal): remove portal log viewer

* docs: add portal CLI docs

* fix(plugin-multi-portal): resolve declaration build errors

* fix(plugin-multi-portal): align package version with preset

* fix(plugin-multi-portal): copy portal template dist

* refactor(plugin-multi-portal): centralize portal init handling

* refactor(plugin-multi-portal): rename AI portal development mode

* refactor(plugin-multi-portal): rename development mode to portal type

* fix(cli): keep portal template dist assets

* fix(plugin-multi-portal): wait for portal template preparation

* refactor(cli): align portal setup and wording

* refactor(cli): rename portal identifier wording

* fix(cli): support root git path for portal source

* feat(plugin-multi-portal): support AI portal source storage

* fix(plugin-multi-portal): narrow portal source storage

* fix(plugin-multi-portal): correct sub-app portal paths

* fix(plugin-multi-portal): correct sub-app portal api url

* fix(plugin-multi-portal): use portal name as unique identity

* fix: routeName

* fix: remove migration
2026-07-28 12:25:05 +08:00
nocobase[bot] 660614bd56 Merge branch 'next' into develop 2026-07-27 15:41:02 +00:00
nocobase[bot] 4bddd0cd06 Merge branch 'main' into next 2026-07-27 15:40:19 +00:00
nocobase[bot] 8b18d1220e docs: update changelogs 2026-07-27 15:37:58 +00:00
nocobase[bot] e7a33d2241 Merge branch 'next' into develop 2026-07-27 15:29:36 +00:00
nocobase[bot] 48a4413612 Merge branch 'main' into next 2026-07-27 15:27:20 +00:00
nocobase[bot] c4b89ed982 chore(versions): 😊 publish v2.1.31 v2.1.31 2026-07-27 15:26:55 +00:00
nocobase[bot] 2cfdda9ee9 Merge branch 'next' into develop 2026-07-27 13:52:03 +00:00
nocobase[bot] 132bf89fd2 Merge branch 'main' into next 2026-07-27 13:51:20 +00:00
Katherine c11b26c465 fix(client-v2): respect record permissions in table quick edit (#10182) 2026-07-27 21:50:41 +08:00
nocobase[bot] edc28cd026 Merge branch 'next' into develop 2026-07-27 13:29:23 +00:00
nocobase[bot] f3ea9a08b9 Merge branch 'main' into next 2026-07-27 13:28:32 +00:00
Drol 69231d0f2c fix(ai): improve document loader timeout and PDF errors (#10172)
* fix(ai): return clean error message instead of stack trace from document loader worker

- Catch PasswordException in loadPdf and throw a user-friendly message
- Send error.message instead of error.stack back to main thread

* feat(ai): add timeout support to document loader worker

- Add configurable timeout option (default 5 minutes) to loadByWorker
- Terminate worker and reject with clear error on timeout
2026-07-27 21:27:50 +08:00
nocobase[bot] 8df695d526 Merge branch 'next' into develop 2026-07-27 12:50:12 +00:00
Drol 1adbf7e247 fix(plugin-backups): stabilize frontend tests (#10184) 2026-07-27 20:49:34 +08:00
mytharcher 653804d29f Merge branch 'next' into develop 2026-07-27 20:32:25 +08:00
mytharcher 67831b5586 fix(plugin-file-manager): fix types 2026-07-27 16:46:29 +08:00
nocobase[bot] f266e6b041 Merge branch 'next' into develop 2026-07-27 07:50:04 +00:00
Drol ffcbc5cfbc Merge branch 'main' into next
# Conflicts:
#	packages/plugins/@nocobase/plugin-ai/src/client/workflow/nodes/employee/components/users-select.tsx
#	packages/plugins/@nocobase/plugin-ai/src/client/workflow/nodes/employee/flow-models/task.tsx
2026-07-27 15:48:04 +08:00
Drol e1bdb6e57c fix(plugin-ai): fix Operator variable selector submenu (#10167)
* fix(plugin-ai): fix Operator variable cascader not expanding sub-menus

Set changeOnSelect={false} on Variable.Input in UsersSelect so that
clicking a first-level variable category expands its children instead
of immediately firing onChange and collapsing the dropdown.

Also set nullable={false} to remove the Null option since Operator is
a required field.

* fix(plugin-ai): handle operator workflow variables
2026-07-27 15:38:23 +08:00