diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index 672cadf..3a2f2a6 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -1,5 +1,11 @@ # @emqx/shared-ui-components +## 0.0.13 + +### Patch Changes + +- Fixed some issues in flow + ## 0.0.12 ### Patch Changes diff --git a/packages/components/flow/composables/useFlowEditorDataHandler.ts b/packages/components/flow/composables/useFlowEditorDataHandler.ts index 8dd8a1d..e87c051 100644 --- a/packages/components/flow/composables/useFlowEditorDataHandler.ts +++ b/packages/components/flow/composables/useFlowEditorDataHandler.ts @@ -34,7 +34,10 @@ export default (): { getFallbackItemDataFromNode: (node: NodeData | Node) => FallbackAction | undefined getFilterStrFromNodes: (nodes: Array) => string getBridgesFromNodes: (nodes: Array) => Array - getAIProvidersAndCompletionsFromNodes: (nodes: Array) => { + getAIProvidersAndCompletionsFromNodes: ( + nodes: Array, + emqxVersion?: string, + ) => { aiProviders: Array> aiCompletions: Array> } diff --git a/packages/components/flow/composables/useParseWhere.ts b/packages/components/flow/composables/useParseWhere.ts index 0592083..74245d6 100644 --- a/packages/components/flow/composables/useParseWhere.ts +++ b/packages/components/flow/composables/useParseWhere.ts @@ -1,6 +1,6 @@ import { createRandomString } from '@emqx/shared-ui-utils' import { FilterLogicalOperator, RULE_LOGICAL_OPERATORS } from '@emqx/shared-ui-constants' -import { cloneDeep } from 'lodash' +import { cloneDeep, escapeRegExp } from 'lodash' import type { FilterFormData, FilterItem } from '../types' const parseWhere = (sql: string): FilterFormData | FilterItem => { @@ -73,6 +73,12 @@ const splitCondition = (sql: string, separator: string) => { const separator = new RegExp( `(${cloneDeep(RULE_LOGICAL_OPERATORS) .sort((a, b) => b.length - a.length) + .map((item) => { + if (/^\w+$/.test(item)) { + return `\\b${escapeRegExp(item)}\\b` + } + return escapeRegExp(item) + }) .join('|')})`, 'i', ) diff --git a/packages/components/flow/form/processing/FunctionForm.vue b/packages/components/flow/form/processing/FunctionForm.vue index 2b258dc..6a6e0d4 100644 --- a/packages/components/flow/form/processing/FunctionForm.vue +++ b/packages/components/flow/form/processing/FunctionForm.vue @@ -220,7 +220,8 @@ const rules: Rules = { const errors = [] if (source.func.name && !value) { errors.push(new Error(t('ruleFunction.aliasRequired'))) - } else if (!correctAliasReg.test(value)) { + } else if (value && !correctAliasReg.test(value)) { + // alias is optional errors.push(new Error(t('ruleFunction.aliasFormatError'))) } return errors diff --git a/packages/components/flow/types.ts b/packages/components/flow/types.ts index 2e43116..0de188e 100644 --- a/packages/components/flow/types.ts +++ b/packages/components/flow/types.ts @@ -83,6 +83,7 @@ export interface FallbackActionReference { kind: FallbackActionKind.Reference type: string name: string + tags?: Array } export type FallbackAction = FallbackActionRepublish | FallbackActionReference diff --git a/packages/components/package.json b/packages/components/package.json index 6e59f1e..5448dbc 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@emqx/shared-ui-components", - "version": "0.0.12", + "version": "0.0.13", "homepage": "https://emqx.io", "license": "Apache-2.0", "repository": {