From e59cec0e697e15de7b155dfde74767898058a1b6 Mon Sep 17 00:00:00 2001 From: ajie Date: Fri, 28 Mar 2025 11:00:29 +0800 Subject: [PATCH 01/69] fix: incorrect current role assignment during login (#6581) * fix: incorrect current role assignment during login --- .../src/server/__tests__/union-role.test.ts | 37 +++++++++++++++++-- .../src/server/middlewares/setCurrentRole.ts | 7 ++-- .../desktopRoutes-union-role.test.ts | 6 +++ .../__tests__/union-role-mobileRoutes.test.ts | 6 ++- 4 files changed, 48 insertions(+), 8 deletions(-) diff --git a/packages/plugins/@nocobase/plugin-acl/src/server/__tests__/union-role.test.ts b/packages/plugins/@nocobase/plugin-acl/src/server/__tests__/union-role.test.ts index 36ad2cbf17..53758c0d25 100644 --- a/packages/plugins/@nocobase/plugin-acl/src/server/__tests__/union-role.test.ts +++ b/packages/plugins/@nocobase/plugin-acl/src/server/__tests__/union-role.test.ts @@ -51,7 +51,11 @@ describe('union role: full permissions', async () => { roles: [role1.name, role2.name], }, }); - + await rootAgent.resource('roles').setSystemRoleMode({ + values: { + roleMode: SystemRoleMode.allowUseUnion, + }, + }); agent = await app.agent().login(user, UNION_ROLE_KEY); }); @@ -415,15 +419,15 @@ describe('union role: full permissions', async () => { const rootAgent = await app.agent().login(rootUser); let rolesResponse = await agent.resource('roles').check(); expect(rolesResponse.status).toBe(200); - expect(rolesResponse.body.data.roleMode).toStrictEqual(SystemRoleMode.default); + expect(rolesResponse.body.data.roleMode).toStrictEqual(SystemRoleMode.allowUseUnion); await rootAgent.resource('roles').setSystemRoleMode({ values: { - roleMode: SystemRoleMode.allowUseUnion, + roleMode: SystemRoleMode.default, }, }); rolesResponse = await agent.resource('roles').check(); expect(rolesResponse.status).toBe(200); - expect(rolesResponse.body.data.roleMode).toStrictEqual(SystemRoleMode.allowUseUnion); + expect(rolesResponse.body.data.roleMode).toStrictEqual(SystemRoleMode.default); }); it(`should response no permission when createdById field is missing in data tables`, async () => { @@ -501,4 +505,29 @@ describe('union role: full permissions', async () => { expect(getRolesResponse.statusCode).toBe(200); expect(getRolesResponse.body.meta.allowedActions.update.length).toBe(0); }); + + it('should login successfully when use __union__ role in allowUseUnion mode #1906', async () => { + const rootAgent = await app.agent().login(rootUser); + await rootAgent.resource('roles').setSystemRoleMode({ + values: { + roleMode: SystemRoleMode.allowUseUnion, + }, + }); + agent = await app.agent().login(user); + const createRoleResponse = await agent.resource('roles').check(); + expect(createRoleResponse.statusCode).toBe(200); + }); + + it('should currentRole not be __union__ when default role mode #1907', async () => { + const rootAgent = await app.agent().login(rootUser); + await rootAgent.resource('roles').setSystemRoleMode({ + values: { + roleMode: SystemRoleMode.default, + }, + }); + agent = await app.agent().login(user, UNION_ROLE_KEY); + const createRoleResponse = await agent.resource('roles').check(); + expect(createRoleResponse.statusCode).toBe(200); + expect(createRoleResponse.body.data.role).not.toBe(UNION_ROLE_KEY); + }); }); diff --git a/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts b/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts index 49b8acaf14..626a6d5c9c 100644 --- a/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts +++ b/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts @@ -14,7 +14,7 @@ import { UNION_ROLE_KEY } from '../constants'; import { SystemRoleMode } from '../enum'; export async function setCurrentRole(ctx: Context, next) { - const currentRole = ctx.get('X-Role'); + let currentRole = ctx.get('X-Role'); if (currentRole === 'anonymous') { ctx.state.currentRole = currentRole; @@ -49,7 +49,8 @@ export async function setCurrentRole(ctx: Context, next) { ctx.state.currentUser.roles = userRoles; const systemSettings = await ctx.db.getRepository('systemSettings').findOne(); const roleMode = systemSettings?.get('roleMode') || SystemRoleMode.default; - if (ctx.state.currentRole === UNION_ROLE_KEY && roleMode === SystemRoleMode.default) { + if ([currentRole, ctx.state.currentRole].includes(UNION_ROLE_KEY) && roleMode === SystemRoleMode.default) { + currentRole = userRoles[0].name; ctx.state.currentRole = userRoles[0].name; ctx.headers['x-role'] = userRoles[0].name; } else if (roleMode === SystemRoleMode.onlyUseUnion) { @@ -85,7 +86,7 @@ export async function setCurrentRole(ctx: Context, next) { // 2. If the X-Role is not set, or the X-Role does not belong to the user, use the default role if (!role) { const defaultRole = userRoles.find((role) => role?.rolesUsers?.default); - role = (defaultRole || userRoles[0])?.name; + role = (defaultRole || userRoles.find((x) => x.name !== UNION_ROLE_KEY))?.name; } ctx.state.currentRole = role; ctx.state.currentRoles = [role]; diff --git a/packages/plugins/@nocobase/plugin-client/src/server/__tests__/desktopRoutes-union-role.test.ts b/packages/plugins/@nocobase/plugin-client/src/server/__tests__/desktopRoutes-union-role.test.ts index 2d57e70cec..cddc03e9db 100644 --- a/packages/plugins/@nocobase/plugin-client/src/server/__tests__/desktopRoutes-union-role.test.ts +++ b/packages/plugins/@nocobase/plugin-client/src/server/__tests__/desktopRoutes-union-role.test.ts @@ -55,6 +55,12 @@ describe('Web client desktopRoutes', async () => { }, }); + await rootAgent.resource('roles').setSystemRoleMode({ + values: { + roleMode: SystemRoleMode.allowUseUnion, + }, + }); + agent = await app.agent().login(user, UNION_ROLE_KEY); }); diff --git a/packages/plugins/@nocobase/plugin-mobile/src/server/__tests__/union-role-mobileRoutes.test.ts b/packages/plugins/@nocobase/plugin-mobile/src/server/__tests__/union-role-mobileRoutes.test.ts index b1930b8629..a66cbc73a4 100644 --- a/packages/plugins/@nocobase/plugin-mobile/src/server/__tests__/union-role-mobileRoutes.test.ts +++ b/packages/plugins/@nocobase/plugin-mobile/src/server/__tests__/union-role-mobileRoutes.test.ts @@ -54,7 +54,11 @@ describe('union role mobileRoutes', async () => { roles: [role1.name, role2.name], }, }); - + await rootAgent.resource('roles').setSystemRoleMode({ + values: { + roleMode: SystemRoleMode.allowUseUnion, + }, + }); agent = await app.agent().login(user, UNION_ROLE_KEY); }); From 1b782c4f952fba2e45a05c63f67d8576c16da590 Mon Sep 17 00:00:00 2001 From: chenos Date: Fri, 28 Mar 2025 11:01:20 +0800 Subject: [PATCH 02/69] refactor: async tasks (#6531) * refactor: async tasks * refactor: selectWithTitle support optionRender * refactor: adjust export filename * fix: build error * fix: export file name --------- Co-authored-by: katherinehhh --- .../client/src/common/SelectWithTitle.tsx | 10 +- .../src/schema-settings/SchemaSettings.tsx | 5 +- .../src/client/AsyncTaskManagerProvider.tsx | 188 ++----------- .../src/client/components/AsyncTasks.tsx | 249 ++++++++++-------- .../src/server/plugin.ts | 19 +- .../src/server/resourcers/async-tasks.ts | 47 +++- 6 files changed, 220 insertions(+), 298 deletions(-) diff --git a/packages/core/client/src/common/SelectWithTitle.tsx b/packages/core/client/src/common/SelectWithTitle.tsx index 4bd43648a3..b3e0be59a8 100644 --- a/packages/core/client/src/common/SelectWithTitle.tsx +++ b/packages/core/client/src/common/SelectWithTitle.tsx @@ -18,7 +18,14 @@ export interface SelectWithTitleProps { onChange?: (...args: any[]) => void; } -export function SelectWithTitle({ title, defaultValue, onChange, options, fieldNames }: SelectWithTitleProps) { +export function SelectWithTitle({ + title, + defaultValue, + onChange, + options, + fieldNames, + ...others +}: SelectWithTitleProps) { const [open, setOpen] = useState(false); const timerRef = useRef(null); return ( @@ -36,6 +43,7 @@ export function SelectWithTitle({ title, defaultValue, onChange, options, fieldN > {title} + - {typeof typeValue === 'number' ? : null} + {typeof typeValue === 'number' ? ( + + ) : null} {typeValue === 'cron' ? ( onChange(`0 ${v}`)} clearButton={false} locale={window['cronLocale']} + disabled={disabled} /> ) : null} diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/Plugin.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/Plugin.ts index 794b1dc158..998ddc42a9 100644 --- a/packages/plugins/@nocobase/plugin-workflow/src/server/Plugin.ts +++ b/packages/plugins/@nocobase/plugin-workflow/src/server/Plugin.ts @@ -366,11 +366,16 @@ export default class PluginWorkflowServer extends Plugin { const prev = workflow.previous(); if (prev.config) { trigger.off({ ...workflow.get(), ...prev }); + this.getLogger(workflow.id).info(`toggle OFF workflow ${workflow.id} based on configuration before updated`); } trigger.on(workflow); + this.getLogger(workflow.id).info(`toggle ON workflow ${workflow.id}`); + this.enabledCache.set(workflow.id, workflow); } else { trigger.off(workflow); + this.getLogger(workflow.id).info(`toggle OFF workflow ${workflow.id}`); + this.enabledCache.delete(workflow.id); } if (!silent) { diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/DateFieldScheduleTrigger.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/DateFieldScheduleTrigger.ts index c720e13eca..5a62986a72 100644 --- a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/DateFieldScheduleTrigger.ts +++ b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/DateFieldScheduleTrigger.ts @@ -104,50 +104,54 @@ export default class DateFieldScheduleTrigger { // caching workflows in range, default to 5min cacheCycle = 300_000; + onAfterStart = () => { + if (this.timer) { + return; + } + + this.timer = setInterval(() => this.reload(), this.cacheCycle); + + this.reload(); + }; + + onBeforeStop = () => { + if (this.timer) { + clearInterval(this.timer); + } + + for (const [key, timer] of this.cache.entries()) { + clearTimeout(timer); + this.cache.delete(key); + } + }; + constructor(public workflow: Plugin) { - workflow.app.on('afterStart', async () => { - if (this.timer) { - return; - } - - this.timer = setInterval(() => this.reload(), this.cacheCycle); - - this.reload(); - }); - - workflow.app.on('beforeStop', () => { - if (this.timer) { - clearInterval(this.timer); - } - - for (const [key, timer] of this.cache.entries()) { - clearTimeout(timer); - this.cache.delete(key); - } - }); + workflow.app.on('afterStart', this.onAfterStart); + workflow.app.on('beforeStop', this.onBeforeStop); } - async reload() { + reload() { + for (const [key, timer] of this.cache.entries()) { + clearTimeout(timer); + this.cache.delete(key); + } + const workflows = Array.from(this.workflow.enabledCache.values()).filter( (item) => item.type === 'schedule' && item.config.mode === SCHEDULE_MODE.DATE_FIELD, ); - // NOTE: clear cached jobs in last cycle - this.cache = new Map(); - - this.inspect(workflows); + workflows.forEach((workflow) => { + this.inspect(workflow); + }); } - inspect(workflows: WorkflowModel[]) { + async inspect(workflow: WorkflowModel) { const now = new Date(); - - workflows.forEach(async (workflow) => { - const records = await this.loadRecordsToSchedule(workflow, now); - this.workflow.getLogger(workflow.id).info(`[Schedule on date field] ${records.length} records to schedule`); - records.forEach((record) => { - const nextTime = this.getRecordNextTime(workflow, record); - this.schedule(workflow, record, nextTime, Boolean(nextTime)); - }); + const records = await this.loadRecordsToSchedule(workflow, now); + this.workflow.getLogger(workflow.id).info(`[Schedule on date field] ${records.length} records to schedule`); + records.forEach((record) => { + const nextTime = this.getRecordNextTime(workflow, record); + this.schedule(workflow, record, nextTime, Boolean(nextTime)); }); } @@ -233,8 +237,6 @@ export default class DateFieldScheduleTrigger { [Op.gte]: new Date(endTimestamp), }, }); - } else { - this.workflow.getLogger(id).warn(`[Schedule on date field] "endsOn.field" is not configured`); } } } @@ -367,7 +369,7 @@ export default class DateFieldScheduleTrigger { } on(workflow: WorkflowModel) { - this.inspect([workflow]); + this.inspect(workflow); const { collection } = workflow.config; const [dataSourceName, collectionName] = parseCollectionName(collection); diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/StaticScheduleTrigger.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/StaticScheduleTrigger.ts index 9552ceae22..988c4f545b 100644 --- a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/StaticScheduleTrigger.ts +++ b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/StaticScheduleTrigger.ts @@ -18,36 +18,39 @@ const MAX_SAFE_INTERVAL = 2147483647; export default class StaticScheduleTrigger { private timers: Map = new Map(); - constructor(public workflow: Plugin) { - workflow.app.on('afterStart', async () => { - const workflows = Array.from(this.workflow.enabledCache.values()).filter( - (item) => item.type === 'schedule' && item.config.mode === SCHEDULE_MODE.STATIC, - ); - - this.inspect(workflows); - }); - - workflow.app.on('beforeStop', () => { - for (const timer of this.timers.values()) { - clearInterval(timer); - } - }); - } - - inspect(workflows: WorkflowModel[]) { - const now = new Date(); + onAfterStart = () => { + const workflows = Array.from(this.workflow.enabledCache.values()).filter( + (item) => item.type === 'schedule' && item.config.mode === SCHEDULE_MODE.STATIC, + ); workflows.forEach((workflow) => { - const nextTime = this.getNextTime(workflow, now); - if (nextTime) { - this.workflow - .getLogger(workflow.id) - .info(`caching scheduled workflow will run at: ${new Date(nextTime).toISOString()}`); - } else { - this.workflow.getLogger(workflow.id).info('workflow will not be scheduled'); - } - this.schedule(workflow, nextTime, nextTime >= now.getTime()); + this.inspect(workflow); }); + }; + + onBeforeStop = () => { + for (const timer of this.timers.values()) { + clearInterval(timer); + } + }; + + constructor(public workflow: Plugin) { + workflow.app.on('afterStart', this.onAfterStart); + workflow.app.on('beforeStop', this.onBeforeStop); + } + + inspect(workflow: WorkflowModel) { + const now = new Date(); + + const nextTime = this.getNextTime(workflow, now); + if (nextTime) { + this.workflow + .getLogger(workflow.id) + .info(`caching scheduled workflow will run at: ${new Date(nextTime).toISOString()}`); + } else { + this.workflow.getLogger(workflow.id).info('workflow will not be scheduled'); + } + this.schedule(workflow, nextTime, nextTime >= now.getTime()); } getNextTime({ config, allExecuted }: WorkflowModel, currentDate: Date, nextSecond = false) { @@ -130,7 +133,7 @@ export default class StaticScheduleTrigger { } on(workflow) { - this.inspect([workflow]); + this.inspect(workflow); } off(workflow) { From 04e943a0b2febf3b6c02a011c921f0484b20db24 Mon Sep 17 00:00:00 2001 From: YANG QIA <2013xile@gmail.com> Date: Tue, 1 Apr 2025 11:00:59 +0800 Subject: [PATCH 29/69] fix(m2m-array): error of filtering by fields in an association collection with a m2m array field (#6596) * fix(m2m-array): error of filtering by fields in an association collection with a m2m array field * test: add test * feat: generateJoinOnForJSONArray --- .../belongs-to-array-repository.ts | 13 ++- .../src/eager-loading/eager-loading-tree.ts | 37 ++++--- .../query-interface/mysql-query-interface.ts | 4 + .../postgres-query-interface.ts | 4 + .../src/query-interface/query-interface.ts | 5 + .../query-interface/sqlite-query-interface.ts | 4 + .../src/server/__tests__/issues.test.ts | 96 +++++++++++++++++++ .../__tests__/m2m-array-bigint-api.test.ts | 19 +--- .../__tests__/m2m-array-string-api.test.ts | 19 +--- 9 files changed, 153 insertions(+), 48 deletions(-) diff --git a/packages/core/database/src/belongs-to-array/belongs-to-array-repository.ts b/packages/core/database/src/belongs-to-array/belongs-to-array-repository.ts index 375e65829e..254baf3aa0 100644 --- a/packages/core/database/src/belongs-to-array/belongs-to-array-repository.ts +++ b/packages/core/database/src/belongs-to-array/belongs-to-array-repository.ts @@ -54,19 +54,18 @@ export class BelongsToArrayAssociation { return this.db.getModel(this.targetName); } - generateInclude() { - if (this.db.sequelize.getDialect() !== 'postgres') { - throw new Error('Filtering by many to many (array) associations is only supported on postgres'); - } + generateInclude(parentAs?: string) { const targetCollection = this.db.getCollection(this.targetName); const targetField = targetCollection.getField(this.targetKey); const sourceCollection = this.db.getCollection(this.source.name); const foreignField = sourceCollection.getField(this.foreignKey); const queryInterface = this.db.sequelize.getQueryInterface(); - const left = queryInterface.quoteIdentifiers(`${this.as}.${targetField.columnName()}`); - const right = queryInterface.quoteIdentifiers(`${this.source.collection.name}.${foreignField.columnName()}`); + const asLeft = parentAs ? `${parentAs}->${this.as}` : this.as; + const asRight = parentAs || this.source.collection.name; + const left = queryInterface.quoteIdentifiers(`${asLeft}.${targetField.columnName()}`); + const right = queryInterface.quoteIdentifiers(`${asRight}.${foreignField.columnName()}`); return { - on: this.db.sequelize.literal(`${left}=any(${right})`), + on: this.db.queryInterface.generateJoinOnForJSONArray(left, right), }; } diff --git a/packages/core/database/src/eager-loading/eager-loading-tree.ts b/packages/core/database/src/eager-loading/eager-loading-tree.ts index d0d9fb2eeb..c450eb816f 100644 --- a/packages/core/database/src/eager-loading/eager-loading-tree.ts +++ b/packages/core/database/src/eager-loading/eager-loading-tree.ts @@ -82,6 +82,31 @@ const queryParentSQL = (options: { SELECT ${q(targetKeyField)} AS ${q(targetKey)}, ${q(foreignKeyField)} AS ${q(foreignKey)} FROM cte`; }; +const processIncludes = (includes: any[], model: any, parentAs = '') => { + includes.forEach((include: { association: string; include?: any[] }, index: number) => { + // Process current level + const association = model.associations[include.association]; + if (association?.generateInclude) { + includes[index] = { + ...include, + ...association.generateInclude(parentAs), + }; + } + + // Recursively process nested includes if they exist + if (include.include && Array.isArray(include.include) && include.include.length > 0) { + // Get the associated model for the next level + const nextModel = association?.target; + if (!nextModel) { + return; + } + processIncludes(include.include, nextModel, parentAs ? `${parentAs}->${association.as}` : association.as); + } + }); + + return includes; +}; + export class EagerLoadingTree { public root: EagerLoadingNode; db: Database; @@ -252,16 +277,6 @@ export class EagerLoadingTree { throw new Error(`Model ${node.model.name} does not have primary key`); } - includeForFilter.forEach((include: { association: string }, index: number) => { - const association = node.model.associations[include.association]; - if (association?.associationType == 'BelongsToArray') { - includeForFilter[index] = { - ...include, - ...association.generateInclude(), - }; - } - }); - // find all ids const ids = ( await node.model.findAll({ @@ -270,7 +285,7 @@ export class EagerLoadingTree { attributes: [primaryKeyField], group: `${node.model.name}.${primaryKeyField}`, transaction, - include: includeForFilter, + include: processIncludes(includeForFilter, node.model), } as any) ).map((row) => { return { row, pk: row[primaryKeyField] }; diff --git a/packages/core/database/src/query-interface/mysql-query-interface.ts b/packages/core/database/src/query-interface/mysql-query-interface.ts index fff3afa528..62c2c7febd 100644 --- a/packages/core/database/src/query-interface/mysql-query-interface.ts +++ b/packages/core/database/src/query-interface/mysql-query-interface.ts @@ -141,4 +141,8 @@ export default class MysqlQueryInterface extends QueryInterface { await this.db.sequelize.query(sql, { transaction }); } } + + public generateJoinOnForJSONArray(left: string, right: string) { + return this.db.sequelize.literal(`JSON_CONTAINS(${right}, JSON_ARRAY(${left}))`); + } } diff --git a/packages/core/database/src/query-interface/postgres-query-interface.ts b/packages/core/database/src/query-interface/postgres-query-interface.ts index 2d251ddf51..0b38c7c098 100644 --- a/packages/core/database/src/query-interface/postgres-query-interface.ts +++ b/packages/core/database/src/query-interface/postgres-query-interface.ts @@ -232,4 +232,8 @@ $BODY$ return res[0]['show_create_table']; } + + public generateJoinOnForJSONArray(left: string, right: string) { + return this.db.sequelize.literal(`${left}=any(${right})`); + } } diff --git a/packages/core/database/src/query-interface/query-interface.ts b/packages/core/database/src/query-interface/query-interface.ts index c7d484ccb7..9d8ffe349a 100644 --- a/packages/core/database/src/query-interface/query-interface.ts +++ b/packages/core/database/src/query-interface/query-interface.ts @@ -83,4 +83,9 @@ export default abstract class QueryInterface { // @ts-ignore return this.db.sequelize.getQueryInterface().queryGenerator.quoteIdentifier(identifier); } + + public generateJoinOnForJSONArray(left: string, right: string) { + const dialect = this.db.sequelize.getDialect(); + throw new Error(`Filtering by many to many (array) associations is not supported on ${dialect}`); + } } diff --git a/packages/core/database/src/query-interface/sqlite-query-interface.ts b/packages/core/database/src/query-interface/sqlite-query-interface.ts index 2f6b93c877..ec77652c56 100644 --- a/packages/core/database/src/query-interface/sqlite-query-interface.ts +++ b/packages/core/database/src/query-interface/sqlite-query-interface.ts @@ -146,4 +146,8 @@ export default class SqliteQueryInterface extends QueryInterface { WHERE name = '${tableName}';`; await this.db.sequelize.query(sql, { transaction }); } + + public generateJoinOnForJSONArray(left: string, right: string) { + return this.db.sequelize.literal(`${left} in (SELECT value from json_each(${right}))`); + } } diff --git a/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/issues.test.ts b/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/issues.test.ts index 536d72d1a5..94b2f559b3 100644 --- a/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/issues.test.ts +++ b/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/issues.test.ts @@ -324,4 +324,100 @@ describe('issues', () => { } expect(res.status).toBe(200); }); + + test('filtering by fields of a relation collection with m2m array field', async () => { + await db.getRepository('collections').create({ + values: { + name: 'tags', + fields: [ + { + name: 'id', + type: 'bigInt', + autoIncrement: true, + primaryKey: true, + allowNull: false, + }, + { + name: 'title', + type: 'string', + }, + ], + }, + }); + await db.getRepository('collections').create({ + values: { + name: 'users', + fields: [ + { + name: 'id', + type: 'bigInt', + autoIncrement: true, + primaryKey: true, + allowNull: false, + }, + { + name: 'username', + type: 'string', + }, + { + name: 'tags', + type: 'belongsToArray', + foreignKey: 'tag_ids', + target: 'tags', + targetKey: 'id', + }, + ], + }, + }); + await db.getRepository('collections').create({ + values: { + name: 'projects', + fields: [ + { + name: 'id', + type: 'bigInt', + autoIncrement: true, + primaryKey: true, + allowNull: false, + }, + { + name: 'title', + type: 'string', + }, + { + name: 'users', + type: 'belongsTo', + foreignKey: 'user_id', + target: 'users', + }, + ], + }, + }); + // @ts-ignore + await db.getRepository('collections').load(); + await db.sync(); + await db.getRepository('tags').create({ + values: [{ title: 'a' }, { title: 'b' }, { title: 'c' }], + }); + await db.getRepository('users').create({ + values: { id: 1, username: 'a' }, + }); + await db.getRepository('projects').create({ + values: { id: 1, title: 'p1', user_id: 1 }, + }); + await expect( + db.getRepository('projects').findOne({ + appends: ['users', 'users.tags'], + filter: { + $and: [ + { + users: { + username: 'a', + }, + }, + ], + }, + }), + ).resolves.toBeTruthy(); + }); }); diff --git a/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-bigint-api.test.ts b/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-bigint-api.test.ts index e20b709e05..778c196582 100644 --- a/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-bigint-api.test.ts +++ b/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-bigint-api.test.ts @@ -207,15 +207,8 @@ describe('m2m array api, bigInt targetKey', () => { }, }, }); - if (db.sequelize.getDialect() === 'postgres') { - const res = await search; - expect(res.length).toBe(1); - } else { - expect(search).rejects.toThrowError(); - } - if (db.sequelize.getDialect() !== 'postgres') { - return; - } + const res1 = await search; + expect(res1.length).toBe(1); const search2 = db.getRepository('users').find({ filter: { 'tags.title': { @@ -223,12 +216,8 @@ describe('m2m array api, bigInt targetKey', () => { }, }, }); - if (db.sequelize.getDialect() === 'postgres') { - const res = await search2; - expect(res.length).toBe(2); - } else { - expect(search2).rejects.toThrowError(); - } + const res2 = await search2; + expect(res2.length).toBe(2); }); it('should create with belongsToArray', async () => { diff --git a/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-string-api.test.ts b/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-string-api.test.ts index 3d1f1d8265..2c0cf26e4b 100644 --- a/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-string-api.test.ts +++ b/packages/plugins/@nocobase/plugin-field-m2m-array/src/server/__tests__/m2m-array-string-api.test.ts @@ -186,15 +186,8 @@ describe('m2m array api, string targetKey', () => { }, }, }); - if (db.sequelize.getDialect() === 'postgres') { - const res = await search; - expect(res.length).toBe(1); - } else { - expect(search).rejects.toThrowError(); - } - if (db.sequelize.getDialect() !== 'postgres') { - return; - } + const res1 = await search; + expect(res1.length).toBe(1); const search2 = db.getRepository('users').find({ filter: { 'tags.title': { @@ -202,12 +195,8 @@ describe('m2m array api, string targetKey', () => { }, }, }); - if (db.sequelize.getDialect() === 'postgres') { - const res = await search2; - expect(res.length).toBe(2); - } else { - expect(search2).rejects.toThrowError(); - } + const res2 = await search2; + expect(res2.length).toBe(2); }); it('should create with belongsToArray', async () => { From 3558fc3ced64cbdd8aedece062d9a221821ba55d Mon Sep 17 00:00:00 2001 From: Zeke Zhang <958414905@qq.com> Date: Tue, 1 Apr 2025 11:36:37 +0800 Subject: [PATCH 30/69] fix: update mobile layout handling and clean up unused context (#6600) --- .../route-switch/antd/admin-layout/index.tsx | 29 ++++++------------- 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/packages/core/client/src/route-switch/antd/admin-layout/index.tsx b/packages/core/client/src/route-switch/antd/admin-layout/index.tsx index 50870551a9..2375f67677 100644 --- a/packages/core/client/src/route-switch/antd/admin-layout/index.tsx +++ b/packages/core/client/src/route-switch/antd/admin-layout/index.tsx @@ -8,7 +8,7 @@ */ import { EllipsisOutlined } from '@ant-design/icons'; -import ProLayout, { RouteContext, RouteContextType } from '@ant-design/pro-layout'; +import ProLayout, { RouteContext } from '@ant-design/pro-layout'; import { HeaderViewProps } from '@ant-design/pro-layout/es/components/Header'; import { css } from '@emotion/css'; import { theme as antdTheme, ConfigProvider, Popover, Tooltip } from 'antd'; @@ -53,6 +53,7 @@ import { KeepAlive } from './KeepAlive'; import { NocoBaseDesktopRoute, NocoBaseDesktopRouteType } from './convertRoutesToSchema'; import { MenuSchemaToolbar, ResetThemeTokenAndKeepAlgorithm } from './menuItemSettings'; import { userCenterSettings } from './userCenterSettings'; +import { isMobile } from 'react-device-detect'; export { KeepAlive, NocoBaseDesktopRouteType }; @@ -75,7 +76,7 @@ const AllAccessDesktopRoutesContext = createContext<{ refresh: () => void; }>({ allAccessRoutes: emptyArray, - refresh: () => {}, + refresh: () => { }, }); AllAccessDesktopRoutesContext.displayName = 'AllAccessDesktopRoutesContext'; @@ -564,11 +565,11 @@ const IsMobileLayoutContext = React.createContext<{ setIsMobileLayout: React.Dispatch>; }>({ isMobileLayout: false, - setIsMobileLayout: () => {}, + setIsMobileLayout: () => { }, }); const MobileLayoutProvider: FC = (props) => { - const [isMobileLayout, setIsMobileLayout] = useState(false); + const [isMobileLayout, setIsMobileLayout] = useState(isMobile); const value = useMemo(() => ({ isMobileLayout, setIsMobileLayout }), [isMobileLayout]); return {props.children}; @@ -585,7 +586,7 @@ export const InternalAdminLayout = () => { const location = useLocation(); const { onDragEnd } = useMenuDragEnd(); const { token } = useToken(); - const { isMobileLayout, setIsMobileLayout } = useMobileLayout(); + const { isMobileLayout } = useMobileLayout(); const [collapsed, setCollapsed] = useState(isMobileLayout); const doNotChangeCollapsedRef = useRef(false); const { t } = useMenuTranslation(); @@ -680,21 +681,9 @@ export const InternalAdminLayout = () => { onPageChange={onPageChange} menuProps={menuProps} > - - {(value: RouteContextType) => { - const { isMobile: _isMobile } = value; - - if (_isMobile !== isMobileLayout) { - setIsMobileLayout(_isMobile); - } - - return ( - - - - ); - }} - + + + ); From 69fac1120446ac554d4b94bb2f1923b0bdbf527f Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 1 Apr 2025 11:38:15 +0800 Subject: [PATCH 31/69] fix: oneToMa ny e2e test (#6601) --- .../antd/association-field/AssociationSelect.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/client/src/schema-component/antd/association-field/AssociationSelect.tsx b/packages/core/client/src/schema-component/antd/association-field/AssociationSelect.tsx index 7858174d37..ed9969a523 100644 --- a/packages/core/client/src/schema-component/antd/association-field/AssociationSelect.tsx +++ b/packages/core/client/src/schema-component/antd/association-field/AssociationSelect.tsx @@ -33,7 +33,7 @@ import { RemoteSelect, RemoteSelectProps } from '../remote-select'; import useServiceOptions, { useAssociationFieldContext } from './hooks'; const removeIfKeyEmpty = (obj, filterTargetKey) => { - if (!obj || typeof obj !== 'object' || !filterTargetKey) return obj; + if (!obj || typeof obj !== 'object' || !filterTargetKey || Array.isArray(obj)) return obj; return !obj[filterTargetKey] ? null : obj; }; From 4c3255d455bfce66b398da4b413f17a13b2cae89 Mon Sep 17 00:00:00 2001 From: Junyi Date: Tue, 1 Apr 2025 13:25:08 +0800 Subject: [PATCH 32/69] feat(database): add trim option for string field (#6565) * feat(database): add trim option for string field * refactor(database): change to setDataValue instead of hooks * fix(database): fix test case of view collection --- .../src/collection-manager/interfaces/input.ts | 6 ++++++ packages/core/client/src/locale/zh-CN.json | 1 + .../src/__tests__/fields/string-field.test.ts | 14 ++++++++++++++ packages/core/database/src/fields/string-field.ts | 13 ++++++++++++- 4 files changed, 33 insertions(+), 1 deletion(-) diff --git a/packages/core/client/src/collection-manager/interfaces/input.ts b/packages/core/client/src/collection-manager/interfaces/input.ts index ac5897adb7..40d131e5be 100644 --- a/packages/core/client/src/collection-manager/interfaces/input.ts +++ b/packages/core/client/src/collection-manager/interfaces/input.ts @@ -62,6 +62,12 @@ export class InputFieldInterface extends CollectionFieldInterface { hasDefaultValue = true; properties = { ...defaultProps, + trim: { + type: 'boolean', + 'x-content': '{{t("Automatically remove heading and tailing spaces")}}', + 'x-decorator': 'FormItem', + 'x-component': 'Checkbox', + }, layout: { type: 'void', title: '{{t("Index")}}', diff --git a/packages/core/client/src/locale/zh-CN.json b/packages/core/client/src/locale/zh-CN.json index ee7937d066..6c245aecf1 100644 --- a/packages/core/client/src/locale/zh-CN.json +++ b/packages/core/client/src/locale/zh-CN.json @@ -258,6 +258,7 @@ "Parent collection fields": "父表字段", "Basic": "基本类型", "Single line text": "单行文本", + "Automatically remove heading and tailing spaces": "自动去除首尾空白字符", "Long text": "多行文本", "Phone": "手机号码", "Email": "电子邮箱", diff --git a/packages/core/database/src/__tests__/fields/string-field.test.ts b/packages/core/database/src/__tests__/fields/string-field.test.ts index ee4f3e631d..ff095bc862 100644 --- a/packages/core/database/src/__tests__/fields/string-field.test.ts +++ b/packages/core/database/src/__tests__/fields/string-field.test.ts @@ -105,4 +105,18 @@ describe('string field', () => { name2: 'n2111', }); }); + + it('trim', async () => { + const collection = db.collection({ + name: 'tests', + fields: [{ type: 'string', name: 'name', trim: true }], + }); + await db.sync(); + const model = await collection.model.create({ + name: ' n1\n ', + }); + expect(model.toJSON()).toMatchObject({ + name: 'n1', + }); + }); }); diff --git a/packages/core/database/src/fields/string-field.ts b/packages/core/database/src/fields/string-field.ts index 50431f0565..627768beeb 100644 --- a/packages/core/database/src/fields/string-field.ts +++ b/packages/core/database/src/fields/string-field.ts @@ -8,7 +8,7 @@ */ import { DataTypes } from 'sequelize'; -import { BaseColumnFieldOptions, Field } from './field'; +import { BaseColumnFieldOptions, Field, FieldContext } from './field'; export class StringField extends Field { get dataType() { @@ -18,9 +18,20 @@ export class StringField extends Field { return DataTypes.STRING; } + + additionalSequelizeOptions() { + const { name, trim } = this.options; + + return { + set(value) { + this.setDataValue(name, trim ? value?.trim() : value); + }, + }; + } } export interface StringFieldOptions extends BaseColumnFieldOptions { type: 'string'; length?: number; + trim?: boolean; } From 164772afb8daa558c93b4aac53b152ac7cd7270b Mon Sep 17 00:00:00 2001 From: Junyi Date: Tue, 1 Apr 2025 15:10:28 +0800 Subject: [PATCH 33/69] fix(database): fix datetimeNoTz field (#6588) * fix(database): fix datetimeNoTz field * fix(database): fix test case --- .../src/fields/datetime-no-tz-field.ts | 55 ++++++++++--------- .../__tests__/triggers/collection.test.ts | 44 +++++++++++++++ 2 files changed, 72 insertions(+), 27 deletions(-) diff --git a/packages/core/database/src/fields/datetime-no-tz-field.ts b/packages/core/database/src/fields/datetime-no-tz-field.ts index 695ace4813..676ac778a2 100644 --- a/packages/core/database/src/fields/datetime-no-tz-field.ts +++ b/packages/core/database/src/fields/datetime-no-tz-field.ts @@ -29,26 +29,24 @@ export class DatetimeNoTzField extends Field { return DatetimeNoTzTypeMySQL; } - return DataTypes.STRING; + return DataTypes.DATE; } - init() { + beforeSave = async (instance, options) => { const { name, defaultToCurrentTime, onUpdateToCurrentTime } = this.options; - this.beforeSave = async (instance, options) => { - const value = instance.get(name); + const value = instance.get(name); - if (!value && instance.isNewRecord && defaultToCurrentTime) { - instance.set(name, new Date()); - return; - } + if (!value && instance.isNewRecord && defaultToCurrentTime) { + instance.set(name, new Date()); + return; + } - if (onUpdateToCurrentTime) { - instance.set(name, new Date()); - return; - } - }; - } + if (onUpdateToCurrentTime) { + instance.set(name, new Date()); + return; + } + }; additionalSequelizeOptions(): {} { const { name } = this.options; @@ -57,17 +55,14 @@ export class DatetimeNoTzField extends Field { const timezone = this.database.options.rawTimezone || '+00:00'; const isPg = this.database.inDialect('postgres'); + const isMySQLCompatibleDialect = this.database.isMySQLCompatibleDialect(); return { get() { const val = this.getDataValue(name); if (val instanceof Date) { - if (isPg) { - return moment(val).format('YYYY-MM-DD HH:mm:ss'); - } - // format to YYYY-MM-DD HH:mm:ss - const momentVal = moment(val).utcOffset(timezone); + const momentVal = moment(val); return momentVal.format('YYYY-MM-DD HH:mm:ss'); } @@ -75,18 +70,24 @@ export class DatetimeNoTzField extends Field { }, set(val) { - if (typeof val === 'string' && isIso8601(val)) { - const momentVal = moment(val).utcOffset(timezone); - val = momentVal.format('YYYY-MM-DD HH:mm:ss'); + if (val == null) { + return this.setDataValue(name, null); } - if (val && val instanceof Date) { - // format to YYYY-MM-DD HH:mm:ss - const momentVal = moment(val).utcOffset(timezone); - val = momentVal.format('YYYY-MM-DD HH:mm:ss'); + const dateOffset = new Date().getTimezoneOffset(); + const momentVal = moment(val); + if ((typeof val === 'string' && isIso8601(val)) || val instanceof Date) { + momentVal.utcOffset(timezone); + momentVal.utcOffset(-dateOffset, true); } - return this.setDataValue(name, val); + if (isMySQLCompatibleDialect) { + momentVal.millisecond(0); + } + + const date = momentVal.toDate(); + + return this.setDataValue(name, date); }, }; } diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/__tests__/triggers/collection.test.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/__tests__/triggers/collection.test.ts index f67b7a84e4..cff13e5d64 100644 --- a/packages/plugins/@nocobase/plugin-workflow/src/server/__tests__/triggers/collection.test.ts +++ b/packages/plugins/@nocobase/plugin-workflow/src/server/__tests__/triggers/collection.test.ts @@ -359,6 +359,50 @@ describe('workflow > triggers > collection', () => { const executions = await workflow.getExecutions(); expect(executions.length).toBe(1); }); + + it('datetime field not changed', async () => { + const workflow = await WorkflowModel.create({ + enabled: true, + sync: true, + type: 'collection', + config: { + mode: 2, + collection: 'posts', + changed: ['createdAt'], + }, + }); + + const post = await PostRepo.create({ values: { title: 't1' } }); + await PostRepo.update({ filterByTk: post.id, values: { ...post.get(), title: 't2' } }); + + const executions = await workflow.getExecutions(); + expect(executions.length).toBe(0); + }); + + it('datetimeNoTz field not changed', async () => { + db.getCollection('posts').addField('dateOnly', { + type: 'datetimeNoTz', + }); + + await db.sync(); + + const workflow = await WorkflowModel.create({ + enabled: true, + sync: true, + type: 'collection', + config: { + mode: 2, + collection: 'posts', + changed: ['dateOnly'], + }, + }); + + const post = await PostRepo.create({ values: { title: 't1', dateOnly: '2020-01-01 00:00:00' } }); + await PostRepo.update({ filterByTk: post.id, values: { ...post.get(), title: 't2' } }); + + const executions = await workflow.getExecutions(); + expect(executions.length).toBe(0); + }); }); describe('config.condition', () => { From 520ffa3e3ebb9850e22177b77a365831546559d2 Mon Sep 17 00:00:00 2001 From: Junyi Date: Tue, 1 Apr 2025 15:14:23 +0800 Subject: [PATCH 34/69] fix(client): support disabled props for SchemaInitializerItem when has items (#6597) * fix(client): support disabled props for SchemaInitializerItem when has items * refactor(client): use default menu props for disabled --- .../schema-initializer/components/SchemaInitializerItem.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/core/client/src/application/schema-initializer/components/SchemaInitializerItem.tsx b/packages/core/client/src/application/schema-initializer/components/SchemaInitializerItem.tsx index 436fc54f37..dfdedad636 100644 --- a/packages/core/client/src/application/schema-initializer/components/SchemaInitializerItem.tsx +++ b/packages/core/client/src/application/schema-initializer/components/SchemaInitializerItem.tsx @@ -63,7 +63,7 @@ export const SchemaInitializerItem = memo( className: className, label: children || compile(title), onClick: (info) => { - if (info.key !== name) return; + if (disabled || info.key !== name) return; if (closeInitializerMenuWhenClick) { setVisible?.(false); } @@ -73,10 +73,10 @@ export const SchemaInitializerItem = memo( children: childrenItems, }, ]; - }, [name, style, className, children, title, onClick, icon, childrenItems]); + }, [name, disabled, style, className, children, title, onClick, icon, childrenItems]); if (items && items.length > 0) { - return ; + return ; } return (
Date: Tue, 1 Apr 2025 15:18:43 +0800 Subject: [PATCH 35/69] fix: approval e2e POM --- .../plugin-workflow-test/src/e2e/e2ePageObjectModel.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts b/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts index 3d22612206..b63081723e 100644 --- a/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts +++ b/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts @@ -260,7 +260,7 @@ export class ApprovalBranchModeNode { this.detailsConfigureFieldsButton = page.getByLabel( `schema-initializer-Grid-details:configureFields-${collectionName}`, ); - this.addActionsMenu = page.getByRole('menuitem', { name: 'Process form' }).getByRole('switch'); + this.addActionsMenu = page.getByRole('menuitem', { name: 'Process form' }); this.actionsConfigureFieldsButton = page.getByLabel('schema-initializer-Grid-FormItemInitializers-approvalRecords'); this.actionsConfigureActionsButton = page.getByLabel('schema-initializer-ActionBar-'); this.addApproveButton = page.getByRole('menuitem', { name: 'Approve' }).getByRole('switch'); From e6a3cbf613192c97253fd7869c06024233ac4ec0 Mon Sep 17 00:00:00 2001 From: hongboji Date: Tue, 1 Apr 2025 17:38:46 +0800 Subject: [PATCH 36/69] fix: approval e2e POM --- .../plugin-workflow-test/src/e2e/e2ePageObjectModel.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts b/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts index b63081723e..38f2049fa1 100644 --- a/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts +++ b/packages/plugins/@nocobase/plugin-workflow-test/src/e2e/e2ePageObjectModel.ts @@ -187,7 +187,7 @@ export class ApprovalPassthroughModeNode { this.detailsConfigureFieldsButton = page.getByLabel( `schema-initializer-Grid-details:configureFields-${collectionName}`, ); - this.addActionsMenu = page.getByRole('menuitem', { name: 'Process form' }).getByRole('switch'); + this.addActionsMenu = page.getByRole('menuitem', { name: 'Process form' }); this.actionsConfigureFieldsButton = page.getByLabel('schema-initializer-Grid-FormItemInitializers-approvalRecords'); this.actionsConfigureActionsButton = page.getByLabel( 'schema-initializer-ActionBar-ApprovalProcessAddActionButton-', From 54817e14539d6a94f1d306cfe27b1e893fcfc8bc Mon Sep 17 00:00:00 2001 From: Junyi Date: Tue, 1 Apr 2025 17:47:12 +0800 Subject: [PATCH 37/69] feat(database): add trim option for text field (#6603) --- .../src/collection-manager/interfaces/textarea.ts | 6 ++++++ .../src/__tests__/fields/text-field.test.ts | 14 ++++++++++++++ packages/core/database/src/fields/text-field.ts | 11 +++++++++++ 3 files changed, 31 insertions(+) diff --git a/packages/core/client/src/collection-manager/interfaces/textarea.ts b/packages/core/client/src/collection-manager/interfaces/textarea.ts index 2ccebbdeb6..19f48bc4c1 100644 --- a/packages/core/client/src/collection-manager/interfaces/textarea.ts +++ b/packages/core/client/src/collection-manager/interfaces/textarea.ts @@ -31,6 +31,12 @@ export class TextareaFieldInterface extends CollectionFieldInterface { titleUsable = true; properties = { ...defaultProps, + trim: { + type: 'boolean', + 'x-content': '{{t("Automatically remove heading and tailing spaces")}}', + 'x-decorator': 'FormItem', + 'x-component': 'Checkbox', + }, }; schemaInitialize(schema: ISchema, { block }) { if (['Table', 'Kanban'].includes(block)) { diff --git a/packages/core/database/src/__tests__/fields/text-field.test.ts b/packages/core/database/src/__tests__/fields/text-field.test.ts index b9c19e69f1..762269cb7f 100644 --- a/packages/core/database/src/__tests__/fields/text-field.test.ts +++ b/packages/core/database/src/__tests__/fields/text-field.test.ts @@ -52,4 +52,18 @@ describe('text field', () => { }); await Test.sync(); }); + + it('trim', async () => { + const collection = db.collection({ + name: 'tests', + fields: [{ type: 'text', name: 'name', trim: true }], + }); + await db.sync(); + const model = await collection.model.create({ + name: ' n1\n ', + }); + expect(model.toJSON()).toMatchObject({ + name: 'n1', + }); + }); }); diff --git a/packages/core/database/src/fields/text-field.ts b/packages/core/database/src/fields/text-field.ts index 74ca88da9b..39f1ef4670 100644 --- a/packages/core/database/src/fields/text-field.ts +++ b/packages/core/database/src/fields/text-field.ts @@ -23,9 +23,20 @@ export class TextField extends Field { this.options.defaultValue = null; } } + + additionalSequelizeOptions() { + const { name, trim } = this.options; + + return { + set(value) { + this.setDataValue(name, trim ? value?.trim() : value); + }, + }; + } } export interface TextFieldOptions extends BaseColumnFieldOptions { type: 'text'; length?: 'tiny' | 'medium' | 'long'; + trim?: boolean; } From b04d4a82d9951ba1236c178d57360470cc7cd765 Mon Sep 17 00:00:00 2001 From: Junyi Date: Tue, 1 Apr 2025 17:48:41 +0800 Subject: [PATCH 38/69] refactor(file-manager-storage): add trim option for text fields (#6604) --- .../plugin-file-manager/src/server/collections/storages.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/plugins/@nocobase/plugin-file-manager/src/server/collections/storages.ts b/packages/plugins/@nocobase/plugin-file-manager/src/server/collections/storages.ts index bf66f7624a..20e248f469 100644 --- a/packages/plugins/@nocobase/plugin-file-manager/src/server/collections/storages.ts +++ b/packages/plugins/@nocobase/plugin-file-manager/src/server/collections/storages.ts @@ -21,6 +21,7 @@ export default defineCollection({ type: 'string', name: 'title', translation: true, + trim: true, }, { title: '英文标识', @@ -28,6 +29,7 @@ export default defineCollection({ type: 'uid', name: 'name', unique: true, + trim: true, }, { comment: '类型标识,如 local/ali-oss 等', @@ -51,12 +53,14 @@ export default defineCollection({ type: 'text', name: 'path', defaultValue: '', + trim: true, }, { comment: '访问地址前缀', type: 'string', name: 'baseUrl', defaultValue: '', + trim: true, }, // TODO(feature): 需要使用一个实现了可设置默认值的字段 { From bc158ac66cea6824f2af57a189b12769ddbcb95d Mon Sep 17 00:00:00 2001 From: chenos Date: Tue, 1 Apr 2025 19:55:25 +0800 Subject: [PATCH 39/69] fix: view permissions include list and get (#6607) --- .../plugins/@nocobase/plugin-public-forms/src/server/plugin.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/plugins/@nocobase/plugin-public-forms/src/server/plugin.ts b/packages/plugins/@nocobase/plugin-public-forms/src/server/plugin.ts index f3c45f4487..7a8c4ae98b 100644 --- a/packages/plugins/@nocobase/plugin-public-forms/src/server/plugin.ts +++ b/packages/plugins/@nocobase/plugin-public-forms/src/server/plugin.ts @@ -171,7 +171,7 @@ export class PluginPublicFormsServer extends Plugin { skip: true, }; } else if ( - (actionName === 'list' && ctx.PublicForm['targetCollections'].includes(resourceName)) || + (['list', 'get'].includes(actionName) && ctx.PublicForm['targetCollections'].includes(resourceName)) || (collection.options.template === 'file' && actionName === 'create') || (resourceName === 'storages' && actionName === 'getBasicInfo') || (resourceName === 'map-configuration' && actionName === 'get') From 71a55d6f10dab92745dfb04290b611134aea43ec Mon Sep 17 00:00:00 2001 From: "nocobase[bot]" <179432756+nocobase[bot]@users.noreply.github.com> Date: Tue, 1 Apr 2025 12:59:02 +0000 Subject: [PATCH 40/69] =?UTF-8?q?chore(versions):=20=F0=9F=98=8A=20publish?= =?UTF-8?q?=20v1.6.15?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lerna.json | 2 +- packages/core/acl/package.json | 6 +- packages/core/actions/package.json | 8 +- packages/core/app/package.json | 10 +- packages/core/auth/package.json | 12 +- packages/core/build/package.json | 2 +- packages/core/cache/package.json | 2 +- packages/core/cli/package.json | 6 +- packages/core/client/package.json | 8 +- .../core/create-nocobase-app/package.json | 2 +- .../core/data-source-manager/package.json | 12 +- packages/core/database/package.json | 6 +- packages/core/devtools/package.json | 8 +- packages/core/evaluators/package.json | 4 +- packages/core/lock-manager/package.json | 4 +- packages/core/logger/package.json | 2 +- packages/core/resourcer/package.json | 4 +- packages/core/sdk/package.json | 2 +- packages/core/server/package.json | 28 ++-- packages/core/telemetry/package.json | 4 +- packages/core/test/package.json | 4 +- packages/core/utils/package.json | 2 +- .../plugins/@nocobase/plugin-acl/package.json | 2 +- .../plugin-action-bulk-edit/package.json | 2 +- .../plugin-action-bulk-update/package.json | 2 +- .../plugin-action-custom-request/package.json | 2 +- .../plugin-action-duplicate/package.json | 2 +- .../plugin-action-export/package.json | 2 +- .../plugin-action-import/package.json | 2 +- .../plugin-action-print/package.json | 2 +- .../plugins/@nocobase/plugin-ai/package.json | 2 +- .../@nocobase/plugin-api-doc/package.json | 2 +- .../@nocobase/plugin-api-keys/package.json | 2 +- .../plugin-async-task-manager/package.json | 2 +- .../@nocobase/plugin-audit-logs/package.json | 2 +- .../@nocobase/plugin-auth-sms/package.json | 2 +- .../@nocobase/plugin-auth/package.json | 2 +- .../plugin-backup-restore/package.json | 2 +- .../plugin-block-iframe/package.json | 2 +- .../plugin-block-workbench/package.json | 2 +- .../@nocobase/plugin-calendar/package.json | 2 +- .../@nocobase/plugin-charts/package.json | 2 +- .../@nocobase/plugin-client/package.json | 2 +- .../plugin-collection-sql/package.json | 2 +- .../plugin-collection-tree/package.json | 2 +- .../plugin-data-source-main/package.json | 2 +- .../plugin-data-source-manager/package.json | 2 +- .../plugin-data-visualization/package.json | 2 +- .../plugin-disable-pm-add/package.json | 2 +- .../plugin-environment-variables/package.json | 2 +- .../plugin-error-handler/package.json | 2 +- .../plugin-field-china-region/package.json | 2 +- .../plugin-field-formula/package.json | 2 +- .../plugin-field-m2m-array/package.json | 2 +- .../plugin-field-markdown-vditor/package.json | 2 +- .../plugin-field-sequence/package.json | 2 +- .../@nocobase/plugin-field-sort/package.json | 2 +- .../plugin-file-manager/package.json | 2 +- .../@nocobase/plugin-gantt/package.json | 2 +- .../package.json | 2 +- .../@nocobase/plugin-kanban/package.json | 2 +- .../plugin-locale-tester/package.json | 2 +- .../plugin-localization/package.json | 2 +- .../@nocobase/plugin-logger/package.json | 2 +- .../plugins/@nocobase/plugin-map/package.json | 2 +- .../plugin-mobile-client/package.json | 2 +- .../@nocobase/plugin-mobile/package.json | 2 +- .../plugin-mock-collections/package.json | 2 +- .../plugin-multi-app-manager/package.json | 2 +- .../package.json | 2 +- .../plugin-notification-email/package.json | 2 +- .../package.json | 2 +- .../plugin-notification-manager/package.json | 2 +- .../plugin-notifications/package.json | 2 +- .../plugin-public-forms/package.json | 2 +- .../plugin-sample-hello/package.json | 2 +- .../plugin-snapshot-field/package.json | 2 +- .../plugin-system-settings/package.json | 2 +- .../plugin-theme-editor/package.json | 2 +- .../plugin-ui-schema-storage/package.json | 2 +- .../plugin-user-data-sync/package.json | 2 +- .../@nocobase/plugin-users/package.json | 2 +- .../plugin-verification/package.json | 2 +- .../package.json | 2 +- .../plugin-workflow-aggregate/package.json | 2 +- .../plugin-workflow-delay/package.json | 2 +- .../package.json | 2 +- .../plugin-workflow-loop/package.json | 2 +- .../plugin-workflow-mailer/package.json | 2 +- .../plugin-workflow-manual/package.json | 2 +- .../plugin-workflow-notification/package.json | 2 +- .../plugin-workflow-parallel/package.json | 2 +- .../plugin-workflow-request/package.json | 2 +- .../plugin-workflow-sql/package.json | 2 +- .../plugin-workflow-test/package.json | 2 +- .../@nocobase/plugin-workflow/package.json | 4 +- packages/presets/nocobase/package.json | 144 +++++++++--------- 97 files changed, 216 insertions(+), 216 deletions(-) diff --git a/lerna.json b/lerna.json index a3c13f5272..9d8c553795 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.6.14", + "version": "1.6.15", "npmClient": "yarn", "useWorkspaces": true, "npmClientArgs": ["--ignore-engines"], diff --git a/packages/core/acl/package.json b/packages/core/acl/package.json index a0223862a4..16525fdf8a 100644 --- a/packages/core/acl/package.json +++ b/packages/core/acl/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/acl", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/resourcer": "1.6.14", - "@nocobase/utils": "1.6.14", + "@nocobase/resourcer": "1.6.15", + "@nocobase/utils": "1.6.15", "minimatch": "^5.1.1" }, "repository": { diff --git a/packages/core/actions/package.json b/packages/core/actions/package.json index b5512afbfe..a4ce2c8395 100644 --- a/packages/core/actions/package.json +++ b/packages/core/actions/package.json @@ -1,14 +1,14 @@ { "name": "@nocobase/actions", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/cache": "1.6.14", - "@nocobase/database": "1.6.14", - "@nocobase/resourcer": "1.6.14" + "@nocobase/cache": "1.6.15", + "@nocobase/database": "1.6.15", + "@nocobase/resourcer": "1.6.15" }, "repository": { "type": "git", diff --git a/packages/core/app/package.json b/packages/core/app/package.json index eb7489a1b2..5ee5f3f0de 100644 --- a/packages/core/app/package.json +++ b/packages/core/app/package.json @@ -1,17 +1,17 @@ { "name": "@nocobase/app", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/database": "1.6.14", - "@nocobase/preset-nocobase": "1.6.14", - "@nocobase/server": "1.6.14" + "@nocobase/database": "1.6.15", + "@nocobase/preset-nocobase": "1.6.15", + "@nocobase/server": "1.6.15" }, "devDependencies": { - "@nocobase/client": "1.6.14" + "@nocobase/client": "1.6.15" }, "repository": { "type": "git", diff --git a/packages/core/auth/package.json b/packages/core/auth/package.json index f4eda89c90..fda7c51804 100644 --- a/packages/core/auth/package.json +++ b/packages/core/auth/package.json @@ -1,16 +1,16 @@ { "name": "@nocobase/auth", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/actions": "1.6.14", - "@nocobase/cache": "1.6.14", - "@nocobase/database": "1.6.14", - "@nocobase/resourcer": "1.6.14", - "@nocobase/utils": "1.6.14", + "@nocobase/actions": "1.6.15", + "@nocobase/cache": "1.6.15", + "@nocobase/database": "1.6.15", + "@nocobase/resourcer": "1.6.15", + "@nocobase/utils": "1.6.15", "@types/jsonwebtoken": "^8.5.8", "jsonwebtoken": "^8.5.1" }, diff --git a/packages/core/build/package.json b/packages/core/build/package.json index 4c56127653..d27dda8b4f 100644 --- a/packages/core/build/package.json +++ b/packages/core/build/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/build", - "version": "1.6.14", + "version": "1.6.15", "description": "Library build tool based on rollup.", "main": "lib/index.js", "types": "./lib/index.d.ts", diff --git a/packages/core/cache/package.json b/packages/core/cache/package.json index 1e1943c419..21f1a25a5f 100644 --- a/packages/core/cache/package.json +++ b/packages/core/cache/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/cache", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", diff --git a/packages/core/cli/package.json b/packages/core/cli/package.json index 5141ce2a5d..311940ff89 100644 --- a/packages/core/cli/package.json +++ b/packages/core/cli/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/cli", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./src/index.js", @@ -8,7 +8,7 @@ "nocobase": "./bin/index.js" }, "dependencies": { - "@nocobase/app": "1.6.14", + "@nocobase/app": "1.6.15", "@types/fs-extra": "^11.0.1", "@umijs/utils": "3.5.20", "chalk": "^4.1.1", @@ -25,7 +25,7 @@ "tsx": "^4.19.0" }, "devDependencies": { - "@nocobase/devtools": "1.6.14" + "@nocobase/devtools": "1.6.15" }, "repository": { "type": "git", diff --git a/packages/core/client/package.json b/packages/core/client/package.json index 00bd6d08b9..2f1009a5c3 100644 --- a/packages/core/client/package.json +++ b/packages/core/client/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/client", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "lib/index.js", "module": "es/index.mjs", @@ -27,9 +27,9 @@ "@formily/reactive-react": "^2.2.27", "@formily/shared": "^2.2.27", "@formily/validator": "^2.2.27", - "@nocobase/evaluators": "1.6.14", - "@nocobase/sdk": "1.6.14", - "@nocobase/utils": "1.6.14", + "@nocobase/evaluators": "1.6.15", + "@nocobase/sdk": "1.6.15", + "@nocobase/utils": "1.6.15", "ahooks": "^3.7.2", "antd": "5.12.8", "antd-style": "3.7.1", diff --git a/packages/core/create-nocobase-app/package.json b/packages/core/create-nocobase-app/package.json index e919aae14b..5039041e06 100755 --- a/packages/core/create-nocobase-app/package.json +++ b/packages/core/create-nocobase-app/package.json @@ -1,6 +1,6 @@ { "name": "create-nocobase-app", - "version": "1.6.14", + "version": "1.6.15", "main": "src/index.js", "license": "AGPL-3.0", "dependencies": { diff --git a/packages/core/data-source-manager/package.json b/packages/core/data-source-manager/package.json index 8b7862cfa3..442972b8eb 100644 --- a/packages/core/data-source-manager/package.json +++ b/packages/core/data-source-manager/package.json @@ -1,16 +1,16 @@ { "name": "@nocobase/data-source-manager", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/actions": "1.6.14", - "@nocobase/cache": "1.6.14", - "@nocobase/database": "1.6.14", - "@nocobase/resourcer": "1.6.14", - "@nocobase/utils": "1.6.14", + "@nocobase/actions": "1.6.15", + "@nocobase/cache": "1.6.15", + "@nocobase/database": "1.6.15", + "@nocobase/resourcer": "1.6.15", + "@nocobase/utils": "1.6.15", "@types/jsonwebtoken": "^8.5.8", "jsonwebtoken": "^8.5.1" }, diff --git a/packages/core/database/package.json b/packages/core/database/package.json index 2d3c473422..edf5136979 100644 --- a/packages/core/database/package.json +++ b/packages/core/database/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/database", - "version": "1.6.14", + "version": "1.6.15", "description": "", "main": "./lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", "dependencies": { - "@nocobase/logger": "1.6.14", - "@nocobase/utils": "1.6.14", + "@nocobase/logger": "1.6.15", + "@nocobase/utils": "1.6.15", "async-mutex": "^0.3.2", "chalk": "^4.1.1", "cron-parser": "4.4.0", diff --git a/packages/core/devtools/package.json b/packages/core/devtools/package.json index 1835960d8b..1487ffa616 100644 --- a/packages/core/devtools/package.json +++ b/packages/core/devtools/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/devtools", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./src/index.js", "dependencies": { - "@nocobase/build": "1.6.14", - "@nocobase/client": "1.6.14", - "@nocobase/test": "1.6.14", + "@nocobase/build": "1.6.15", + "@nocobase/client": "1.6.15", + "@nocobase/test": "1.6.15", "@types/koa": "^2.15.0", "@types/koa-bodyparser": "^4.3.4", "@types/lodash": "^4.14.177", diff --git a/packages/core/evaluators/package.json b/packages/core/evaluators/package.json index a4dec19c75..f512c1521b 100644 --- a/packages/core/evaluators/package.json +++ b/packages/core/evaluators/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/evaluators", - "version": "1.6.14", + "version": "1.6.15", "description": "", "main": "./lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", "dependencies": { "@formulajs/formulajs": "4.4.9", - "@nocobase/utils": "1.6.14", + "@nocobase/utils": "1.6.15", "mathjs": "^10.6.0" }, "repository": { diff --git a/packages/core/lock-manager/package.json b/packages/core/lock-manager/package.json index 1e98ce1627..f26bd58495 100644 --- a/packages/core/lock-manager/package.json +++ b/packages/core/lock-manager/package.json @@ -1,10 +1,10 @@ { "name": "@nocobase/lock-manager", - "version": "1.6.14", + "version": "1.6.15", "main": "lib/index.js", "license": "AGPL-3.0", "devDependencies": { - "@nocobase/utils": "1.6.14", + "@nocobase/utils": "1.6.15", "async-mutex": "^0.5.0" } } diff --git a/packages/core/logger/package.json b/packages/core/logger/package.json index 4f0b424b5d..0d334774d5 100644 --- a/packages/core/logger/package.json +++ b/packages/core/logger/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/logger", - "version": "1.6.14", + "version": "1.6.15", "description": "nocobase logging library", "license": "AGPL-3.0", "main": "./lib/index.js", diff --git a/packages/core/resourcer/package.json b/packages/core/resourcer/package.json index ee3c592b3b..aef6d0748c 100644 --- a/packages/core/resourcer/package.json +++ b/packages/core/resourcer/package.json @@ -1,12 +1,12 @@ { "name": "@nocobase/resourcer", - "version": "1.6.14", + "version": "1.6.15", "description": "", "main": "./lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", "dependencies": { - "@nocobase/utils": "1.6.14", + "@nocobase/utils": "1.6.15", "deepmerge": "^4.2.2", "koa-compose": "^4.1.0", "lodash": "^4.17.21", diff --git a/packages/core/sdk/package.json b/packages/core/sdk/package.json index 8fbe6a36d8..108654c681 100644 --- a/packages/core/sdk/package.json +++ b/packages/core/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/sdk", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/packages/core/server/package.json b/packages/core/server/package.json index fccafbd79d..4bd5e41cf9 100644 --- a/packages/core/server/package.json +++ b/packages/core/server/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/server", - "version": "1.6.14", + "version": "1.6.15", "main": "lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", @@ -10,19 +10,19 @@ "@koa/cors": "^5.0.0", "@koa/multer": "^3.0.2", "@koa/router": "^9.4.0", - "@nocobase/acl": "1.6.14", - "@nocobase/actions": "1.6.14", - "@nocobase/auth": "1.6.14", - "@nocobase/cache": "1.6.14", - "@nocobase/data-source-manager": "1.6.14", - "@nocobase/database": "1.6.14", - "@nocobase/evaluators": "1.6.14", - "@nocobase/lock-manager": "1.6.14", - "@nocobase/logger": "1.6.14", - "@nocobase/resourcer": "1.6.14", - "@nocobase/sdk": "1.6.14", - "@nocobase/telemetry": "1.6.14", - "@nocobase/utils": "1.6.14", + "@nocobase/acl": "1.6.15", + "@nocobase/actions": "1.6.15", + "@nocobase/auth": "1.6.15", + "@nocobase/cache": "1.6.15", + "@nocobase/data-source-manager": "1.6.15", + "@nocobase/database": "1.6.15", + "@nocobase/evaluators": "1.6.15", + "@nocobase/lock-manager": "1.6.15", + "@nocobase/logger": "1.6.15", + "@nocobase/resourcer": "1.6.15", + "@nocobase/sdk": "1.6.15", + "@nocobase/telemetry": "1.6.15", + "@nocobase/utils": "1.6.15", "@types/decompress": "4.2.7", "@types/ini": "^1.3.31", "@types/koa-send": "^4.1.3", diff --git a/packages/core/telemetry/package.json b/packages/core/telemetry/package.json index 42da5455c9..ed57d78b99 100644 --- a/packages/core/telemetry/package.json +++ b/packages/core/telemetry/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/telemetry", - "version": "1.6.14", + "version": "1.6.15", "description": "nocobase telemetry library", "license": "AGPL-3.0", "main": "./lib/index.js", @@ -11,7 +11,7 @@ "directory": "packages/telemetry" }, "dependencies": { - "@nocobase/utils": "1.6.14", + "@nocobase/utils": "1.6.15", "@opentelemetry/api": "^1.7.0", "@opentelemetry/instrumentation": "^0.46.0", "@opentelemetry/resources": "^1.19.0", diff --git a/packages/core/test/package.json b/packages/core/test/package.json index 4f6dc8c01c..318bc75f85 100644 --- a/packages/core/test/package.json +++ b/packages/core/test/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/test", - "version": "1.6.14", + "version": "1.6.15", "main": "lib/index.js", "module": "./src/index.ts", "types": "./lib/index.d.ts", @@ -51,7 +51,7 @@ }, "dependencies": { "@faker-js/faker": "8.1.0", - "@nocobase/server": "1.6.14", + "@nocobase/server": "1.6.15", "@playwright/test": "^1.45.3", "@testing-library/jest-dom": "^6.4.2", "@testing-library/react": "^14.0.0", diff --git a/packages/core/utils/package.json b/packages/core/utils/package.json index 0b48628e10..4e2456b686 100644 --- a/packages/core/utils/package.json +++ b/packages/core/utils/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/utils", - "version": "1.6.14", + "version": "1.6.15", "main": "lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", diff --git a/packages/plugins/@nocobase/plugin-acl/package.json b/packages/plugins/@nocobase/plugin-acl/package.json index aff75723e1..c04fc6b93c 100644 --- a/packages/plugins/@nocobase/plugin-acl/package.json +++ b/packages/plugins/@nocobase/plugin-acl/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "权限控制", "description": "Based on roles, resources, and actions, access control can precisely manage interface configuration permissions, data operation permissions, menu access permissions, and plugin permissions.", "description.zh-CN": "基于角色、资源和操作的权限控制,可以精确控制界面配置权限、数据操作权限、菜单访问权限、插件权限。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/acl", diff --git a/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json b/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json index 22a24adff3..551211b464 100644 --- a/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json +++ b/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-bulk-edit", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-bulk-edit", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-edit", diff --git a/packages/plugins/@nocobase/plugin-action-bulk-update/package.json b/packages/plugins/@nocobase/plugin-action-bulk-update/package.json index 5043534e77..cee6e5f765 100644 --- a/packages/plugins/@nocobase/plugin-action-bulk-update/package.json +++ b/packages/plugins/@nocobase/plugin-action-bulk-update/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-bulk-update", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-bulk-update", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-update", diff --git a/packages/plugins/@nocobase/plugin-action-custom-request/package.json b/packages/plugins/@nocobase/plugin-action-custom-request/package.json index 7b50044b14..4d9fa1a35e 100644 --- a/packages/plugins/@nocobase/plugin-action-custom-request/package.json +++ b/packages/plugins/@nocobase/plugin-action-custom-request/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-custom-request", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-custom-request", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-custom-request", diff --git a/packages/plugins/@nocobase/plugin-action-duplicate/package.json b/packages/plugins/@nocobase/plugin-action-duplicate/package.json index 1a4faef750..351855fa4e 100644 --- a/packages/plugins/@nocobase/plugin-action-duplicate/package.json +++ b/packages/plugins/@nocobase/plugin-action-duplicate/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-duplicate", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-duplicate", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-duplicate", diff --git a/packages/plugins/@nocobase/plugin-action-export/package.json b/packages/plugins/@nocobase/plugin-action-export/package.json index 2f0a6c128d..d06dd19bdc 100644 --- a/packages/plugins/@nocobase/plugin-action-export/package.json +++ b/packages/plugins/@nocobase/plugin-action-export/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "操作:导出记录", "description": "Export filtered records to excel, you can configure which fields to export.", "description.zh-CN": "导出筛选后的记录到 Excel 中,可以配置导出哪些字段。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-export", diff --git a/packages/plugins/@nocobase/plugin-action-import/package.json b/packages/plugins/@nocobase/plugin-action-import/package.json index d940335e31..f16bc25d01 100644 --- a/packages/plugins/@nocobase/plugin-action-import/package.json +++ b/packages/plugins/@nocobase/plugin-action-import/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "操作:导入记录", "description": "Import records using excel templates. You can configure which fields to import and templates will be generated automatically.", "description.zh-CN": "使用 Excel 模板导入数据,可以配置导入哪些字段,自动生成模板。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-import", diff --git a/packages/plugins/@nocobase/plugin-action-print/package.json b/packages/plugins/@nocobase/plugin-action-print/package.json index bc80859d22..b8914eb6da 100644 --- a/packages/plugins/@nocobase/plugin-action-print/package.json +++ b/packages/plugins/@nocobase/plugin-action-print/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-print", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-print", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-print", diff --git a/packages/plugins/@nocobase/plugin-ai/package.json b/packages/plugins/@nocobase/plugin-ai/package.json index 9d4a517a36..5d9695157f 100644 --- a/packages/plugins/@nocobase/plugin-ai/package.json +++ b/packages/plugins/@nocobase/plugin-ai/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "AI 集成", "description": "Support integration with AI services, providing AI-related workflow nodes to enhance business processing capabilities.", "description.zh-CN": "支持接入 AI 服务,提供 AI 相关的工作流节点,增强业务处理能力。", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-api-doc/package.json b/packages/plugins/@nocobase/plugin-api-doc/package.json index 7c687fc023..87e713d798 100644 --- a/packages/plugins/@nocobase/plugin-api-doc/package.json +++ b/packages/plugins/@nocobase/plugin-api-doc/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-api-doc", - "version": "1.6.14", + "version": "1.6.15", "displayName": "API documentation", "displayName.zh-CN": "API 文档", "description": "An OpenAPI documentation generator for NocoBase HTTP API.", diff --git a/packages/plugins/@nocobase/plugin-api-keys/package.json b/packages/plugins/@nocobase/plugin-api-keys/package.json index f96b05c1e9..4be16532c7 100644 --- a/packages/plugins/@nocobase/plugin-api-keys/package.json +++ b/packages/plugins/@nocobase/plugin-api-keys/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "认证:API 密钥", "description": "Allows users to use API key to access application's HTTP API", "description.zh-CN": "允许用户使用 API 密钥访问应用的 HTTP API", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/api-keys", diff --git a/packages/plugins/@nocobase/plugin-async-task-manager/package.json b/packages/plugins/@nocobase/plugin-async-task-manager/package.json index d450370eb8..37a5d1e50a 100644 --- a/packages/plugins/@nocobase/plugin-async-task-manager/package.json +++ b/packages/plugins/@nocobase/plugin-async-task-manager/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "异步任务管理器", "description": "Manage and monitor asynchronous tasks such as data import/export. Support task progress tracking and notification.", "description.zh-CN": "管理和监控数据导入导出等异步任务。支持任务进度跟踪和通知。", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-audit-logs/package.json b/packages/plugins/@nocobase/plugin-audit-logs/package.json index f1b6fd3193..3363e77735 100644 --- a/packages/plugins/@nocobase/plugin-audit-logs/package.json +++ b/packages/plugins/@nocobase/plugin-audit-logs/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-audit-logs", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Audit logs (deprecated)", "displayName.zh-CN": "审计日志(废弃)", "description": "This plugin is deprecated. There will be a new audit log plugin in the future.", diff --git a/packages/plugins/@nocobase/plugin-auth-sms/package.json b/packages/plugins/@nocobase/plugin-auth-sms/package.json index b32130b8ee..8dd380f388 100644 --- a/packages/plugins/@nocobase/plugin-auth-sms/package.json +++ b/packages/plugins/@nocobase/plugin-auth-sms/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "认证:短信", "description": "SMS authentication.", "description.zh-CN": "通过短信验证码认证身份。", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/auth-sms", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth-sms", diff --git a/packages/plugins/@nocobase/plugin-auth/package.json b/packages/plugins/@nocobase/plugin-auth/package.json index c134a5ed32..5b327707d0 100644 --- a/packages/plugins/@nocobase/plugin-auth/package.json +++ b/packages/plugins/@nocobase/plugin-auth/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-auth", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/auth", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth", diff --git a/packages/plugins/@nocobase/plugin-backup-restore/package.json b/packages/plugins/@nocobase/plugin-backup-restore/package.json index e4e3573abd..c628d822d2 100644 --- a/packages/plugins/@nocobase/plugin-backup-restore/package.json +++ b/packages/plugins/@nocobase/plugin-backup-restore/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "应用的备份与还原(废弃)", "description": "Backup and restore applications for scenarios such as application replication, migration, and upgrades.", "description.zh-CN": "备份和还原应用,可用于应用的复制、迁移、升级等场景。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/backup-restore", diff --git a/packages/plugins/@nocobase/plugin-block-iframe/package.json b/packages/plugins/@nocobase/plugin-block-iframe/package.json index 1bb560c17c..bc8a343c20 100644 --- a/packages/plugins/@nocobase/plugin-block-iframe/package.json +++ b/packages/plugins/@nocobase/plugin-block-iframe/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "区块:iframe", "description": "Create an iframe block on the page to embed and display external web pages or content.", "description.zh-CN": "在页面上创建和管理iframe,用于嵌入和展示外部网页或内容。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/block-iframe", diff --git a/packages/plugins/@nocobase/plugin-block-workbench/package.json b/packages/plugins/@nocobase/plugin-block-workbench/package.json index e36682344f..8b2ba4b850 100644 --- a/packages/plugins/@nocobase/plugin-block-workbench/package.json +++ b/packages/plugins/@nocobase/plugin-block-workbench/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-block-workbench", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Block: Action panel", "displayName.zh-CN": "区块:操作面板", "description": "Centrally manages and displays various actions, allowing users to efficiently perform tasks. It supports extensibility, with current action types including pop-ups, links, scanning, and custom requests.", diff --git a/packages/plugins/@nocobase/plugin-calendar/package.json b/packages/plugins/@nocobase/plugin-calendar/package.json index 3976a60d2d..8d573730ef 100644 --- a/packages/plugins/@nocobase/plugin-calendar/package.json +++ b/packages/plugins/@nocobase/plugin-calendar/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-calendar", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Calendar", "displayName.zh-CN": "日历", "description": "Provides callendar collection template and block for managing date data, typically for date/time related information such as events, appointments, tasks, and so on.", diff --git a/packages/plugins/@nocobase/plugin-charts/package.json b/packages/plugins/@nocobase/plugin-charts/package.json index 15c6cd8657..5469be045e 100644 --- a/packages/plugins/@nocobase/plugin-charts/package.json +++ b/packages/plugins/@nocobase/plugin-charts/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "图表(废弃)", "description": "The plugin has been deprecated, please use the data visualization plugin instead.", "description.zh-CN": "已废弃插件,请使用数据可视化插件代替。", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "license": "AGPL-3.0", "devDependencies": { diff --git a/packages/plugins/@nocobase/plugin-client/package.json b/packages/plugins/@nocobase/plugin-client/package.json index 19bbf8f384..c11ff54ece 100644 --- a/packages/plugins/@nocobase/plugin-client/package.json +++ b/packages/plugins/@nocobase/plugin-client/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "WEB 客户端", "description": "Provides a client interface for the NocoBase server", "description.zh-CN": "为 NocoBase 服务端提供客户端界面", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "license": "AGPL-3.0", "devDependencies": { diff --git a/packages/plugins/@nocobase/plugin-collection-sql/package.json b/packages/plugins/@nocobase/plugin-collection-sql/package.json index 22343ad3b4..8b63752f2d 100644 --- a/packages/plugins/@nocobase/plugin-collection-sql/package.json +++ b/packages/plugins/@nocobase/plugin-collection-sql/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表: SQL", "description": "Provides SQL collection template", "description.zh-CN": "提供 SQL 数据表模板", - "version": "1.6.14", + "version": "1.6.15", "homepage": "https://docs-cn.nocobase.com/handbook/collection-sql", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/collection-sql", "main": "dist/server/index.js", diff --git a/packages/plugins/@nocobase/plugin-collection-tree/package.json b/packages/plugins/@nocobase/plugin-collection-tree/package.json index 1cef351649..3eef48041d 100644 --- a/packages/plugins/@nocobase/plugin-collection-tree/package.json +++ b/packages/plugins/@nocobase/plugin-collection-tree/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-collection-tree", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Collection: Tree", "displayName.zh-CN": "数据表:树", "description": "Provides tree collection template", diff --git a/packages/plugins/@nocobase/plugin-data-source-main/package.json b/packages/plugins/@nocobase/plugin-data-source-main/package.json index 47ba5d771a..ffb71dccaa 100644 --- a/packages/plugins/@nocobase/plugin-data-source-main/package.json +++ b/packages/plugins/@nocobase/plugin-data-source-main/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据源:主数据库", "description": "NocoBase main database, supports relational databases such as PostgreSQL, MySQL, MariaDB and so on.", "description.zh-CN": "NocoBase 主数据库,支持 PostgreSQL、MySQL、MariaDB 等关系型数据库。", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/data-source-main", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/data-source-main", diff --git a/packages/plugins/@nocobase/plugin-data-source-manager/package.json b/packages/plugins/@nocobase/plugin-data-source-manager/package.json index 7942507365..8190cbdeee 100644 --- a/packages/plugins/@nocobase/plugin-data-source-manager/package.json +++ b/packages/plugins/@nocobase/plugin-data-source-manager/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-data-source-manager", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "displayName": "Data source manager", "displayName.zh-CN": "数据源管理", diff --git a/packages/plugins/@nocobase/plugin-data-visualization/package.json b/packages/plugins/@nocobase/plugin-data-visualization/package.json index 4496a5b282..4a93777eaa 100644 --- a/packages/plugins/@nocobase/plugin-data-visualization/package.json +++ b/packages/plugins/@nocobase/plugin-data-visualization/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-data-visualization", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Data visualization", "displayName.zh-CN": "数据可视化", "description": "Provides data visualization feature, including chart block and chart filter block, support line charts, area charts, bar charts and more than a dozen kinds of charts, you can also extend more chart types.", diff --git a/packages/plugins/@nocobase/plugin-disable-pm-add/package.json b/packages/plugins/@nocobase/plugin-disable-pm-add/package.json index 332393d483..17ccc703e0 100644 --- a/packages/plugins/@nocobase/plugin-disable-pm-add/package.json +++ b/packages/plugins/@nocobase/plugin-disable-pm-add/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-disable-pm-add", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-environment-variables/package.json b/packages/plugins/@nocobase/plugin-environment-variables/package.json index 290135a1af..e655b07cbf 100644 --- a/packages/plugins/@nocobase/plugin-environment-variables/package.json +++ b/packages/plugins/@nocobase/plugin-environment-variables/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-environment-variables", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-error-handler/package.json b/packages/plugins/@nocobase/plugin-error-handler/package.json index 33057e6365..983e93aad5 100644 --- a/packages/plugins/@nocobase/plugin-error-handler/package.json +++ b/packages/plugins/@nocobase/plugin-error-handler/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "错误处理器", "description": "Handling application errors and exceptions.", "description.zh-CN": "处理应用程序中的错误和异常。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "devDependencies": { diff --git a/packages/plugins/@nocobase/plugin-field-china-region/package.json b/packages/plugins/@nocobase/plugin-field-china-region/package.json index 499bfe8e05..826f59f8f5 100644 --- a/packages/plugins/@nocobase/plugin-field-china-region/package.json +++ b/packages/plugins/@nocobase/plugin-field-china-region/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-field-china-region", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Collection field: administrative divisions of China", "displayName.zh-CN": "数据表字段:中国行政区划", "description": "Provides data and field type for administrative divisions of China.", diff --git a/packages/plugins/@nocobase/plugin-field-formula/package.json b/packages/plugins/@nocobase/plugin-field-formula/package.json index e60f6bd646..4329450e32 100644 --- a/packages/plugins/@nocobase/plugin-field-formula/package.json +++ b/packages/plugins/@nocobase/plugin-field-formula/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:公式", "description": "Configure and store the results of calculations between multiple field values in the same record, supporting both Math.js and Excel formula functions.", "description.zh-CN": "可以配置并存储同一条记录的多字段值之间的计算结果,支持 Math.js 和 Excel formula functions 两种引擎", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-formula", diff --git a/packages/plugins/@nocobase/plugin-field-m2m-array/package.json b/packages/plugins/@nocobase/plugin-field-m2m-array/package.json index 814c859dbb..9c5644e92a 100644 --- a/packages/plugins/@nocobase/plugin-field-m2m-array/package.json +++ b/packages/plugins/@nocobase/plugin-field-m2m-array/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:多对多 (数组)", "description": "Allows to create many to many relationships between two models by storing an array of unique keys of the target model.", "description.zh-CN": "支持通过在数组中存储目标表唯一键的方式建立多对多关系。", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json b/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json index 95107d50a2..b4cd50e71d 100644 --- a/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json +++ b/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:Markdown(Vditor)", "description": "Used to store Markdown and render it using Vditor editor, supports common Markdown syntax such as list, code, quote, etc., and supports uploading images, recordings, etc.It also allows for instant rendering, where what you see is what you get.", "description.zh-CN": "用于存储 Markdown,并使用 Vditor 编辑器渲染,支持常见 Markdown 语法,如列表,代码,引用等,并支持上传图片,录音等。同时可以做到即时渲染,所见即所得。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-markdown-vditor", diff --git a/packages/plugins/@nocobase/plugin-field-sequence/package.json b/packages/plugins/@nocobase/plugin-field-sequence/package.json index a4a81b44b7..346b4d64c2 100644 --- a/packages/plugins/@nocobase/plugin-field-sequence/package.json +++ b/packages/plugins/@nocobase/plugin-field-sequence/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:自动编码", "description": "Automatically generate codes based on configured rules, supporting combinations of dates, numbers, and text.", "description.zh-CN": "根据配置的规则自动生成编码,支持日期、数字、文本的组合。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-sequence", diff --git a/packages/plugins/@nocobase/plugin-field-sort/package.json b/packages/plugins/@nocobase/plugin-field-sort/package.json index 661cd1166d..4d6ac7a253 100644 --- a/packages/plugins/@nocobase/plugin-field-sort/package.json +++ b/packages/plugins/@nocobase/plugin-field-sort/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-field-sort", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "displayName": "Collection field: Sort", "displayName.zh-CN": "数据表字段:排序", diff --git a/packages/plugins/@nocobase/plugin-file-manager/package.json b/packages/plugins/@nocobase/plugin-file-manager/package.json index ce7ea33309..bdeaf857e7 100644 --- a/packages/plugins/@nocobase/plugin-file-manager/package.json +++ b/packages/plugins/@nocobase/plugin-file-manager/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-file-manager", - "version": "1.6.14", + "version": "1.6.15", "displayName": "File manager", "displayName.zh-CN": "文件管理器", "description": "Provides files storage services with files collection template and attachment field.", diff --git a/packages/plugins/@nocobase/plugin-gantt/package.json b/packages/plugins/@nocobase/plugin-gantt/package.json index 1fef7bd673..2ab2d610b1 100644 --- a/packages/plugins/@nocobase/plugin-gantt/package.json +++ b/packages/plugins/@nocobase/plugin-gantt/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-gantt", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Block: Gantt", "displayName.zh-CN": "区块:甘特图", "description": "Provides Gantt block.", diff --git a/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json b/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json index 55ea57e6b4..8982cbfec1 100644 --- a/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json +++ b/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "可视化数据表管理", "description": "An ER diagram-like tool. Currently only the Master database is supported.", "description.zh-CN": "类似 ER 图的工具,目前只支持主数据库。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/graph-collection-manager", diff --git a/packages/plugins/@nocobase/plugin-kanban/package.json b/packages/plugins/@nocobase/plugin-kanban/package.json index cfddfe288e..b529626197 100644 --- a/packages/plugins/@nocobase/plugin-kanban/package.json +++ b/packages/plugins/@nocobase/plugin-kanban/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-kanban", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/block-kanban", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/block-kanban", diff --git a/packages/plugins/@nocobase/plugin-locale-tester/package.json b/packages/plugins/@nocobase/plugin-locale-tester/package.json index 1ff8c0fa63..e498f87629 100644 --- a/packages/plugins/@nocobase/plugin-locale-tester/package.json +++ b/packages/plugins/@nocobase/plugin-locale-tester/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-locale-tester", "displayName": "Locale tester", "displayName.zh-CN": "翻译测试工具", - "version": "1.6.14", + "version": "1.6.15", "homepage": "https://github.com/nocobase/locales", "main": "dist/server/index.js", "peerDependencies": { diff --git a/packages/plugins/@nocobase/plugin-localization/package.json b/packages/plugins/@nocobase/plugin-localization/package.json index 821bf8d436..8cb466e2b8 100644 --- a/packages/plugins/@nocobase/plugin-localization/package.json +++ b/packages/plugins/@nocobase/plugin-localization/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-localization", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/localization-management", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/localization-management", diff --git a/packages/plugins/@nocobase/plugin-logger/package.json b/packages/plugins/@nocobase/plugin-logger/package.json index 294ae63f14..6abef89119 100644 --- a/packages/plugins/@nocobase/plugin-logger/package.json +++ b/packages/plugins/@nocobase/plugin-logger/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "日志", "description": "Server-side logs, mainly including API request logs and system runtime logs, and allows to package and download log files.", "description.zh-CN": "服务端日志,主要包括接口请求日志和系统运行日志,并支持打包和下载日志文件。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/logger", diff --git a/packages/plugins/@nocobase/plugin-map/package.json b/packages/plugins/@nocobase/plugin-map/package.json index 532348e565..c1256c5941 100644 --- a/packages/plugins/@nocobase/plugin-map/package.json +++ b/packages/plugins/@nocobase/plugin-map/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-map", "displayName": "Block: Map", "displayName.zh-CN": "区块:地图", - "version": "1.6.14", + "version": "1.6.15", "description": "Map block, support Gaode map and Google map, you can also extend more map types.", "description.zh-CN": "地图区块,支持高德地图和 Google 地图,你也可以扩展更多地图类型。", "license": "AGPL-3.0", diff --git a/packages/plugins/@nocobase/plugin-mobile-client/package.json b/packages/plugins/@nocobase/plugin-mobile-client/package.json index 6402b8de67..273d93abf9 100644 --- a/packages/plugins/@nocobase/plugin-mobile-client/package.json +++ b/packages/plugins/@nocobase/plugin-mobile-client/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-mobile-client", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/mobile-client", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/mobile-client", diff --git a/packages/plugins/@nocobase/plugin-mobile/package.json b/packages/plugins/@nocobase/plugin-mobile/package.json index a412e4a57d..ce33093af2 100644 --- a/packages/plugins/@nocobase/plugin-mobile/package.json +++ b/packages/plugins/@nocobase/plugin-mobile/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-mobile", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/mobile", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/mobile", diff --git a/packages/plugins/@nocobase/plugin-mock-collections/package.json b/packages/plugins/@nocobase/plugin-mock-collections/package.json index 214394aa10..72e25b82a2 100644 --- a/packages/plugins/@nocobase/plugin-mock-collections/package.json +++ b/packages/plugins/@nocobase/plugin-mock-collections/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-mock-collections", "displayName": "mock-collections", "description": "mock-collections", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "license": "AGPL-3.0", "peerDependencies": { diff --git a/packages/plugins/@nocobase/plugin-multi-app-manager/package.json b/packages/plugins/@nocobase/plugin-multi-app-manager/package.json index cec8e46aa7..b5efb592db 100644 --- a/packages/plugins/@nocobase/plugin-multi-app-manager/package.json +++ b/packages/plugins/@nocobase/plugin-multi-app-manager/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "多应用管理器", "description": "Dynamically create multiple apps without separate deployments.", "description.zh-CN": "无需单独部署即可动态创建多个应用。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/multi-app-manager", diff --git a/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json b/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json index 889f780919..881f851a6d 100644 --- a/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json +++ b/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "多应用数据表共享", "description": "", "description.zh-CN": "", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "devDependencies": { "@formily/react": "2.x", diff --git a/packages/plugins/@nocobase/plugin-notification-email/package.json b/packages/plugins/@nocobase/plugin-notification-email/package.json index 71850f30b3..be89e36870 100644 --- a/packages/plugins/@nocobase/plugin-notification-email/package.json +++ b/packages/plugins/@nocobase/plugin-notification-email/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-notification-email", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Notification: Email", "displayName.zh-CN": "通知:电子邮件", "description": "Used for sending email notifications with built-in SMTP transport.", diff --git a/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json b/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json index ffded04a8f..9e547d9809 100644 --- a/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json +++ b/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-notification-in-app-message", - "version": "1.6.14", + "version": "1.6.15", "displayName": "Notification: In-app message", "displayName.zh-CN": "通知:站内信", "description": "It supports users in receiving real-time message notifications within the NocoBase application.", diff --git a/packages/plugins/@nocobase/plugin-notification-manager/package.json b/packages/plugins/@nocobase/plugin-notification-manager/package.json index 880791dc4c..ea2d4c5fe6 100644 --- a/packages/plugins/@nocobase/plugin-notification-manager/package.json +++ b/packages/plugins/@nocobase/plugin-notification-manager/package.json @@ -4,7 +4,7 @@ "description": "Provides a unified management service that includes channel configuration, logging, and other features, supporting the configuration of various notification channels, including in-app message and email.", "displayName.zh-CN": "通知管理", "description.zh-CN": "提供统一的管理服务,涵盖渠道配置、日志记录等功能,支持多种通知渠道的配置,包括站内信和电子邮件等。", - "version": "1.6.14", + "version": "1.6.15", "homepage": "https://docs.nocobase.com/handbook/notification-manager", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/notification-manager", "main": "dist/server/index.js", diff --git a/packages/plugins/@nocobase/plugin-notifications/package.json b/packages/plugins/@nocobase/plugin-notifications/package.json index 1e491bbc5c..6af18bf1d7 100644 --- a/packages/plugins/@nocobase/plugin-notifications/package.json +++ b/packages/plugins/@nocobase/plugin-notifications/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-notifications", - "version": "1.6.14", + "version": "1.6.15", "description": "", "license": "AGPL-3.0", "main": "./dist/server/index.js", diff --git a/packages/plugins/@nocobase/plugin-public-forms/package.json b/packages/plugins/@nocobase/plugin-public-forms/package.json index 0923072aea..a69c9c0fee 100644 --- a/packages/plugins/@nocobase/plugin-public-forms/package.json +++ b/packages/plugins/@nocobase/plugin-public-forms/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-public-forms", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "displayName": "Public forms", "displayName.zh-CN": "公开表单", diff --git a/packages/plugins/@nocobase/plugin-sample-hello/package.json b/packages/plugins/@nocobase/plugin-sample-hello/package.json index 81e1e34c88..5e64595bb4 100644 --- a/packages/plugins/@nocobase/plugin-sample-hello/package.json +++ b/packages/plugins/@nocobase/plugin-sample-hello/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-sample-hello", - "version": "1.6.14", + "version": "1.6.15", "main": "./dist/server/index.js", "displayName": "Hello", "displayName.zh-CN": "Hello", diff --git a/packages/plugins/@nocobase/plugin-snapshot-field/package.json b/packages/plugins/@nocobase/plugin-snapshot-field/package.json index 30f64445ed..ab74e69a97 100644 --- a/packages/plugins/@nocobase/plugin-snapshot-field/package.json +++ b/packages/plugins/@nocobase/plugin-snapshot-field/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:关系快照", "description": "When adding a new record, create a snapshot for its relational record and save in the new record. The snapshot will not be updated when the relational record is updated.", "description.zh-CN": "在添加数据时,为它的关系数据创建快照,并保存在当前的数据中。关系数据更新时,快照不会更新。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-snapshot", diff --git a/packages/plugins/@nocobase/plugin-system-settings/package.json b/packages/plugins/@nocobase/plugin-system-settings/package.json index 6163906776..752c2849fb 100644 --- a/packages/plugins/@nocobase/plugin-system-settings/package.json +++ b/packages/plugins/@nocobase/plugin-system-settings/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "系统设置", "description": "Used to adjust the system title, logo, language, etc.", "description.zh-CN": "用于调整系统的标题、LOGO、语言等。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/system-settings", diff --git a/packages/plugins/@nocobase/plugin-theme-editor/package.json b/packages/plugins/@nocobase/plugin-theme-editor/package.json index 963b9eee48..2dc2e4a33a 100644 --- a/packages/plugins/@nocobase/plugin-theme-editor/package.json +++ b/packages/plugins/@nocobase/plugin-theme-editor/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-theme-editor", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/theme-editor", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/theme-editor", diff --git a/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json b/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json index d81d483300..2eb78a95af 100644 --- a/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json +++ b/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "UI schema 存储服务", "description": "Provides centralized UI schema storage service.", "description.zh-CN": "提供中心化的 UI schema 存储服务。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/ui-schema-storage", diff --git a/packages/plugins/@nocobase/plugin-user-data-sync/package.json b/packages/plugins/@nocobase/plugin-user-data-sync/package.json index edd5cf0220..d6a2f67bf6 100644 --- a/packages/plugins/@nocobase/plugin-user-data-sync/package.json +++ b/packages/plugins/@nocobase/plugin-user-data-sync/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "用户数据同步", "description": "Reigster and manage extensible user data synchronization sources, with HTTP API provided by default. Support for synchronizing data to resources such as users and departments.", "description.zh-CN": "注册和管理可扩展的用户数据同步来源,默认提供 HTTP API。支持向用户和部门等资源同步数据。", - "version": "1.6.14", + "version": "1.6.15", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-users/package.json b/packages/plugins/@nocobase/plugin-users/package.json index 7975fa5175..790cbd2be1 100644 --- a/packages/plugins/@nocobase/plugin-users/package.json +++ b/packages/plugins/@nocobase/plugin-users/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "用户", "description": "Provides basic user model, as well as created by and updated by fields.", "description.zh-CN": "提供了基础的用户模型,以及创建人和最后更新人字段。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/users", diff --git a/packages/plugins/@nocobase/plugin-verification/package.json b/packages/plugins/@nocobase/plugin-verification/package.json index 9014975d34..9ca35d2749 100644 --- a/packages/plugins/@nocobase/plugin-verification/package.json +++ b/packages/plugins/@nocobase/plugin-verification/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "验证码", "description": "verification setting.", "description.zh-CN": "验证码配置。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/verification", diff --git a/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json b/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json index 917536f8d3..429970772f 100644 --- a/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:操作后事件", "description": "Triggered after the completion of a request initiated through an action button or API, such as after adding, updating, deleting data, or \"submit to workflow\". Suitable for data processing, sending notifications, etc., after actions are completed.", "description.zh-CN": "通过操作按钮或 API 发起请求并在执行完成后触发,比如新增、更新、删除数据或者“提交至工作流”之后。适用于在操作完成后进行数据处理、发送通知等。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/plugins/workflow-action-trigger", diff --git a/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json b/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json index f23dc948af..445506b818 100644 --- a/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:聚合查询节点", "description": "Used to aggregate data against the database in workflow, such as: statistics, sum, average, etc.", "description.zh-CN": "可用于在工作流中对数据库进行聚合查询,如:统计数量、求和、平均值等。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-aggregate", diff --git a/packages/plugins/@nocobase/plugin-workflow-delay/package.json b/packages/plugins/@nocobase/plugin-workflow-delay/package.json index 61d9ae7b3c..18a5b65661 100644 --- a/packages/plugins/@nocobase/plugin-workflow-delay/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-delay/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:延时节点", "description": "Could be used in workflow parallel branch for waiting other branches.", "description.zh-CN": "可用于工作流并行分支中等待其他分支执行完成。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-delay", diff --git a/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json b/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json index 33ee6535b5..fe7f2c58e9 100644 --- a/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:动态表达式计算节点", "description": "Useful plugin for doing dynamic calculation based on expression collection records in workflow.", "description.zh-CN": "用于在工作流中进行基于数据行的动态表达式计算。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-dynamic-calculation", diff --git a/packages/plugins/@nocobase/plugin-workflow-loop/package.json b/packages/plugins/@nocobase/plugin-workflow-loop/package.json index 698fd8221e..fb8d8e2acb 100644 --- a/packages/plugins/@nocobase/plugin-workflow-loop/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-loop/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:循环节点", "description": "Used to repeat the sub-process processing of each value in an array, and can also be used for fixed times of sub-process processing.", "description.zh-CN": "用于对一个数组中的每个值进行重复的子流程处理,也可用于固定次数的重复子流程处理。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-loop", diff --git a/packages/plugins/@nocobase/plugin-workflow-mailer/package.json b/packages/plugins/@nocobase/plugin-workflow-mailer/package.json index 6315f3dbf8..98ffc4c179 100644 --- a/packages/plugins/@nocobase/plugin-workflow-mailer/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-mailer/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:邮件发送节点", "description": "Send email in workflow.", "description.zh-CN": "可用于在工作流中发送电子邮件。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-smtp-mailer", diff --git a/packages/plugins/@nocobase/plugin-workflow-manual/package.json b/packages/plugins/@nocobase/plugin-workflow-manual/package.json index 0772ca65c6..9f8f84e6e9 100644 --- a/packages/plugins/@nocobase/plugin-workflow-manual/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-manual/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:人工处理节点", "description": "Could be used for workflows which some of decisions are made by users.", "description.zh-CN": "用于人工控制部分决策的流程。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-manual", diff --git a/packages/plugins/@nocobase/plugin-workflow-notification/package.json b/packages/plugins/@nocobase/plugin-workflow-notification/package.json index 42bd60a041..2e32662f2e 100644 --- a/packages/plugins/@nocobase/plugin-workflow-notification/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-notification/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:通知节点", "description": "Send notification in workflow.", "description.zh-CN": "可用于在工作流中发送各类通知。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-smtp-mailer", diff --git a/packages/plugins/@nocobase/plugin-workflow-parallel/package.json b/packages/plugins/@nocobase/plugin-workflow-parallel/package.json index 816b324ab4..23ab5df608 100644 --- a/packages/plugins/@nocobase/plugin-workflow-parallel/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-parallel/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:并行分支节点", "description": "Could be used for parallel execution of branch processes in the workflow.", "description.zh-CN": "用于在工作流中需要并行执行的分支流程。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-parallel", diff --git a/packages/plugins/@nocobase/plugin-workflow-request/package.json b/packages/plugins/@nocobase/plugin-workflow-request/package.json index 43acb036d4..a3458c4fbc 100644 --- a/packages/plugins/@nocobase/plugin-workflow-request/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-request/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:HTTP 请求节点", "description": "Send HTTP requests to any HTTP service for data interaction in workflow.", "description.zh-CN": "可用于在工作流中向任意 HTTP 服务发送请求,进行数据交互。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-request", diff --git a/packages/plugins/@nocobase/plugin-workflow-sql/package.json b/packages/plugins/@nocobase/plugin-workflow-sql/package.json index 36b2129a45..f7d3dfda20 100644 --- a/packages/plugins/@nocobase/plugin-workflow-sql/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-sql/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:SQL 节点", "description": "Execute SQL statements in workflow.", "description.zh-CN": "可用于在工作流中对数据库执行任意 SQL 语句。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-sql", diff --git a/packages/plugins/@nocobase/plugin-workflow-test/package.json b/packages/plugins/@nocobase/plugin-workflow-test/package.json index 606c9e92db..3dfe7dd826 100644 --- a/packages/plugins/@nocobase/plugin-workflow-test/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-test/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-workflow-test", "displayName": "Workflow: test kit", "displayName.zh-CN": "工作流:测试工具包", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "dist/server/index.js", "types": "./dist/server/index.d.ts", diff --git a/packages/plugins/@nocobase/plugin-workflow/package.json b/packages/plugins/@nocobase/plugin-workflow/package.json index eb2320d0d2..570b155fa3 100644 --- a/packages/plugins/@nocobase/plugin-workflow/package.json +++ b/packages/plugins/@nocobase/plugin-workflow/package.json @@ -4,13 +4,13 @@ "displayName.zh-CN": "工作流", "description": "A powerful BPM tool that provides foundational support for business automation, with the capability to extend unlimited triggers and nodes.", "description.zh-CN": "一个强大的 BPM 工具,为业务自动化提供基础支持,并且可任意扩展更多的触发器和节点。", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/workflow", "dependencies": { - "@nocobase/plugin-workflow-test": "1.6.14" + "@nocobase/plugin-workflow-test": "1.6.15" }, "devDependencies": { "@ant-design/icons": "5.x", diff --git a/packages/presets/nocobase/package.json b/packages/presets/nocobase/package.json index 2acbb17c47..3cdcf2562c 100644 --- a/packages/presets/nocobase/package.json +++ b/packages/presets/nocobase/package.json @@ -1,81 +1,81 @@ { "name": "@nocobase/preset-nocobase", - "version": "1.6.14", + "version": "1.6.15", "license": "AGPL-3.0", "main": "./lib/server/index.js", "dependencies": { "@formily/json-schema": "2.x", - "@nocobase/plugin-acl": "1.6.14", - "@nocobase/plugin-action-bulk-edit": "1.6.14", - "@nocobase/plugin-action-bulk-update": "1.6.14", - "@nocobase/plugin-action-custom-request": "1.6.14", - "@nocobase/plugin-action-duplicate": "1.6.14", - "@nocobase/plugin-action-export": "1.6.14", - "@nocobase/plugin-action-import": "1.6.14", - "@nocobase/plugin-action-print": "1.6.14", - "@nocobase/plugin-ai": "1.6.14", - "@nocobase/plugin-api-doc": "1.6.14", - "@nocobase/plugin-api-keys": "1.6.14", - "@nocobase/plugin-async-task-manager": "1.6.14", - "@nocobase/plugin-audit-logs": "1.6.14", - "@nocobase/plugin-auth": "1.6.14", - "@nocobase/plugin-auth-sms": "1.6.14", - "@nocobase/plugin-backup-restore": "1.6.14", - "@nocobase/plugin-block-iframe": "1.6.14", - "@nocobase/plugin-block-workbench": "1.6.14", - "@nocobase/plugin-calendar": "1.6.14", - "@nocobase/plugin-charts": "1.6.14", - "@nocobase/plugin-client": "1.6.14", - "@nocobase/plugin-collection-sql": "1.6.14", - "@nocobase/plugin-collection-tree": "1.6.14", - "@nocobase/plugin-data-source-main": "1.6.14", - "@nocobase/plugin-data-source-manager": "1.6.14", - "@nocobase/plugin-data-visualization": "1.6.14", - "@nocobase/plugin-environment-variables": "1.6.14", - "@nocobase/plugin-error-handler": "1.6.14", - "@nocobase/plugin-field-china-region": "1.6.14", - "@nocobase/plugin-field-formula": "1.6.14", - "@nocobase/plugin-field-m2m-array": "1.6.14", - "@nocobase/plugin-field-markdown-vditor": "1.6.14", - "@nocobase/plugin-field-sequence": "1.6.14", - "@nocobase/plugin-field-sort": "1.6.14", - "@nocobase/plugin-file-manager": "1.6.14", - "@nocobase/plugin-gantt": "1.6.14", - "@nocobase/plugin-graph-collection-manager": "1.6.14", - "@nocobase/plugin-kanban": "1.6.14", - "@nocobase/plugin-locale-tester": "1.6.14", - "@nocobase/plugin-localization": "1.6.14", - "@nocobase/plugin-logger": "1.6.14", - "@nocobase/plugin-map": "1.6.14", - "@nocobase/plugin-mobile": "1.6.14", - "@nocobase/plugin-mobile-client": "1.6.14", - "@nocobase/plugin-mock-collections": "1.6.14", - "@nocobase/plugin-multi-app-manager": "1.6.14", - "@nocobase/plugin-multi-app-share-collection": "1.6.14", - "@nocobase/plugin-notification-email": "1.6.14", - "@nocobase/plugin-notification-in-app-message": "1.6.14", - "@nocobase/plugin-notification-manager": "1.6.14", - "@nocobase/plugin-public-forms": "1.6.14", - "@nocobase/plugin-snapshot-field": "1.6.14", - "@nocobase/plugin-system-settings": "1.6.14", - "@nocobase/plugin-theme-editor": "1.6.14", - "@nocobase/plugin-ui-schema-storage": "1.6.14", - "@nocobase/plugin-user-data-sync": "1.6.14", - "@nocobase/plugin-users": "1.6.14", - "@nocobase/plugin-verification": "1.6.14", - "@nocobase/plugin-workflow": "1.6.14", - "@nocobase/plugin-workflow-action-trigger": "1.6.14", - "@nocobase/plugin-workflow-aggregate": "1.6.14", - "@nocobase/plugin-workflow-delay": "1.6.14", - "@nocobase/plugin-workflow-dynamic-calculation": "1.6.14", - "@nocobase/plugin-workflow-loop": "1.6.14", - "@nocobase/plugin-workflow-mailer": "1.6.14", - "@nocobase/plugin-workflow-manual": "1.6.14", - "@nocobase/plugin-workflow-notification": "1.6.14", - "@nocobase/plugin-workflow-parallel": "1.6.14", - "@nocobase/plugin-workflow-request": "1.6.14", - "@nocobase/plugin-workflow-sql": "1.6.14", - "@nocobase/server": "1.6.14", + "@nocobase/plugin-acl": "1.6.15", + "@nocobase/plugin-action-bulk-edit": "1.6.15", + "@nocobase/plugin-action-bulk-update": "1.6.15", + "@nocobase/plugin-action-custom-request": "1.6.15", + "@nocobase/plugin-action-duplicate": "1.6.15", + "@nocobase/plugin-action-export": "1.6.15", + "@nocobase/plugin-action-import": "1.6.15", + "@nocobase/plugin-action-print": "1.6.15", + "@nocobase/plugin-ai": "1.6.15", + "@nocobase/plugin-api-doc": "1.6.15", + "@nocobase/plugin-api-keys": "1.6.15", + "@nocobase/plugin-async-task-manager": "1.6.15", + "@nocobase/plugin-audit-logs": "1.6.15", + "@nocobase/plugin-auth": "1.6.15", + "@nocobase/plugin-auth-sms": "1.6.15", + "@nocobase/plugin-backup-restore": "1.6.15", + "@nocobase/plugin-block-iframe": "1.6.15", + "@nocobase/plugin-block-workbench": "1.6.15", + "@nocobase/plugin-calendar": "1.6.15", + "@nocobase/plugin-charts": "1.6.15", + "@nocobase/plugin-client": "1.6.15", + "@nocobase/plugin-collection-sql": "1.6.15", + "@nocobase/plugin-collection-tree": "1.6.15", + "@nocobase/plugin-data-source-main": "1.6.15", + "@nocobase/plugin-data-source-manager": "1.6.15", + "@nocobase/plugin-data-visualization": "1.6.15", + "@nocobase/plugin-environment-variables": "1.6.15", + "@nocobase/plugin-error-handler": "1.6.15", + "@nocobase/plugin-field-china-region": "1.6.15", + "@nocobase/plugin-field-formula": "1.6.15", + "@nocobase/plugin-field-m2m-array": "1.6.15", + "@nocobase/plugin-field-markdown-vditor": "1.6.15", + "@nocobase/plugin-field-sequence": "1.6.15", + "@nocobase/plugin-field-sort": "1.6.15", + "@nocobase/plugin-file-manager": "1.6.15", + "@nocobase/plugin-gantt": "1.6.15", + "@nocobase/plugin-graph-collection-manager": "1.6.15", + "@nocobase/plugin-kanban": "1.6.15", + "@nocobase/plugin-locale-tester": "1.6.15", + "@nocobase/plugin-localization": "1.6.15", + "@nocobase/plugin-logger": "1.6.15", + "@nocobase/plugin-map": "1.6.15", + "@nocobase/plugin-mobile": "1.6.15", + "@nocobase/plugin-mobile-client": "1.6.15", + "@nocobase/plugin-mock-collections": "1.6.15", + "@nocobase/plugin-multi-app-manager": "1.6.15", + "@nocobase/plugin-multi-app-share-collection": "1.6.15", + "@nocobase/plugin-notification-email": "1.6.15", + "@nocobase/plugin-notification-in-app-message": "1.6.15", + "@nocobase/plugin-notification-manager": "1.6.15", + "@nocobase/plugin-public-forms": "1.6.15", + "@nocobase/plugin-snapshot-field": "1.6.15", + "@nocobase/plugin-system-settings": "1.6.15", + "@nocobase/plugin-theme-editor": "1.6.15", + "@nocobase/plugin-ui-schema-storage": "1.6.15", + "@nocobase/plugin-user-data-sync": "1.6.15", + "@nocobase/plugin-users": "1.6.15", + "@nocobase/plugin-verification": "1.6.15", + "@nocobase/plugin-workflow": "1.6.15", + "@nocobase/plugin-workflow-action-trigger": "1.6.15", + "@nocobase/plugin-workflow-aggregate": "1.6.15", + "@nocobase/plugin-workflow-delay": "1.6.15", + "@nocobase/plugin-workflow-dynamic-calculation": "1.6.15", + "@nocobase/plugin-workflow-loop": "1.6.15", + "@nocobase/plugin-workflow-mailer": "1.6.15", + "@nocobase/plugin-workflow-manual": "1.6.15", + "@nocobase/plugin-workflow-notification": "1.6.15", + "@nocobase/plugin-workflow-parallel": "1.6.15", + "@nocobase/plugin-workflow-request": "1.6.15", + "@nocobase/plugin-workflow-sql": "1.6.15", + "@nocobase/server": "1.6.15", "cronstrue": "^2.11.0", "fs-extra": "^11.1.1" }, From d6db010952e06bec804890ae1bc492f228febdc7 Mon Sep 17 00:00:00 2001 From: "nocobase[bot]" <179432756+nocobase[bot]@users.noreply.github.com> Date: Tue, 1 Apr 2025 13:20:13 +0000 Subject: [PATCH 41/69] docs: update changelogs --- CHANGELOG.md | 41 +++++++++++++++++++++++++++++++++++++++++ CHANGELOG.zh-CN.md | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c18d03854..9e4b7c1279 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,47 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [v1.6.15](https://github.com/nocobase/nocobase/compare/v1.6.14...v1.6.15) - 2025-04-01 + +### 🚀 Improvements + +- **[database]** + - Add trim option for text field ([#6603](https://github.com/nocobase/nocobase/pull/6603)) by @mytharcher + + - Add trim option for string field ([#6565](https://github.com/nocobase/nocobase/pull/6565)) by @mytharcher + +- **[File manager]** Add trim option for text fields of storages collection ([#6604](https://github.com/nocobase/nocobase/pull/6604)) by @mytharcher + +- **[Workflow]** Improve code ([#6589](https://github.com/nocobase/nocobase/pull/6589)) by @mytharcher + +- **[Workflow: Approval]** Support to use block template for approval process form by @mytharcher + +### 🐛 Bug Fixes + +- **[database]** Avoid "datetimeNoTz" field changes when value not changed in updating record ([#6588](https://github.com/nocobase/nocobase/pull/6588)) by @mytharcher + +- **[client]** + - association field (select) displaying N/A when exposing related collection fields ([#6582](https://github.com/nocobase/nocobase/pull/6582)) by @katherinehhh + + - Fix `disabled` property not works when `SchemaInitializerItem` has `items` ([#6597](https://github.com/nocobase/nocobase/pull/6597)) by @mytharcher + + - cascade issue: 'The value of xxx cannot be in array format' when deleting and re-selecting ([#6585](https://github.com/nocobase/nocobase/pull/6585)) by @katherinehhh + +- **[Collection field: Many to many (array)]** Issue of filtering by fields in an association collection with a many to many (array) field ([#6596](https://github.com/nocobase/nocobase/pull/6596)) by @2013xile + +- **[Public forms]** View permissions include list and get ([#6607](https://github.com/nocobase/nocobase/pull/6607)) by @chenos + +- **[Authentication]** token assignment in `AuthProvider` ([#6593](https://github.com/nocobase/nocobase/pull/6593)) by @2013xile + +- **[Workflow]** Fix sync option display incorrectly ([#6595](https://github.com/nocobase/nocobase/pull/6595)) by @mytharcher + +- **[Block: Map]** map management validation should not pass with space input ([#6575](https://github.com/nocobase/nocobase/pull/6575)) by @katherinehhh + +- **[Workflow: Approval]** + - Fix client variables to use in approval form by @mytharcher + + - Fix branch mode when `endOnReject` configured as `true` by @mytharcher + ## [v1.6.14](https://github.com/nocobase/nocobase/compare/v1.6.13...v1.6.14) - 2025-03-29 ### 🐛 Bug Fixes diff --git a/CHANGELOG.zh-CN.md b/CHANGELOG.zh-CN.md index baefbb61c6..9d7b2fc32e 100644 --- a/CHANGELOG.zh-CN.md +++ b/CHANGELOG.zh-CN.md @@ -5,6 +5,47 @@ 格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/), 并且本项目遵循 [语义化版本](https://semver.org/spec/v2.0.0.html)。 +## [v1.6.15](https://github.com/nocobase/nocobase/compare/v1.6.14...v1.6.15) - 2025-04-01 + +### 🚀 优化 + +- **[database]** + - 为多行文本类型字段增加去除首尾空白字符的选项 ([#6603](https://github.com/nocobase/nocobase/pull/6603)) by @mytharcher + + - 为单行文本增加自动去除首尾空白字符的选项 ([#6565](https://github.com/nocobase/nocobase/pull/6565)) by @mytharcher + +- **[文件管理器]** 为存储引擎表的文本字段增加去除首尾空白字符的选项 ([#6604](https://github.com/nocobase/nocobase/pull/6604)) by @mytharcher + +- **[工作流]** 优化代码 ([#6589](https://github.com/nocobase/nocobase/pull/6589)) by @mytharcher + +- **[工作流:审批]** 支持审批表单使用区块模板 by @mytharcher + +### 🐛 修复 + +- **[database]** 避免“日期时间(无时区)”字段在值未变动的更新时触发值改变 ([#6588](https://github.com/nocobase/nocobase/pull/6588)) by @mytharcher + +- **[client]** + - 关系字段(select)放出关系表字段时默认显示 N/A ([#6582](https://github.com/nocobase/nocobase/pull/6582)) by @katherinehhh + + - 修复 `SchemaInitializerItem` 配置了 `items` 时 `disabled` 属性无效的问题 ([#6597](https://github.com/nocobase/nocobase/pull/6597)) by @mytharcher + + - 级联组件删除后重新选择时出现 'The value of xxx cannot be in array format' ([#6585](https://github.com/nocobase/nocobase/pull/6585)) by @katherinehhh + +- **[数据表字段:多对多 (数组)]** 主表筛选带有多对多(数组)字段的关联表中的字段报错的问题 ([#6596](https://github.com/nocobase/nocobase/pull/6596)) by @2013xile + +- **[公开表单]** 查看权限包括 list 和 get ([#6607](https://github.com/nocobase/nocobase/pull/6607)) by @chenos + +- **[用户认证]** `AuthProvider` 中的 token 赋值 ([#6593](https://github.com/nocobase/nocobase/pull/6593)) by @2013xile + +- **[工作流]** 修复同步选项展示问题 ([#6595](https://github.com/nocobase/nocobase/pull/6595)) by @mytharcher + +- **[区块:地图]** 地图管理必填校验不应通过空格输入 ([#6575](https://github.com/nocobase/nocobase/pull/6575)) by @katherinehhh + +- **[工作流:审批]** + - 修复审批表单中的前端变量 by @mytharcher + + - 修复分支模式下配置拒绝则结束时的流程问题 by @mytharcher + ## [v1.6.14](https://github.com/nocobase/nocobase/compare/v1.6.13...v1.6.14) - 2025-03-29 ### 🐛 修复 From 33bfdf6cd758d375cedf6114edb63ca0b990015e Mon Sep 17 00:00:00 2001 From: Zhou Date: Tue, 1 Apr 2025 21:31:02 +0800 Subject: [PATCH 42/69] Update LICENSE.txt --- LICENSE.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/LICENSE.txt b/LICENSE.txt index b3c87c1e83..babf2bf053 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,4 +1,4 @@ -Updated Date: February 20, 2025 +Updated Date: April 1, 2025 NocoBase License Agreement @@ -88,7 +88,7 @@ Except for Third-Party Open Source Software, the Company owns all copyrights, tr 6.6 Can sell plugins developed for Software in the Marketplace. -6.7 The User with an Enterprise Edition License can sell Upper Layer Application to their clients. +6.7 The User with a Professional or Enterprise Edition License can sell Upper Layer Application to their clients. 6.8 Not restricted by the AGPL-3.0 agreement. @@ -106,9 +106,9 @@ Except for Third-Party Open Source Software, the Company owns all copyrights, tr 7.4 It is not allowed to provide any form of no-code, zero-code, low-code platform SaaS products to the public using the original or modified Software. -7.5 It is not allowed for the User withot an Enterprise Edition license to sell Upper Layer Application to clients without a Commercial license. +7.5 It is not allowed for the User withot a Professional or Enterprise Edition license to sell Upper Layer Application to clients without a Commercial license. -7.6 It is not allowed for the User with an Enterprise Edition license to sell Upper Layer Application to clients without a Commercial license with access to further development and configuration. +7.6 It is not allowed for the User with a Professional or Enterprise Edition license to sell Upper Layer Application to clients without a Commercial license with access to further development and configuration. 7.7 It is not allowed to publicly sell plugins developed for Software outside of the Marketplace. From 12e68241537ae10dd4d1c3425916425f256cdf53 Mon Sep 17 00:00:00 2001 From: YANG QIA <2013xile@gmail.com> Date: Tue, 1 Apr 2025 23:28:41 +0800 Subject: [PATCH 43/69] fix(db): `filterByTk` is ignored when both `filter` and `filterByTk` are used in o2m deletion (#6606) * fix(db): `filterByTk` is ignored when both `filter` and `filterByTk` are used in o2m deletion * test: add test --- .../has-many-repository.test.ts | 46 +++++++++++++++++++ .../relation-repository/hasmany-repository.ts | 8 +++- .../multiple-relation-repository.ts | 10 +++- 3 files changed, 61 insertions(+), 3 deletions(-) diff --git a/packages/core/database/src/__tests__/relation-repository/has-many-repository.test.ts b/packages/core/database/src/__tests__/relation-repository/has-many-repository.test.ts index 78793cc356..2cd0dd6bb7 100644 --- a/packages/core/database/src/__tests__/relation-repository/has-many-repository.test.ts +++ b/packages/core/database/src/__tests__/relation-repository/has-many-repository.test.ts @@ -159,6 +159,7 @@ describe('has many repository', () => { name: 'posts', fields: [ { type: 'string', name: 'title' }, + { type: 'belongsTo', name: 'user' }, { type: 'belongsToMany', name: 'tags', through: 'posts_tags' }, { type: 'hasMany', name: 'comments' }, { type: 'string', name: 'status' }, @@ -480,6 +481,51 @@ describe('has many repository', () => { ).not.toBeNull(); }); + test('destroy by pk and filter with association', async () => { + const u1 = await User.repository.create({ + values: { name: 'u1' }, + }); + + const UserPostRepository = new HasManyRepository(User, 'posts', u1.id); + + const p1 = await UserPostRepository.create({ + values: { + title: 't1', + status: 'published', + user: u1, + }, + }); + + const p2 = await UserPostRepository.create({ + values: { + title: 't2', + status: 'draft', + user: u1, + }, + }); + + await UserPostRepository.destroy({ + filterByTk: p1.id, + filter: { + user: { + id: u1.id, + }, + }, + }); + + expect( + await UserPostRepository.findOne({ + filterByTk: p1.id, + }), + ).toBeNull(); + + expect( + await UserPostRepository.findOne({ + filterByTk: p2.id, + }), + ).not.toBeNull(); + }); + test('destroy by pk', async () => { const u1 = await User.repository.create({ values: { name: 'u1' }, diff --git a/packages/core/database/src/relation-repository/hasmany-repository.ts b/packages/core/database/src/relation-repository/hasmany-repository.ts index f831166d67..4720a6fa59 100644 --- a/packages/core/database/src/relation-repository/hasmany-repository.ts +++ b/packages/core/database/src/relation-repository/hasmany-repository.ts @@ -72,7 +72,13 @@ export class HasManyRepository extends MultipleRelationRepository { const filterResult = this.parseFilter(options['filter'], options); if (filterResult.include && filterResult.include.length > 0) { - return await this.destroyByFilter(options['filter'], transaction); + return await this.destroyByFilter( + { + filter: options['filter'], + filterByTk: options['filterByTk'], + }, + transaction, + ); } where.push(filterResult.where); diff --git a/packages/core/database/src/relation-repository/multiple-relation-repository.ts b/packages/core/database/src/relation-repository/multiple-relation-repository.ts index af3ed91525..9a649fa97c 100644 --- a/packages/core/database/src/relation-repository/multiple-relation-repository.ts +++ b/packages/core/database/src/relation-repository/multiple-relation-repository.ts @@ -179,9 +179,15 @@ export abstract class MultipleRelationRepository extends RelationRepository { return false; } - protected async destroyByFilter(filter: Filter, transaction?: Transaction) { + protected async destroyByFilter( + options: { + filter?: Filter; + filterByTk?: TargetKey | TargetKey[]; + }, + transaction?: Transaction, + ) { const instances = await this.find({ - filter: filter, + ...options, transaction, }); From 994be1a2a10ad718e22a9092afba2fd4a027136b Mon Sep 17 00:00:00 2001 From: "nocobase[bot]" <179432756+nocobase[bot]@users.noreply.github.com> Date: Wed, 2 Apr 2025 01:08:51 +0000 Subject: [PATCH 44/69] =?UTF-8?q?chore(versions):=20=F0=9F=98=8A=20publish?= =?UTF-8?q?=20v1.7.0-beta.13?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lerna.json | 2 +- packages/core/acl/package.json | 6 +- packages/core/actions/package.json | 8 +- packages/core/app/package.json | 10 +- packages/core/auth/package.json | 12 +- packages/core/build/package.json | 2 +- packages/core/cache/package.json | 4 +- packages/core/cli/package.json | 6 +- packages/core/client/package.json | 8 +- .../core/create-nocobase-app/package.json | 2 +- .../core/data-source-manager/package.json | 12 +- packages/core/database/package.json | 6 +- packages/core/devtools/package.json | 8 +- packages/core/evaluators/package.json | 4 +- packages/core/lock-manager/package.json | 4 +- packages/core/logger/package.json | 2 +- packages/core/resourcer/package.json | 4 +- packages/core/sdk/package.json | 2 +- packages/core/server/package.json | 28 ++-- packages/core/telemetry/package.json | 4 +- packages/core/test/package.json | 4 +- packages/core/utils/package.json | 2 +- .../plugins/@nocobase/plugin-acl/package.json | 2 +- .../plugin-action-bulk-edit/package.json | 2 +- .../plugin-action-bulk-update/package.json | 2 +- .../plugin-action-custom-request/package.json | 2 +- .../plugin-action-duplicate/package.json | 2 +- .../plugin-action-export/package.json | 2 +- .../plugin-action-import/package.json | 2 +- .../plugin-action-print/package.json | 2 +- .../plugins/@nocobase/plugin-ai/package.json | 2 +- .../@nocobase/plugin-api-doc/package.json | 2 +- .../@nocobase/plugin-api-keys/package.json | 2 +- .../plugin-async-task-manager/package.json | 2 +- .../@nocobase/plugin-audit-logs/package.json | 2 +- .../@nocobase/plugin-auth-sms/package.json | 2 +- .../@nocobase/plugin-auth/package.json | 2 +- .../plugin-backup-restore/package.json | 2 +- .../plugin-block-iframe/package.json | 2 +- .../plugin-block-template/package.json | 2 +- .../plugin-block-workbench/package.json | 2 +- .../@nocobase/plugin-calendar/package.json | 2 +- .../@nocobase/plugin-charts/package.json | 2 +- .../@nocobase/plugin-client/package.json | 2 +- .../plugin-collection-sql/package.json | 2 +- .../plugin-collection-tree/package.json | 2 +- .../plugin-data-source-main/package.json | 2 +- .../plugin-data-source-manager/package.json | 2 +- .../plugin-data-visualization/package.json | 2 +- .../plugin-disable-pm-add/package.json | 2 +- .../plugin-environment-variables/package.json | 2 +- .../plugin-error-handler/package.json | 2 +- .../plugin-field-china-region/package.json | 2 +- .../plugin-field-formula/package.json | 2 +- .../plugin-field-m2m-array/package.json | 2 +- .../plugin-field-markdown-vditor/package.json | 2 +- .../plugin-field-sequence/package.json | 2 +- .../@nocobase/plugin-field-sort/package.json | 2 +- .../plugin-file-manager/package.json | 2 +- .../@nocobase/plugin-gantt/package.json | 2 +- .../package.json | 2 +- .../@nocobase/plugin-kanban/package.json | 2 +- .../plugin-locale-tester/package.json | 2 +- .../plugin-localization/package.json | 2 +- .../@nocobase/plugin-logger/package.json | 2 +- .../plugins/@nocobase/plugin-map/package.json | 2 +- .../plugin-mobile-client/package.json | 2 +- .../@nocobase/plugin-mobile/package.json | 2 +- .../plugin-mock-collections/package.json | 2 +- .../plugin-multi-app-manager/package.json | 2 +- .../package.json | 2 +- .../plugin-notification-email/package.json | 2 +- .../package.json | 2 +- .../plugin-notification-manager/package.json | 2 +- .../plugin-notifications/package.json | 2 +- .../plugin-public-forms/package.json | 2 +- .../plugin-sample-hello/package.json | 2 +- .../plugin-snapshot-field/package.json | 2 +- .../plugin-system-settings/package.json | 2 +- .../plugin-theme-editor/package.json | 2 +- .../plugin-ui-schema-storage/package.json | 2 +- .../plugin-user-data-sync/package.json | 2 +- .../@nocobase/plugin-users/package.json | 2 +- .../plugin-verification/package.json | 2 +- .../package.json | 2 +- .../plugin-workflow-aggregate/package.json | 2 +- .../plugin-workflow-delay/package.json | 2 +- .../package.json | 2 +- .../plugin-workflow-loop/package.json | 2 +- .../plugin-workflow-mailer/package.json | 2 +- .../plugin-workflow-manual/package.json | 2 +- .../plugin-workflow-notification/package.json | 2 +- .../plugin-workflow-parallel/package.json | 2 +- .../plugin-workflow-request/package.json | 2 +- .../plugin-workflow-sql/package.json | 2 +- .../plugin-workflow-test/package.json | 2 +- .../@nocobase/plugin-workflow/package.json | 4 +- packages/presets/nocobase/package.json | 146 +++++++++--------- 98 files changed, 219 insertions(+), 219 deletions(-) diff --git a/lerna.json b/lerna.json index d7f203d8ac..d73c5768af 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "npmClient": "yarn", "useWorkspaces": true, "npmClientArgs": ["--ignore-engines"], diff --git a/packages/core/acl/package.json b/packages/core/acl/package.json index 330795e2f5..2342248be4 100644 --- a/packages/core/acl/package.json +++ b/packages/core/acl/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/acl", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/resourcer": "1.7.0-beta.12", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/resourcer": "1.7.0-beta.13", + "@nocobase/utils": "1.7.0-beta.13", "minimatch": "^5.1.1" }, "repository": { diff --git a/packages/core/actions/package.json b/packages/core/actions/package.json index 0ff6035665..fb79f40063 100644 --- a/packages/core/actions/package.json +++ b/packages/core/actions/package.json @@ -1,14 +1,14 @@ { "name": "@nocobase/actions", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/cache": "1.7.0-beta.12", - "@nocobase/database": "1.7.0-beta.12", - "@nocobase/resourcer": "1.7.0-beta.12" + "@nocobase/cache": "1.7.0-beta.13", + "@nocobase/database": "1.7.0-beta.13", + "@nocobase/resourcer": "1.7.0-beta.13" }, "repository": { "type": "git", diff --git a/packages/core/app/package.json b/packages/core/app/package.json index 50a99c0c0a..dbadeaa9f5 100644 --- a/packages/core/app/package.json +++ b/packages/core/app/package.json @@ -1,17 +1,17 @@ { "name": "@nocobase/app", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/database": "1.7.0-beta.12", - "@nocobase/preset-nocobase": "1.7.0-beta.12", - "@nocobase/server": "1.7.0-beta.12" + "@nocobase/database": "1.7.0-beta.13", + "@nocobase/preset-nocobase": "1.7.0-beta.13", + "@nocobase/server": "1.7.0-beta.13" }, "devDependencies": { - "@nocobase/client": "1.7.0-beta.12" + "@nocobase/client": "1.7.0-beta.13" }, "repository": { "type": "git", diff --git a/packages/core/auth/package.json b/packages/core/auth/package.json index 727831fc2f..d4040f562d 100644 --- a/packages/core/auth/package.json +++ b/packages/core/auth/package.json @@ -1,16 +1,16 @@ { "name": "@nocobase/auth", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/actions": "1.7.0-beta.12", - "@nocobase/cache": "1.7.0-beta.12", - "@nocobase/database": "1.7.0-beta.12", - "@nocobase/resourcer": "1.7.0-beta.12", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/actions": "1.7.0-beta.13", + "@nocobase/cache": "1.7.0-beta.13", + "@nocobase/database": "1.7.0-beta.13", + "@nocobase/resourcer": "1.7.0-beta.13", + "@nocobase/utils": "1.7.0-beta.13", "@types/jsonwebtoken": "^8.5.8", "jsonwebtoken": "^8.5.1" }, diff --git a/packages/core/build/package.json b/packages/core/build/package.json index a734ed24e2..c4a9d5881f 100644 --- a/packages/core/build/package.json +++ b/packages/core/build/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/build", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "Library build tool based on rollup.", "main": "lib/index.js", "types": "./lib/index.d.ts", diff --git a/packages/core/cache/package.json b/packages/core/cache/package.json index 1ff4683d88..59b32a95bd 100644 --- a/packages/core/cache/package.json +++ b/packages/core/cache/package.json @@ -1,12 +1,12 @@ { "name": "@nocobase/cache", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/lock-manager": "1.7.0-beta.12", + "@nocobase/lock-manager": "1.7.0-beta.13", "bloom-filters": "^3.0.1", "cache-manager": "^5.2.4", "cache-manager-redis-yet": "^4.1.2" diff --git a/packages/core/cli/package.json b/packages/core/cli/package.json index 40eb72242d..d6eb6a4e7f 100644 --- a/packages/core/cli/package.json +++ b/packages/core/cli/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/cli", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./src/index.js", @@ -8,7 +8,7 @@ "nocobase": "./bin/index.js" }, "dependencies": { - "@nocobase/app": "1.7.0-beta.12", + "@nocobase/app": "1.7.0-beta.13", "@types/fs-extra": "^11.0.1", "@umijs/utils": "3.5.20", "chalk": "^4.1.1", @@ -25,7 +25,7 @@ "tsx": "^4.19.0" }, "devDependencies": { - "@nocobase/devtools": "1.7.0-beta.12" + "@nocobase/devtools": "1.7.0-beta.13" }, "repository": { "type": "git", diff --git a/packages/core/client/package.json b/packages/core/client/package.json index 6c91930d52..64f8d458a5 100644 --- a/packages/core/client/package.json +++ b/packages/core/client/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/client", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "lib/index.js", "module": "es/index.mjs", @@ -27,9 +27,9 @@ "@formily/reactive-react": "^2.2.27", "@formily/shared": "^2.2.27", "@formily/validator": "^2.2.27", - "@nocobase/evaluators": "1.7.0-beta.12", - "@nocobase/sdk": "1.7.0-beta.12", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/evaluators": "1.7.0-beta.13", + "@nocobase/sdk": "1.7.0-beta.13", + "@nocobase/utils": "1.7.0-beta.13", "ahooks": "^3.7.2", "antd": "5.24.2", "antd-style": "3.7.1", diff --git a/packages/core/create-nocobase-app/package.json b/packages/core/create-nocobase-app/package.json index 3aaa63a349..4eecf44046 100755 --- a/packages/core/create-nocobase-app/package.json +++ b/packages/core/create-nocobase-app/package.json @@ -1,6 +1,6 @@ { "name": "create-nocobase-app", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "src/index.js", "license": "AGPL-3.0", "dependencies": { diff --git a/packages/core/data-source-manager/package.json b/packages/core/data-source-manager/package.json index 9e94e4bdc2..14ada18cf1 100644 --- a/packages/core/data-source-manager/package.json +++ b/packages/core/data-source-manager/package.json @@ -1,16 +1,16 @@ { "name": "@nocobase/data-source-manager", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./lib/index.js", "types": "./lib/index.d.ts", "dependencies": { - "@nocobase/actions": "1.7.0-beta.12", - "@nocobase/cache": "1.7.0-beta.12", - "@nocobase/database": "1.7.0-beta.12", - "@nocobase/resourcer": "1.7.0-beta.12", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/actions": "1.7.0-beta.13", + "@nocobase/cache": "1.7.0-beta.13", + "@nocobase/database": "1.7.0-beta.13", + "@nocobase/resourcer": "1.7.0-beta.13", + "@nocobase/utils": "1.7.0-beta.13", "@types/jsonwebtoken": "^8.5.8", "jsonwebtoken": "^8.5.1" }, diff --git a/packages/core/database/package.json b/packages/core/database/package.json index f17463cee8..ec4bf4522f 100644 --- a/packages/core/database/package.json +++ b/packages/core/database/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/database", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "main": "./lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", "dependencies": { - "@nocobase/logger": "1.7.0-beta.12", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/logger": "1.7.0-beta.13", + "@nocobase/utils": "1.7.0-beta.13", "async-mutex": "^0.3.2", "chalk": "^4.1.1", "cron-parser": "4.4.0", diff --git a/packages/core/devtools/package.json b/packages/core/devtools/package.json index f96b882470..c34225b048 100644 --- a/packages/core/devtools/package.json +++ b/packages/core/devtools/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/devtools", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./src/index.js", "dependencies": { - "@nocobase/build": "1.7.0-beta.12", - "@nocobase/client": "1.7.0-beta.12", - "@nocobase/test": "1.7.0-beta.12", + "@nocobase/build": "1.7.0-beta.13", + "@nocobase/client": "1.7.0-beta.13", + "@nocobase/test": "1.7.0-beta.13", "@types/koa": "^2.15.0", "@types/koa-bodyparser": "^4.3.4", "@types/lodash": "^4.14.177", diff --git a/packages/core/evaluators/package.json b/packages/core/evaluators/package.json index 96ce1f0a30..9295ee6acc 100644 --- a/packages/core/evaluators/package.json +++ b/packages/core/evaluators/package.json @@ -1,13 +1,13 @@ { "name": "@nocobase/evaluators", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "main": "./lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", "dependencies": { "@formulajs/formulajs": "4.4.9", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/utils": "1.7.0-beta.13", "mathjs": "^10.6.0" }, "repository": { diff --git a/packages/core/lock-manager/package.json b/packages/core/lock-manager/package.json index e05f733f72..d5a4b6c746 100644 --- a/packages/core/lock-manager/package.json +++ b/packages/core/lock-manager/package.json @@ -1,10 +1,10 @@ { "name": "@nocobase/lock-manager", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "lib/index.js", "license": "AGPL-3.0", "devDependencies": { - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/utils": "1.7.0-beta.13", "async-mutex": "^0.5.0" } } diff --git a/packages/core/logger/package.json b/packages/core/logger/package.json index 44a97ee497..6f58510afe 100644 --- a/packages/core/logger/package.json +++ b/packages/core/logger/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/logger", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "nocobase logging library", "license": "AGPL-3.0", "main": "./lib/index.js", diff --git a/packages/core/resourcer/package.json b/packages/core/resourcer/package.json index e2d9d73bbd..8570766bbb 100644 --- a/packages/core/resourcer/package.json +++ b/packages/core/resourcer/package.json @@ -1,12 +1,12 @@ { "name": "@nocobase/resourcer", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "main": "./lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", "dependencies": { - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/utils": "1.7.0-beta.13", "deepmerge": "^4.2.2", "koa-compose": "^4.1.0", "lodash": "^4.17.21", diff --git a/packages/core/sdk/package.json b/packages/core/sdk/package.json index 0ab62eba25..bebb2ea8ff 100644 --- a/packages/core/sdk/package.json +++ b/packages/core/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/sdk", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/packages/core/server/package.json b/packages/core/server/package.json index 34c9fa02af..45b15b5f3f 100644 --- a/packages/core/server/package.json +++ b/packages/core/server/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/server", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", @@ -10,19 +10,19 @@ "@koa/cors": "^5.0.0", "@koa/multer": "^3.0.2", "@koa/router": "^9.4.0", - "@nocobase/acl": "1.7.0-beta.12", - "@nocobase/actions": "1.7.0-beta.12", - "@nocobase/auth": "1.7.0-beta.12", - "@nocobase/cache": "1.7.0-beta.12", - "@nocobase/data-source-manager": "1.7.0-beta.12", - "@nocobase/database": "1.7.0-beta.12", - "@nocobase/evaluators": "1.7.0-beta.12", - "@nocobase/lock-manager": "1.7.0-beta.12", - "@nocobase/logger": "1.7.0-beta.12", - "@nocobase/resourcer": "1.7.0-beta.12", - "@nocobase/sdk": "1.7.0-beta.12", - "@nocobase/telemetry": "1.7.0-beta.12", - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/acl": "1.7.0-beta.13", + "@nocobase/actions": "1.7.0-beta.13", + "@nocobase/auth": "1.7.0-beta.13", + "@nocobase/cache": "1.7.0-beta.13", + "@nocobase/data-source-manager": "1.7.0-beta.13", + "@nocobase/database": "1.7.0-beta.13", + "@nocobase/evaluators": "1.7.0-beta.13", + "@nocobase/lock-manager": "1.7.0-beta.13", + "@nocobase/logger": "1.7.0-beta.13", + "@nocobase/resourcer": "1.7.0-beta.13", + "@nocobase/sdk": "1.7.0-beta.13", + "@nocobase/telemetry": "1.7.0-beta.13", + "@nocobase/utils": "1.7.0-beta.13", "@types/decompress": "4.2.7", "@types/ini": "^1.3.31", "@types/koa-send": "^4.1.3", diff --git a/packages/core/telemetry/package.json b/packages/core/telemetry/package.json index ddb1a514f0..96bd83d38c 100644 --- a/packages/core/telemetry/package.json +++ b/packages/core/telemetry/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/telemetry", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "nocobase telemetry library", "license": "AGPL-3.0", "main": "./lib/index.js", @@ -11,7 +11,7 @@ "directory": "packages/telemetry" }, "dependencies": { - "@nocobase/utils": "1.7.0-beta.12", + "@nocobase/utils": "1.7.0-beta.13", "@opentelemetry/api": "^1.7.0", "@opentelemetry/instrumentation": "^0.46.0", "@opentelemetry/resources": "^1.19.0", diff --git a/packages/core/test/package.json b/packages/core/test/package.json index 954ba71f79..e7b5bd74fc 100644 --- a/packages/core/test/package.json +++ b/packages/core/test/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/test", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "lib/index.js", "module": "./src/index.ts", "types": "./lib/index.d.ts", @@ -51,7 +51,7 @@ }, "dependencies": { "@faker-js/faker": "8.1.0", - "@nocobase/server": "1.7.0-beta.12", + "@nocobase/server": "1.7.0-beta.13", "@playwright/test": "^1.45.3", "@testing-library/jest-dom": "^6.4.2", "@testing-library/react": "^14.0.0", diff --git a/packages/core/utils/package.json b/packages/core/utils/package.json index 986e033e79..ebb3dafb6b 100644 --- a/packages/core/utils/package.json +++ b/packages/core/utils/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/utils", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "lib/index.js", "types": "./lib/index.d.ts", "license": "AGPL-3.0", diff --git a/packages/plugins/@nocobase/plugin-acl/package.json b/packages/plugins/@nocobase/plugin-acl/package.json index 7261345e22..085c9b512f 100644 --- a/packages/plugins/@nocobase/plugin-acl/package.json +++ b/packages/plugins/@nocobase/plugin-acl/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "权限控制", "description": "Based on roles, resources, and actions, access control can precisely manage interface configuration permissions, data operation permissions, menu access permissions, and plugin permissions.", "description.zh-CN": "基于角色、资源和操作的权限控制,可以精确控制界面配置权限、数据操作权限、菜单访问权限、插件权限。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/acl", diff --git a/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json b/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json index 533b6dca11..49799140e0 100644 --- a/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json +++ b/packages/plugins/@nocobase/plugin-action-bulk-edit/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-bulk-edit", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-bulk-edit", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-edit", diff --git a/packages/plugins/@nocobase/plugin-action-bulk-update/package.json b/packages/plugins/@nocobase/plugin-action-bulk-update/package.json index 359e44e955..998debb8e0 100644 --- a/packages/plugins/@nocobase/plugin-action-bulk-update/package.json +++ b/packages/plugins/@nocobase/plugin-action-bulk-update/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-bulk-update", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-bulk-update", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-update", diff --git a/packages/plugins/@nocobase/plugin-action-custom-request/package.json b/packages/plugins/@nocobase/plugin-action-custom-request/package.json index d373f2fcba..48fb027df2 100644 --- a/packages/plugins/@nocobase/plugin-action-custom-request/package.json +++ b/packages/plugins/@nocobase/plugin-action-custom-request/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-custom-request", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-custom-request", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-custom-request", diff --git a/packages/plugins/@nocobase/plugin-action-duplicate/package.json b/packages/plugins/@nocobase/plugin-action-duplicate/package.json index 3538cda4c2..f7316b5fee 100644 --- a/packages/plugins/@nocobase/plugin-action-duplicate/package.json +++ b/packages/plugins/@nocobase/plugin-action-duplicate/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-duplicate", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-duplicate", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-duplicate", diff --git a/packages/plugins/@nocobase/plugin-action-export/package.json b/packages/plugins/@nocobase/plugin-action-export/package.json index ecc16982ff..6f38f2e945 100644 --- a/packages/plugins/@nocobase/plugin-action-export/package.json +++ b/packages/plugins/@nocobase/plugin-action-export/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "操作:导出记录", "description": "Export filtered records to excel, you can configure which fields to export.", "description.zh-CN": "导出筛选后的记录到 Excel 中,可以配置导出哪些字段。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-export", diff --git a/packages/plugins/@nocobase/plugin-action-import/package.json b/packages/plugins/@nocobase/plugin-action-import/package.json index 9ba8e5df4c..e74d771f21 100644 --- a/packages/plugins/@nocobase/plugin-action-import/package.json +++ b/packages/plugins/@nocobase/plugin-action-import/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "操作:导入记录", "description": "Import records using excel templates. You can configure which fields to import and templates will be generated automatically.", "description.zh-CN": "使用 Excel 模板导入数据,可以配置导入哪些字段,自动生成模板。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-import", diff --git a/packages/plugins/@nocobase/plugin-action-print/package.json b/packages/plugins/@nocobase/plugin-action-print/package.json index f5df21d5bc..2ecdada485 100644 --- a/packages/plugins/@nocobase/plugin-action-print/package.json +++ b/packages/plugins/@nocobase/plugin-action-print/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-action-print", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/action-print", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-print", diff --git a/packages/plugins/@nocobase/plugin-ai/package.json b/packages/plugins/@nocobase/plugin-ai/package.json index e33880237f..d904bc27c2 100644 --- a/packages/plugins/@nocobase/plugin-ai/package.json +++ b/packages/plugins/@nocobase/plugin-ai/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "AI 集成", "description": "Support integration with AI services, providing AI-related workflow nodes to enhance business processing capabilities.", "description.zh-CN": "支持接入 AI 服务,提供 AI 相关的工作流节点,增强业务处理能力。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-api-doc/package.json b/packages/plugins/@nocobase/plugin-api-doc/package.json index f257f091d3..d88066fe80 100644 --- a/packages/plugins/@nocobase/plugin-api-doc/package.json +++ b/packages/plugins/@nocobase/plugin-api-doc/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-api-doc", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "API documentation", "displayName.zh-CN": "API 文档", "description": "An OpenAPI documentation generator for NocoBase HTTP API.", diff --git a/packages/plugins/@nocobase/plugin-api-keys/package.json b/packages/plugins/@nocobase/plugin-api-keys/package.json index 6156e6db21..1f1f850786 100644 --- a/packages/plugins/@nocobase/plugin-api-keys/package.json +++ b/packages/plugins/@nocobase/plugin-api-keys/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "认证:API 密钥", "description": "Allows users to use API key to access application's HTTP API", "description.zh-CN": "允许用户使用 API 密钥访问应用的 HTTP API", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/api-keys", diff --git a/packages/plugins/@nocobase/plugin-async-task-manager/package.json b/packages/plugins/@nocobase/plugin-async-task-manager/package.json index bec04221b7..31d8946930 100644 --- a/packages/plugins/@nocobase/plugin-async-task-manager/package.json +++ b/packages/plugins/@nocobase/plugin-async-task-manager/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "异步任务管理器", "description": "Manage and monitor asynchronous tasks such as data import/export. Support task progress tracking and notification.", "description.zh-CN": "管理和监控数据导入导出等异步任务。支持任务进度跟踪和通知。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-audit-logs/package.json b/packages/plugins/@nocobase/plugin-audit-logs/package.json index 5190c3d5f9..91c3d53f70 100644 --- a/packages/plugins/@nocobase/plugin-audit-logs/package.json +++ b/packages/plugins/@nocobase/plugin-audit-logs/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-audit-logs", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Audit logs (deprecated)", "displayName.zh-CN": "审计日志(废弃)", "description": "This plugin is deprecated. There will be a new audit log plugin in the future.", diff --git a/packages/plugins/@nocobase/plugin-auth-sms/package.json b/packages/plugins/@nocobase/plugin-auth-sms/package.json index 54308681c8..6da2f693b2 100644 --- a/packages/plugins/@nocobase/plugin-auth-sms/package.json +++ b/packages/plugins/@nocobase/plugin-auth-sms/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "认证:短信", "description": "SMS authentication.", "description.zh-CN": "通过短信验证码认证身份。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/auth-sms", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth-sms", diff --git a/packages/plugins/@nocobase/plugin-auth/package.json b/packages/plugins/@nocobase/plugin-auth/package.json index bdf1b4fac1..306eb73f8f 100644 --- a/packages/plugins/@nocobase/plugin-auth/package.json +++ b/packages/plugins/@nocobase/plugin-auth/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-auth", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/auth", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth", diff --git a/packages/plugins/@nocobase/plugin-backup-restore/package.json b/packages/plugins/@nocobase/plugin-backup-restore/package.json index 7f789b5f22..60f750992e 100644 --- a/packages/plugins/@nocobase/plugin-backup-restore/package.json +++ b/packages/plugins/@nocobase/plugin-backup-restore/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "应用的备份与还原(废弃)", "description": "Backup and restore applications for scenarios such as application replication, migration, and upgrades.", "description.zh-CN": "备份和还原应用,可用于应用的复制、迁移、升级等场景。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/backup-restore", diff --git a/packages/plugins/@nocobase/plugin-block-iframe/package.json b/packages/plugins/@nocobase/plugin-block-iframe/package.json index e8cc026cd3..ccc4e950e9 100644 --- a/packages/plugins/@nocobase/plugin-block-iframe/package.json +++ b/packages/plugins/@nocobase/plugin-block-iframe/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "区块:iframe", "description": "Create an iframe block on the page to embed and display external web pages or content.", "description.zh-CN": "在页面上创建和管理iframe,用于嵌入和展示外部网页或内容。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/block-iframe", diff --git a/packages/plugins/@nocobase/plugin-block-template/package.json b/packages/plugins/@nocobase/plugin-block-template/package.json index 529d77dd75..db09178253 100644 --- a/packages/plugins/@nocobase/plugin-block-template/package.json +++ b/packages/plugins/@nocobase/plugin-block-template/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "区块:模板", "description": "Create and manage block templates for reuse on pages.", "description.zh-CN": "创建和管理区块模板,用于在页面中重复使用。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/block-template", diff --git a/packages/plugins/@nocobase/plugin-block-workbench/package.json b/packages/plugins/@nocobase/plugin-block-workbench/package.json index 34a93d0681..45bb2fc47c 100644 --- a/packages/plugins/@nocobase/plugin-block-workbench/package.json +++ b/packages/plugins/@nocobase/plugin-block-workbench/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-block-workbench", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Block: Action panel", "displayName.zh-CN": "区块:操作面板", "description": "Centrally manages and displays various actions, allowing users to efficiently perform tasks. It supports extensibility, with current action types including pop-ups, links, scanning, and custom requests.", diff --git a/packages/plugins/@nocobase/plugin-calendar/package.json b/packages/plugins/@nocobase/plugin-calendar/package.json index 4b2ba2be5e..d9b43dd0f8 100644 --- a/packages/plugins/@nocobase/plugin-calendar/package.json +++ b/packages/plugins/@nocobase/plugin-calendar/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-calendar", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Calendar", "displayName.zh-CN": "日历", "description": "Provides callendar collection template and block for managing date data, typically for date/time related information such as events, appointments, tasks, and so on.", diff --git a/packages/plugins/@nocobase/plugin-charts/package.json b/packages/plugins/@nocobase/plugin-charts/package.json index ede1249592..a7cc7cef2e 100644 --- a/packages/plugins/@nocobase/plugin-charts/package.json +++ b/packages/plugins/@nocobase/plugin-charts/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "图表(废弃)", "description": "The plugin has been deprecated, please use the data visualization plugin instead.", "description.zh-CN": "已废弃插件,请使用数据可视化插件代替。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "license": "AGPL-3.0", "devDependencies": { diff --git a/packages/plugins/@nocobase/plugin-client/package.json b/packages/plugins/@nocobase/plugin-client/package.json index 2668c8c0f1..0383bc4800 100644 --- a/packages/plugins/@nocobase/plugin-client/package.json +++ b/packages/plugins/@nocobase/plugin-client/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "WEB 客户端", "description": "Provides a client interface for the NocoBase server", "description.zh-CN": "为 NocoBase 服务端提供客户端界面", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "license": "AGPL-3.0", "devDependencies": { diff --git a/packages/plugins/@nocobase/plugin-collection-sql/package.json b/packages/plugins/@nocobase/plugin-collection-sql/package.json index ea42133097..d7e47815b1 100644 --- a/packages/plugins/@nocobase/plugin-collection-sql/package.json +++ b/packages/plugins/@nocobase/plugin-collection-sql/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表: SQL", "description": "Provides SQL collection template", "description.zh-CN": "提供 SQL 数据表模板", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "homepage": "https://docs-cn.nocobase.com/handbook/collection-sql", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/collection-sql", "main": "dist/server/index.js", diff --git a/packages/plugins/@nocobase/plugin-collection-tree/package.json b/packages/plugins/@nocobase/plugin-collection-tree/package.json index cf953a60b5..8106af3217 100644 --- a/packages/plugins/@nocobase/plugin-collection-tree/package.json +++ b/packages/plugins/@nocobase/plugin-collection-tree/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-collection-tree", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Collection: Tree", "displayName.zh-CN": "数据表:树", "description": "Provides tree collection template", diff --git a/packages/plugins/@nocobase/plugin-data-source-main/package.json b/packages/plugins/@nocobase/plugin-data-source-main/package.json index 688c6894f2..65d682030e 100644 --- a/packages/plugins/@nocobase/plugin-data-source-main/package.json +++ b/packages/plugins/@nocobase/plugin-data-source-main/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据源:主数据库", "description": "NocoBase main database, supports relational databases such as PostgreSQL, MySQL, MariaDB and so on.", "description.zh-CN": "NocoBase 主数据库,支持 PostgreSQL、MySQL、MariaDB 等关系型数据库。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/data-source-main", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/data-source-main", diff --git a/packages/plugins/@nocobase/plugin-data-source-manager/package.json b/packages/plugins/@nocobase/plugin-data-source-manager/package.json index b650c28253..24fd01fbfc 100644 --- a/packages/plugins/@nocobase/plugin-data-source-manager/package.json +++ b/packages/plugins/@nocobase/plugin-data-source-manager/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-data-source-manager", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "displayName": "Data source manager", "displayName.zh-CN": "数据源管理", diff --git a/packages/plugins/@nocobase/plugin-data-visualization/package.json b/packages/plugins/@nocobase/plugin-data-visualization/package.json index 039a92459e..109fbc335d 100644 --- a/packages/plugins/@nocobase/plugin-data-visualization/package.json +++ b/packages/plugins/@nocobase/plugin-data-visualization/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-data-visualization", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Data visualization", "displayName.zh-CN": "数据可视化", "description": "Provides data visualization feature, including chart block and chart filter block, support line charts, area charts, bar charts and more than a dozen kinds of charts, you can also extend more chart types.", diff --git a/packages/plugins/@nocobase/plugin-disable-pm-add/package.json b/packages/plugins/@nocobase/plugin-disable-pm-add/package.json index 3b09db1e68..24bff82679 100644 --- a/packages/plugins/@nocobase/plugin-disable-pm-add/package.json +++ b/packages/plugins/@nocobase/plugin-disable-pm-add/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-disable-pm-add", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-environment-variables/package.json b/packages/plugins/@nocobase/plugin-environment-variables/package.json index 4ebf6b978f..9018c2c02c 100644 --- a/packages/plugins/@nocobase/plugin-environment-variables/package.json +++ b/packages/plugins/@nocobase/plugin-environment-variables/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-environment-variables", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-error-handler/package.json b/packages/plugins/@nocobase/plugin-error-handler/package.json index b9ffdbc28a..cbdf6b3246 100644 --- a/packages/plugins/@nocobase/plugin-error-handler/package.json +++ b/packages/plugins/@nocobase/plugin-error-handler/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "错误处理器", "description": "Handling application errors and exceptions.", "description.zh-CN": "处理应用程序中的错误和异常。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "devDependencies": { diff --git a/packages/plugins/@nocobase/plugin-field-china-region/package.json b/packages/plugins/@nocobase/plugin-field-china-region/package.json index 97fc9e1c20..07f734683c 100644 --- a/packages/plugins/@nocobase/plugin-field-china-region/package.json +++ b/packages/plugins/@nocobase/plugin-field-china-region/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-field-china-region", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Collection field: administrative divisions of China", "displayName.zh-CN": "数据表字段:中国行政区划", "description": "Provides data and field type for administrative divisions of China.", diff --git a/packages/plugins/@nocobase/plugin-field-formula/package.json b/packages/plugins/@nocobase/plugin-field-formula/package.json index d81164cd47..ddacff1609 100644 --- a/packages/plugins/@nocobase/plugin-field-formula/package.json +++ b/packages/plugins/@nocobase/plugin-field-formula/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:公式", "description": "Configure and store the results of calculations between multiple field values in the same record, supporting both Math.js and Excel formula functions.", "description.zh-CN": "可以配置并存储同一条记录的多字段值之间的计算结果,支持 Math.js 和 Excel formula functions 两种引擎", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-formula", diff --git a/packages/plugins/@nocobase/plugin-field-m2m-array/package.json b/packages/plugins/@nocobase/plugin-field-m2m-array/package.json index 45fb4e842f..bdaf48226d 100644 --- a/packages/plugins/@nocobase/plugin-field-m2m-array/package.json +++ b/packages/plugins/@nocobase/plugin-field-m2m-array/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:多对多 (数组)", "description": "Allows to create many to many relationships between two models by storing an array of unique keys of the target model.", "description.zh-CN": "支持通过在数组中存储目标表唯一键的方式建立多对多关系。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json b/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json index 94e70f3859..084cef943f 100644 --- a/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json +++ b/packages/plugins/@nocobase/plugin-field-markdown-vditor/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:Markdown(Vditor)", "description": "Used to store Markdown and render it using Vditor editor, supports common Markdown syntax such as list, code, quote, etc., and supports uploading images, recordings, etc.It also allows for instant rendering, where what you see is what you get.", "description.zh-CN": "用于存储 Markdown,并使用 Vditor 编辑器渲染,支持常见 Markdown 语法,如列表,代码,引用等,并支持上传图片,录音等。同时可以做到即时渲染,所见即所得。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-markdown-vditor", diff --git a/packages/plugins/@nocobase/plugin-field-sequence/package.json b/packages/plugins/@nocobase/plugin-field-sequence/package.json index f93208658d..edcbb4d17a 100644 --- a/packages/plugins/@nocobase/plugin-field-sequence/package.json +++ b/packages/plugins/@nocobase/plugin-field-sequence/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:自动编码", "description": "Automatically generate codes based on configured rules, supporting combinations of dates, numbers, and text.", "description.zh-CN": "根据配置的规则自动生成编码,支持日期、数字、文本的组合。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-sequence", diff --git a/packages/plugins/@nocobase/plugin-field-sort/package.json b/packages/plugins/@nocobase/plugin-field-sort/package.json index 0efeb2bf60..42715fa7f9 100644 --- a/packages/plugins/@nocobase/plugin-field-sort/package.json +++ b/packages/plugins/@nocobase/plugin-field-sort/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-field-sort", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "displayName": "Collection field: Sort", "displayName.zh-CN": "数据表字段:排序", diff --git a/packages/plugins/@nocobase/plugin-file-manager/package.json b/packages/plugins/@nocobase/plugin-file-manager/package.json index 5419a30054..fe4f2d6a67 100644 --- a/packages/plugins/@nocobase/plugin-file-manager/package.json +++ b/packages/plugins/@nocobase/plugin-file-manager/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-file-manager", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "File manager", "displayName.zh-CN": "文件管理器", "description": "Provides files storage services with files collection template and attachment field.", diff --git a/packages/plugins/@nocobase/plugin-gantt/package.json b/packages/plugins/@nocobase/plugin-gantt/package.json index 562b54f06a..573eb3c804 100644 --- a/packages/plugins/@nocobase/plugin-gantt/package.json +++ b/packages/plugins/@nocobase/plugin-gantt/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-gantt", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Block: Gantt", "displayName.zh-CN": "区块:甘特图", "description": "Provides Gantt block.", diff --git a/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json b/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json index 3d92a9a900..36e0be3a85 100644 --- a/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json +++ b/packages/plugins/@nocobase/plugin-graph-collection-manager/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "可视化数据表管理", "description": "An ER diagram-like tool. Currently only the Master database is supported.", "description.zh-CN": "类似 ER 图的工具,目前只支持主数据库。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/graph-collection-manager", diff --git a/packages/plugins/@nocobase/plugin-kanban/package.json b/packages/plugins/@nocobase/plugin-kanban/package.json index 5cea71d568..0db308bdfd 100644 --- a/packages/plugins/@nocobase/plugin-kanban/package.json +++ b/packages/plugins/@nocobase/plugin-kanban/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-kanban", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/block-kanban", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/block-kanban", diff --git a/packages/plugins/@nocobase/plugin-locale-tester/package.json b/packages/plugins/@nocobase/plugin-locale-tester/package.json index 0a785241fd..462d102f5e 100644 --- a/packages/plugins/@nocobase/plugin-locale-tester/package.json +++ b/packages/plugins/@nocobase/plugin-locale-tester/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-locale-tester", "displayName": "Locale tester", "displayName.zh-CN": "翻译测试工具", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "homepage": "https://github.com/nocobase/locales", "main": "dist/server/index.js", "peerDependencies": { diff --git a/packages/plugins/@nocobase/plugin-localization/package.json b/packages/plugins/@nocobase/plugin-localization/package.json index edae322a60..61aac5d717 100644 --- a/packages/plugins/@nocobase/plugin-localization/package.json +++ b/packages/plugins/@nocobase/plugin-localization/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-localization", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/localization-management", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/localization-management", diff --git a/packages/plugins/@nocobase/plugin-logger/package.json b/packages/plugins/@nocobase/plugin-logger/package.json index 98e51925a5..e2852b77ad 100644 --- a/packages/plugins/@nocobase/plugin-logger/package.json +++ b/packages/plugins/@nocobase/plugin-logger/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "日志", "description": "Server-side logs, mainly including API request logs and system runtime logs, and allows to package and download log files.", "description.zh-CN": "服务端日志,主要包括接口请求日志和系统运行日志,并支持打包和下载日志文件。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/logger", diff --git a/packages/plugins/@nocobase/plugin-map/package.json b/packages/plugins/@nocobase/plugin-map/package.json index 89175cb90b..981299477d 100644 --- a/packages/plugins/@nocobase/plugin-map/package.json +++ b/packages/plugins/@nocobase/plugin-map/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-map", "displayName": "Block: Map", "displayName.zh-CN": "区块:地图", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "Map block, support Gaode map and Google map, you can also extend more map types.", "description.zh-CN": "地图区块,支持高德地图和 Google 地图,你也可以扩展更多地图类型。", "license": "AGPL-3.0", diff --git a/packages/plugins/@nocobase/plugin-mobile-client/package.json b/packages/plugins/@nocobase/plugin-mobile-client/package.json index e2e3b18a10..fc68bbca65 100644 --- a/packages/plugins/@nocobase/plugin-mobile-client/package.json +++ b/packages/plugins/@nocobase/plugin-mobile-client/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-mobile-client", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/mobile-client", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/mobile-client", diff --git a/packages/plugins/@nocobase/plugin-mobile/package.json b/packages/plugins/@nocobase/plugin-mobile/package.json index c1fd3a3152..b43478c45e 100644 --- a/packages/plugins/@nocobase/plugin-mobile/package.json +++ b/packages/plugins/@nocobase/plugin-mobile/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-mobile", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/mobile", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/mobile", diff --git a/packages/plugins/@nocobase/plugin-mock-collections/package.json b/packages/plugins/@nocobase/plugin-mock-collections/package.json index 5d52fd6eda..de7140fa65 100644 --- a/packages/plugins/@nocobase/plugin-mock-collections/package.json +++ b/packages/plugins/@nocobase/plugin-mock-collections/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-mock-collections", "displayName": "mock-collections", "description": "mock-collections", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "license": "AGPL-3.0", "peerDependencies": { diff --git a/packages/plugins/@nocobase/plugin-multi-app-manager/package.json b/packages/plugins/@nocobase/plugin-multi-app-manager/package.json index 69fd2d211b..89a4614706 100644 --- a/packages/plugins/@nocobase/plugin-multi-app-manager/package.json +++ b/packages/plugins/@nocobase/plugin-multi-app-manager/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "多应用管理器", "description": "Dynamically create multiple apps without separate deployments.", "description.zh-CN": "无需单独部署即可动态创建多个应用。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/multi-app-manager", diff --git a/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json b/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json index 87c6283194..8a8ad975fd 100644 --- a/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json +++ b/packages/plugins/@nocobase/plugin-multi-app-share-collection/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "多应用数据表共享", "description": "", "description.zh-CN": "", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "devDependencies": { "@formily/react": "2.x", diff --git a/packages/plugins/@nocobase/plugin-notification-email/package.json b/packages/plugins/@nocobase/plugin-notification-email/package.json index fa9d4b5561..81f13182fc 100644 --- a/packages/plugins/@nocobase/plugin-notification-email/package.json +++ b/packages/plugins/@nocobase/plugin-notification-email/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-notification-email", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Notification: Email", "displayName.zh-CN": "通知:电子邮件", "description": "Used for sending email notifications with built-in SMTP transport.", diff --git a/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json b/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json index a8e1ec7af9..55db73ee89 100644 --- a/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json +++ b/packages/plugins/@nocobase/plugin-notification-in-app-message/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-notification-in-app-message", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "displayName": "Notification: In-app message", "displayName.zh-CN": "通知:站内信", "description": "It supports users in receiving real-time message notifications within the NocoBase application.", diff --git a/packages/plugins/@nocobase/plugin-notification-manager/package.json b/packages/plugins/@nocobase/plugin-notification-manager/package.json index dcad30212c..8e085b994e 100644 --- a/packages/plugins/@nocobase/plugin-notification-manager/package.json +++ b/packages/plugins/@nocobase/plugin-notification-manager/package.json @@ -4,7 +4,7 @@ "description": "Provides a unified management service that includes channel configuration, logging, and other features, supporting the configuration of various notification channels, including in-app message and email.", "displayName.zh-CN": "通知管理", "description.zh-CN": "提供统一的管理服务,涵盖渠道配置、日志记录等功能,支持多种通知渠道的配置,包括站内信和电子邮件等。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "homepage": "https://docs.nocobase.com/handbook/notification-manager", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/notification-manager", "main": "dist/server/index.js", diff --git a/packages/plugins/@nocobase/plugin-notifications/package.json b/packages/plugins/@nocobase/plugin-notifications/package.json index 0d3bc22d78..332cbcc6af 100644 --- a/packages/plugins/@nocobase/plugin-notifications/package.json +++ b/packages/plugins/@nocobase/plugin-notifications/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-notifications", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "description": "", "license": "AGPL-3.0", "main": "./dist/server/index.js", diff --git a/packages/plugins/@nocobase/plugin-public-forms/package.json b/packages/plugins/@nocobase/plugin-public-forms/package.json index c657029a8a..ddd96d4b44 100644 --- a/packages/plugins/@nocobase/plugin-public-forms/package.json +++ b/packages/plugins/@nocobase/plugin-public-forms/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-public-forms", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "displayName": "Public forms", "displayName.zh-CN": "公开表单", diff --git a/packages/plugins/@nocobase/plugin-sample-hello/package.json b/packages/plugins/@nocobase/plugin-sample-hello/package.json index 2e361e1e10..7983a91da0 100644 --- a/packages/plugins/@nocobase/plugin-sample-hello/package.json +++ b/packages/plugins/@nocobase/plugin-sample-hello/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-sample-hello", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "./dist/server/index.js", "displayName": "Hello", "displayName.zh-CN": "Hello", diff --git a/packages/plugins/@nocobase/plugin-snapshot-field/package.json b/packages/plugins/@nocobase/plugin-snapshot-field/package.json index 901238cb10..115d86b0c6 100644 --- a/packages/plugins/@nocobase/plugin-snapshot-field/package.json +++ b/packages/plugins/@nocobase/plugin-snapshot-field/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "数据表字段:关系快照", "description": "When adding a new record, create a snapshot for its relational record and save in the new record. The snapshot will not be updated when the relational record is updated.", "description.zh-CN": "在添加数据时,为它的关系数据创建快照,并保存在当前的数据中。关系数据更新时,快照不会更新。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/field-snapshot", diff --git a/packages/plugins/@nocobase/plugin-system-settings/package.json b/packages/plugins/@nocobase/plugin-system-settings/package.json index 148d55aafa..74d39c3303 100644 --- a/packages/plugins/@nocobase/plugin-system-settings/package.json +++ b/packages/plugins/@nocobase/plugin-system-settings/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "系统设置", "description": "Used to adjust the system title, logo, language, etc.", "description.zh-CN": "用于调整系统的标题、LOGO、语言等。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/system-settings", diff --git a/packages/plugins/@nocobase/plugin-theme-editor/package.json b/packages/plugins/@nocobase/plugin-theme-editor/package.json index c1e64c1e14..6a41c5cb92 100644 --- a/packages/plugins/@nocobase/plugin-theme-editor/package.json +++ b/packages/plugins/@nocobase/plugin-theme-editor/package.json @@ -1,6 +1,6 @@ { "name": "@nocobase/plugin-theme-editor", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/theme-editor", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/theme-editor", diff --git a/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json b/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json index 787632b589..e2ce1c6931 100644 --- a/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json +++ b/packages/plugins/@nocobase/plugin-ui-schema-storage/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "UI schema 存储服务", "description": "Provides centralized UI schema storage service.", "description.zh-CN": "提供中心化的 UI schema 存储服务。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/ui-schema-storage", diff --git a/packages/plugins/@nocobase/plugin-user-data-sync/package.json b/packages/plugins/@nocobase/plugin-user-data-sync/package.json index 6fc8853ca3..d4e2e6cdc2 100644 --- a/packages/plugins/@nocobase/plugin-user-data-sync/package.json +++ b/packages/plugins/@nocobase/plugin-user-data-sync/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "用户数据同步", "description": "Reigster and manage extensible user data synchronization sources, with HTTP API provided by default. Support for synchronizing data to resources such as users and departments.", "description.zh-CN": "注册和管理可扩展的用户数据同步来源,默认提供 HTTP API。支持向用户和部门等资源同步数据。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "main": "dist/server/index.js", "peerDependencies": { "@nocobase/client": "1.x", diff --git a/packages/plugins/@nocobase/plugin-users/package.json b/packages/plugins/@nocobase/plugin-users/package.json index 5a917490c2..e9f66c110f 100644 --- a/packages/plugins/@nocobase/plugin-users/package.json +++ b/packages/plugins/@nocobase/plugin-users/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "用户", "description": "Provides basic user model, as well as created by and updated by fields.", "description.zh-CN": "提供了基础的用户模型,以及创建人和最后更新人字段。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/users", diff --git a/packages/plugins/@nocobase/plugin-verification/package.json b/packages/plugins/@nocobase/plugin-verification/package.json index 9ac936cb71..4b671ba767 100644 --- a/packages/plugins/@nocobase/plugin-verification/package.json +++ b/packages/plugins/@nocobase/plugin-verification/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "验证", "description": "User identity verification management, including SMS, TOTP authenticator, with extensibility.", "description.zh-CN": "用户身份验证管理,包含短信、TOTP 认证器等,可扩展。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/verification", diff --git a/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json b/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json index 0258b75cb6..1ac943d95b 100644 --- a/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-action-trigger/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:操作后事件", "description": "Triggered after the completion of a request initiated through an action button or API, such as after adding, updating, deleting data, or \"submit to workflow\". Suitable for data processing, sending notifications, etc., after actions are completed.", "description.zh-CN": "通过操作按钮或 API 发起请求并在执行完成后触发,比如新增、更新、删除数据或者“提交至工作流”之后。适用于在操作完成后进行数据处理、发送通知等。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/plugins/workflow-action-trigger", diff --git a/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json b/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json index 6c0f8b5d27..9ba411b864 100644 --- a/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-aggregate/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:聚合查询节点", "description": "Used to aggregate data against the database in workflow, such as: statistics, sum, average, etc.", "description.zh-CN": "可用于在工作流中对数据库进行聚合查询,如:统计数量、求和、平均值等。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-aggregate", diff --git a/packages/plugins/@nocobase/plugin-workflow-delay/package.json b/packages/plugins/@nocobase/plugin-workflow-delay/package.json index a943a6ba8f..1c785aa3e3 100644 --- a/packages/plugins/@nocobase/plugin-workflow-delay/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-delay/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:延时节点", "description": "Could be used in workflow parallel branch for waiting other branches.", "description.zh-CN": "可用于工作流并行分支中等待其他分支执行完成。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-delay", diff --git a/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json b/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json index b969ec1e9e..94631d3837 100644 --- a/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-dynamic-calculation/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:动态表达式计算节点", "description": "Useful plugin for doing dynamic calculation based on expression collection records in workflow.", "description.zh-CN": "用于在工作流中进行基于数据行的动态表达式计算。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-dynamic-calculation", diff --git a/packages/plugins/@nocobase/plugin-workflow-loop/package.json b/packages/plugins/@nocobase/plugin-workflow-loop/package.json index ef8a6e460d..815ec1c6ac 100644 --- a/packages/plugins/@nocobase/plugin-workflow-loop/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-loop/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:循环节点", "description": "Used to repeat the sub-process processing of each value in an array, and can also be used for fixed times of sub-process processing.", "description.zh-CN": "用于对一个数组中的每个值进行重复的子流程处理,也可用于固定次数的重复子流程处理。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-loop", diff --git a/packages/plugins/@nocobase/plugin-workflow-mailer/package.json b/packages/plugins/@nocobase/plugin-workflow-mailer/package.json index e875485b76..97824030e8 100644 --- a/packages/plugins/@nocobase/plugin-workflow-mailer/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-mailer/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:邮件发送节点", "description": "Send email in workflow.", "description.zh-CN": "可用于在工作流中发送电子邮件。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-smtp-mailer", diff --git a/packages/plugins/@nocobase/plugin-workflow-manual/package.json b/packages/plugins/@nocobase/plugin-workflow-manual/package.json index 769822a5ce..7fef9e1019 100644 --- a/packages/plugins/@nocobase/plugin-workflow-manual/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-manual/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:人工处理节点", "description": "Could be used for workflows which some of decisions are made by users.", "description.zh-CN": "用于人工控制部分决策的流程。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-manual", diff --git a/packages/plugins/@nocobase/plugin-workflow-notification/package.json b/packages/plugins/@nocobase/plugin-workflow-notification/package.json index 322fc5b1d1..bd097a5d77 100644 --- a/packages/plugins/@nocobase/plugin-workflow-notification/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-notification/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:通知节点", "description": "Send notification in workflow.", "description.zh-CN": "可用于在工作流中发送各类通知。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-smtp-mailer", diff --git a/packages/plugins/@nocobase/plugin-workflow-parallel/package.json b/packages/plugins/@nocobase/plugin-workflow-parallel/package.json index c24733a399..8eb0f2830a 100644 --- a/packages/plugins/@nocobase/plugin-workflow-parallel/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-parallel/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:并行分支节点", "description": "Could be used for parallel execution of branch processes in the workflow.", "description.zh-CN": "用于在工作流中需要并行执行的分支流程。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-parallel", diff --git a/packages/plugins/@nocobase/plugin-workflow-request/package.json b/packages/plugins/@nocobase/plugin-workflow-request/package.json index 1f9f9254de..431556aaeb 100644 --- a/packages/plugins/@nocobase/plugin-workflow-request/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-request/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:HTTP 请求节点", "description": "Send HTTP requests to any HTTP service for data interaction in workflow.", "description.zh-CN": "可用于在工作流中向任意 HTTP 服务发送请求,进行数据交互。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-request", diff --git a/packages/plugins/@nocobase/plugin-workflow-sql/package.json b/packages/plugins/@nocobase/plugin-workflow-sql/package.json index 3e4b1c5e2a..e44ae27735 100644 --- a/packages/plugins/@nocobase/plugin-workflow-sql/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-sql/package.json @@ -4,7 +4,7 @@ "displayName.zh-CN": "工作流:SQL 节点", "description": "Execute SQL statements in workflow.", "description.zh-CN": "可用于在工作流中对数据库执行任意 SQL 语句。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow-sql", diff --git a/packages/plugins/@nocobase/plugin-workflow-test/package.json b/packages/plugins/@nocobase/plugin-workflow-test/package.json index 2802d01fa5..70d289e373 100644 --- a/packages/plugins/@nocobase/plugin-workflow-test/package.json +++ b/packages/plugins/@nocobase/plugin-workflow-test/package.json @@ -2,7 +2,7 @@ "name": "@nocobase/plugin-workflow-test", "displayName": "Workflow: test kit", "displayName.zh-CN": "工作流:测试工具包", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "dist/server/index.js", "types": "./dist/server/index.d.ts", diff --git a/packages/plugins/@nocobase/plugin-workflow/package.json b/packages/plugins/@nocobase/plugin-workflow/package.json index ec043b284e..1ab336fbbe 100644 --- a/packages/plugins/@nocobase/plugin-workflow/package.json +++ b/packages/plugins/@nocobase/plugin-workflow/package.json @@ -4,13 +4,13 @@ "displayName.zh-CN": "工作流", "description": "A powerful BPM tool that provides foundational support for business automation, with the capability to extend unlimited triggers and nodes.", "description.zh-CN": "一个强大的 BPM 工具,为业务自动化提供基础支持,并且可任意扩展更多的触发器和节点。", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./dist/server/index.js", "homepage": "https://docs.nocobase.com/handbook/workflow", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/workflow", "dependencies": { - "@nocobase/plugin-workflow-test": "1.7.0-beta.12" + "@nocobase/plugin-workflow-test": "1.7.0-beta.13" }, "devDependencies": { "@ant-design/icons": "5.x", diff --git a/packages/presets/nocobase/package.json b/packages/presets/nocobase/package.json index ef9297071e..56c50adda3 100644 --- a/packages/presets/nocobase/package.json +++ b/packages/presets/nocobase/package.json @@ -1,82 +1,82 @@ { "name": "@nocobase/preset-nocobase", - "version": "1.7.0-beta.12", + "version": "1.7.0-beta.13", "license": "AGPL-3.0", "main": "./lib/server/index.js", "dependencies": { "@formily/json-schema": "2.x", - "@nocobase/plugin-acl": "1.7.0-beta.12", - "@nocobase/plugin-action-bulk-edit": "1.7.0-beta.12", - "@nocobase/plugin-action-bulk-update": "1.7.0-beta.12", - "@nocobase/plugin-action-custom-request": "1.7.0-beta.12", - "@nocobase/plugin-action-duplicate": "1.7.0-beta.12", - "@nocobase/plugin-action-export": "1.7.0-beta.12", - "@nocobase/plugin-action-import": "1.7.0-beta.12", - "@nocobase/plugin-action-print": "1.7.0-beta.12", - "@nocobase/plugin-ai": "1.7.0-beta.12", - "@nocobase/plugin-api-doc": "1.7.0-beta.12", - "@nocobase/plugin-api-keys": "1.7.0-beta.12", - "@nocobase/plugin-async-task-manager": "1.7.0-beta.12", - "@nocobase/plugin-audit-logs": "1.7.0-beta.12", - "@nocobase/plugin-auth": "1.7.0-beta.12", - "@nocobase/plugin-auth-sms": "1.7.0-beta.12", - "@nocobase/plugin-backup-restore": "1.7.0-beta.12", - "@nocobase/plugin-block-iframe": "1.7.0-beta.12", - "@nocobase/plugin-block-template": "1.7.0-beta.12", - "@nocobase/plugin-block-workbench": "1.7.0-beta.12", - "@nocobase/plugin-calendar": "1.7.0-beta.12", - "@nocobase/plugin-charts": "1.7.0-beta.12", - "@nocobase/plugin-client": "1.7.0-beta.12", - "@nocobase/plugin-collection-sql": "1.7.0-beta.12", - "@nocobase/plugin-collection-tree": "1.7.0-beta.12", - "@nocobase/plugin-data-source-main": "1.7.0-beta.12", - "@nocobase/plugin-data-source-manager": "1.7.0-beta.12", - "@nocobase/plugin-data-visualization": "1.7.0-beta.12", - "@nocobase/plugin-environment-variables": "1.7.0-beta.12", - "@nocobase/plugin-error-handler": "1.7.0-beta.12", - "@nocobase/plugin-field-china-region": "1.7.0-beta.12", - "@nocobase/plugin-field-formula": "1.7.0-beta.12", - "@nocobase/plugin-field-m2m-array": "1.7.0-beta.12", - "@nocobase/plugin-field-markdown-vditor": "1.7.0-beta.12", - "@nocobase/plugin-field-sequence": "1.7.0-beta.12", - "@nocobase/plugin-field-sort": "1.7.0-beta.12", - "@nocobase/plugin-file-manager": "1.7.0-beta.12", - "@nocobase/plugin-gantt": "1.7.0-beta.12", - "@nocobase/plugin-graph-collection-manager": "1.7.0-beta.12", - "@nocobase/plugin-kanban": "1.7.0-beta.12", - "@nocobase/plugin-locale-tester": "1.7.0-beta.12", - "@nocobase/plugin-localization": "1.7.0-beta.12", - "@nocobase/plugin-logger": "1.7.0-beta.12", - "@nocobase/plugin-map": "1.7.0-beta.12", - "@nocobase/plugin-mobile": "1.7.0-beta.12", - "@nocobase/plugin-mobile-client": "1.7.0-beta.12", - "@nocobase/plugin-mock-collections": "1.7.0-beta.12", - "@nocobase/plugin-multi-app-manager": "1.7.0-beta.12", - "@nocobase/plugin-multi-app-share-collection": "1.7.0-beta.12", - "@nocobase/plugin-notification-email": "1.7.0-beta.12", - "@nocobase/plugin-notification-in-app-message": "1.7.0-beta.12", - "@nocobase/plugin-notification-manager": "1.7.0-beta.12", - "@nocobase/plugin-public-forms": "1.7.0-beta.12", - "@nocobase/plugin-snapshot-field": "1.7.0-beta.12", - "@nocobase/plugin-system-settings": "1.7.0-beta.12", - "@nocobase/plugin-theme-editor": "1.7.0-beta.12", - "@nocobase/plugin-ui-schema-storage": "1.7.0-beta.12", - "@nocobase/plugin-user-data-sync": "1.7.0-beta.12", - "@nocobase/plugin-users": "1.7.0-beta.12", - "@nocobase/plugin-verification": "1.7.0-beta.12", - "@nocobase/plugin-workflow": "1.7.0-beta.12", - "@nocobase/plugin-workflow-action-trigger": "1.7.0-beta.12", - "@nocobase/plugin-workflow-aggregate": "1.7.0-beta.12", - "@nocobase/plugin-workflow-delay": "1.7.0-beta.12", - "@nocobase/plugin-workflow-dynamic-calculation": "1.7.0-beta.12", - "@nocobase/plugin-workflow-loop": "1.7.0-beta.12", - "@nocobase/plugin-workflow-mailer": "1.7.0-beta.12", - "@nocobase/plugin-workflow-manual": "1.7.0-beta.12", - "@nocobase/plugin-workflow-notification": "1.7.0-beta.12", - "@nocobase/plugin-workflow-parallel": "1.7.0-beta.12", - "@nocobase/plugin-workflow-request": "1.7.0-beta.12", - "@nocobase/plugin-workflow-sql": "1.7.0-beta.12", - "@nocobase/server": "1.7.0-beta.12", + "@nocobase/plugin-acl": "1.7.0-beta.13", + "@nocobase/plugin-action-bulk-edit": "1.7.0-beta.13", + "@nocobase/plugin-action-bulk-update": "1.7.0-beta.13", + "@nocobase/plugin-action-custom-request": "1.7.0-beta.13", + "@nocobase/plugin-action-duplicate": "1.7.0-beta.13", + "@nocobase/plugin-action-export": "1.7.0-beta.13", + "@nocobase/plugin-action-import": "1.7.0-beta.13", + "@nocobase/plugin-action-print": "1.7.0-beta.13", + "@nocobase/plugin-ai": "1.7.0-beta.13", + "@nocobase/plugin-api-doc": "1.7.0-beta.13", + "@nocobase/plugin-api-keys": "1.7.0-beta.13", + "@nocobase/plugin-async-task-manager": "1.7.0-beta.13", + "@nocobase/plugin-audit-logs": "1.7.0-beta.13", + "@nocobase/plugin-auth": "1.7.0-beta.13", + "@nocobase/plugin-auth-sms": "1.7.0-beta.13", + "@nocobase/plugin-backup-restore": "1.7.0-beta.13", + "@nocobase/plugin-block-iframe": "1.7.0-beta.13", + "@nocobase/plugin-block-template": "1.7.0-beta.13", + "@nocobase/plugin-block-workbench": "1.7.0-beta.13", + "@nocobase/plugin-calendar": "1.7.0-beta.13", + "@nocobase/plugin-charts": "1.7.0-beta.13", + "@nocobase/plugin-client": "1.7.0-beta.13", + "@nocobase/plugin-collection-sql": "1.7.0-beta.13", + "@nocobase/plugin-collection-tree": "1.7.0-beta.13", + "@nocobase/plugin-data-source-main": "1.7.0-beta.13", + "@nocobase/plugin-data-source-manager": "1.7.0-beta.13", + "@nocobase/plugin-data-visualization": "1.7.0-beta.13", + "@nocobase/plugin-environment-variables": "1.7.0-beta.13", + "@nocobase/plugin-error-handler": "1.7.0-beta.13", + "@nocobase/plugin-field-china-region": "1.7.0-beta.13", + "@nocobase/plugin-field-formula": "1.7.0-beta.13", + "@nocobase/plugin-field-m2m-array": "1.7.0-beta.13", + "@nocobase/plugin-field-markdown-vditor": "1.7.0-beta.13", + "@nocobase/plugin-field-sequence": "1.7.0-beta.13", + "@nocobase/plugin-field-sort": "1.7.0-beta.13", + "@nocobase/plugin-file-manager": "1.7.0-beta.13", + "@nocobase/plugin-gantt": "1.7.0-beta.13", + "@nocobase/plugin-graph-collection-manager": "1.7.0-beta.13", + "@nocobase/plugin-kanban": "1.7.0-beta.13", + "@nocobase/plugin-locale-tester": "1.7.0-beta.13", + "@nocobase/plugin-localization": "1.7.0-beta.13", + "@nocobase/plugin-logger": "1.7.0-beta.13", + "@nocobase/plugin-map": "1.7.0-beta.13", + "@nocobase/plugin-mobile": "1.7.0-beta.13", + "@nocobase/plugin-mobile-client": "1.7.0-beta.13", + "@nocobase/plugin-mock-collections": "1.7.0-beta.13", + "@nocobase/plugin-multi-app-manager": "1.7.0-beta.13", + "@nocobase/plugin-multi-app-share-collection": "1.7.0-beta.13", + "@nocobase/plugin-notification-email": "1.7.0-beta.13", + "@nocobase/plugin-notification-in-app-message": "1.7.0-beta.13", + "@nocobase/plugin-notification-manager": "1.7.0-beta.13", + "@nocobase/plugin-public-forms": "1.7.0-beta.13", + "@nocobase/plugin-snapshot-field": "1.7.0-beta.13", + "@nocobase/plugin-system-settings": "1.7.0-beta.13", + "@nocobase/plugin-theme-editor": "1.7.0-beta.13", + "@nocobase/plugin-ui-schema-storage": "1.7.0-beta.13", + "@nocobase/plugin-user-data-sync": "1.7.0-beta.13", + "@nocobase/plugin-users": "1.7.0-beta.13", + "@nocobase/plugin-verification": "1.7.0-beta.13", + "@nocobase/plugin-workflow": "1.7.0-beta.13", + "@nocobase/plugin-workflow-action-trigger": "1.7.0-beta.13", + "@nocobase/plugin-workflow-aggregate": "1.7.0-beta.13", + "@nocobase/plugin-workflow-delay": "1.7.0-beta.13", + "@nocobase/plugin-workflow-dynamic-calculation": "1.7.0-beta.13", + "@nocobase/plugin-workflow-loop": "1.7.0-beta.13", + "@nocobase/plugin-workflow-mailer": "1.7.0-beta.13", + "@nocobase/plugin-workflow-manual": "1.7.0-beta.13", + "@nocobase/plugin-workflow-notification": "1.7.0-beta.13", + "@nocobase/plugin-workflow-parallel": "1.7.0-beta.13", + "@nocobase/plugin-workflow-request": "1.7.0-beta.13", + "@nocobase/plugin-workflow-sql": "1.7.0-beta.13", + "@nocobase/server": "1.7.0-beta.13", "cronstrue": "^2.11.0", "fs-extra": "^11.1.1" }, From 23f0fdefb15763ad2c7b4797c7001d18daaaccb5 Mon Sep 17 00:00:00 2001 From: Zeke Zhang <958414905@qq.com> Date: Wed, 2 Apr 2025 11:00:31 +0800 Subject: [PATCH 45/69] fix(public-form): determine whether it is a mobile terminal based on the device type (#6611) * Revert "fix: update mobile layout handling and clean up unused context (#6600)" This reverts commit 3558fc3ced64cbdd8aedece062d9a221821ba55d. * fix: update mobile detection logic in PublicFormPage component --- .../route-switch/antd/admin-layout/index.tsx | 29 +++++++++++++------ .../src/client/components/PublicFormPage.tsx | 8 ++--- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/packages/core/client/src/route-switch/antd/admin-layout/index.tsx b/packages/core/client/src/route-switch/antd/admin-layout/index.tsx index 2375f67677..50870551a9 100644 --- a/packages/core/client/src/route-switch/antd/admin-layout/index.tsx +++ b/packages/core/client/src/route-switch/antd/admin-layout/index.tsx @@ -8,7 +8,7 @@ */ import { EllipsisOutlined } from '@ant-design/icons'; -import ProLayout, { RouteContext } from '@ant-design/pro-layout'; +import ProLayout, { RouteContext, RouteContextType } from '@ant-design/pro-layout'; import { HeaderViewProps } from '@ant-design/pro-layout/es/components/Header'; import { css } from '@emotion/css'; import { theme as antdTheme, ConfigProvider, Popover, Tooltip } from 'antd'; @@ -53,7 +53,6 @@ import { KeepAlive } from './KeepAlive'; import { NocoBaseDesktopRoute, NocoBaseDesktopRouteType } from './convertRoutesToSchema'; import { MenuSchemaToolbar, ResetThemeTokenAndKeepAlgorithm } from './menuItemSettings'; import { userCenterSettings } from './userCenterSettings'; -import { isMobile } from 'react-device-detect'; export { KeepAlive, NocoBaseDesktopRouteType }; @@ -76,7 +75,7 @@ const AllAccessDesktopRoutesContext = createContext<{ refresh: () => void; }>({ allAccessRoutes: emptyArray, - refresh: () => { }, + refresh: () => {}, }); AllAccessDesktopRoutesContext.displayName = 'AllAccessDesktopRoutesContext'; @@ -565,11 +564,11 @@ const IsMobileLayoutContext = React.createContext<{ setIsMobileLayout: React.Dispatch>; }>({ isMobileLayout: false, - setIsMobileLayout: () => { }, + setIsMobileLayout: () => {}, }); const MobileLayoutProvider: FC = (props) => { - const [isMobileLayout, setIsMobileLayout] = useState(isMobile); + const [isMobileLayout, setIsMobileLayout] = useState(false); const value = useMemo(() => ({ isMobileLayout, setIsMobileLayout }), [isMobileLayout]); return {props.children}; @@ -586,7 +585,7 @@ export const InternalAdminLayout = () => { const location = useLocation(); const { onDragEnd } = useMenuDragEnd(); const { token } = useToken(); - const { isMobileLayout } = useMobileLayout(); + const { isMobileLayout, setIsMobileLayout } = useMobileLayout(); const [collapsed, setCollapsed] = useState(isMobileLayout); const doNotChangeCollapsedRef = useRef(false); const { t } = useMenuTranslation(); @@ -681,9 +680,21 @@ export const InternalAdminLayout = () => { onPageChange={onPageChange} menuProps={menuProps} > - - - + + {(value: RouteContextType) => { + const { isMobile: _isMobile } = value; + + if (_isMobile !== isMobileLayout) { + setIsMobileLayout(_isMobile); + } + + return ( + + + + ); + }} + ); diff --git a/packages/plugins/@nocobase/plugin-public-forms/src/client/components/PublicFormPage.tsx b/packages/plugins/@nocobase/plugin-public-forms/src/client/components/PublicFormPage.tsx index 3e8635b3dd..f9af7fba98 100644 --- a/packages/plugins/@nocobase/plugin-public-forms/src/client/components/PublicFormPage.tsx +++ b/packages/plugins/@nocobase/plugin-public-forms/src/client/components/PublicFormPage.tsx @@ -33,7 +33,7 @@ import { import { Input, Modal, Spin } from 'antd'; import { useTranslation } from 'react-i18next'; import React, { createContext, useContext, useEffect, useMemo, useState } from 'react'; -import { isDesktop } from 'react-device-detect'; +import { isDesktop, isMobile } from 'react-device-detect'; import { useParams } from 'react-router'; import { usePublicSubmitActionProps } from '../hooks'; import { UnEnabledFormPlaceholder, UnFoundFormPlaceholder } from './UnEnabledFormPlaceholder'; @@ -129,9 +129,6 @@ const PublicFormMessageProvider = ({ children }) => { ); }; -function isMobile() { - return window.matchMedia('(max-width: 768px)').matches; -} const AssociationFieldMobile = (props) => { return ; @@ -165,7 +162,6 @@ const mobileComponents = { function InternalPublicForm() { const params = useParams(); const apiClient = useAPIClient(); - const isMobileMedia = isMobile(); const { error, data, loading, run } = useRequest( { url: `publicForms:getMeta/${params.name}`, @@ -243,7 +239,7 @@ function InternalPublicForm() { if (!data?.data) { return ; } - const components = isMobileMedia ? mobileComponents : {}; + const components = isMobile ? mobileComponents : {}; return ( From 6632c755d60cb1488925d775b139a790bab1f00d Mon Sep 17 00:00:00 2001 From: Katherine Date: Wed, 2 Apr 2025 11:32:33 +0800 Subject: [PATCH 46/69] fix: x-disabled property not taking effect on form fields (#6610) --- .../src/data-source/collection-field/CollectionField.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/core/client/src/data-source/collection-field/CollectionField.tsx b/packages/core/client/src/data-source/collection-field/CollectionField.tsx index 4bb5f6df4f..d9aa8ec998 100644 --- a/packages/core/client/src/data-source/collection-field/CollectionField.tsx +++ b/packages/core/client/src/data-source/collection-field/CollectionField.tsx @@ -108,6 +108,9 @@ const CollectionFieldInternalField = (props) => { if (fieldSchema['x-read-pretty'] === true && !field.readPretty) { field.readPretty = true; } + if (fieldSchema['x-disabled'] === true) { + field.disabled = true; + } }, [field, fieldSchema]); if (!uiSchema) return null; From d2025ee76fc12e321bdd9e3ced8ddd04240cbd03 Mon Sep 17 00:00:00 2001 From: Katherine Date: Wed, 2 Apr 2025 14:54:09 +0800 Subject: [PATCH 47/69] fix: field label display issue to prevent truncation by colon (#6599) * fix: form field label truncation due to colon * fix: test * fix: bug --- .../__tests__/collection-select.test.tsx | 4 ++-- .../src/schema-component/antd/form-item/FormItem.tsx | 10 ++++++++-- .../plugin-workflow-test/src/e2e/e2ePageObjectModel.ts | 4 +++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/core/client/src/schema-component/antd/collection-select/__tests__/collection-select.test.tsx b/packages/core/client/src/schema-component/antd/collection-select/__tests__/collection-select.test.tsx index 3a69dc4335..69c649021c 100644 --- a/packages/core/client/src/schema-component/antd/collection-select/__tests__/collection-select.test.tsx +++ b/packages/core/client/src/schema-component/antd/collection-select/__tests__/collection-select.test.tsx @@ -54,7 +54,7 @@ describe('CollectionSelect', () => { role="button" >