diff --git a/packages/amis-editor/editor-i18n-en-US-1662711214534.xlsx b/packages/amis-editor/editor-i18n-en-US-1662711214534.xlsx deleted file mode 100644 index 2f0a23e1f..000000000 Binary files a/packages/amis-editor/editor-i18n-en-US-1662711214534.xlsx and /dev/null differ diff --git a/packages/amis-editor/i18nConfig.js b/packages/amis-editor/i18nConfig.js index 782269173..ad157a2a0 100644 --- a/packages/amis-editor/i18nConfig.js +++ b/packages/amis-editor/i18nConfig.js @@ -30,8 +30,8 @@ module.exports = { path: './' }, translate: { - appId: '20220810001301703', - key: 'WW7jKaJJBrtCawTOkCpk', + appId: '20220902001329332', + key: 'pVS96QbIzVROBSOarU4R', host: 'http://api.fanyi.baidu.com' } }; diff --git a/packages/amis-editor/package.json b/packages/amis-editor/package.json index 648aa533d..e9f110974 100644 --- a/packages/amis-editor/package.json +++ b/packages/amis-editor/package.json @@ -1,6 +1,6 @@ { "name": "amis-editor", - "version": "5.2.0-beta.70", + "version": "5.2.1", "description": "amis 可视化编辑器", "main": "lib/index.js", "module": "esm/index.js", @@ -10,7 +10,8 @@ "build": "npm run clean-dist && NODE_ENV=production rollup -c ", "clean-dist": "rimraf lib/* esm/*", "i18n:update": "npx i18n update --config=./i18nConfig.js", - "i18n:translate": "npx i18n translate --config=./i18nConfig.js --l=en-US" + "i18n:translate": "npx i18n translate --config=./i18nConfig.js --l=en-US", + "i18n:merge": "npx i18n merge --config=./i18nConfig.js --l=en-US" }, "keywords": [ "amis", @@ -19,7 +20,8 @@ "author": "@fex", "license": "ISC", "files": [ - "lib" + "lib", + "esm" ], "lint-staged": { "{src,scss,examples}/**/**/*.{js,jsx,ts,tsx,scss,json}": [ @@ -32,7 +34,7 @@ "dependencies": { "@webcomponents/webcomponentsjs": "^2.6.0", "amis-editor-core": "*", - "i18n-runtime": "0.0.6", + "i18n-runtime": "*", "lodash": "^4.17.15" }, "devDependencies": { @@ -59,10 +61,10 @@ "@types/sortablejs": "^1.10.7", "@types/tinycolor2": "^1.4.3", "ajv": "^8.8.2", - "amis": "^2.2.0", - "amis-core": "^2.2.0", - "amis-formula": "^2.2.0", - "amis-ui": "^2.2.0", + "amis": "2.3.2-beta.1", + "amis-core": "2.3.2-beta.1", + "amis-formula": "2.3.2-beta.1", + "amis-ui": "2.3.2-beta.1", "axios": "0.21.1", "concurrently": "^6.2.0", "css-loader": "^6.2.0", diff --git a/packages/amis-editor/src/component/BaseControl.ts b/packages/amis-editor/src/component/BaseControl.ts index 9539b26a2..9519f1ac0 100644 --- a/packages/amis-editor/src/component/BaseControl.ts +++ b/packages/amis-editor/src/component/BaseControl.ts @@ -3,7 +3,7 @@ */ import flatten from 'lodash/flatten'; -import {getEventControlConfig} from '../renderer/event-control/helper'; +import {getEventControlConfig, SUPPORT_STATIC_FORMITEM_CMPTS} from '../renderer/event-control/helper'; import {getSchemaTpl, isObject, tipedLabel} from 'amis-editor-core'; import type {BaseEventContext} from 'amis-editor-core'; import {SchemaObject} from 'amis/lib/Schema'; @@ -143,7 +143,7 @@ const normalizeBodySchema = ( * @param {Object=} panels * @param {string=} key * `property` 属性 - * `common` 常用 + * `common` 基本 * `status` 状态 * `validation` 校验 * `style` 样式 @@ -196,6 +196,8 @@ export const formItemControl: ( >, context?: BaseEventContext ) => Array = (panels, context) => { + const type = context?.schema?.type || ''; + const supportStatic = SUPPORT_STATIC_FORMITEM_CMPTS.includes(type); const collapseProps = { type: 'collapse', headingClassName: 'ae-formItemControl-header', @@ -215,7 +217,7 @@ export const formItemControl: ( : [ { ...collapseProps, - header: '常用', + header: '基本', key: 'common', body: normalizeBodySchema( [ @@ -250,6 +252,7 @@ export const formItemControl: ( body: normalizeBodySchema( [ getSchemaTpl('hidden'), + supportStatic ? getSchemaTpl('static') : null, // TODO: 下面的部分表单项才有,是不是判断一下是否是表单项 getSchemaTpl('disabled'), getSchemaTpl('clearValueOnHidden') @@ -283,7 +286,6 @@ export const formItemControl: ( // } // ]) ]; - return [ { type: 'tabs', @@ -337,7 +339,13 @@ export const formItemControl: ( label: '描述 CSS 类名', name: 'descriptionClassName', visibleOn: 'this.description' - }) + }), + ...!supportStatic ? [] : [ + getSchemaTpl('className', { + label: '静态 CSS 类名', + name: 'staticClassName' + }) + ] ], panels?.style?.body, panels?.style?.replace, @@ -407,7 +415,7 @@ export function remarkTpl(config: { }, form: { size: 'md', - className: 'mb-8 ae-remark-form', + className: 'mb-8', mode: 'horizontal', horizontal: { left: 4, @@ -463,12 +471,10 @@ export function remarkTpl(config: { } ] }, - { + getSchemaTpl('icon', { name: 'icon', - label: '图标', - type: 'icon-picker', - className: 'fix-icon-picker-overflow' - }, + label: '图标' + }), { name: 'className', label: 'CSS 类名', diff --git a/packages/amis-editor/src/index.tsx b/packages/amis-editor/src/index.tsx index a57eb09da..e73ea23c1 100644 --- a/packages/amis-editor/src/index.tsx +++ b/packages/amis-editor/src/index.tsx @@ -73,7 +73,6 @@ import './plugin/Audio'; import './plugin/Avatar'; import './plugin/Button'; import './plugin/ButtonGroup'; -import './plugin/ButtonToolbar'; import './plugin/Breadcrumb'; import './plugin/Card'; import './plugin/Card2'; @@ -122,8 +121,8 @@ import './plugin/Steps'; import './plugin/Sparkline'; import './plugin/Submit'; import './plugin/Table'; -import './plugin/Table-v2'; -import './plugin/TableCell-v2'; +import './plugin/Table2'; +import './plugin/TableCell2'; import './plugin/Tabs'; import './plugin/Tasks'; import './plugin/Time'; diff --git a/packages/amis-editor/src/locale/en-US.ts b/packages/amis-editor/src/locale/en-US.ts index 147d14b89..7142c5089 100644 --- a/packages/amis-editor/src/locale/en-US.ts +++ b/packages/amis-editor/src/locale/en-US.ts @@ -1,416 +1,425 @@ import {extendLocale} from 'i18n-runtime'; extendLocale('en-US', { - 'f7e68bde2caa2cb5696d6a37fe4a23a4': 'Commonly used', - 'ea15ae2b7fba76c83eec6d0986d15197': 'option', - '3fea7ca76cdece641436d7ab0d02ab1b': 'state', - '24d67862f87f439db7ca957aecb77cce': 'attribute', - 'afcde2611bdd13c1e65b4fb6a2f13425': 'appearance', + 'f7e68bde2caa2cb5696d6a37fe4a23a4': 'Common', + 'ea15ae2b7fba76c83eec6d0986d15197': 'Option', + '3fea7ca76cdece641436d7ab0d02ab1b': 'Status', + '24d67862f87f439db7ca957aecb77cce': 'Properties', + 'afcde2611bdd13c1e65b4fb6a2f13425': 'Design', '6d0034a2419e1f394dedab07994b9665': 'Label CSS class name', - '2cadb6621afe19333b142faa541b0f91': 'Control CSS class name', - '0e627e6a0ff773ee76bc4cc0871cb48d': 'Description: CSS class name', - '10b2761db5a8e089049df39675abc550': 'event', - 'dc19704991f1476fa4dcbb80c50bedd6': 'Prompt Title:', - '55713166f8bddcc0aefc3a32464746f1': 'Please enter the prompt title', - '2d711b09bd0db0ad240cc83b30dd8014': 'content', - '59b9e2022323a63079c6ddab63fec112': 'Pop up location:', - 'af767b7e4ae069d54f9ea839858d4c6d': 'upper', - '3850a186c3235bc646d4c2f79cebac36': 'lower', + '2cadb6621afe19333b142faa541b0f91': 'Control CSS class name', + '0e627e6a0ff773ee76bc4cc0871cb48d': 'Description CSS class name', + '10b2761db5a8e089049df39675abc550': 'Event', + 'dc19704991f1476fa4dcbb80c50bedd6': 'Prompt title', + '55713166f8bddcc0aefc3a32464746f1': 'Enter prompt title', + '2d711b09bd0db0ad240cc83b30dd8014': 'Content', + '59b9e2022323a63079c6ddab63fec112': 'Popout position', + 'af767b7e4ae069d54f9ea839858d4c6d': 'Upper', + '3850a186c3235bc646d4c2f79cebac36': 'Bottom', 'd2aff1417831aa621c16cd5b95306b4b': 'Left', - '4d9c32c23df5d234e629c922c58d8e12': 'right', + '4d9c32c23df5d234e629c922c58d8e12': 'Right', '5ef69f62dc668c1a3e68b51c50a2530a': 'Icon', '4434b33a8731a73613ba5fa1eb984efb': 'CSS class name', - 'd46908ab96b7955bc7ba9cb172c4d2c8': - 'What are the CSS class names of auxiliary classes? Please go to < a href= https://baidu.gitee.io/amis/zh-CN/style/index target=_ Blank > style description < / a > in addition, you can add a custom class name, and then add a custom style in the system configuration.', - '159dbc2fafd57b9d3652f16659b1b519': 'Trigger mode:', + 'f10b676db977ae808af8d96b327be7f3': + 'Which secondary CSS class names are available? Go toStyle description. In addition, you can add a custom class name, and then add a custom style in the system configuration.', + '159dbc2fafd57b9d3652f16659b1b519': 'Triggering mode', '45a51525391d4a3771b22f2cf1aa96b3': - 'Floating layer trigger method: the default value is mouse over', - '728c7cdfa431821d291b5108394ec65a': 'Mouse over', - '4363c17ebb346b646af55bd8c8075915': 'click', - '5632c68dac780bd766f740830481f4b0': 'Click blank to close', - '9efb0ce5a4510ef29345b6edb3e58bc2': 'Must have TD', - '3ce57bd19e37d2b27145dc6fcfff3520': 'Cannot find the first cell', - 'f7d205072a2ceb63b4f48a8b6f32fd25': 'Wrong number of lines', - '852228c640b1daefe6b0853390e66791': 'Wrong number of column lines', - '26526c3354307798dfa84f17decf5140': 'The corresponding ID cannot be found', + 'The floating layer triggering mode defaults to the mouseover.', + '728c7cdfa431821d291b5108394ec65a': 'Mouseover', + '4363c17ebb346b646af55bd8c8075915': 'Click', + '5632c68dac780bd766f740830481f4b0': 'Click blank area to close it.', + '9efb0ce5a4510ef29345b6edb3e58bc2': 'A td must exist', + '3ce57bd19e37d2b27145dc6fcfff3520': 'The first cell cannot be found.', + 'f7d205072a2ceb63b4f48a8b6f32fd25': 'The number of row lines is incorrect.', + '852228c640b1daefe6b0853390e66791': + 'The number of column lines is incorrect.', + '26526c3354307798dfa84f17decf5140': 'The corresponding id is not found.', '38d2ccdde0ae0c2329defd3c75c59d8b': - 'Due to the inner margin limitation, the height setting that is too small will not take effect. You can reduce the default inner margin', - 'd59379f4227af3b2c60214e2f4f903ba': 'merge cell', - '02d9819ddaaaeb1b7b22b12608c7e5ca': 'Tips', + 'Due to the padding limit, the height setting that is too small is invalid. Thus, you can reduce the default padding.', + 'd59379f4227af3b2c60214e2f4f903ba': 'Merge cells', + '02d9819ddaaaeb1b7b22b12608c7e5ca': 'Prompt', '4be3194e93cdd2899d06b499c184195b': - 'It is used for special text prompts, which are divided into four categories: prompt, success, warning and danger. It can be combined with < code > visibleon < / code > to prompt error messages.', - '6f2b01db04cbf7e460b5c6f4e37a5e76': 'Tips:', + 'The prompt is used for special text prompt, which includes four types: operation prompt, success prompt, warning prompt, and danger prompt. Combining the visibleOn, the prompt can be used to prompt the error information.', + '6f2b01db04cbf7e460b5c6f4e37a5e76': 'Prompt content', '132a78bdf68d6d17bde00aa807bbf032': 'Content area', - '4092ed98e9035652d4c9ca9441701ed7': 'basic', - '226b0912184333c81babf2f1894ec0c1': 'type', - '330363dfc524cff2488f2ebde0500896': 'success', - '900c70fa5f7dbc014e6f762d5e0e885c': 'warning', - 'e2e27a87257599f83c817c43e724b6aa': 'serious', - 'cbda486dbec5bdacb593294e240c5e63': 'Can be closed', + '4092ed98e9035652d4c9ca9441701ed7': 'Basic', + '226b0912184333c81babf2f1894ec0c1': 'Type', + '330363dfc524cff2488f2ebde0500896': 'Success', + '900c70fa5f7dbc014e6f762d5e0e885c': 'Warning', + 'e2e27a87257599f83c817c43e724b6aa': 'Serious', + 'cbda486dbec5bdacb593294e240c5e63': 'Close', '7372dc9f39a173dd0c75a185373245b1': 'Custom icon', 'bede211909a1022b13e9728ed162b77e': 'Anchor navigation', 'f6da8aa86fa3e399da95dab399a67985': - 'Anchor navigation: when multiple lines of content are displayed, the content can be displayed in the form of anchor navigation groups. Click the navigation menu to locate the corresponding content area.', - '22c799040acdb2601b437ed5449de076': 'container', - '5879dec0aea52871e0ae6969893a315b': 'Anchor point 1', - 'ce08bc4247c040bac13155befc7c1638': 'Here is anchor content 1', - 'd89a42cb938819f67172ea64037c19fe': 'Anchor point 2', - '96f05e63c6f606925636d6810167e7ea': 'Here is anchor content 2', - '31327b9041b825a0b455b3ff9ddd3909': 'Anchor point 3', - '68284dd430993f495a6f2254ae5480ae': 'Here is anchor content 3', - '9ad515106f02f3909974b75d22625b0d': 'Anchor point settings', + 'When multiple lines of content are displayed in the anchor navigation, the content can be displayed in the form of anchor navigation groups. Thus, you can locate the corresponding content area by clicking the nav menu.', + '22c799040acdb2601b437ed5449de076': 'Container', + '5879dec0aea52871e0ae6969893a315b': 'Anchor 1', + 'ce08bc4247c040bac13155befc7c1638': 'This is anchor content 1.', + 'd89a42cb938819f67172ea64037c19fe': 'Anchor 2', + '96f05e63c6f606925636d6810167e7ea': 'This is anchor content 2.', + '31327b9041b825a0b455b3ff9ddd3909': 'Anchor 3', + '68284dd430993f495a6f2254ae5480ae': 'This is anchor content 3.', + '9ad515106f02f3909974b75d22625b0d': 'Anchor setting', '40c6e9ed3d9949a326f5a216d936324d': 'Add anchor', - '8cfd149e7d73ebae6a797d21728292ff': 'Please enter the anchor title', + '8cfd149e7d73ebae6a797d21728292ff': 'Enter anchor title', '6be15e9949e4be7fc485e1eaae472942': 'Anchor', - 'c624c875ea37f790665d0cae8959d4e2': 'Here is the anchor content', + 'c624c875ea37f790665d0cae8959d4e2': 'This is the anchor content.', 'f612a2f944af178fa07a719c79e8438b': 'Anchor {{@1}}', - '42ff02f6763799ebfa5ce8dd5f99913d': - 'Here is the content of anchor point: {{@1}}', + '42ff02f6763799ebfa5ce8dd5f99913d': 'This is anchor content {{@ 1.}}', '39f4fbc5b5ba681f7e8c4d4a4ddb3e2f': 'Default positioning area', '9959b2ad2d4f75f7a6be46872642df6d': 'Navigation layout', - '4cde06e6162ed66720e3133cb83bc059': 'level', - '75ac842f8e77305846f1d776f97dfaf8': 'vertical', - '056f2d7df6e6b64625c3a2d27ce07b05': 'Navigation', + '4cde06e6162ed66720e3133cb83bc059': 'Horizontal', + '75ac842f8e77305846f1d776f97dfaf8': 'Vertical', + '056f2d7df6e6b64625c3a2d27ce07b05': 'Nav', '696754a8b2b23e30b11187303d1238f5': 'Area content', '33be689a0f0de129ce37f7a96052002e': 'Content area', - '32c65d8d7431e76029678ec7bb73a5ab': 'title', - '6bd854c27cd4c2e97dee65cf3f3f8551': 'Anchor content: {{@1}}', - '726dd5df4319e9e158e2ca3c22177b6c': 'audio frequency', + '32c65d8d7431e76029678ec7bb73a5ab': 'Title', + '6bd854c27cd4c2e97dee65cf3f3f8551': 'Anchor content {{@1}}', + '726dd5df4319e9e158e2ca3c22177b6c': 'Audio', 'e7a707f9fc7da36828db940ca2960f4b': - 'Audio control, which can be used to play various audio files.', - '997c7a5d34f6fc628893f509d0df32e0': 'function', - '22b777e6fcb613b8ba83ced9594cd07e': 'routine', + 'The audio control can be used to play various audio files.', + '997c7a5d34f6fc628893f509d0df32e0': 'Feature', + '22b777e6fcb613b8ba83ced9594cd07e': 'Properties', '37b12f2666b9e4e37f33eb5e83533d5e': - '

Currently, it is configured for the field content node. There are more configurations for selecting the upper layer', + '

Currently, this feature is configured for the field content node. If you select the upper layer, more configurations exist.

', 'f8f176147db276063e7ec15f076e39e0': 'Audio address', '91d3cd46d6b6919749e56056d5acc9bc': - 'Support getting variables such as: < code > \\ ${audiosrc} < / code >', - 'a945269af10da66c82cdb7336bc490d1': 'Audio multiplier', - '7ccd84ca5c16cd03d26f5ecd5e6f6bd2': - 'Acceleration range is between 0.1 and 16', + 'Allows you to get variables, such as \\${audioSrc}.', + 'a945269af10da66c82cdb7336bc490d1': 'Audio speed', + '7ccd84ca5c16cd03d26f5ecd5e6f6bd2': 'The acceleration ranges from 0.1 to 16.', 'fc03b83d19e2fd12f1e7c56a11d7dc18': 'Internal controls', - 'd37d357dee041774b993daaf5c8bb752': 'Double speed', - 'b85270cd3c06d8eb635eadcffbb10119': 'play', - '19fcb9eb2594059036dfede5f4ec53e8': 'time', - 'c7bff79d059a0b7ff9b02441959d8be2': 'speed of progress', - '09b095d8fc867cb968673be9dcc00a93': 'volume', + 'd37d357dee041774b993daaf5c8bb752': 'Speed', + 'b85270cd3c06d8eb635eadcffbb10119': 'Play', + '19fcb9eb2594059036dfede5f4ec53e8': 'Time', + 'c7bff79d059a0b7ff9b02441959d8be2': 'Progress', + '09b095d8fc867cb968673be9dcc00a93': 'Volume', 'ad751bba0aed43a673c40b652a239fc3': - 'After selecting the multiple speed, you need to configure the multiple speed in the general selection bar', + 'After you choose the speed, you need to configure it in the ordinary selection bar.', '54c6bb48170611ec995f634319312156': 'Autoplay', - '56e6ecf97176d30c06b30cfa428ef832': 'Loop Playback', - '2fb0853874c2cc8cc42f0c7520af662a': 'inline model ', - '33bf801796fd255b5f6147e33146669b': 'Explicit and implicit', - '4c50eef3bdaf0b4164ce179e576f2b2d': 'head portrait', - '18dc831ec12d358d05902bef1f00e1f1': 'User Avatar', - '027446c2f9070b0f5b16a18208bf5fc7': 'Exhibition', - '20def7942674282277c3714ed7ea6ce0': 'picture', - 'ca746b1ff10193a3ce20878dec04a733': 'written words', - 'bfe68d5844f8e54602760e18f45954f7': 'link', - 'b54f4a65cd257c87db32ee1023e1daa1': 'fill style', + '56e6ecf97176d30c06b30cfa428ef832': 'Loop play', + '2fb0853874c2cc8cc42f0c7520af662a': 'Inlink mode', + '33bf801796fd255b5f6147e33146669b': 'Display', + '4c50eef3bdaf0b4164ce179e576f2b2d': 'Portrait', + '18dc831ec12d358d05902bef1f00e1f1': 'User portrait', + '027446c2f9070b0f5b16a18208bf5fc7': 'Display', + '20def7942674282277c3714ed7ea6ce0': 'Image', + 'ca746b1ff10193a3ce20878dec04a733': 'Text', + 'bfe68d5844f8e54602760e18f45954f7': 'Link', + 'b54f4a65cd257c87db32ee1023e1daa1': 'Fill method', 'def423db04dd24b226911b9e4cf5dc9c': - 'Picture processing method with picture size inconsistent with control size', - '74735df86a8e1c15bce50e2c1dd42e98': 'Cut long edges equally', - '9d7f3e170404f211a4f95c214f044b05': 'Equal proportion left blank short side', - '9854f491213784118614be4a1970bcf9': 'Stretch picture fill', - '3d2b60dda894eba9a042beddf7daf3cc': 'Cut to original size', + 'The image processing method that the image size is inconsistent with the control size.', + '74735df86a8e1c15bce50e2c1dd42e98': 'Proportional crop of long sides', + '9d7f3e170404f211a4f95c214f044b05': 'Proportional padding of short sides', + '9854f491213784118614be4a1970bcf9': + 'Stretch the image to occupy the space fully.', + '3d2b60dda894eba9a042beddf7daf3cc': + 'Crop the image in terms of its original size.', 'c7fff1a6f585d7fb22c94bb1ef82707d': 'Border distance', 'f1b4c635cdb39c91461f181d27d06f8c': - 'The text is centered, and the minimum distance from the border is maintained when there are too many text', - 'dfd0cd7f2cba96917484569a646bdc8d': 'length', - 'c1df04eec5fa0857bc0df2d68d8e953c': 'height', - '0103eb2d3dca70270d1a74e9ec987ac9': 'fillet', - '9a233b241eef54521cfe9365bfaa7b2f': 'Inside and outside margin', - '961534b4ea37e4e88aada736b299d063': 'frame', - '8e1b944f4389bdaab6f11d5bc83190c8': 'background', - '803205e38834280d9e6a75993ac00764': 'shadow', - '0d98c74797e49d00bcc4c17c9d557a2b': 'other', - '34dac4adbc96afd65f060cc4cfff1feb': 'transparency', - '169b227aff15b834b64205d0fdcb0f33': 'crumbs', - '3576258acd7269da9f44859a2edec1aa': 'Breadcrumb navigation', - 'db1c89e0f6e62f9642018cbb531bbd4f': 'home page', - '2e8bf3c87641fba59c2a9cb6636d7e88': 'Superior page', + 'The text is centered. When the text is too long, keep it at the minimum distance from the border.', + 'dfd0cd7f2cba96917484569a646bdc8d': 'Length', + 'c1df04eec5fa0857bc0df2d68d8e953c': 'Height', + '0103eb2d3dca70270d1a74e9ec987ac9': 'Rounded corner', + '9a233b241eef54521cfe9365bfaa7b2f': 'Padding And Margin', + '961534b4ea37e4e88aada736b299d063': 'Border', + '8e1b944f4389bdaab6f11d5bc83190c8': 'Background', + '803205e38834280d9e6a75993ac00764': 'Shadow', + '0d98c74797e49d00bcc4c17c9d557a2b': 'Others', + '34dac4adbc96afd65f060cc4cfff1feb': 'Opacity', + '169b227aff15b834b64205d0fdcb0f33': 'Bread crumb', + '3576258acd7269da9f44859a2edec1aa': 'Bread crumb navigation', + 'db1c89e0f6e62f9642018cbb531bbd4f': 'Home page', + '2e8bf3c87641fba59c2a9cb6636d7e88': 'Page at the previous level', '12d358955755488ff3790bbd6d75673a': 'Current page', '894b94fbb15650da7f9290e7106446f3': 'Separator', - 'a38100f22f59f7cd89e36139faa6fd4d': 'dynamic data ', - '66ab5e9f24c8f46012a25c89919fb191': 'newly added', - '97d07614380da93d257f9fbf81aa56fb': 'text', - 'ba7f916a39c0beb545388ea3b7f6b3b7': 'CSS class name of breadcrumbs', - 'e3acc9857c852dae27e064ace5e5688e': 'CSS class name of separator', + 'a38100f22f59f7cd89e36139faa6fd4d': 'Dynamic data', + '66ab5e9f24c8f46012a25c89919fb191': 'Add', + '97d07614380da93d257f9fbf81aa56fb': 'Text', + 'ba7f916a39c0beb545388ea3b7f6b3b7': 'CSS class name of bread crumb ', + 'e3acc9857c852dae27e064ace5e5688e': 'CSS class name of separator ', 'fa966345577ba81af19408f203db968f': 'Button', '89de611b2d759a1802542b5d3a06829f': - 'To display a button, you can configure different display styles and click behaviors.', - '7af5e3ef39ff71d39fe3f645c8079124': 'Triggered when clicked', - 'f6d767f39ba3bf955077a3c0ce81e581': 'Mouse in', - 'bcdd89d453da0dc0622a2f3189728357': 'Triggered when the mouse moves in', - 'e272b0b8c7fedc670a87075514d9b49f': 'Mouse out', - '727309bc724ff237c5e2cdf7a90cf28e': 'Triggered when the mouse is moved out', - 'd7ec2d3fea4756bc1642e0f10c180cf5': 'name', + 'It is used to display a button. You can configure different display styles and different click behaviors.', + '7af5e3ef39ff71d39fe3f645c8079124': 'Trigger this option when you click it', + 'f6d767f39ba3bf955077a3c0ce81e581': 'Mouse-over', + 'bcdd89d453da0dc0622a2f3189728357': + 'Trigger this option when you move your mouse over it', + 'e272b0b8c7fedc670a87075514d9b49f': 'Mouse-out', + '727309bc724ff237c5e2cdf7a90cf28e': + 'Trigger this option when you move your mouse out of it', + 'd7ec2d3fea4756bc1642e0f10c180cf5': 'Name', '939d5345ad4345dbaabe14798f6ac0f1': 'Submit', '4b9c3271dc2f299dc3aeffb369187513': 'Reset', - '5e64227f46b221001e3b151d72fa6412': 'Close', + '5e64227f46b221001e3b151d72fa6412': 'Whether to close it', 'd5bb99590ef447a1af8e9782786c751d': - 'Specify to close the current {{@1}} after this operation', - '1e7196ce05260faa55e5b7ea5a1667c2': 'Secondary confirmation', + 'Close the current {{@1}} after you specify the operation', + '1e7196ce05260faa55e5b7ea5a1667c2': 'Second confirmation', 'ed2f135144b4e138cb29419c1f245f4b': - 'After clicking, ask the user first, and then perform the action after manual confirmation to avoid false touch. You can use < code > \\ ${XXX} < / code > to take values.', - '0d0c6ff7b65e62eba3ddd523e2976389': 'Confirmation:', - '7e9646e2db5ce66dc2b4b922ece483ba': 'Bubble tips', + 'After you click it, ask the user. You can perform the action to avoid false touch upon the manual confirmation. You can use \\${xxx} to take a value.', + '0d0c6ff7b65e62eba3ddd523e2976389': 'Confirm content', + '7e9646e2db5ce66dc2b4b922ece483ba': 'Bubble prompt', '5daaffe964aee9d884e0a681b2818a17': 'Normal prompt', '2fd82aa9dd7fedea2c16b7dfe93b6d0e': - 'The prompt content in normal state. If it is not filled in, the prompt will not pop up. You can use < code > \\ ${XXX} < / code > to take values.', + 'Give the prompt content in the normal status. If you do not fill in it, no prompt pops out. You can use \\${xxx} to take a value.', 'fb37b983a93aabdcdbbd59ae48c519fb': 'Disable prompt', 'f4f168a3fec79443d2ca8fd1955edee8': - 'When the prompt content is disabled, if it is not filled in, a normal prompt will pop up. You can use < code > \\ ${XXX} < / code > to take values.', - 'd420160a9e04c481e55a9686ab158caa': 'Mouse hover', - 'd6763cb7640bed39caa058f156007a86': 'focusing', - 'd586324c6d6b45cb78a4172d836dab3e': 'Prompt location:', - 'c182ad6b97f0909596a523b1f04c28d2': 'Left Icon', - 'ad7e6f016bc1d9a9bbc6e18224d73247': 'Right Icon', - '39003734d1d700d5bd97bf1e7a2fcf73': 'style', + 'Give the prompt content in the disabled status. If you do not fill in it, a normal prompt pops out. You can use \\${xxx} to take a value.', + 'd420160a9e04c481e55a9686ab158caa': 'Mouseover', + 'd6763cb7640bed39caa058f156007a86': 'Focus', + 'd586324c6d6b45cb78a4172d836dab3e': 'Prompt position', + 'c182ad6b97f0909596a523b1f04c28d2': 'Leftside icon', + 'ad7e6f016bc1d9a9bbc6e18224d73247': 'Rightside icon', + '39003734d1d700d5bd97bf1e7a2fcf73': 'Style', 'c12ba7b658a9fccf0815f3951bc759b6': 'Highlight style', '6aa6b9e2dca63d27dc74eb155020271d': 'Block display', - 'c8339fd2a85af4ba66084d28df808de4': 'size', + 'c8339fd2a85af4ba66084d28df808de4': 'Size', 'c8caf94205105bac5833ab31cc2129d7': 'Button group', '66ae9ce23b0b2e243aff087d906a2489': - 'It is used to display multiple buttons, which will be visually presented as a whole.', + 'It is used to display multiple buttons which appears as a whole visually.', 'e9d2f66bbd44c96a3e03494bf6b1ebf0': 'Button 1', 'ce35a17d2ba7caac95092a7a66ac9a0d': 'Button 2', 'de26e1294acedb55155a418630d57924': 'Layout direction', '8eb18b36f5a27fa8e6d32bc66546ce05': 'Tile mode', '2e28645c67c5742e473888a27aab7bd6': - 'Make the width of the button group occupy the parent container, and the width of each button is adaptive', + 'Enable the button group to occupy the parent container. The width of individual buttons is adaptive.', '66774850742a81e8b2393195290b7330': 'Button management', 'f9f2b9cc91cd332db6b2b732c3869233': 'Add button', - '40f3bc0a4f4d0f4230fc7fa6f4fcec92': 'Sub button', - 'f05dd80af77a441216ef940e7887a8db': 'Buttons Toolbar ', + '40f3bc0a4f4d0f4230fc7fa6f4fcec92': 'Child button', + 'f05dd80af77a441216ef940e7887a8db': 'Button Toolbar', '433e2e80ec74563daf4368e59b525e34': - 'It can be used to place multiple buttons or button groups, and there will be a certain interval between the buttons', + 'It can be used to put multiple buttons or button groups. A spacing exists between buttons.', '6651fec0511e3593d3438a113dff23d6': - 'Sortable, removable, to edit, please select Edit in the preview area', - 'd7213304d1a8a02a73a2f4010839e061': 'Add, delete, change and query', + 'The buttons or button groups are sortable and removable. If you want to edit the buttons or button groups, edit them in the preview area.', + 'd7213304d1a8a02a73a2f4010839e061': 'CRUD', '7a9f1ec32752de8b69ef21138970f64d': - 'It is used to add, delete, modify and query data, and supports three modes of display: table, cards and list Responsible for data pulling, paging, single entry operation, batch operation, sorting, quick editing and other functions. Integrate query criteria.', - '48c68eb5a42e2b3e679c53b00f6e203f': 'rendering engine ', + 'This button is used to realize the addition, deletion, change, and view of data, and supports three display modes: table, cards, and list. This button is used for data fetching, paging, single operation, batch operation, sorting, quick edit, and other features. Integrate query conditions', + '48c68eb5a42e2b3e679c53b00f6e203f': 'Rendering engine', '64ca9bab920a2983bcf270320d850d00': 'Reload', '9ef5597ac0b4da662bcd967da37eceb4': - 'Trigger component data refresh and re rendering', - '95b351c86267f3aedf89520959bce689': 'edit', - '607e7a4f377fa66b0b28ce318aab841f': 'see', + 'Trigger the component data refresh and render it again', + '95b351c86267f3aedf89520959bce689': 'Edit', + '607e7a4f377fa66b0b28ce318aab841f': 'View', '5b48dbb8dc710cffe6313bb56a7f6d47': 'View details', - '2f4aaddde33c9b93c36fd2503f3d122b': 'delete', - '6c546666aab964c39cd8bfdf4fbd46b8': 'Are you sure you want to delete?', - '7fb62b30119c3797a843a48368463314': 'Batch delete', - 'e73cefac9d030927da1618c7b15c98c9': 'Batch editing', + '2f4aaddde33c9b93c36fd2503f3d122b': 'Delete', + '6c546666aab964c39cd8bfdf4fbd46b8': 'Are you sure to delete it?', + '7fb62b30119c3797a843a48368463314': 'Delete in batch', + 'e73cefac9d030927da1618c7b15c98c9': 'Edit in batch', '19c6b7463e1bf73bb4b12ba07abd5444': 'Field 1', - 'cf12e55021998a8328201800ec356773': 'query criteria', - 'cfb5f18c43753ad5329348d626bd3739': 'keyword', + 'cf12e55021998a8328201800ec356773': 'Query conditions', + 'cfb5f18c43753ad5329348d626bd3739': 'Keyword', '4a1e3c50547e61503a2d1c356005eb08': - 'Add, delete, change and query quick start CRUD', - '85624c8e8b0fc98954eecbe508e8b59d': 'Interface address', + 'Add, delete, change, view, and quick start-CRUD', + '85624c8e8b0fc98954eecbe508e8b59d': 'API address', '3dd674542204724eb5417efc7354ec73': - 'Format verification and automatic generation of column configuration', + 'Verify the format and automatically generate the column configuration.', '3266535dc49863d976b9960adad29fef': - 'The API return format is incorrect. Please click the question mark on the example on the right of the interface address to view the example', - '07b59fd09f6007bac246d9a73b793a49': 'Enable function', - 'bee912d79eefb7335988c4997aa9138d': 'query', - '0f61da949d2b45534967e197cc2eee29': 'Batch modification', - 'aa85b3cd6aa4cdfd45bfe5a96678ad2f': 'Action bar - Edit', - '653eb2792d3126a60caa6982f89a906b': 'Operation bar - View Details', - '8a4d6dfbcd8072555b5951091f171000': 'Action bar - delete', - 'f4b368051b455e386a314688c7c75c1f': 'Enabled query fields', - '23c7ea8ee9519459598b2de65fe2a2eb': - 'How many fields are displayed in each column', - '41a344642681efaaa418c228ba7fb45c': 'Binding field name', - 'ffb01e5bcf4c00447f5150d3cba81371': 'pure text', + 'The API return format is incorrect. Click the question mark in the example on the right of the API address to view the example.', + '07b59fd09f6007bac246d9a73b793a49': 'Enable feature', + 'bee912d79eefb7335988c4997aa9138d': 'Query', + '0f61da949d2b45534967e197cc2eee29': 'Modify in batch', + 'aa85b3cd6aa4cdfd45bfe5a96678ad2f': 'Action bar-edit', + '653eb2792d3126a60caa6982f89a906b': 'Action bar-view details', + '8a4d6dfbcd8072555b5951091f171000': 'Action bar-delete', + 'f4b368051b455e386a314688c7c75c1f': 'Enabled query field', + '23c7ea8ee9519459598b2de65fe2a2eb': 'Display several fields in each column', + '41a344642681efaaa418c228ba7fb45c': 'Bind field name', + 'ffb01e5bcf4c00447f5150d3cba81371': 'Pure text', '59cf15fe6b8d659c9bd2f86143534a06': 'Template', - '4ff1e74e43a3586339251494117185ad': 'date', - '9da188491dd34c4382a5b9f006194e41': 'mapping', - '8abc564260a1564521e0c3a1d5419b4a': 'action bar', - '2b6bc0f293f5ca01b006206c2535ccbc': 'operation', - '07a88fae7dd11f87891af91fb54a74bb': 'Enable query criteria', - '7f7c624a843b0d539a4ea59a696702f9': 'Batch operation', + '4ff1e74e43a3586339251494117185ad': 'Date', + '9da188491dd34c4382a5b9f006194e41': 'Mapping', + '8abc564260a1564521e0c3a1d5419b4a': 'Action bar', + '2b6bc0f293f5ca01b006206c2535ccbc': 'Action', + '07a88fae7dd11f87891af91fb54a74bb': 'Enable query conditions', + '7f7c624a843b0d539a4ea59a696702f9': 'Batch action', '46e6edaeb9968e7f7ab549d4f2f82d6d': - 'This allows you to manage batch operation buttons. Only when batch operation buttons are set will a selection box appear. You can configure the position of batch operation buttons in the appearance.', - '8347a927c09a4ec2fe473b0a93f667d0': 'modify', - 'f13a0697d58d975d14eb3f3c72c2cbf2': 'Single operation', + 'You can manage the batch action buttons through this button. A selection box appears only when you set the batch action buttons. Also, you can configure the position of the batch action button in the appearance. ', + '8347a927c09a4ec2fe473b0a93f667d0': 'Change', + 'f13a0697d58d975d14eb3f3c72c2cbf2': 'Single-entry action', '3674ea51498e7118732e5e1c53d4bc80': - 'After setting, when the mouse hovers over the row data, the operation button will appear, and the top operation bar will also display the button. When members are checked, it will be intelligently switched with the batch button.', - '4916771d080ddf6d0551de4d6d2f42a4': 'Hover hide', - '569343b4fe5e48131b78611c11eadbeb': 'Sync address bar', + 'After you set this button, an action button appears when you hover your mouse over it. Meanwhile, this button appears in the top action bar. When you select a member, it can switch to the batch action button intelligently.', + '4916771d080ddf6d0551de4d6d2f42a4': 'Hide mouseover', + '569343b4fe5e48131b78611c11eadbeb': 'Synchronization address bar', '6dbee29a8c54eef9d042ef3280999ad9': - 'After opening, the query condition data and paging information will be synchronized to the address bar. When there are multiple pages, it is recommended to keep only one synchronized address bar, otherwise they will affect each other.', + 'After you open the synchronous address bar, the query condition data and paging information are synchronized to the address bar. When multiple synchronization address bars appear on the page, it is recommended to keep only one synchronization address bar. Otherwise, multiple synchronization address bars tend to affect each other.', '2171d1b07d045e796cba4a05bcf7d13f': 'Default parameters', '01e7eb2256821085a14708d6ddf36814': - 'Can be used to set default parameters, such as < code > page: 20 < / code >', - '58ed0a7a5a91996dbb4c7d6dc7679364': 'Keep item selection', + 'This button is used to set the default parameters, such as perPage:20.', + '58ed0a7a5a91996dbb4c7d6dc7679364': 'Retain entry selection', '36ac0011faae6f88ee0ec3e642328327': - "After default pagination and search, the items selected by the user will be cleared. After this option is enabled, the user's selection will be retained, and cross page batch operations can be realized.", - '2a0b47ba76e886070c3bd6abeae3d1c0': 'Single description template', + 'After the default paging and search, the selected entries are cleared. After you enable this feature, the user’s selection is retained. Also, this feature allows you to achieve the cross-page batch actions. ', + '2a0b47ba76e886070c3bd6abeae3d1c0': 'Single-entry description template', '6ab3e5b6c5d5d2cf621e911226495433': - 'After [reserved entry selection] is enabled, all the selected entries will be listed. This option can be used to customize the entry display copy.', - '987b04af242bb2dafaf32d890ab952ff': 'Specify primary key', + 'With the [Retain entry selection] enabled, all selected entries are listed. This option can be used to customize the entry display text.', + '987b04af242bb2dafaf32d890ab952ff': 'Designate primary key', 'a270e70be12fb13a24ca3e4ac70fa838': - 'The default < code > ID < / code > is used to obtain row level data in batch operation', - '54ea89b497ec3bb319c68844dfa3687f': 'Interface', - 'db7ee36de8063c2d5a6c123eac65641a': 'Data pull interface', - '0951dad1723aa1191ce1a2e96db76051': 'Initial pull', - '0a60ac8f02ccd2cf723f927284877851': 'yes', - 'c9744f45e76d885ae1c74d4f4a934b2e': 'no', - 'a9400c408441f1f7f6d6954deb05ae9a': 'expression', - '55b22f5d136e73b26cef65aedd8ba86e': 'Use js expression to determine', - 'bedc70d448b656d828bd3ed7926b3e4d': 'One time pull', + 'This option defaults to id and is used for batch action to get the data at the row level.', + '54ea89b497ec3bb319c68844dfa3687f': 'API', + 'db7ee36de8063c2d5a6c123eac65641a': 'Data fetch API', + '0951dad1723aa1191ce1a2e96db76051': + 'Whether to perform the initial data fetching', + '0a60ac8f02ccd2cf723f927284877851': 'Yes', + 'c9744f45e76d885ae1c74d4f4a934b2e': 'No', + 'a9400c408441f1f7f6d6954deb05ae9a': 'Expression', + '55b22f5d136e73b26cef65aedd8ba86e': + 'You can use the JS expression to determine it.', + 'bedc70d448b656d828bd3ed7926b3e4d': 'One-time data fetch', '559fa334442f0f75b0343bbf38b7ff05': - 'After it is enabled, the data will only be pulled at the initial stage, and the subsequent paging and sorting will not require the interface, but will be directly completed by the front end.', - '1af68c43e1780249f11b9de1eeaeb281': 'Enable scheduled refresh', + 'With this option enabled, you can fetch the data only in the initial time. No request for subsequent paging and sorting is sent to the API. Instead, the subsequent paging and sorting are achieved by the front-end device.', + '1af68c43e1780249f11b9de1eeaeb281': 'Enable timed refresh', '9800f1ce2f78a23b81c8d944ebf9cce9': - 'After setting, it will refresh automatically and regularly, unit: ms', + 'After you set this option, the timed refresh takes place automatically. The unit is ms.', '19c5410b23fba4bbfd1a58bbd5268c9b': 'Silent refresh', '04f840b0772f4b5d59954a29a76f4e7b': - 'Set whether loading is displayed during automatic scheduled refresh', + 'Whether to display the loading after you set the automatic timed refresh.', '6037dae99e9446deaed45f7e408f47ab': - 'Stop regular refresh detection expression', + 'Detection expression for stopping timed refresh', '32e3a79e80dcf7f7304e8092dd7acc6f': - 'Once the timing refresh is set, it will be refreshed all the time. Unless an expression is given, it will not be refreshed after the condition is met.', + 'The refresh takes place constantly once you set the timed refresh. The refresh proceeds unless and until an expression is given and the conditions are satisfied.', '154ef40e477c031f6c1ec15caefb570a': - 'Turn off automatic refresh when there is a pop-up box', + 'Disable automatic refresh when a popout appears.', '50f7c85bf60a9f43522789644566c62b': - 'When the pop-up box is turned on and off, it will refresh automatically. When the pop-up box is turned off, it will recover', - 'd8905a70e93a33c7a86240f467c653d4': 'Drag and drop sorting', - '040a78b24eaff47d4fa7e266473635b4': 'Sequential save interface', - 'ee850a0e326b217bdeb61d936c521177': 'Quick save interface', + 'The automatic refresh is disabled when a popout appears. The automatic refresh is recovered after you close the popout.', + 'd8905a70e93a33c7a86240f467c653d4': + 'Whether you can drag and sort them or not.', + '040a78b24eaff47d4fa7e266473635b4': 'API for sequential saving', + 'ee850a0e326b217bdeb61d936c521177': 'API for quick saving', '8343f619879fa79bc8ef1a35b2fc3e78': - 'When quick editing is set in the column, this interface will be used to save data in batches.', - 'd891e79d4a8718a7dbd47ac68aaaa5cb': 'Quickly save a single interface', + 'After you set the quick edit in the column, you can use this API to save the data in batch.', + 'd891e79d4a8718a7dbd47ac68aaaa5cb': 'API for quick saving of a single entry', '38db6e045e214ffcd03ede695002271c': - 'When quick edit is set in column and save now is set, this interface will be used to save data.', + 'This API is used to save the data when you set the quick edit and the immediate saving in the column.', '522110866c19dace2ce38336617405c2': 'Default message prompt', '3b69c2e540c05e9ca530ed30cf224472': - 'Override the default message prompt, but if the API returns MSG, the MSG will be used preferentially', - 'fb24383a41f23196349548b5d0cb98ce': 'Get success prompt', - '62e3e15c8fb9038f2780329bc26e8bab': 'Get failure prompt', - 'c62a1b7f314be10aead10475e7543f6a': 'Prompt for saving sequence successfully', - 'c8035507b7a576d43e9f227c91c7a7b5': 'Prompt for saving sequence failure', - '7cb0932b806559be232d2a69453224e7': 'Prompt for quick save success', - 'fd79a193a487b8c9d5a302d0d88c1c2c': 'Prompt for quick save failure', + 'It overwrites the default message prompt. However, if the API returns a msg, this msg is used preferentially.', + 'fb24383a41f23196349548b5d0cb98ce': 'Prompt for successful acquisition', + '62e3e15c8fb9038f2780329bc26e8bab': 'Prompt for acquisition failure', + 'c62a1b7f314be10aead10475e7543f6a': + 'Prompt for successful saving of the sequences', + 'c8035507b7a576d43e9f227c91c7a7b5': + 'Prompt for failure to save the sequences', + '7cb0932b806559be232d2a69453224e7': 'Prompt for successful quick saving', + 'fd79a193a487b8c9d5a302d0d88c1c2c': 'Prompt for quick saving failure', 'ff57a3bf69a1065707e77c18c51f7bbb': 'Content display mode', '20aadc3f9b7edb564dc58898898e0dc8': 'Column information', - '72cf373be86a38b29f6d2f15900b0da1': 'Subtitle', - 'f26225bde6a250894a04db4c53ea03d0': 'details', - '3bb4d608c6bee2b7b6d788417cde04e3': 'Simple presentation data: $a $B', - 'b339aa87104709397ba68e7ebbc6e5ba': 'form', - 'd87f215d9ac688b1d3399bf575a0ef6f': 'card', - '3712972d84adf48acbd6ad24b4d75ad0': 'list', + '72cf373be86a38b29f6d2f15900b0da1': 'Sub-title', + 'f26225bde6a250894a04db4c53ea03d0': 'Details', + '3bb4d608c6bee2b7b6d788417cde04e3': 'Simple display data: $a $b', + 'b339aa87104709397ba68e7ebbc6e5ba': 'Table', + 'd87f215d9ac688b1d3399bf575a0ef6f': 'Card', + '3712972d84adf48acbd6ad24b4d75ad0': 'List', 'e4fd8d64804a4f3d743eff384a6eb20a': - 'For non built-in content, please select it in the preview area and edit it', - '14555503d6e09ecd66661d04c882e79b': 'Top Toolbar configuration', - '3862626c138ce5945e0e273a1bdfbad0': 'paging', - '439a19857be1fb8d3e6017258e32c486': 'statistical data', - 'bc908986a4e4eec3dca3530afd1d4306': 'Switch page number', + 'You can select and edit the non-built content in the preview area.', + '14555503d6e09ecd66661d04c882e79b': 'Top toolbar configuration', + '3862626c138ce5945e0e273a1bdfbad0': 'Paging', + '439a19857be1fb8d3e6017258e32c486': 'Statistical data', + 'bc908986a4e4eec3dca3530afd1d4306': 'Change page number', '77281549955309c49f5eef77838a85e5': 'Load more', '1add12ff3338a990b60154b75019c348': 'Export CSV', - '7d57852b946d9d4d64fb2a48ca2b4a44': 'Export Excel', - '16c6099bc0efaa669d8de698c105e333': 'column selector ', - '073694928db5b0b5423ebe095ec62d39': 'Query condition switching', - '5b9c3e6ce478196f802722cb09d61f0b': 'Drag switch', + '7d57852b946d9d4d64fb2a48ca2b4a44': 'Export Excel formatted files', + '16c6099bc0efaa669d8de698c105e333': 'Column selector', + '073694928db5b0b5423ebe095ec62d39': 'Change query conditions', + '5b9c3e6ce478196f802722cb09d61f0b': 'Drag and switch', '66eeacd93a7c1bda93906fe908ad11a0': 'Select all', - 'd5bc35360607472de4525358af126de4': 'Alignment:', - '413f48cc71f71083ce532a86e3efdc21': 'Align left', + 'd5bc35360607472de4525358af126de4': 'Alignment method', + '413f48cc71f71083ce532a86e3efdc21': 'Left alignment', 'fd8e9572cc6bf87653c4d8f8b8dd0db9': 'Right alignment', '1325969c143a639294c1c6ab370b35a3': 'Bottom toolbar configuration', '440a3a2d7f1b123718be75e2baee8391': - 'For details, please select it in the preview area and edit it.', + 'You can select and edit the details in the preview area.', '34da7e4a0ecdb63967427f43adf2de3e': - 'Whether query criteria can be explicit or implicit', - '25c0db3ddce9bfffd497d0c824cf3c72': 'Query criteria: visible by default', - '259d11c300a365b6767228c12d29ce53': 'Hide top quick save prompt', - 'fa9417bacb7714e82663655345ca213d': 'Always show paging', + 'Whether to display and hide query conditions', + '25c0db3ddce9bfffd497d0c824cf3c72': + 'Whether the query conditions are visible by default', + '259d11c300a365b6767228c12d29ce53': 'Hide top prompt for quick saving', + 'fa9417bacb7714e82663655345ca213d': + 'Whether to display paging condition always', 'e3d2a85f20608a5bde7d539969d03167': 'Hide selection button', 'af1af0a7fad9e8bdcd21694d0e036e12': 'Content CSS class name', - 'c11322c9cc43ce3c004cf03f5ac0acd0': 'data source', + 'c11322c9cc43ce3c004cf03f5ac0acd0': 'Data source', '62569fcb0fc8314daea97989bba3877c': - 'If it is not filled in, the items or rows returned by the interface will be read by default. If it is other, please set it here, for example, < code > \\ ${XXXX} < / code >', - '606bc931d2b3ebba2569cb1494719e2c': 'Quantity per page', - '004d01f56242e07cbdc97256bb11c75b': 'Keep selection when turning pages', - '3d330edb46341a26ccc9aaa7f7938a8e': 'Maximum selection quantity', - '95e68bea2d8c8e41ffa619d4364a0d6f': 'Page number field name', + 'This option is left blank. The properties of the items or rows returned from the API are read by default. If anything else exists, set it here, e.g., \\${xxxx}.', + '606bc931d2b3ebba2569cb1494719e2c': 'Number of items shown on each page', + '004d01f56242e07cbdc97256bb11c75b': 'Retain selection during paging', + '3d330edb46341a26ccc9aaa7f7938a8e': 'Maximum number of selected items', + '95e68bea2d8c8e41ffa619d4364a0d6f': 'Page field name ', '537f8b09437bdb7fac429dc4e8666763': 'Paging step field name', - '30c7bd5acd4564057bd89e0846f01728': 'Sort weight field', + '30c7bd5acd4564057bd89e0846f01728': 'Sorting weight field', 'dd8d217677e4c5df28b7f46aa99b22a8': - 'Set the field name used to determine the position. After setting, the new order will be assigned to the field.', - 'e04e8f570e2fb43a533b224f3c48523d': 'Switch number of pages per page', + 'It is a field name that is used to determine the position. The new sequence that you set is assigned to this field.', + 'e04e8f570e2fb43a533b224f3c48523d': 'Number of switch-overs on each page', '0fc1de8f71a7470213fc68f981abdbc2': - 'Configure a single selectable expression', + 'Configure the expression that you can select for each item.', '7d5fefd589000879088063dceb4b2552': - 'Please use js expression. If it is not set, each item can be selected.', + 'Use js expression. If failed to set it, you can select all items.', '614ec7801e03f7ee009e4448e6ed4001': - 'Open a single bar, click the whole area to select it', - '530ab79908eabe5b329ffe17695079e2': 'Automatically jump to the top', + 'Enable a single entry, and click and select the entire area.', + '530ab79908eabe5b329ffe17695079e2': 'Automatic return to the top ', '9092afb1ccb692308ef06d8001da2208': - 'Whether to automatically jump to the top when cutting pages', - 'c8cf39b24bb52d0562472c33b86824fe': 'Synchronize query criteria', + 'Whether to return to the top during paging.', + 'c8cf39b24bb52d0562472c33b86824fe': 'Synchronize query conditions', 'd3c172700af4f3f3afb028d6bb4a90a4': - 'After query, the returned data is synchronized to the query criteria', + 'After the query, the returned data is synchronized to the query conditions. ', '5db6b2160b9169b9d89de247d14ab740': - '"Add, delete, change and query" editing auxiliary area', - 'f49d40842a3c66c4de2e57a48157c707': 'Show individual cards.', + '“Add, delete, change, and view” edit area', + 'f49d40842a3c66c4de2e57a48157c707': 'Display a single card', '0212e8c9b113143a031d1f3e25167794': - 'Please click the Add button element from the component panel on the left', + 'Click to add a button element in the left component panel.', '6312e80e416fa79ff3383e1577c243b8': - 'Please click add content element from the component panel on the left', - 'a3cf7c9ee581ae71eb51d18b610b05b6': 'New content', + 'Click to add a content element in the left component panel.', + 'a3cf7c9ee581ae71eb51d18b610b05b6': 'Add content', '00a1f644f34b9ee43adf82cb3449158c': - 'Support template syntax such as: < code > \\ ${XXX} < / code >', - 'f7a82c9758acc4ff4c5350182f2ca378': 'Picture address:', - '3bdd08adab6ea90b9164b20a0e4151ac': 'describe', - 'd85562778760b00b1372af642c4630e6': 'Highlight expression', - '4011e5fb23b422f755d81269a5242d22': - 'For example, < code > this. Isowner < / code >', + 'It supports the following template syntax: \\${xxx}', + 'f7a82c9758acc4ff4c5350182f2ca378': 'Image address', + '3bdd08adab6ea90b9164b20a0e4151ac': 'Description', + 'd85562778760b00b1372af642c4630e6': 'Whether to highlight expression,', + '4011e5fb23b422f755d81269a5242d22': 'e.g.: this.isOwner', 'd4f223e0619836d03d488c89558f38e7': - 'The maximum number of buttons that can be placed in a row of cards', - '620868e5e60e5c22249c3277c971bb13': 'Title: CSS class name', + 'Maximum number of buttons put in each row of the card', + '620868e5e60e5c22249c3277c971bb13': 'Title CSS class name', '1fee6fa022c97f5dd7f48e362cea5acf': 'Highlight CSS class name', - '2a3c7d647a29fb7dc5aedabac216575e': 'Subtitle: CSS class name', - 'a5680444d449b2099b067e9963fe43aa': 'CSS class name of picture outer layer', - 'b8e1e46cbdea20de4e5fc130d31b7bcc': 'Picture CSS class name', + '2a3c7d647a29fb7dc5aedabac216575e': 'Sub-title CSS class name', + 'a5680444d449b2099b067e9963fe43aa': 'CSS class name of top image layer ', + 'b8e1e46cbdea20de4e5fc130d31b7bcc': 'Image CSS class name', 'a31119cb2fddee3366163a311f317cf7': 'CSS class name of content area', - 'e82eb2350b4283822aeea21aff9d97b5': 'Field: {{@1}}', - '9caecd931b956381e0763d05aa42835c': 'field', - 'bcee820bc20342a4d388a35ed32a35fe': 'Column name:', + 'e82eb2350b4283822aeea21aff9d97b5': 'Field {{@1}}', + '9caecd931b956381e0763d05aa42835c': 'Field', + 'bcee820bc20342a4d388a35ed32a35fe': 'Column name', '093c340f7e1fbde1928ca56b5c7f9cc4': 'Card list', '85c17b016309a3f867a1803049b3bcd8': - 'The function is similar to a table, but it uses small cards to display data. The current component needs to configure a data source and does not bring its own data pull. Please use the "crud" component first.', + 'This feature resembles the table, but it uses a small card to display the data. You need to configure a data source for the current component. This component does not have the data fetch feature. You need to take priority to use the “CRUD” component. ', '6223c41373004e3111e768225450b4e8': 'Card set', - '3983b9f5575ae146d2d06f8ec5447a4d': 'Configure single item information', + '3983b9f5575ae146d2d06f8ec5447a4d': 'Configure single-item information', 'a3f38735bf211edb2066ac4e51b55cb2': 'Open external link', - '7ea26d0cb93e59339daf6a1ac68624f3': 'Bind current environment variable', - '21efd88b67a39834582ad99aabb9dc60': 'No data yet', - '35ba83e053cef95e55dfffde279822b5': 'No data prompt', - 'e18d033cc4baab3ebb329f6b29eb3cef': 'Whether to display the head', - '412593f58b9d062a43cbe2ce38f4dc65': 'Show bottom', + '7ea26d0cb93e59339daf6a1ac68624f3': 'Bind current environment variables', + '21efd88b67a39834582ad99aabb9dc60': 'No data', + '35ba83e053cef95e55dfffde279822b5': 'No data displayed', + 'e18d033cc4baab3ebb329f6b29eb3cef': 'Whether to display header', + '412593f58b9d062a43cbe2ce38f4dc65': 'Whether to display footer', 'e494f1aa112068688ca863db7f39a0b5': 'Header CSS class name', - 'd267231d2d8b60e267acc7d7d9955ae2': 'Bottom CSS class name', + 'd267231d2d8b60e267acc7d7d9955ae2': 'Footer CSS class name', 'b2d2593bfb7a627817c0bd1ef6a254a8': 'Card CSS class name', - '58e78d512d9ff40c73a263ab616cc652': 'Number of displays per line', + '58e78d512d9ff40c73a263ab616cc652': + 'Number of class names displayed in each row', '3cf0da9fe51f92842e0a6d375fa5c605': - 'When not set, it is determined by the card CSS class name', - '953e91f3df59837ac2965cc04dec4b0d': 'Enable waterfall flow', + 'When this parameter is not set, it depends on the card CSS class name.', + '953e91f3df59837ac2965cc04dec4b0d': 'Enable waterflow', '39a6853b109ae98f1aabca90283d7edc': 'Configure member renderer', '6cb01692eea2fa7066d20fe2b6ccaea3': 'False data', - '0c0180cb06a322199a67f10d4ec41cd5': 'Rotation chart', + '0c0180cb06a322199a67f10d4ec41cd5': 'Carousel image', '1007c97dbf952e032ce13be3cb811f23': - 'It is used to render a carousel, configure the content of each page (not just pictures), and configure transition animation.', - '0a2907a421b8f980986117e4f3044f92': 'Associated fields', - 'e760ec18028fc075c5705bf184589e70': 'Static settings', + 'It is used to render the carousel image. It allows you to configure the content on each page (in addition to images) and the transition animation.', + '0a2907a421b8f980986117e4f3044f92': 'Associated field', + 'e760ec18028fc075c5705bf184589e70': 'Static setting', 'd314558953b3c76adb7e131aaec8bd86': 'Field name', '793a763e73f1f742e3a16ddc2ed95ccb': - 'Set the field name to associate the data in the current data scope.', - 'b9994cc749b4cfbbac0a9b140addd242': 'Carousel option content', - 'c6c7456d446d62a906c2809b6ba19ce1': 'Picture title', - 'ab8a46ccf46acbf82d020d11468291b1': 'Picture title class name', - '098c3d959911b48b4d912cb85ccc4942': 'Picture Description:', - 'c6fc4066471664a8602c636cfe1cc766': 'Picture description class name', - 'cfb6f6e4c92a61ed0e0717abc8d0eec7': '

HTML fragment

', - '97cc997910b99083bd23c6ac39294ff3': 'Automatic rotation', + 'This option allows you to set the field name and associate the data in the current data domain.', + 'b9994cc749b4cfbbac0a9b140addd242': 'Content of the carousel option', + 'c6c7456d446d62a906c2809b6ba19ce1': 'Image title', + 'ab8a46ccf46acbf82d020d11468291b1': 'Image title class name', + '098c3d959911b48b4d912cb85ccc4942': 'Image description', + 'c6fc4066471664a8602c636cfe1cc766': 'Image description class name', + 'cfb6f6e4c92a61ed0e0717abc8d0eec7': '

html segment

', + '97cc997910b99083bd23c6ac39294ff3': 'Automatic carousel', '8c2a12c5dee794b8b9608bc1f8087947': 'Animation interval', '6265104f900789dd51d75b449c3b9f89': 'Animation duration', '5bc37c57ee54d407f441b222f02391db': 'Animation effect', @@ -418,103 +427,104 @@ extendLocale('en-US', { 'f7471313dce32bc3669d338764a0d036': 'Control display', '1c0fe943329339003e9e3c1b12a27fe3': 'Bottom dot', 'e030190fd1c10b0c967f48e789fa86b1': 'Left and right arrows', - 'c28479019e24e0e4745f4948e9e97ee7': 'width', + 'c28479019e24e0e4745f4948e9e97ee7': 'Width', 'ad5a36ee5f4054594c30b6dc481e2d81': 'Previous card', '49e0f68798e3c69b7990076bd8f1f47f': 'Next card', 'd09504750ebc1d75c38d86e16060f83d': 'Chart', '10e14f791d73c7c0f4113787f36f1626': - 'It is used to render charts. It is based on echarts chart library. In theory, echarts supports all chart types.', - '67b6bec14c39be3f2602271e2fe3bcde': 'Update data', + 'This option is used to render the chart. Based on the echarts library, it supports all echart types theoretically.', + '67b6bec14c39be3f2602271e2fe3bcde': 'Refresh data', '0310aa5a05fe07147d8b7ef20616f659': 'Trigger component data update', - '3d6abfdea70af544603da70f93ed3d24': 'Interface pull', + '3d6abfdea70af544603da70f93ed3d24': 'API fetch', '03677b68a73eb59e5faf281f49f3c130': - 'The interface can return configuration or data. It is suggested that the returned data can be mapped into the echorts configuration', - '1396ebc166bd49c1e3b67549a1b4caa0': 'Whether to pull initially', - '2af32ab13a9dece315cec2764d6aa7d4': 'Scheduled refresh interval', + 'The API can return the configuration or data. Recommend that the return data could be mapped into the Echarts configuration.', + '1396ebc166bd49c1e3b67549a1b4caa0': 'Whether to fetch API initially', + '2af32ab13a9dece315cec2764d6aa7d4': 'Timed refresh interval', 'bc827aaffaa35a95607346cc104c0785': - 'After setting, it will refresh automatically at a fixed time. The minimum is 3000, and the unit is MS', + 'After you set this option, the timed refresh takes place automatically. The minimum refresh interval is 3000 ms.', '57c7d1125d2803b946a5b25c3f80f249': 'Echarts configuration', '3d3fa75d8b345b22a5fbd14a65a0af71': - 'Supports data mapping, and can fill in the data returned by the interface', - '43ddd80698198791d4a738bb20a2d7f4': 'Configure drilldown', - 'c8da43fe6ad1c537f86cecb353250145': 'Delete drilldown', + 'This option supports the data mapping, which can fill in the data returned from the API.', + '43ddd80698198791d4a738bb20a2d7f4': 'Configure DrillDown', + 'c8da43fe6ad1c537f86cecb353250145': 'Delete DrillDown', '4fd9621d4facc101aba3afec055e14d1': 'Data processing', 'd98ef182637b4d10e16e8073c1101e51': - 'Chart configuration complete replacement', + 'The chart configuration is completely replaced.', 'f1f13cb0ca4720a727cbfba4c82e5890': - 'The default mode is append mode. The new configuration will be merged with the old configuration. If checked, it will be completely overwritten directly.', + 'This option defaults to the append mode. The new configuration is merged with the old one. If selected, the configuration is entirely overwritten.', '40128a51e9667fe6a20a0454069368ba': - '

Content < code > ${value | JSON} < / code >

', - '7e3f6245e2a6adb903cf85c77cb1bbd7': 'Configure drilldown details', - '38bbd995a790f5a67211e034b007c145': 'Code highlighting ', + '

Content${value|json}

', + '7e3f6245e2a6adb903cf85c77cb1bbd7': 'Configure DrillDown details', + '38bbd995a790f5a67211e034b007c145': 'Highlight code', '86e38e6425f722ba725718af2366ac08': 'Fixed value', 'e90e6ff080f179215c3566a61ca62367': 'Folder', '452b62e9b7e650fa163300da2893654a': - 'Folder, which can expand or hide the content area to keep the page clean', - '81d2b9f20fb2083c75a5b052b84e897a': 'Expand title', - '7349194c139069b32889101768aa7428': 'Title when the folder is expanded', - '3a8647306ee6456517b7bf9c8bc7de23': 'Title Position:', + 'The folder can unfold or fold the content area to keep the page clean.', + '81d2b9f20fb2083c75a5b052b84e897a': 'Unfold title', + '7349194c139069b32889101768aa7428': + 'The title appeared when the folder is in the unfolded status.', + '3a8647306ee6456517b7bf9c8bc7de23': 'Title position', 'c949729cd1a1e425595c1a297649c7c6': 'Top', - '12c4c5e8abda77e1fdc93653d6414187': 'bottom', + '12c4c5e8abda77e1fdc93653d6414187': 'Bottom', '731f9b470e0948cbf56341a53c423213': 'Display icon', '96c0cc844a06e0850c04f7c44b6475fb': 'Foldable', - '63b67eead04256e42ea9f6f7218731ee': 'Title: class name', + '63b67eead04256e42ea9f6f7218731ee': 'Title class name', '66d88b3e01aff17c7973181e53fc8c0c': 'Content class name', 'd09980a88568f75e9267ca7b531c74eb': 'Fold panel', '0d571a7ab19e098820e8cea4d5a80f7d': - 'Folding panel: when the amount of information is large and there are many categories, the folding panel can be used for category storage.', + 'When the information volume is huge and there are many classes, you can use the fold panel to sort the classes.', '17dcbf1f144607d4af0bb718e008682f': 'Title 1', - 'f7fb20f6cacd5e40c7f5732cb377d0bf': 'Here is content 1', + 'f7fb20f6cacd5e40c7f5732cb377d0bf': 'This is content 1.', '72d41bd9eb3882f7da6f55d0ff0a39f6': 'Title 2', - '0431ee7033364800e261d1e560808231': 'Icon location', - 'a7eaff29603a9c40927f726013d2c016': 'left', - '128d58f066a18ddb2ddb701921d5c77c': 'right', + '0431ee7033364800e261d1e560808231': 'Icon position', + 'a7eaff29603a9c40927f726013d2c016': 'Left', + '128d58f066a18ddb2ddb701921d5c77c': 'Right', '47b4e22880eb59ce9989b8419222e88a': 'Accordion mode', 'bb3548f0bb97ab11ee92284ecf37ec16': - 'Accordion mode, only a single panel is allowed to expand', + 'In the accordion mode, you can unfold a single panel only.', 'f24544b06700857ec11b434cb2916692': 'Panel management', 'c5ceab33d3e275262b4992a8cb43317f': 'Add folder', - 'b839e579e920068bd817d34cd7927069': 'Please add a folder', - '030a54b0afb54fc7f90e1a0f64eb8205': 'Expand this panel by default', - '39b066b81835fd66bd4529d1220c9dd3': 'Title: {{@1}}', + 'b839e579e920068bd817d34cd7927069': 'Add folder', + '030a54b0afb54fc7f90e1a0f64eb8205': 'By default, unfold this panel.', + '39b066b81835fd66bd4529d1220c9dd3': 'Title {{@1}}', 'ded228f9173b241dd8df2a4811ea0e98': - 'A simple container that can place multiple renderers together.', + 'A simple container allows you to put several renderers together.', 'a823cfa70cfa46c788e1eedae043f6e5': 'Container label', - 'f7d64e5e79994c3c8853f2608d7b2d25': 'Illegal HTML tag, please re-enter', - '473d2078518479669823205110842376': 'Custom code', + 'f7d64e5e79994c3c8853f2608d7b2d25': + 'Because the HTML label is invalid, re-enter it again.', + '473d2078518479669823205110842376': 'Custom Code', '8b9c77fa4e646b9cb270f833252e511b': - 'Implement functions through embedded code', + 'This feature is implemented through the embedded code.', '0b13dc6251002bf556263fb3e4675b11': 'HTML content', - 'd6b917c76b92aa9b92b6bebdcab993f3': 'Onmount code', - 'e64739dd24bb0bfcb6f6e1ee2cce5413': 'Onupdate code', - '0601b7aa5b53cbc3616e24719bcd2aaa': 'Onunmount code', + 'd6b917c76b92aa9b92b6bebdcab993f3': 'onMount code', + 'e64739dd24bb0bfcb6f6e1ee2cce5413': 'onUpdate code', + '0601b7aa5b53cbc3616e24719bcd2aaa': 'onUnmount code', 'b82231f254baf9a28bf752683d31b169': 'Custom container', 'e5b5798a8bab7dc8a578431991731040': - 'Implement container components through custom code', + 'The container component is implemented through the custom code.', '96ec95de2d7da5b16465eb980f74deae': '

Custom container area

', '749f710d280419b1da031c9bc79b3b07': 'Custom container area', '356b1959a9da95997b4de31415d9d74e': 'Date display', '2bc6d101e5701a70f2fb9e0b67581594': - 'It is mainly used to associate field names for date display. It supports various formats such as X (timestamp), yyyy-mm-dd HH: mm: SS.', + 'It is mainly used to associate the field name for date display. It supports various formats, such as X (time stamp), YYYY-MM-DD HH:mm:ss.', 'a2344febfc246ddc7281f62217ba42c0': 'Date value', '84ff80a2dc4717cc01acd486040a6763': 'Display date format', '6eea1b15be458a6999c9259aa2280a70': - 'Please refer to the format usage in moment.', + 'Refer to the format use method in the moment.', 'a7032449ae8761aea61cc30e32d3be10': 'Data date format', - '4c1cff4d8c05daa6ed9352a241ee628c': 'placeholder ', + '4c1cff4d8c05daa6ed9352a241ee628c': 'Placeholder', 'b54e0f0a60f8e2c4c31f3b1ad7d5a613': 'Date and time display', - '2a898869829eae8adcfca290fd34a67d': 'Date time value', - 'b0d6f2d882adc2163e6a08a121d18677': 'Display date time format', - 'ab3aec075a09d055b2a28c8b61925ee0': 'Bullet frame', - 'e83a256e4f5bb4ff8b3d804b5473217a': 'confirm', + '2a898869829eae8adcfca290fd34a67d': 'Date and time value', + 'b0d6f2d882adc2163e6a08a121d18677': 'Display date and time format', + 'ab3aec075a09d055b2a28c8b61925ee0': 'Popout', + 'e83a256e4f5bb4ff8b3d804b5473217a': 'Confirm', '773ddc154f1e9b80f04e8bc9d83d2caf': - 'Triggered when the pop-up confirmation button is clicked', - '625fb26b4b3340f7872b411f401e754c': 'cancel', + 'Trigger when you click the Confirm button in the popout.', + '625fb26b4b3340f7872b411f401e754c': 'Cancel', '08ab4ffcd1bddd249a193e6353bb52bb': - 'Triggered when the pop-up cancel button is clicked', - '4708bcefff645287c8781a1de2a0f20b': 'Trigger pop-up confirmation', - 'af17a4e37e5c6d68fff33c084192801b': - 'Trigger pop-up window to cancel operation', + 'Trigger when you click the Cancel button in the popout.', + '4708bcefff645287c8781a1de2a0f20b': 'Trigger the popout Confirm action', + 'af17a4e37e5c6d68fff33c084192801b': 'Trigger the popout Cancel action', 'dd10fdec63a2224aa3d28b48d428cb98': 'Data mapping', 'abf68809d31c8eabb3eb5ae9e00abfcd': '< p class = text SM text muted > when data mapping is not enabled, the pop-up box will have all the data of the environment where the pop-up box button is triggered by default', @@ -526,644 +536,655 @@ extendLocale('en-US', { '4cade75641878a17e2f1ff29ff0ac235': 'Click the area outside the pop-up box to close the pop-up box', '391b8fa9c747a1799353ab856e666ad5': 'Small', - '18c63459a2c069022c7790430f761214': 'default', - 'aed1dfbc31703955e64806b799b67645': 'in', - 'ab18e30c0dc4093ceeda8961fac3d1f4': 'large', - '949934d97c42801151673a51d3adc421': 'Oversized', + '18c63459a2c069022c7790430f761214': 'Default', + 'aed1dfbc31703955e64806b799b67645': 'Medium', + 'ab18e30c0dc4093ceeda8961fac3d1f4': 'Big', + '949934d97c42801151673a51d3adc421': 'Extra big', '5831b836c8132033f90b3f530fa433db': 'Whether to display the close button', '79e5818b205352166231217ea39c4f1f': 'Top CSS class name', - '7e1eb2c588aa1301f4aa19395ef0a177': 'Divider', + '7e1eb2c588aa1301f4aa19395ef0a177': 'Separator', 'bc43ae8e61f1ad4be2b0a9e70501e490': - 'It is used to show a dividing line, which can be used for visual isolation.', - '33f1fc330b325469b43614c9d96f590e': 'Drawer type spring frame', + 'This option is used to display a separator which is used for the visual separation.', + '33f1fc330b325469b43614c9d96f590e': 'Drawer type popout', '0c5a0448b07419ad2900c36867e8e4e0': - 'Triggered when the drawer confirmation button is clicked', + 'Trigger when you click the drawer confirmation button', '57f215184a2fb83541f7cfa22d039feb': - 'Triggered when the drawer cancel button is clicked', - '97b6bad87c4320faac2f6a5cf556c26c': 'Trigger drawer confirmation', - '909ba2872b2d670ec0ecbcacc4c8c833': 'Trigger drawer cancel operation', - 'd4d2a66820d30e07b44c850eb3f116c0': 'position', + 'Trigger when you click the drawer cancellation button', + '97b6bad87c4320faac2f6a5cf556c26c': 'Trigger drawer confirmation action', + '909ba2872b2d670ec0ecbcacc4c8c833': 'Trigger drawer cancellation action', + 'd4d2a66820d30e07b44c850eb3f116c0': 'Position', '81b8345bc49ce2aa550ad9792acec3e9': 'Define where the pop-up box is called', '399f43daffee1afae2a881027b6fb1f9': 'Click "external" to close the pop-up box', 'b09cb613b11a41f3b3804d9c75da90b1': 'Press ESC to close', - '6d7f8b31caaf80deb65eb2c8bdd41cd7': 'Super small', + '6d7f8b31caaf80deb65eb2c8bdd41cd7': 'Very small', 'b90f6c7021e444a34a00fcba6a428762': 'Show mask', '07e8695e6142a6e50b323c3d5aae2101': 'Draggable', '0fad5a56c8b4643f24797eaa616bef6f': 'Define whether the pop-up box can be dragged and resized', '7fdaa90d63dd5163de1911264bc5c514': 'Bodyclassname class name', - 'cc70a816b7d61e7212d57335c0a15af5': 'Pull down button', + 'cc70a816b7d61e7212d57335c0a15af5': 'Drop Down Button', '74bafe23b0be1a14aa218b396cb33bd0': - 'Pull down button, more buttons will be displayed after clicking.', + 'More buttons are displayed after you click the drop-down button.', '213a4e49568569943403ff31fff31ee5': 'Configure drop-down button collection', - 'b5b57c711fd2d2309cc390a8b44d2b69': 'Button copy', - '314454bbee226e4b32b612afdd8e9442': 'Mouse over', - '4a757588f5aee8cd039b1d166b096d1a': 'Click external close', - '9951d740257c40978c238a683b1d4a80': 'Click content close', - '205cb6cc6c8d37f3bed62d9c8bfae976': 'Default deployment', + 'b5b57c711fd2d2309cc390a8b44d2b69': 'Button text', + '314454bbee226e4b32b612afdd8e9442': 'Mouseover', + '4a757588f5aee8cd039b1d166b096d1a': 'Click external area to disable', + '9951d740257c40978c238a683b1d4a80': 'Click content to disable', + '205cb6cc6c8d37f3bed62d9c8bfae976': 'Unfold by default', '697eb55e1c6cecf43e63a26232dda5b2': - 'After selection, the drop-down menu will expand by default', - 'b2aa282e908597d1d700c1f4de17b8aa': 'Menu alignment', + 'The drop-down menu defaults to unfold after you select this option.', + 'b2aa282e908597d1d700c1f4de17b8aa': 'Menu alignment method', 'e57996d3d771141f1b3080bbd8ad605b': - 'After selection, the button occupies the width of the parent container', - '1ce673c48f29162208e75bc210307bfc': 'Display style:', - 'c9e265ec462b61887af6f58928923925': 'Hide drop-down Icon', - '938ac86e738246ccd0ca0224031f96af': 'drop-down menu ', - 'ff9f6c2d74c413daa3cd6fb12f8dfd3e': 'Cycle each', + 'The button occupies the parent container width after you select this option.', + '1ce673c48f29162208e75bc210307bfc': 'Display style', + 'c9e265ec462b61887af6f58928923925': 'Hide drop-down icon', + '938ac86e738246ccd0ca0224031f96af': 'Drop-down menu', + 'ff9f6c2d74c413daa3cd6fb12f8dfd3e': 'Each', 'f34111ff3694a6c6de6e31bef8ebadcb': - 'Function renderer, which can loop the output renderer based on existing variables.', + 'The feature renderer can be based on the current renderer for the loop output of variables.', '874268022baac239b06c40600d3ce080': - '<%= data. index + 1 %>. Content: <% = data item %>', - '69bdc66bb88ac5b63053e2bb7db41801': 'loop', + '<%= data.index + 1 %>. Content: <%= data.item %>', + '69bdc66bb88ac5b63053e2bb7db41801': 'Loop', 'b7c16dedc4291d333fba7628ec9eb073': - 'If the container has distributed value, it does not need to be configured. If not, please configure the variable name. It supports multiple levels, such as a. B, which indicates that the B attribute under the associated a object. The target variable can be an array or an object.', - '4726ff4e62d3fcfa4b090aaefc393229': 'No content at present', + 'If the container has a value, you do not need to configure a variable name. If it has not any value, you need to configure a variable name. It supports multiple levels, e.g., a.b indicates that the b’s attributes under the object a are associated. The target variable may be an array and can also be an object.', + '4726ff4e62d3fcfa4b090aaefc393229': 'No content is available temporarily.', '5d5f9d49fcb2109f94a43590ef796ca7': - 'When there is no associated variable, or the target variable is not an array or an object, this placeholder information is displayed', + 'When no variable is associated or the target variable is not an array or object, it displays the placeholder information.', 'f549581bf93c72ed69c37e906e04191d': 'Flex layout', - '6ab8332f3da284b137d54f6ba901e93c': 'Flex layout', - 'ef5abdfc944546ddcbe10e9884cf5832': 'First column', - '874fdb7b3a5730910a4de1c58220c337': 'Second column', - '3a76596e73fa265257ce90b7bed684c7': 'Third column', - '5aefca559c5a41d10078e21e6d616825': 'layout', - '2fdc3722b88a2ba5077e0d11156ede6a': 'Horizontal distribution of child nodes', - '4ba6c2256050d805ae5cd1e0e84737cf': 'Start alignment', + '6ab8332f3da284b137d54f6ba901e93c': 'flex layout', + 'ef5abdfc944546ddcbe10e9884cf5832': 'Column I', + '874fdb7b3a5730910a4de1c58220c337': 'Column II', + '3a76596e73fa265257ce90b7bed684c7': 'Column III', + '5aefca559c5a41d10078e21e6d616825': 'Layout', + '2fdc3722b88a2ba5077e0d11156ede6a': + 'Horizontal distribution method of child nodes', + '4ba6c2256050d805ae5cd1e0e84737cf': 'Starting point alignment', '56c17ba6a56c01706ae00a31611deb03': 'Center alignment', 'abeb360ab1e66534a041fb8b44e1a00e': 'End alignment', 'd5a3cb1cc31a0469b011abdbd3e947f7': - 'Uniform distribution (leave blank at the beginning and end)', + 'Even distribution (leave a blank at the starting and end points)', '85530444a72a840ee657e2df99970136': - 'Uniform distribution (end to end alignment)', + 'Even distribution (alignment at the starting and end points)', '9aad08fbd356fb4279f0efa81b3d016e': - 'Uniform distribution (equidistant elements)', - 'ae558cbf4c35d381b6542f517f2e8dff': - 'Uniform distribution (automatic stretching)', - '70d39e84bc1ecefaf6e19cf78c9574fe': 'Vertical position of child node', + 'Even distribution (equal spacing between elements)', + 'ae558cbf4c35d381b6542f517f2e8dff': 'Even distribution (automatic stretch)', + '70d39e84bc1ecefaf6e19cf78c9574fe': + 'Position of child nodes at the vertical direction', 'ed97c73866617b40a7b1215867e0f489': 'Baseline alignment', - '7ac1519928de413cfe36f5d2e0610430': 'Auto stretch', + '7ac1519928de413cfe36f5d2e0610430': 'Automatic stretch', '8e15f51c9512fdbf4287794d6642a90b': 'Child node management', 'bc78248b34b7bf18691e6d385e0f544b': 'Child node content', - '2f10b0974520010e9db4ed5c87bc2a95': - '< span class = label label default > child node ${index | plus}', - '023c4bfc60545a2668c2d5111171b5d8': 'Outer CSS class name', + '197af5d5971778e3b80deb25182d63e3': + 'Child node${index | plus}', + '023c4bfc60545a2668c2d5111171b5d8': 'CSS class name of external layer', 'a4611da51ffee9140976d01668e45d45': 'Child node collection', - '729a4cca5ed3504793c1f3a87d2b48b9': 'Button click', + '729a4cca5ed3504793c1f3a87d2b48b9': 'Button Group Select', '29513434492e5d19a9660e0a918befd1': - 'It is used to display multiple buttons, visually presenting them as a whole, and can also be used as a form item option selector.', + 'This option is used to display multiple buttons which appear as a whole visually. Meanwhile, it can be used as an option selector for form items.', '6edda84461bf13d38328cb401c8c23db': 'Option 1', '39692081e75ef73c6479fc25f8f10dfc': 'Option 2', - 'a457872a51628ccadfb9bcfa23428a98': 'Click the button to select an item.', + 'a457872a51628ccadfb9bcfa23428a98': + 'The button click and selection can be used as an option.', '755955372bcc0c7ebf161a656bc389b3': 'Value change', '2fc76872efce1eabd3b74a3e4fd5b976': - 'Triggered when the selected value changes', + 'Be triggered when the selected value changes.', '528609917710d813a55e5a6cecf1e458': 'Selected value', - '288f0c404c4e546aa3683ff5054e85e2': 'empty', - 'c374a44713fa5ff5da2565beb398c7d3': 'Clear selected value', + '288f0c404c4e546aa3683ff5054e85e2': 'Clear', + 'c374a44713fa5ff5da2565beb398c7d3': 'Delete selected value', '8db57ba01ffb9bf29c1656de5f0208f5': - 'Reset the value to resetvalue. If resetvalue is not configured, clear it', - '8f40db3b25528063f1b6a59602a05cd5': 'assignment', + 'Reset the value to resetValue. If the resetValue is not configured, the value is cleared.', + '8f40db3b25528063f1b6a59602a05cd5': 'Value assignment', '944908c981a86bfa0cfab9360ab38184': - 'Make the button width occupy the parent container, and the width of each button is adaptive', + 'Allow the button to occupy the parent container fully. The width of individual buttons is adaptive.', 'ac3880323853de9adc4f66bc06d438ff': 'Button style', - '0b98b0bea3db6ae5b67a09c7bb2d032b': 'Button select style', - '55b45c73ae417c4dead67905b1550e85': 'Form item', + '0b98b0bea3db6ae5b67a09c7bb2d032b': 'Button selection style', + '55b45c73ae417c4dead67905b1550e85': 'Form Item', '3b49c8cece3f495f0e76b73823c68bfa': 'Button collection', - '012f602372cd2dbd639cd966c63e1f90': 'toolbar', - 'b6872877e1eb5ddedd904c170db26024': 'Chain drop-down box', + '012f602372cd2dbd639cd966c63e1f90': 'Toolbar', + 'b6872877e1eb5ddedd904c170db26024': 'Chained-Select', 'fdf1664c0790d25f236bd596aef1acef': - 'Through the < code > source < / code > pull option, as long as there is a return result, it can be increased infinitely', - '556988a9dc1816dd979e96eb5cd19a85': 'Chain pull down', - '225f3ed00750ae78ad1e6ea42c8f5087': 'Default', - 'da3ca8191fb919fb34e8e78fc6f2fc78': 'Please fill in the value in options', - 'bc8d09093edd98769d5cb39e759aa498': 'Splice value', + 'Through the source fetch option, you can add the levels infinitely as long as there is a return result.', + '556988a9dc1816dd979e96eb5cd19a85': 'Chained drop-down box', + '225f3ed00750ae78ad1e6ea42c8f5087': 'Default value', + 'da3ca8191fb919fb34e8e78fc6f2fc78': 'Enter value in options', + 'bc8d09093edd98769d5cb39e759aa498': 'Concatenated value', '2646ee1ebb6922a5c9359de6cd3b3639': - 'After opening, the value of the selected option value is spliced with a connector as the value of the current form item', - '1395eba8d9efe27aa1ecd1a45e3e5dcd': 'Get option interface', + 'After this option is enabled, concatenate the values of the selected options to get a value of the current form item. ', + '1395eba8d9efe27aa1ecd1a45e3e5dcd': 'Get option API', '4ea50507bf8b9ceb908677f30fb20e68': 'Option label field', 'fe4c9c2eed1ad213040d84036c675454': - 'The default rendering option group will obtain the label variable in each item as the display text', + 'The default rendering option group gets the label variable in each item and uses it as the display text.', 'be43687d4ed1d9e663c729e12618166d': 'Option value field', 'f1e6b60c4b6df555a6b03f91033091f4': - 'The default rendering option group will obtain the value variable in each item as the form item value', - 'f411d0f1f925d9b48d8c1d451bd809b1': 'explain', - '2ef0fb6299da5954f5ea84a088684ee5': 'Option Description:', - '454e60f5759903d7d3dba58e3f9bd590': 'Check box', - '81c8c07d13f425215010783bbf3bf06e': 'Check form', + 'The default rendering option group gets the value variable in each item and uses it as the form item value.', + 'f411d0f1f925d9b48d8c1d451bd809b1': 'Description', + '2ef0fb6299da5954f5ea84a088684ee5': 'Option description', + '454e60f5759903d7d3dba58e3f9bd590': 'Checkbox', + '81c8c07d13f425215010783bbf3bf06e': 'Select form', 'c75fde0e2d329ce62f55cb1a207181ae': - 'Triggered when the selected status changes', - 'ddd6650e02f5a266c3df2703daf37270': 'Selected status:', + 'Be triggered when the selection status changes.', + 'ddd6650e02f5a266c3df2703daf37270': 'Selection status', 'db0258df1ddbd88749b335aecdc8425e': 'Value format', - '53235c46364db079356d57da5870f967': 'Tick value', - '56f3150f1713a5e5c6e7c55fb0b79b75': 'Unchecked value', - '7c7a88eb1bb4b40206c6c680bd8995a8': 'Checked by default', - 'db98f889ce6bc235e66bd4b2a788d137': 'check box', + '53235c46364db079356d57da5870f967': 'Selected value', + '56f3150f1713a5e5c6e7c55fb0b79b75': 'Unselected value', + '7c7a88eb1bb4b40206c6c680bd8995a8': 'Default selection', + 'db98f889ce6bc235e66bd4b2a788d137': 'Checkbox', '6d1383a2806f0516aac2c115f96799eb': - 'Configure multiple checkboxes through < code > Options < / code > or pull options through < code > source < / code >', - '05f87b331e1c97691776d93a6598373f': 'Option a', + 'You can configure multiple select boxes through options and can also fetch options through the source.', + '05f87b331e1c97691776d93a6598373f': 'Option A', 'f38c0a46797523b11051e35ec0f82a42': 'Option B', '9c541222ced2435288c24b34f8ad1fb8': 'Select all', '05bef457e8350e1a5d8007cad41b70e5': 'Select all by default', - '84f31b24ffc8ea2b81d61a6f054b5bb6': 'Code editor', + '84f31b24ffc8ea2b81d61a6f054b5bb6': 'Code', '08346c5bb99d8e3bfa406995b8c4f067': - 'Code editor, supported by Monaco editor: {{@1}}, etc', + 'The code editor is a monaco-editor, which supports {{@1}} and so on.', 'ab0710b367acefa1d6a78e2338291e86': 'Get focus', '4638e799b95e1b71edd55f278a6f707c': - 'Triggered when the input box gets the focus', - 'efa3ddc1e26ed5d8cf7d9855cc7bd42e': 'Current code:', + 'Be triggered when the input box gets a focus.', + 'efa3ddc1e26ed5d8cf7d9855cc7bd42e': 'Current code', 'fc96a5f1b79cb734afe08e401b6ba5e7': 'Lose focus', 'c776ab86eb24f6b3db35114e43026f75': - 'Triggered when the input box loses focus', - '829c57d7064cad467ec466ae26244ebb': 'Input box get focus', - '295bb704f5205801d57d672780b94117': 'language', - '44fe0e1bcabcea83d6a30e6af0fd42af': 'Full screen', + 'Be triggered when the input box loses the focus.', + '829c57d7064cad467ec466ae26244ebb': 'The input box gets a focus.', + '295bb704f5205801d57d672780b94117': 'Language', + '44fe0e1bcabcea83d6a30e6af0fd42af': 'Full screen ', 'b3b97a293baac13db6367aba5539a09c': 'Control size', - '3386da5f56fac758ed0f18e024ecb943': 'Extraordinarily large', - '254bb8aa6b92d588d957a383df24db1e': 'Combined input', + '3386da5f56fac758ed0f18e024ecb943': 'Extra big', + '254bb8aa6b92d588d957a383df24db1e': 'Combo', '4db731c7d73988e40a01b4bf1a7f00d7': - 'A combination of multiple form items. You can configure whether to add or delete the initial template', - 'b58c7549c0246c55b9cac96383200338': 'add to', - '8575b828c7320de82b9f99058aa1f55f': 'Triggered when adding a combined item', - 'aacd80d2c978abae7b955510a938788c': 'Value of the current composite item', - '4933bd64bb23de03ca8ed246fa5509c5': 'Delete group item', - '0410242a74850f010a9a8061bc0cd891': 'Delete index of item', - '74333901ae9ad27a93487dc850e45609': 'Value of an existing composite item', - '95e09290c4e0f01323bb5abf301c950b': 'Switch tab', + 'Through the combination of multiple form items, you can configure whether to add and delete the initially set template.', + 'b58c7549c0246c55b9cac96383200338': 'Add', + '8575b828c7320de82b9f99058aa1f55f': + 'Be triggered when you add a combination item', + 'aacd80d2c978abae7b955510a938788c': 'Value of the current combination item', + '4933bd64bb23de03ca8ed246fa5509c5': 'Delete combination item', + '0410242a74850f010a9a8061bc0cd891': 'Delete item index', + '74333901ae9ad27a93487dc850e45609': 'Value of existing combination item', + '95e09290c4e0f01323bb5abf301c950b': 'Change tab', 'ba2bd765f6c2e2b717139c5453884e14': - 'Triggered when switching tabs when tabsmode is set to true', + 'Be triggered when you set tabsMode to true and change the tab.', 'b04c6cf9cb1212b9c173ddfeec129028': 'Tab index', '055f2f284d2bdb15bd9e542ea9f93285': 'Fixed member type', - 'e3b9236d585eb9c93a074f264737cb65': 'Multi branch', - '66e867eb73a118649800c0a064d0b5aa': 'Type name:', - '5aa528690fd771f89683a7f00868f39e': 'Branch Management', - '35b65a5a3f8d721e12cae310463d69d6': 'Hit condition', - 'c4f1a371191ac24d16e00e105540c47a': 'For example: this type === text', + 'e3b9236d585eb9c93a074f264737cb65': 'Multiple branches', + '66e867eb73a118649800c0a064d0b5aa': 'Type description', + '5aa528690fd771f89683a7f00868f39e': 'Branch management', + '35b65a5a3f8d721e12cae310463d69d6': 'Hit conditions', + '7341e991c8e8cfec68d31ffe0e06e429': 'For example: this.type === "text"', '85485d70be6b380294428018e54fc9b9': - 'Judge whether to use this branch according to the member data', - '50bfed6ada3e7d0ef4d20eb727b3d7df': 'Configure subform items', - 'd68162ea1904f627b033fe3953da295d': 'Configure subform collection', + 'Judge whether to use this branch according to the member’s data.', + '50bfed6ada3e7d0ef4d20eb727b3d7df': 'Configure sub-form item', + 'd68162ea1904f627b033fe3953da295d': 'Configure sub-form collection', 'aab09f676645f2651655a711d5e3327c': 'Add initial value', - 'dda5ffc9ecbad13d424346890bacca6a': 'Switchable type', - '8a0c77e91392d70df522b55eb4d403e2': 'Multiline mode', - '26343b8bcb694fa5e333b47d8b663d1c': 'That is, do you want to wrap', - '86032735a191d117b02111e447494380': 'Whether to level the value', + 'dda5ffc9ecbad13d424346890bacca6a': 'Whether to change its type', + '8a0c77e91392d70df522b55eb4d403e2': 'Multi-line mode', + '26343b8bcb694fa5e333b47d8b663d1c': 'Whether to go to a newline', + '86032735a191d117b02111e447494380': 'Whether to ', '28a59fee1a4714493a8d6cec05c1417b': - 'By default, the data structure in the array is an object. If there is only one form item, you can configure to level the value. Then the value of that form item is placed in the array', - '7f2579cabd4d654458a720eed517a37d': 'Can I add', + 'The data structure in the default array is an object. If there is a form item only, you can configure the value. Thus, the value contained in the array is the value of the form item. ', + '7f2579cabd4d654458a720eed517a37d': 'Whether to add', 'ea1e5695bf682ea3b31aba0c35198ae3': 'Add button text', - '1ab31449faaaeeeb7200d724eab9a7ab': 'Can I delete it', - 'fa3e9f9e49f5a81c998f949155f86b50': 'Request before deletion', - 'f962922d46ef18e68127642e5c00165a': 'Delete confirmation prompt', - 'fc763fd5ddf637fe4ba1ac59e10b8d3a': 'Confirm to delete', + '1ab31449faaaeeeb7200d724eab9a7ab': 'Whether to delete', + 'fa3e9f9e49f5a81c998f949155f86b50': 'Request sent before the deletion', + 'f962922d46ef18e68127642e5c00165a': 'Deletion confirmation prompt', + 'fc763fd5ddf637fe4ba1ac59e10b8d3a': 'Confirm to delete the previous request', 'f41a714bc8b26dc27a93a07c44e329a8': 'Drag the sorted prompt text', '91396e9bc25c9e8b63907fe22408e2bb': - 'You can adjust the sequence by dragging the [swap] button in each row', + 'You can adjust the sequence by dragging the [Change] button in each line.', '8ee004bdd55b578acdb10b1bcd3fa4f7': 'Remove border', - 'e9cbda74a1ffc06228fca68e4d16c4dd': 'Limit minimum quantity', - '3baaa61e619e32fc36eff14839b1a63f': 'Limit maximum quantity', + 'e9cbda74a1ffc06228fca68e4d16c4dd': 'Limit minimum number', + '3baaa61e619e32fc36eff14839b1a63f': 'Limit maximum number', 'b8ccbc166c72b2eb54aac1332c99fb49': - 'Prompt when sub form item restriction fails', + 'A prompt appears in case of failure to limit the sub-form item.', 'b34cbe877b2c8464c625858fcf19f4eb': - 'Prompt when minimum length verification fails', + 'A prompt appears in case of failure to verify the minimum length.', 'ea2474ff679195d9b54bd5ff3384fdfd': - 'Prompt when the maximum length verification fails', + 'A prompt appears in case of failure to verify the maximum length.', '1c5b9cb245f04413a2d888bd59442097': - 'Whether to automatically fill the parent variable with the same name', - 'e673084b4261d10104d27ae9e4d014a4': 'Tabs display mode is adopted', - '6e7bd650f763085de3bddd51a8d6aa88': 'Display mode of tabs', - 'fd6e80f1e0199d6ecc3ee81ae04aa9ef': 'normal', - '2dd25b8c21efbfee4a198787810d65d8': 'inline', - 'fc6c9fa3af230165c39fb314c086be22': 'Tab Title Generation template', + 'Whether to fill in the parent variable with the same name automatically.', + 'e673084b4261d10104d27ae9e4d014a4': 'Adopt the Tabs display mode', + '6e7bd650f763085de3bddd51a8d6aa88': 'Tabs display mode', + 'fd6e80f1e0199d6ecc3ee81ae04aa9ef': 'Normal', + '2dd25b8c21efbfee4a198787810d65d8': 'Inlink', + 'fc6c9fa3af230165c39fb314c086be22': 'Template for generating tab title', '9ff4713f6b17e96e9cd76650fd5892be': 'Lazy loading', '93dc24d4ad01981d5994ba7f8ffaf345': - 'If there is a lot of data, the comparison card will immediately open this configuration item', + 'When a lag occurs if there are much data, you can enable this configuration item.', '98d52b737d6bc171b6d5bad9a42f6e23': 'Strict mode', 'cb5ca128b6c78a90f26673e21b0b3f28': - 'If you want the value of the environment variable to be transmitted to combo in real time, please turn off this option.', - 'bc91f4844843d6c8ec1acb78a1f1aba4': 'Configure sync fields', + 'If you want to transit the value of the environment variable into Combo, disable this option.', + 'bc91f4844843d6c8ec1acb78a1f1aba4': 'Configure synchronization field', '07bf6c08bb5f0bdb32dbfecc7d3fe290': - 'If combo is deep, the underlying data may not be synchronized with the outer data. However, configuring combo with this attribute can synchronize.', - '3f2176cdae8a4ed6a4c4eaff002a3b24': 'Allowed to be empty', + 'If the Combo level is deep, the data acquisition at the bottom level is out of synchronization with that at the external level. However, configuring this attribute of the combo can achieve the synchronization.', + '3f2176cdae8a4ed6a4c4eaff002a3b24': 'Allow to leave this field blank', 'ead7156521ca11acb7ca7bdf4c9c87f6': - 'If the verifier is configured in the sub form item and it is in the single entry mode. The user can choose to clear (not fill in).', - '7ab968b8219f6c348478da255ebcbcb9': 'CSS configuration of each column', - '6e87bfe16db746db13966f0d7552b052': 'Condition component', + 'If the sub-form item is configured with a validator and is in the single-entry mode, the user can select to clear it (leave it blank).', + '7ab968b8219f6c348478da255ebcbcb9': 'CSS configuration of individual columns', + '6e87bfe16db746db13966f0d7552b052': 'Condition Builder', 'ab7f2096d3ea8aa85f453b204bfbc493': - 'It is used to set complex combination conditions, and supports functions such as adding conditions, adding groups, setting combination methods, and dragging and sorting.', + 'It is used to set the complicated combination condition. It allows you to add conditions and groups, set the combination method, and drag the sorting feature and other features.', 'ae5e21c7b57aaaff2071b757f35dbb3e': - 'It is suitable for users to spell the query conditions themselves, and then the backend generates query where according to the data', - '55d4790c5d819cd0462cbe89561b0dd4': 'number', - '97b0b6499334ed889b372513290a2a52': 'Boor', + 'It allows the user to enter the query conditions. Thus, the backend device can generate query where according to the data. ', + '55d4790c5d819cd0462cbe89561b0dd4': 'Number', + '97b0b6499334ed889b372513290a2a52': 'Boolean', '0c3bf4fce50589b1073baf15f8a00d36': 'Date and time', - '6d6b4f2bbd2fd0b5faee33673d7f06ae': 'Quick start - condition combination', + '6d6b4f2bbd2fd0b5faee33673d7f06ae': 'Quick start-condition combination', '22ed9ec0e00b5deab2c335ad1fd2e343': 'Condition type', - 'e996419dedc2f1ffd96e7a0e808127d0': 'Field name:', - 'c322edb884724d04842fc35f4d29a24e': 'minimum value', - '5da893141114a59da868052b3a17a79a': 'Maximum', - 'd26404c10871481ab6bbb4837a34ae95': 'step', + 'e996419dedc2f1ffd96e7a0e808127d0': 'Field name', + 'c322edb884724d04842fc35f4d29a24e': 'Minimum value', + '5da893141114a59da868052b3a17a79a': 'Maximum value', + 'd26404c10871481ab6bbb4837a34ae95': 'Step', 'dbd5b99c34260412f10835d82b59919c': 'Date display format', '94575fbef23460cb02524d20d152d728': 'Time display format', 'f20a86701d87369e5166c28a71b8b8cd': - 'Remote pull of field options, support interface or data mapping', + 'You can fetch the field option remotely. It supports the API or data mapping.', 'ed4ad0f9e6374d6915ce3d2c0dec7c2c': 'Operator', '61260d9386fd95a268dfc93d977c2706': 'Form item container', - 'c5739a29e7c403fc212608cefe70cf29': 'Element set', + 'c5739a29e7c403fc212608cefe70cf29': 'Element collection', 'a00f44e570f896de5490cba9d2462951': 'Insert a new element', - 'a9a8efb2541ee6f89ea7b83e610ebf7f': 'New element', - 'bac53d3c739f7fb3327704efd5b40eee': 'Diff editor', + 'a9a8efb2541ee6f89ea7b83e610ebf7f': 'Add element', + 'bac53d3c739f7fb3327704efd5b40eee': 'Diff Editor', '7b4fe9415d80d3694d2f630411ac7e9c': - 'Compare the left and right codes. Supported languages include: {{@1}}, etc', - '0517b74cbe247a903faf40991a5a335f': 'Diff editor', + 'Compare the codes on both sides. The supportive language includes {@1}} and so on.', + '0517b74cbe247a903faf40991a5a335f': 'diff editor', '42f04184315801c372989820106cc4ee': - 'Triggered when the right input box gets the focus', + 'Be triggered when the right input box gets a focus.', '58ec44a580ba7cdcdf65985f5c44940c': - 'Triggered when the right input box loses focus', + 'Be triggered when the right input box loses the focus.', 'b42cb49fc7c4ec140697e6d78c39e585': - 'Get the focus, and the focus falls on the right editing panel', - '2a69150aa382f6a309c03a96145d4266': 'Left (default)', - '04b8c503707c34f9c275d349275787f2': 'Support using ${XXX} to get variables', - 'a71e655ab56c9962742f72623f67ca76': 'Right (default)', - '460bc46ffeb31b737669e2312c5bae72': 'Field set', + 'Get the focus which lies on the right editor panel.', + '2a69150aa382f6a309c03a96145d4266': 'Left default value', + '04b8c503707c34f9c275d349275787f2': + 'It allows you to use ${xxx} to get the variable.', + 'a71e655ab56c9962742f72623f67ca76': 'Right default value', + '460bc46ffeb31b737669e2312c5bae72': 'Field Set', 'a89cd8150a1dbc60ac7063580e0852e2': - 'Combination of multiple form items, whether to collapse can be configured', - 'a13a2fa224ca5b6f44d5aee33ec29d58': 'Text1', - '37dd6f28ffb87d8907a286e0ef4dc7fe': 'Text2', - 'd6c40a2ee219c010edbcdaa2eeb94ddd': 'Sub table item', - 'ec2a8ec81d1d2588db8c7827ba99e7d3': 'Foldable', - 'f315bd4984fd09c30581674d28287f12': 'Collapse by default', + 'Through the combination of multiple form items, you can configure whether to fold', + 'a13a2fa224ca5b6f44d5aee33ec29d58': 'Text 1', + '37dd6f28ffb87d8907a286e0ef4dc7fe': 'Text 2', + 'd6c40a2ee219c010edbcdaa2eeb94ddd': 'Sub-form Item', + 'ec2a8ec81d1d2588db8c7827ba99e7d3': 'Whether to fold', + 'f315bd4984fd09c30581674d28287f12': 'Whether to fold by default', 'ab2d2b13794ae1e2d7bf3bcd5af55dce': 'Control style', - '23ecf42cada8bf2715792d718544d107': 'minimum', - 'e5a226534fb99ab260865b936d3c85ba': 'Content area CSS class name', + '23ecf42cada8bf2715792d718544d107': 'Extremely small', + 'e5a226534fb99ab260865b936d3c85ba': 'CSS class name of content area ', '12b54e3fdccdbb5588785fce5534edbd': - 'Please click Add subform item from the component panel on the left', - '1297c46c0ea697a0041c3899b15d69c6': 'Add subform item', + 'Click to add a sub-form item in the left component panel', + '1297c46c0ea697a0041c3899b15d69c6': 'Add sub-form item', 'cd948961f71f87ecc72b251147d96144': 'Control type', - '0766a6467bed7f2840871a5f0638669d': 'Single line text box', - '15d169d28cd48c97fe751e4cc92ca926': 'Multiline text', - '829abe5a8dcd0579a340d20636b59276': 'grouping', - '9597dcaf432ceba92a160d61cb1ef65f': 'Digital input', - '9913107b19cb6012250134ff91377430': 'Radio ', - '006ded9fa277cf030592021f595a07d5': 'Drop down box', - 'a6beb974cc0b50eebd18120b8110a88b': 'switch', - '481e034e6026969aae4ce7ce7c8a7b6f': 'File upload', - '6bfb9bb2218ff32b6139e98bc93707c0': 'Picture upload', - '24b6d4c0892a8f3ee2a982e3ab0afe38': 'Rich Text Editor ', - 'fdf6f7f6497556de440fe434b721ee99': 'Display name:', + '0766a6467bed7f2840871a5f0638669d': 'Single-line text box', + '15d169d28cd48c97fe751e4cc92ca926': 'Multi-line text', + '829abe5a8dcd0579a340d20636b59276': 'Group', + '9597dcaf432ceba92a160d61cb1ef65f': 'Number input', + '9913107b19cb6012250134ff91377430': 'Radio', + '006ded9fa277cf030592021f595a07d5': 'Select', + 'a6beb974cc0b50eebd18120b8110a88b': 'Switch', + '481e034e6026969aae4ce7ce7c8a7b6f': 'Input File', + '6bfb9bb2218ff32b6139e98bc93707c0': 'Input Image', + '24b6d4c0892a8f3ee2a982e3ab0afe38': 'Rich Text', + 'fdf6f7f6497556de440fe434b721ee99': 'Display name', '712538d3e674792ec94feb9a5eb2cc0a': 'Submit field name', - 'eee1e2258d7ea163fec625ee44be9637': 'form ', + 'eee1e2258d7ea163fec625ee44be9637': 'Form', '10b3d542748da2043f79395bfa2ab35f': - 'It can be used to create, edit or display data, configure the initialization interface to load data from the remote end, and configure the submission interface to send data to the remote end. In addition, you can submit data to other components to communicate with other components.', - '5ac57ce6df8c2a19668b7429aebd9f33': 'Text box', - '1b6f9adf1e6a41a18b9a76407d945618': 'Quick Create Forms ', - '380c80efc8d38510d31f50578690b781': 'Submission address:', - 'ffc2c1671eb7e3f6751006cd7a9961f4': 'Display mode of text and input box', - '81f8a50d084992815ab844109b3ea27f': 'Up and down', - '3720b9ef8053b7b8a54c7d8ace051912': 'Left and right', - '9d68944682609cb230534195ca7c62ae': 'form control ', - 'cf993a1d9c0352215055d180aca60b97': 'Controls within a group', - '3673ed1983c1be059126e3715fc34922': 'Form Collection ', - '741e41f5247b1541bde22c00e65f4401': 'Initialization complete', + 'It is used to create, edit or display the data. To configure the initialization interface, you can load the data remotely. To configure the submission interface, you can send the data to the remote device. Additionally, you can submit the data to other components. Thus, it is possible to build communication with other components.', + '5ac57ce6df8c2a19668b7429aebd9f33': 'Input Text', + '1b6f9adf1e6a41a18b9a76407d945618': 'Create form quickly', + '380c80efc8d38510d31f50578690b781': 'Submission address', + 'ffc2c1671eb7e3f6751006cd7a9961f4': 'Text and input box display mode', + '81f8a50d084992815ab844109b3ea27f': 'Top and bottom', + '3720b9ef8053b7b8a54c7d8ace051912': 'Left and right placement', + '9d68944682609cb230534195ca7c62ae': 'Form control', + 'cf993a1d9c0352215055d180aca60b97': 'Control in the group', + '3673ed1983c1be059126e3715fc34922': 'Form collection', + '741e41f5247b1541bde22c00e65f4401': 'Initialization completed', 'f75e31cd2e3bfb79be420b0e61a533cc': - 'Triggered when the remote initialization interface request succeeds', + 'Be triggered when the request to the remote initialization interface is sent successfully', '211f02318e3cceff5ee50d4949a5c8ed': - 'Initapi initialization data returned by remote request', - 'b2a5322c8dbc0d8343315cafbd39b7ce': 'Numerical variation', - 'd6fc04abf4889a864bea240d6b67963a': 'Triggered when the form value changes', + 'initApi Initialization data returned from the remote request', + 'b2a5322c8dbc0d8343315cafbd39b7ce': 'Value change', + 'd6fc04abf4889a864bea240d6b67963a': + 'Be triggered when the form value changes', '66f1115691b0a3e434dd3e8a6e733730': 'Current form data', - '7233c9cadee5096097673c9590eae9b8': 'Form item verification succeeded', + '7233c9cadee5096097673c9590eae9b8': 'The form item is checked successfully', '6611594c527756e23d4044f908fedfa9': - 'Triggered after the form item is verified successfully', - 'e00a32d415785d5a5d43a593d26cbaa0': 'Form item verification failed', + 'Be triggered after the form item check is successful', + 'e00a32d415785d5a5d43a593d26cbaa0': 'The form item check fails', 'd4c12cea41e1595329358edb365c5f5b': - 'Triggered after form item verification fails', - '368f9bab722b255f1fdb669a89f0c594': 'Form verification succeeded', + 'Be triggered after the form item check fails', + '368f9bab722b255f1fdb669a89f0c594': 'The form check is successful', '35e69ab84129d721229bc5b48afdedd2': - 'Triggered after the form is verified successfully', - '641fc404690a43cb13e4666ce272974f': 'Form verification failed', - '5d7dfa5bf9bcd278f06fa37e482a2c35': 'Triggered after form verification fails', - '23b62e9cbc868e024b80d2e3fad80ac7': 'Submitted successfully', + 'Be triggered after the form check is successful', + '641fc404690a43cb13e4666ce272974f': 'The form check fails', + '5d7dfa5bf9bcd278f06fa37e482a2c35': 'Be triggered after the form check fails', + '23b62e9cbc868e024b80d2e3fad80ac7': 'Successful submission', '8c9d9d2594b9cc39294c6939bd08a5d5': - 'Triggered after the form submission request is successful', - '18344d8a27aa678e401d5e575d4efe99': - 'Data returned after successful submission', - 'f5d008dea7d2e953195a5588dea3c8e4': 'Submission failed', + 'Be triggered after the form submission request is successful', + '18344d8a27aa678e401d5e575d4efe99': 'Data after the submission is successful', + 'f5d008dea7d2e953195a5588dea3c8e4': 'Failure to submit', '86555672b37841b639311e7d49f0f593': - 'Triggered after the form submission request fails', + 'Be triggered after the form submission fails', '17aa713bc661f98e585ec3725d6d4f0d': - 'Error information returned after submission failure', - '4e34003861eee3de1e0c9c1222249bbb': 'Submit Form ', + 'Error information returned after the submission fails', + '4e34003861eee3de1e0c9c1222249bbb': 'Submit form', 'a360c5d4e723ad78a5e52eb1f5f3f2a2': 'Trigger form submission', - '1b6f5cc49e71c90a5b85a796285e3135': 'Reset Form ', - '35de8c264c2a87836ccbf302b4ee673f': 'Trigger form reset', - '4a3deab45c0a7218b8ae58a33fd24c28': 'Empty form', - 'c18255cd6a048da86045c59a65fdc92d': 'Trigger form emptying', - '17f2bf425eeb7d20d79c595344e9dc94': 'validate form ', - '27f35bc7086bf54e27e254f5d77c3168': 'Trigger form verification', + '1b6f5cc49e71c90a5b85a796285e3135': 'Reset form', + '35de8c264c2a87836ccbf302b4ee673f': 'Trigger form resetting', + '4a3deab45c0a7218b8ae58a33fd24c28': 'Clear form', + 'c18255cd6a048da86045c59a65fdc92d': 'Trigger form clearing', + '17f2bf425eeb7d20d79c595344e9dc94': 'Check form', + '27f35bc7086bf54e27e254f5d77c3168': 'Trigger form check', '60ad7d0d170b973ab9cdb0b23e636704': 'Submit button name', - 'a834505b13627a2e9eb4e0a0c2746e5c': 'Valid when there is no custom button.', - 'cbef9ad64297efd7657d5b67b2112751': 'Autofocus', + 'a834505b13627a2e9eb4e0a0c2746e5c': + 'It is valid when no button is customized.', + 'cbef9ad64297efd7657d5b67b2112751': 'Automatic focus', 'ded8caee55c05aa0f1a4e6a197c480bd': - 'After setting, the first form item that can be input will get focus', - 'c8801f299681b3080968effcb13a57fe': 'Disable carriage return to submit form', + 'After the setting, the first form item that you can input in the form gets focused', + 'c8801f299681b3080968effcb13a57fe': + 'Disable the “Enter” key to submit the form', '4fe8162504ae5fb955c30863d88834fa': - 'After setting, the form cannot be submitted by pressing enter on the keyboard', - '6232c762a93aeb3c89cc759c06802610': 'Reset the form after submitting', + 'After the setting, you cannot submit the form through the “Enter” key on the keyboard', + '6232c762a93aeb3c89cc759c06802610': 'Reset form after the submission', '7d61784cd115d333f01a3c0c46408a1c': - 'That is, after the form is submitted, restore the values of all form items to the initial values', - '49086a13c74f262de398e60f448ab056': 'Submit once after initialization', + 'After the form submission, restore the value of all form items to the initial value', + '49086a13c74f262de398e60f448ab056': + 'Submit the form once after the initialization', '1babd035cabfeb997ac3eee3f938d794': - 'After opening, the initial completion of the form will trigger a submission.', - '0d1fb15904862f5fd2d81d2fc8f371d6': 'Close the dialog box after submitting', - 'e91209a4a78c0b34c26b681b49e0681a': 'Submit to other components', + 'With this option enabled, trigger the one-time submission after the form initialization is complete', + '0d1fb15904862f5fd2d81d2fc8f371d6': + 'Whether to close the dialog after the form submission ', + 'e91209a4a78c0b34c26b681b49e0681a': 'Submit the form to another component', '4133d2c3613ece9792c90d185ec32306': - 'You can submit the value of the current form to the target component by setting this property, instead of saving it through the interface. Please fill in the < code > name < / code > property of the target component, and separate multiple components with commas. When the < code > target < / code > is < code > window < / code >, the form data is attached to the address bar.', - '7653297de32f34fdec0dd0653aebf358': 'Jump', + 'You can submit the value of the current form to the target component by setting the attribute. Instead, the value is not saved by the interface. Enter the name attribute of the target component. Multiple components are separated with commas. When the target is window, the form data is attached to the address bar.', + '7653297de32f34fdec0dd0653aebf358': 'Redirection', '6d00e21637c382cbd4d949b7735a2e41': - 'When this value is set, the form will jump to the target address after submission.', + 'When the value is set, redirect to the target address after the form submission.', '672b63d7523095b949f5fad233fa0cde': 'Whether to enable local cache', '8a0544ca2f7ddaf8768ab599858315a6': - 'After opening, the data of the form will be cached in the browser. Switching pages or closing pop ups will not clear the data in the current form', + 'With this option enabled, the form data is cached in the browser. Changing the page or closing the popout does not clear the data in the current form.', 'ce2457fe99197e0fe81b6fb08e3eaf0e': - 'Clear local cache after successful submission', + 'Clear local caching after the submission is successful', 'bc01ee1a28f980c298679610fe4d2d66': - 'After the local cache is enabled and this configuration item is enabled, the cached data of the current form in the browser will be automatically cleared after the form is submitted successfully', - 'f5e55fb88f5adc71beb0b1fff60face6': 'Form combination verification', - '8101a0aec7eba32e633e3cc29f4b7ede': 'Verification rules', - '80ce5ea9ac2c3001e6e8ea3175ecc12d': 'Error message', - 'ff7cc75cc43c25c823d05d87cb8190b0': 'Save interface', - 'd325cfafec323a62463af3d3da9b6ede': 'Used to save form data', - 'dd1b9892e274b16540aeda961437870d': 'Asynchronous mode?', - 'e638bd32b4342dfc7a15990a79f588ae': 'What is asynchronous mode?', + 'After you enable the local cache and the configuration item and the form submission is successful, clear the cached data of the current form in the browser. ', + 'f5e55fb88f5adc71beb0b1fff60face6': 'Form combination check', + '8101a0aec7eba32e633e3cc29f4b7ede': 'Check rule', + '80ce5ea9ac2c3001e6e8ea3175ecc12d': 'Error prompt', + 'ff7cc75cc43c25c823d05d87cb8190b0': 'Saving API', + 'd325cfafec323a62463af3d3da9b6ede': 'It is used to save the form data.', + 'dd1b9892e274b16540aeda961437870d': 'Is the asynchronous mode adopted?', + 'e638bd32b4342dfc7a15990a79f588ae': 'What is the asynchronous mode?', '6df230c8f18709575777172f0a9a588c': - 'Asynchronous mode is mainly used to solve the problem of request timeout. After the asynchronous mode is enabled, the program will regularly poll for additional interfaces after the request is completed to inquire whether the operation is completed. So the interface can return quickly without waiting for the process to complete.', + 'The asynchronous mode is mainly used to solve the request timeout problem. After the asynchronous mode is enabled, the program periodically polls to request for an additional interface after the request is complete to consult whether the operation is complete. Thus, the interface can return the result quickly without the need to complete process actually.', 'daf3aec137ac74941adb1b1d3e3dd1d3': 'Asynchronous detection interface', '0705e4aba9f22ae70d906e2201a4a68d': - 'After this property is set, after the form is submitted, sent and saved, the interface will continue to be requested in rotation until the finished property is returned as true', - 'b4bc91701b86fe8543d649e97daea602': 'Initialize interface', - '258c437ef67e5ef12f3a766ff1802f85': 'Used to initialize form data', - 'e8c46074d8432532cac25eba56bca354': 'Asynchronous mode?', + 'After this attribute is set and the form is submitted and sent to the saving interface, it continues to poll the request for this interface until the returned finished attribute is true.', + 'b4bc91701b86fe8543d649e97daea602': 'Initialization interface', + '258c437ef67e5ef12f3a766ff1802f85': 'It is used to initialize the form data', + 'e8c46074d8432532cac25eba56bca354': 'Is the asynchronous mode adopted?', 'd2af24c0f76cf325f1c8fa939576c379': - 'After this property is set, after the form requests initapi, it will continue to request the interface in rotation until the finished property is returned as true', - 'ab94e2c30b3cf0fd11eea477f70dcbaf': 'initialization failed', + 'After this property is set and the form requests initApi, it continues to poll the request for this interface until the returned finished attribute is true.', + 'ab94e2c30b3cf0fd11eea477f70dcbaf': 'Initialization failed', 'b64292a1903bd969d0e3a558c334f5bf': 'Default message information', '8a5e590f69e1ae52d86396410ceeee5a': - 'It can not be set. The MSG field returned by the interface has higher priority', - '3b108349b93f7c8c4e2346f8d48c092a': 'Saved successfully', - '6de920b4e4e08b261cda928d9beefab4': 'Save failed', - 'b66ef8966dad62d377bc5310d8b88e7f': 'Prompt of saving successfully', - 'cf538bbe1fb431f9e2668da4d84cfadf': 'Save failed prompt', - '6509e435d66db2a105b2444b1d3d0db1': 'Verification failure prompt', - '02e977ba56a7ccc59c277d2d5be43ba0': 'Wrap with panel', + 'You cannot set this option. The msg field returned from the interface has a higher priority.', + '3b108349b93f7c8c4e2346f8d48c092a': 'The saving is successful', + '6de920b4e4e08b261cda928d9beefab4': 'Failure to save', + 'b66ef8966dad62d377bc5310d8b88e7f': 'Prompt for successful saving', + 'cf538bbe1fb431f9e2668da4d84cfadf': 'Prompt for failure to save', + '6509e435d66db2a105b2444b1d3d0db1': 'Prompt for verification failure', + '02e977ba56a7ccc59c277d2d5be43ba0': 'It is packaged with Panel.', '1cb01363e2463443bc8105f544ce2736': - 'After closing, the form will only display form items, and the title and action bar will not be displayed.', + 'With this option disabled, the form can display the form item only. The title and action bar does not appear.', '1fdadb49bcabfdc36a4a9e020f597f4d': 'Display mode', - '57d348e83d929dd4cb3bab04debc93a5': 'CSS class name of panel', - '9b26fa2b5943c827eea294e79b1427fa': 'You can set panel -- info and so on', - '85ca671c1bb6de5a15456a9692d2edf4': 'Start debugging', + '57d348e83d929dd4cb3bab04debc93a5': 'CSS class name of Panel', + '9b26fa2b5943c827eea294e79b1427fa': 'You can set Panel--info.', + '85ca671c1bb6de5a15456a9692d2edf4': 'Enable debugging', 'f24b7483069b44490a6379be5b90f4e3': - 'Display the data of the current form (at the top of the form)', - 'eb332076d766c2e817285f0a6d4860b9': 'formula', + 'Indicate that the data of the current form is at the top of the form', + 'eb332076d766c2e817285f0a6d4860b9': 'Formula', '000cf7353ce03857c671e89c91b35464': - 'Calculate the specified variable value by formula and apply the result to the specified variable', - '9da7578f9329ccaee1bbdf6a766744fd': 'Calculation formula:', + 'Calculate the specified variable value through the formula and apply its result in the specified variable', + '9da7578f9329ccaee1bbdf6a766744fd': 'Calculation formula', '77562ec3db28683ec71612a11e6b39ef': - 'Formula calculation results will be applied to the variables corresponding to this field name.', + 'The formula calculation result is applied in the variable corresponding to this field name.', 'c80c42a0be1b39ed899b1f5560875cf8': - 'Support JS expressions, such as < code > data var_ A + 2 < / code >, that is, when the form item < code > var_ When a < / code > changes, the current form item will be automatically set to < code > var_ A + 2 < / code >. If it is set as a string, quotation marks are required', - '89a8549c2ed7fc23a683599731d92b22': 'Action conditions', - 'e16e5eca749d250efd3ad95434ff7026': - 'For example, < code > \\ ${XXX} < / code > or < code > data XXX = = a < / code > expression to configure the action condition. When the action condition is met, the calculation result will be set to the target variable.', - '3df193f5d4f652a4bac331a69761041b': 'Initial application', + 'It supports the JS expression, such as: data.var_a + 2. That is, when the form item var_a changes, it sets the current form item to a value of var_a + 2 automatically. If it is set to a string, it should be placed inside quotation marks.', + '89a8549c2ed7fc23a683599731d92b22': 'Application conditions', + '8add6799ceff24eb041c5a6a92bb1694': + 'It supports the following conditions. For example, the \\${xxx} or data.xxx == "a" expression is used to configure the application conditions. When the application conditions are satisfied, you can set the calculation result to the target variable. ', + '3df193f5d4f652a4bac331a69761041b': 'Whether to apply it initially', '86cebf86c66c6a4e6731b840c3967ab0': - 'Whether to run formula results during initialization and set them to target variables.', - 'aaff9b44fa3c84058d6bec9888b7b39f': 'Whether to apply automatically', + 'Whether to run the formula result during initialization and set it to the target variable.', + 'aaff9b44fa3c84058d6bec9888b7b39f': 'Whether to apply it automatically', '677568b4f6505bdd63387137bfcbf35a': - 'Whether to automatically calculate formula results. If there is any change, it will be automatically set to the target variable< Br / > after closing, the operation can also be triggered by pressing the button.', - '222c7bc60f06552b019d71bce57013ed': 'Function component (formula)', + 'Whether to automatically calculate the formula result. In case of any change, automatically set it to the target variable.
With this option disabled, you can press the button to trigger the operation.', + '222c7bc60f06552b019d71bce57013ed': 'Feature component (formula)', 'bb09a378529edac439abc2edf05c10d7': 'Form group', '39d36f049a794eb8df305b5ca7710c36': - 'Horizontally display multiple form items', - '32f6f7f8164c7f78e4b46eb50c158ab9': 'Subform ', + 'Display multiple form items horizontally', + '32f6f7f8164c7f78e4b46eb50c158ab9': 'Sub-form', '400fbff5e744d3b7317dd130eaad723e': - 'Please click add form item from the component panel on the left', + 'Click to add a form item in the left component panel', 'bd1aded1c983ab7fcf3990f0dc31047c': 'Column width configuration', 'a170a375b264f7fe0c02a7ca8c268784': 'Width setting', - 'daa0f354e189c0da577ea25be13f874d': 'Fit width', - '4db804afe5c99f7ca4fe988ada35c77f': 'Adaptation content', - 'f1d4ff50f3828f9b73412e7d94e6dd6e': 'custom', + 'daa0f354e189c0da577ea25be13f874d': 'Adaption width', + '4db804afe5c99f7ca4fe988ada35c77f': 'Adaption content', + 'f1d4ff50f3828f9b73412e7d94e6dd6e': 'Custom', 'd5d885add2551454955bd70411769c88': 'Width ratio', - 'ff7e66f1feaaed3260b6e8ef432efc79': 'Interval size:', - '1b3408880b73544a3fad501dafbb71e6': 'Column CSS class name configuration', - '551481accddd97e18d7152f511fb8987': 'Become multiline', - 'd27d7b1542d91641d1d232c9f58b96d1': 'Hidden field', - 'd50b9a7291d45d1da8633439427afaef': 'Hide form items', - '4f6595b5030e171fcead42d321ba767f': 'Functional components (hidden fields)', + 'ff7e66f1feaaed3260b6e8ef432efc79': 'Spacing size', + '1b3408880b73544a3fad501dafbb71e6': 'Configuration of column CSS class name', + '551481accddd97e18d7152f511fb8987': 'Divided into several rows', + 'd27d7b1542d91641d1d232c9f58b96d1': 'Hide domain', + 'd50b9a7291d45d1da8633439427afaef': 'Hide form item', + '4f6595b5030e171fcead42d321ba767f': 'Feature component (hide field)', 'b6946d13d670fc49b721b626bca426b7': 'Array input box', '6e43f86d0b2973c34078bc7c7bc02eb0': - "Array array input box, member input form can be customized. In fact, it is a use of combo's flat value, which can be directly replaced by combo.", - '02cc4f8f5a9aefbc03c778f7a5c989c7': 'Please enter', + 'The array input box allows you to customize the member input type. In fact, it is a method of flatting the Combo flat value, which can be replaced by combo directly. ', + '02cc4f8f5a9aefbc03c778f7a5c989c7': 'Enter', 'a4b72cd5d7c953c57b00e3597b9ef666': 'Array box', - '89e34c77922f9362fc8f4033e7f6bdf4': 'Enable drag sort', - '1362211a6bfc8cc4130d54643e8e9732': 'Drag and drop sorting prompt text', - 'ba6a6f2cdb46e8f80fbfd4fed20eafac': 'City Selection', + '89e34c77922f9362fc8f4033e7f6bdf4': 'Enable drag and sort', + '1362211a6bfc8cc4130d54643e8e9732': + 'This option allows you to drag and sort the prompt text', + 'ba6a6f2cdb46e8f80fbfd4fed20eafac': 'Input City', '20700607ccdb7b6c83f3b5bc525e6975': - 'Configurable whether to select region or city', - 'ee167d4c74e600248aefe9d0ba474705': 'Selected value change', - '770fe9e7899cd310b035ef50a39ab2ae': 'reset to default', - '9633e6be5ecb44fbd69b3e8328cc8430': 'Allow selection of regions', - 'eec86dd33ae6186937da563fcde3555e': 'Allow selection of cities', - '95892a76bc26c2db31087c9914e442b4': 'Whether to display the search box', - 'd1b5ad85ada6350ea1a1432b813700be': 'Color box', + 'This option allows you to select a region or city', + 'ee167d4c74e600248aefe9d0ba474705': 'Change in selected value', + '770fe9e7899cd310b035ef50a39ab2ae': 'Reset to default value', + '9633e6be5ecb44fbd69b3e8328cc8430': 'Allows you to select a region', + 'eec86dd33ae6186937da563fcde3555e': 'Allows you to select a city', + '95892a76bc26c2db31087c9914e442b4': 'Whether a search box appears', + 'd1b5ad85ada6350ea1a1432b813700be': 'Input Color', '5a9e72d006165ae3dacdbd96f931f70e': - 'Supports < code > hex, HLS, RGB, RGBA < / code > formats. The default format is < code > hex < / code >', - '6b36c6f7ec834692ec6c8e3816349fdd': 'colour', - '277daf93adca7889605057f566b584bf': 'Content change of input box', - '40fa260f07ed5a14f9516c0c37fbfd4e': 'Input box loses focus', - '3086da6514671fb8950171bf3af4ab2d': 'Clear the contents of the input box', + 'It supports hex, hls, rgb, and rgba formats. It defaults to the hex format.', + '6b36c6f7ec834692ec6c8e3816349fdd': 'Color', + '277daf93adca7889605057f566b584bf': 'Change in input box content', + '40fa260f07ed5a14f9516c0c37fbfd4e': 'The input box loses focus.', + '3086da6514671fb8950171bf3af4ab2d': 'Clear input box content', 'a47b08f4c83158a058c06e176cff501a': 'Color picker', - '1b25b3b1b5076f0c2e6bd12d73c56f79': 'Hide palette', + '1b25b3b1b5076f0c2e6bd12d73c56f79': 'Hide color palette', '9b161db0e2e749c1106c702c8097d380': - 'When on, it is prohibited to manually input colors, and can only be selected from alternative colors', + 'With this option enabled, disable manual color input. Thus, you can select a color among alternative colors only.', '05a64e0df1490a5db391e7a43eced6e0': 'Alternative colors', '6cbabc9a4cc07c1e26bb131c02833f8d': 'Alternative colors at the bottom of the color picker', '79d7c8cd739a1f94c7bb30c74323eaa7': 'X (time stamp)', - '84c7af622906c4e9d62bbf905d6ee517': 'X (millisecond timestamp)', - 'aa2fb1b6cffd7c9783c11047adcdbae4': 'Please select a date', - '8935dbb864f032bacc618b0938887ad7': 'Yyyy MM DD', - 'ff91b28a49de6fd998dea31598198a73': 'Please select a date and time', - '3e253325914594e1dc483c0b64ea7643': 'Yyyy MM DD HH hour mm min SS second', - 'fbd05a89ca037ca9e5a6af4c2206d488': 'Please select a time', - '90696835bfa70d38b02ef5533d33c88d': 'HH hour (mm / min)', - '6154f88c0ac259ace41b0a5be45d753c': 'HH h mm min SS s', - '904393383755b88e61f5c242eafabdda': 'Please select a month', - '55546b74d8819d49cccda6277f3a3282': 'Please select quarter', - '13ef7828361c8aebbf6ebe09370f5e41': 'Please select year', + '84c7af622906c4e9d62bbf905d6ee517': 'X (ms time stamp)', + 'aa2fb1b6cffd7c9783c11047adcdbae4': 'Select date', + '8935dbb864f032bacc618b0938887ad7': 'YYYY MM DD', + 'ff91b28a49de6fd998dea31598198a73': 'Select date and time', + '3e253325914594e1dc483c0b64ea7643': 'YYYY MM DD HH mm ss', + 'fbd05a89ca037ca9e5a6af4c2206d488': 'Please select time', + '90696835bfa70d38b02ef5533d33c88d': 'HH mm', + '6154f88c0ac259ace41b0a5be45d753c': 'HH mm ss', + '904393383755b88e61f5c242eafabdda': 'Select month', + '55546b74d8819d49cccda6277f3a3282': 'Select quarter', + '13ef7828361c8aebbf6ebe09370f5e41': 'Select year', '4be42a8a2cbb9088b4d051cfd824d68c': - 'Support the relative value usage of < code > now, + 1day, - 2weeks, + 1hours, + 2years < / code > and support variables such as < code > \\ ${start_date} < / code >', + 'It supports the use of relative values, such as now, +1day, -2weeks, +1hours, and +2years. Meanwhile, it supports such variables as \\${start_date}.', 'be28cd64f978dd70c1cd345ebe751bca': - 'Date box, input datetime, date time box, input time, time box, input month, month box, input quarter, quarter box, input year, year box', + 'Date box, input-datetime, date and time box, input-time, time box, input-month, month box, input-quarter, quarter box, input-year, and year box', '52ea2070560eb55083b64f5ba748697d': - 'Select month, day and month, and support relative value setting, such as < code > + 2days < / code > two days later', + 'This option allows you to select year, month, and date. It supports the setting of relative values, e.g., +2days later.', 'e54ca3223a36c6489de0fb8a39d4049f': 'Date configuration', - '96f9d9fc9cef8b18e3cd1cf9077147d1': 'Triggered when the time value changes', + '96f9d9fc9cef8b18e3cd1cf9077147d1': + 'Be triggered when the time value changes', '0a72b3858efffaa1bab685fa840b701b': 'Time value', 'f6db3514c72bdc34922f137a8a92b997': - 'Triggered when the input box gets the focus (non embedded mode)', + 'Be triggered when the input box gets a focus (non-embedded mode)', '0f5fc3b84cf9c24ff3acae45ae22fb57': - 'Triggered when the input box loses focus (non embedded mode)', - 'cfbace00045a3debdc8f02858cf753c6': - 'Before submitting the data, the data will be formatted according to the settings. Please refer to the < a href= https://momentjs.com/ target=_ Blank > format usage in moment < / a >.', - 'ecd1a3cadcf1d55250afafbbde767250': 'Display format:', + 'Be triggered when the input box loses the focus (non-embedded mode)', + 'e02d111d524de97e8622121f7ce845cf': + 'Before the data submission, format the data according to the setting. Refer to the format application in moment.', + 'ecd1a3cadcf1d55250afafbbde767250': 'Display format', '182503224cfaf1f63c566f13da56a2a4': - 'Please refer to < a href= https://momentjs.com/ target=_ Blank > format usage in moment < / a >.', + 'Refer to the format application in moment.', 'bf8f46b5c3b309f666965a74d57ac093': - 'Support the relative value usage of < code > now, + 1day, - 2weeks, + 1hours, + 2years < / code >', - 'f0789e79d48f135e5d870753f7a85d05': 'pattern', + 'It supports the use of relative values, such as now, +1day, -2weeks, +1hours, and +2years.', + 'f0789e79d48f135e5d870753f7a85d05': 'Mode', 'a553741d5ebb9c80d7d2a63b202cf4b8': 'Floating layer', - 'c6e1b91d329a61b691d0d5d2eb343ddd': 'Embedded', - 'a2847d82fc998cbe25447b14d113234b': 'Please select a date range', - '3f9c3a9eb55b7116bcaa6b614ecb38be': 'Please select a date and time range', - 'ddc4a982defd88cd164c61da914819e1': 'Please select a time range', - 'c899221db27c8b3606ce7c807f0765f2': 'Please select a month range', - 'c09ddfc72d3c34ae6aa76d5a457cb403': 'Please select quarter range', - 'cb6deedf9cd4a0b65abd70798cfed85e': 'Please select the year range', - '7866226eb814f681dcc4037e7489aab8': 'Date range', + 'c6e1b91d329a61b691d0d5d2eb343ddd': 'Embedding', + 'a2847d82fc998cbe25447b14d113234b': 'Select date range', + '3f9c3a9eb55b7116bcaa6b614ecb38be': 'Select date and time range', + 'ddc4a982defd88cd164c61da914819e1': 'Select time range', + 'c899221db27c8b3606ce7c807f0765f2': 'Select month range', + 'c09ddfc72d3c34ae6aa76d5a457cb403': 'Select quarter range', + 'cb6deedf9cd4a0b65abd70798cfed85e': 'Select year range', + '7866226eb814f681dcc4037e7489aab8': 'Date Range', '28de3d73d839b616bd617b3636669780': - 'Date range box, input datetime range, date time range, input time range, time range, input month range, month range, input quarter range, quarter range, input year range, year range', + 'Date range box, input-datetime-range, date and time range, input-time-range, time range, input-month-range, month range, input-quarter-range, quarter range, input-year-range, year range', '9024ff398faf8340b92bf0208431973b': - 'Date range selection, minimum and maximum dates can be set through < code > mindate < / code >, < code > maxdate < / code >', - 'e7271563debf3c7bcb85e23816c35acb': 'Minimum span', - '6f44927b5ffddc499e4dc26889169143': 'For example, 2days', - '6da95498bea887b2ea7c6c2bb4b2fdc3': 'Maximum span', - '61fd7e3e86b168be41ac2e37237e1788': 'For example, 1year', - '2f8d6f1584b73bfc6dada44526abb502': 'yesterday', + 'For the date range, you can set the minimum and maximum dates through minDate and maxDate.', + 'e7271563debf3c7bcb85e23816c35acb': 'Minimum span,', + '6f44927b5ffddc499e4dc26889169143': 'e.g., 2 days', + '6da95498bea887b2ea7c6c2bb4b2fdc3': 'Maximum span,', + '61fd7e3e86b168be41ac2e37237e1788': 'e.g., 1 year', + '2f8d6f1584b73bfc6dada44526abb502': 'Yesterday', '0dc86a275145ad5a7774e594f0d94a06': 'This week', - '79abd4ee3661ff70c7d79716c8aaed83': 'last week', - '73bef6f0c997ffe317c868c4716baab0': 'Last 7 days', + '79abd4ee3661ff70c7d79716c8aaed83': 'Previous week', + '73bef6f0c997ffe317c868c4716baab0': 'Latest 7 days', '8f2a5a5f6e3777c7a0e1ce9484a2f7d7': 'This month', - 'd5578d93388a5b2552316418cd1124da': 'last month', + 'd5578d93388a5b2552316418cd1124da': 'Previous month', 'ffb2b7fbf227d9d21e03d0f160fb2a34': 'This quarter', - 'dd657784cc0d5511d2f25459e49ead1a': 'Last quarter', - 'd3dbc7a7fd9fc5ccd168084c8579c1ec': 'this year', - '2f92fc7bf6ef3dd57c514d0797fe2f1e': 'Front occupying prompt', - '592c59589144ddc68d05d528da17dcdc': 'start time', - 'a04c4894d83323d187f65cc357fa646e': 'Post occupancy prompt', - 'f782779e8b5d709462c8e71e0d9019f2': 'End time:', - '59a81f21a829e24e9a765c4d6e509e68': 'Date, year, hour and hour selection', - '5eb8cb70e4dc97622c967d7c7efd6566': 'Date time range', + 'dd657784cc0d5511d2f25459e49ead1a': 'Previous quarter', + 'd3dbc7a7fd9fc5ccd168084c8579c1ec': 'This year', + '2f92fc7bf6ef3dd57c514d0797fe2f1e': 'Start placeholder prompt', + '592c59589144ddc68d05d528da17dcdc': 'Start time', + 'a04c4894d83323d187f65cc357fa646e': 'Post placeholder prompt', + 'f782779e8b5d709462c8e71e0d9019f2': 'End time', + '59a81f21a829e24e9a765c4d6e509e68': 'Select year, month, date, and time', + '5eb8cb70e4dc97622c967d7c7efd6566': 'Date and time range', '7f4466c0a16a1808b5ee398ce55997ab': - 'Date and time range selection, minimum and maximum dates can be set through < code > mindate < / code >, < code > maxdate < / code >', - 'ab37cc3baa3ec204bd7ebfa450568c40': 'Mailbox box', + 'For the date and time range, you can set the minimum and maximum dates through minDate and maxDate.', + 'ab37cc3baa3ec204bd7ebfa450568c40': 'Email box', 'e3c0d799e8880a36edb07e34fd1bed67': - 'Verify that the input conforms to the format of the mailbox', - '3bc5e602b2d4c7fffe79258e2ac6952e': 'mailbox', + 'Verify whether the input meets the Email format', + '3bc5e602b2d4c7fffe79258e2ac6952e': 'Email', '899339c1133a6100a1b223680d26692c': 'Upload Excel', 'b0e4a21f29af38986eebbbf867eee31b': 'Automatically parse Excel', '7caadb59b5892d107a909816b6571c66': - 'Triggered after excel uploading and parsing', - 'eb3daf37c93971703187ecbacb00c74e': 'Data parsed by Excel', + 'excel Be triggered after the upload and parsing are complete', + 'eb3daf37c93971703187ecbacb00c74e': 'excel Parsed data', 'd9435aa8028acfc660276c4e0af5536a': 'Parsing mode', - 'b14494137c805dc66bdc9ed88d7fd2de': 'object', - '0e67d4b0e351b00f4bea9840aa6b99d7': 'array', - 'fe5c59cbac3d45314ec6397d9f75789a': 'Resolve all sheets', - '50b10b178196378f4359ce11bbc31372': 'Resolve to plain text', + 'b14494137c805dc66bdc9ed88d7fd2de': 'Object', + '0e67d4b0e351b00f4bea9840aa6b99d7': 'Array', + 'fe5c59cbac3d45314ec6397d9f75789a': 'Whether to parse all sheets', + '50b10b178196378f4359ce11bbc31372': + 'Whether to parse the sheet into a pure text', '1647e4bfb548f2e8468d10b4b3bfbe21': 'Whether to include empty content', 'ec1f230a0181d79b37967a455b1f3515': - 'Multiple files can be uploaded, and whether to upload automatically and upload large files in pieces can be configured', + 'You can upload several files. Also, you can configure whether to automatically upload files and to upload large files by dividing them into multiple parts ', '8dccb3d6633a85edb21fa52599211654': - 'Triggered when the value of the uploaded file changes (also triggered when the upload fails)', - '5560230c43dd8d8c2b4a62d829f152b3': 'Uploaded files', - '7dcb3fb3ccc93369798d4b6950e96058': 'remove file ', - '03d585240162dad662a0a6b5d90a4692': 'Triggered when a file is removed', - '6775136a73e41c1b2cb4ab025773e326': 'Removed files', - 'a7699ba73144aad544eb9ac49f82749d': 'Upload succeeded', + 'It is be triggered when the upload file value changes. It can also be triggered in case of failure to upload.', + '5560230c43dd8d8c2b4a62d829f152b3': 'Uploaded file', + '7dcb3fb3ccc93369798d4b6950e96058': 'Remove file', + '03d585240162dad662a0a6b5d90a4692': 'Be triggered when you remove a file', + '6775136a73e41c1b2cb4ab025773e326': 'Removed file', + 'a7699ba73144aad544eb9ac49f82749d': 'Uploaded successfully', 'e309c24c2b07e5970208a82388f1d88e': - 'Triggered when the file is uploaded successfully', + 'Be triggered when the file is uploaded successfully', 'a27518f50ea00aaacb2c4e52f113eeb1': - 'Result data returned after successful remote upload request', - '54e5de428ca9d59119d4624706215a4d': 'Upload failed', - '4855bc3f3d06b9cf58d14b61839c5a51': 'Triggered when uploading a file fails', + 'Result data returned after the remote upload request is successful', + '54e5de428ca9d59119d4624706215a4d': 'The upload fails.', + '4855bc3f3d06b9cf58d14b61839c5a51': 'Be triggered if the file upload fails', '236dc056d6800bf423df47520637c52d': 'Error information returned after the remote upload request fails', - '36d40a48f3da92af9fe55ee77cfae46f': 'wipe data ', + '36d40a48f3da92af9fe55ee77cfae46f': 'Clear data', '18843505278637e44a29e7e1f39e0b06': 'Clear selected files', 'cf6e87cb9edfa398ccfc3db377e34ca4': 'Button name', - '0ec0e6e04b9e918939ac8e0daf407b75': 'Maximum quantity', + '0ec0e6e04b9e918939ac8e0daf407b75': 'Maximum number', '0a9dced8856958fbd05508d1218f8090': 'Maximum volume', - '3e999689c93e7cd95ce6acdded1835fb': 'Submission method:', - 'd28879b6a8a4ddb62bf6f2ab59303df7': 'Submit with form', - '3a76423b7ae40b0fa8b0bedb470cce7e': 'Independent upload', - '7c6722203327e8173be987f36fadf610': 'data format', - 'abe8f84fa8436e1033af359d8ef25634': - "${formtype? Asbase64? Small files can be used. By default, the file download address is submitted to the form. After setting, the base64 format string of the file content is submitted to the form.: the file control does not take over the file upload, and is directly completed by the form's save interface. Choose from the base64 options.:}", + '3e999689c93e7cd95ce6acdded1835fb': 'Submission method', + 'd28879b6a8a4ddb62bf6f2ab59303df7': 'Submitted together with the form', + '3a76423b7ae40b0fa8b0bedb470cce7e': 'Separate upload', + '7c6722203327e8173be987f36fadf610': 'Data format', + 'fde1ab2f504097f3f717acbb653b4f09': + '${formType ? asBase64 ? "You can use it for small files. By default, the file download address is submitted to the form. After setting, the base64 format string of the file content is submitted to the form." : "The File control does not take over the file upload. Thus, the file upload is directly completed by the saving interface of the form. You can choose either of this option and Base64 (什么和Base64 ???)" : ""}', '6168fb08fe64663a502a132c5589b73d': 'Binary', - '7245fe895fa1cfc42b5217a3de314565': 'Auto upload', - 'cf9e4c80962e712eaa55551cccff317e': 'Open block', + '7245fe895fa1cfc42b5217a3de314565': 'Automatic upload', + 'cf9e4c80962e712eaa55551cccff317e': 'Enable block', '454dbf9b835af8627d4dfff2903298b7': 'Block size', '2af0c8b5999a1d243ec5fe503da20026': 'Block preparation interface', '5548252bd28fc1d217d13a9e5771ecb0': - 'It is used to prepare for blocking. A file can only be called once. If there is an error, the subsequent block uploading will be interrupted.', + 'It is used for the block preparation. A file can be called once. If an error occurs, the subsequent block upload interrupts.', 'd7832abe5b9ce8e41537b4964fd7cf70': 'Block upload interface', '14008d63c109cc0d0c4ba305671800d2': - 'It is used to receive each block upload. Large files will be divided into multiple blocks according to chunksize, and then this interface will be called for each block upload.', + 'It is used to receive each uploaded block. A large file is divided into multiple blocks according to the chunkSize and then each block is uploaded by calling this interface.', '70c935fa7ae03aeb1ff87b878e16841f': 'Upload completion interface', 'c88aaeddb5aa95c7627d84df33929e3f': - "After all the block uploads are completed, combine the 'Etag' information collected from the uploaded file, and request the back-end to complete the file upload again.", + 'After all blocks are uploaded, the `eTag` information collected for the uploaded files is merged. Then, you can request the backend to complete the file upload. ', '1e4dc4d5f4a3a95ddc349147d4d8cd39': 'File receiver', '258d9e27231b06769dd584a3365545ba': - 'By default, it will not be uploaded to BOS. It can be set as your own BOS address in the system configuration.', - '28b988ce6ae6dd62d24bcb8a52119179': 'file type', + 'By default, this option is left blank. The files are uploaded to bos. You can set your bos address in the system configuration.', + '28b988ce6ae6dd62d24bcb8a52119179': 'File type', 'f0a37d6f810c73a2f936f33035d99056': - 'Please fill in the suffix of the file. Multiple types are separated by < code >, < / code >', + 'Enter the file suffix. If there are several types, they are separated with ,.', '58892b7a6a785706712761d5aebb4639': 'Template link', 'af4b910df15b00ba7fb5163558389cfe': - 'It is applicable to scenarios with upload format requirements such as Excel upload, and provides a template download portal for users', - '26d384ebe61b6ffe0e64310331f9e998': 'Drag upload', - '644d03767c8148de6651cc6b00b0173f': 'Select button', + 'It applies to the scenarios that have upload format requirements, such as excel upload format. Also, it provides users with a template download entry.', + '26d384ebe61b6ffe0e64310331f9e998': 'Drag to upload', + '644d03767c8148de6651cc6b00b0173f': 'Selection button', 'd1b06a828d05b0ff72328d50b16a8443': 'Upload button', - '0d4ebf2f4a10336011cfe0466b29ba5c': 'Input combination', + '0d4ebf2f4a10336011cfe0466b29ba5c': 'Input Group', '5b7363cba6bad37b6614809e9bd90746': - 'Input combination, supporting multiple types of control combinations', - '13370c4a5c95eff126068be5cfd2a9df': 'Input combination', + 'The input combination supports several types of control combinations.', + '13370c4a5c95eff126068be5cfd2a9df': 'input combination', 'ff10d1d90be63fbcdc7377435bf18f96': 'Input combination', '0a7f8e17f8487c3715a154bea698778e': - 'The image can be cropped, the width, height and size of the image can be limited, and multiple images can be uploaded automatically', + 'This option allows you to crop the image. Also, it can limit the width, height, and size of the image. It supports automatic upload and upload of multiple images.', '295afc11c5fad1a6d97ae174abfcc5bf': 'File value change', 'd4633ba7a30303a59891d051a7715cc9': - 'After it is turned on, the cutting function cannot be turned on at the same time', + 'With this option enabled, you cannot enable the crop feature at the same time', '22616e32a895c56187921ac6cc673f51': 'Maximum image volume', '13446481eaf0a047d8fddf159d981a7c': - 'Upload is not allowed when the size exceeds, unit: bytes', + 'The upload is rejected when the file exceeds the size limit. The size is expressed in bytes.', 'aeae3dd09f5cc972944a892802244483': 'Maximum number of pictures', 'eec48d0e729f7260544646c60ef6580d': 'Upload is not allowed when the number exceeds', - 'b582587147013afc52c58de5fe34d7d7': 'Document receiving interface', + 'b582587147013afc52c58de5fe34d7d7': 'File reception interface', 'd24bada35447c81d7d7ddec13c44b576': - 'File receiving interface. If it is not filled in by default, it will be uploaded to hiphoto', - '7c5e7ad8954effd97cb78dcb0e8f99d9': 'Picture type:', + 'It is a file reception interface. If this option is left blank, the files are uploaded to hiphoto.', + '7c5e7ad8954effd97cb78dcb0e8f99d9': 'Image type', 'f816b3decb401dcd0c22db7f104beccc': - 'Please fill in the suffix or < code > mimeType < / code > of the picture. Multiple types are separated by < code >, < / code >', - '99e6b6011bacaabc18aeac70390252a3': 'Placeholder picture address', + 'Enter the image suffix or MimeType. If there are several types of images, they are separated with ,.', + '99e6b6011bacaabc18aeac70390252a3': 'Placeholder image address', '886df74c6a38c09891f46bd029490ae7': 'Whether to turn on fixed size', '037805d2f16cfe69e3145c9f436c06ef': 'Hide upload button', - '80f7e6960804df47856301e7ad8bef6d': 'Turn on compression', + '80f7e6960804df47856301e7ad8bef6d': 'Enable compression', '2c4a34adf66f12d0a08716383304a66e': - 'Implemented by hiphoto, the custom interface will be invalid', + 'It is implemented by hiphoto. For the custom interface, it is invalid.', '5d8ff202988e28795bc72ab60d67d79d': 'Compression configuration', '99b57d8c9244ff9a695fcd519b4e2e57': 'Maximum width', 'fc2bc4193eea63128961d09497e07dc8': 'Maximum height', - 'd4efa8f599c1effe67bf6a7f38a9c40d': 'Show compression options', + 'd4efa8f599c1effe67bf6a7f38a9c40d': 'Whether to display compression option', 'f8a68f636880acd097317f16aeacaedc': 'Turn on Cropping', '3d948d24bc4c29689c5a1d4bcb9f2b98': - 'After it is turned on, multiple selection mode cannot be turned on at the same time', - 'e09f3466f78e62c1494fb36816950501': 'Crop ratio', + 'With this option enabled, you cannot enable the multi-select mode.', + 'e09f3466f78e62c1494fb36816950501': 'Cropping ratio', 'ea172e50aedd5afb561ef02ca119821c': 'Whether it can be rotated when cutting', 'ae948ea02f5abf3c6409b1c3fe3a2295': 'No during cropping (scalable)', '4697838df60efb48d857c12387c6d795': 'Crop region limit', - 'bc436447f54b10a9ac3f0ee3e1b863dc': 'unlimited', + 'bc436447f54b10a9ac3f0ee3e1b863dc': 'No limit', '7ccc0313ac4c40b364f482341ecc3bb8': 'Drawing area', - '4db4c540f05524c38e9431173736517b': 'Picture restrictions', + '4db4c540f05524c38e9431173736517b': 'Image limit', '93f0c741d286a0353f95afa4a8aeff64': 'Width Limited', '5738784edf25dd7c3e40e0c1af4dc80a': 'Height Limited', '367e853038270c93e2c35a2bfdf0bcb5': 'Limit maximum width', @@ -1174,425 +1195,438 @@ extendLocale('en-US', { '2e81b2a5e6d523a70db93481f01af875': 'Limit. Limit the minimum height', '1765a2daba3ba8c5af95e66fa83545d4': 'Aspect ratio description', 'a7b7da38fcb8e246e910e178c5fe4ebc': - 'When the aspect ratio does not meet the conditions, this description will be displayed as a prompt message', - 'ed55564c631322fa3042c77286d6562c': 'KV key value pair', + 'When the aspect ratio does not meet conditions, the description appears as the prompt information.', + 'ed55564c631322fa3042c77286d6562c': 'Input KV', '746dd83e6891ccc9a19804c23c2c4443': - 'Used to edit data of key value pair type', + 'It is used to edit the data of the key-value pair type', 'b3747d09769d3a2ea8aa664edc901212': - 'Triggered when a combination item is deleted', + 'Be triggered when you delete a combination item.', '654ad5670efdd25f1417958a7026a355': 'Value type', - '9648d874d516a87965066342394e86e6': '"Key":', - '4dae7425b21494a318cd4a69ce24608f': 'Prompt message of value', - '233662283039ded8c29f070d1a807029': 'Sortable', - '4f9c849b6b7f048cfd242cef3e707a58': 'Month selection', + '9648d874d516a87965066342394e86e6': 'Key prompt information', + '4dae7425b21494a318cd4a69ce24608f': 'Value prompt information', + '233662283039ded8c29f070d1a807029': 'Whether to sort', + '4f9c849b6b7f048cfd242cef3e707a58': 'Select month', '7c3885e3c3eca4d95521b3e220586628': 'Month range', '5b4ad7ffa6eee985e72e002bf18ac09a': - 'Select the month range, and set the minimum and maximum dates through < code > mindate < / code >, < code > maxdate < / code >', - '1e65b8181e9a40e76b86e2c261cafbe0': 'Number box', + 'To select the month range, you can set the minimum and maximum dates through minDate and maxDate.', + '1e65b8181e9a40e76b86e2c261cafbe0': 'Input Number', 'c45782c425bfc31824af8129bd6e0282': - 'Supports setting the maximum and minimum values, as well as the step size and accuracy', + 'It supports the setting of the maximum and minimum values and the step and precision.', 'acc945d0c8449dce7dc1441f466ec413': 'Input value', - '5f914e36c49db618d06981df7b3c4d81': 'Digital box gets focus', + '5f914e36c49db618d06981df7b3c4d81': 'The number box gets a focus', 'e52c2701b682679d6c670a8578cfa382': 'Current value', - 'efdd0d8923130f281b54506eef2121cf': 'The number box loses focus', - '0849471829a565a8af6b70a46346e574': 'Clear the contents of the number box', + 'efdd0d8923130f281b54506eef2121cf': 'The number box loses the focus', + '0849471829a565a8af6b70a46346e574': 'Clear the number box content', '33bf23fcb86101a9994b7e4bfdc2b062': - 'Please enter a number or use < code > \\ ${XXX} < / code > to get the variable, otherwise the configuration will not take effect', - 'e284e64008fd8b066da04bca335d032a': 'Decimal places', + 'Enter a number or use the \\${xxx} to get a variable. Otherwise, the configuration does not come effect.', + 'e284e64008fd8b066da04bca335d032a': 'Number of decimal places', 'b317cbf67c94f986fc44cf4cbc2280c6': - 'Accurately retain the set decimal places according to rounding', - '4c9bb42608b11278a5d9a2471b74eb40': 'prefix', + 'Precisely retain the number of decimal places according to the rounding rules ', + '4c9bb42608b11278a5d9a2471b74eb40': 'Prefix', '0c8fe8b3675b0c7f5a896a153461ea46': - 'Only displayed before the input content, not included in the data value', - '242d641eab57223af01fb29940a096ed': 'suffix', - '7915dcc78c28ed3cda8fc949a86e4806': 'Unit options', - '8c80ed1f85135cc9153d0b7406ac5b38': 'Quick Edit', - '0a8c852e27763a18ce5b72a87ba8b5ba': 'One side button', - 'de93563a076f72b3e919870c9dad9935': 'Buttons on both sides', + 'It appears before the input content. It is not contained in the data value.', + '242d641eab57223af01fb29940a096ed': 'Suffix', + '7915dcc78c28ed3cda8fc949a86e4806': 'Unit option', + '8c80ed1f85135cc9153d0b7406ac5b38': 'Quick edit', + '0a8c852e27763a18ce5b72a87ba8b5ba': 'Single-side button', + 'de93563a076f72b3e919870c9dad9935': 'Two-side button', '5dd92ede50cc183f0f067dd29be5c325': 'Password box', - 'a8105204604a0b11e916f3879aae3b0b': 'password', - 'a483bccf85587055ab31314ad1d2f82a': 'quarter', - '549a2a421951fc8c304c6223f346e024': 'Quarter selection', - '39891e1760c79287985adece9a107fd6': 'Quarterly range', - '6036c91d6b0b6d1a2468684e597d9f70': 'slider', + 'a8105204604a0b11e916f3879aae3b0b': 'Password', + 'a483bccf85587055ab31314ad1d2f82a': 'Quarter', + '549a2a421951fc8c304c6223f346e024': 'Select quarter', + '39891e1760c79287985adece9a107fd6': 'Quarter range', + '6036c91d6b0b6d1a2468684e597d9f70': 'Input Range', '4c65f10eacbfaf580236b5cbe2de68de': 'Select a value or range', - '0a6a4aee139530801791c556e7177a7f': 'Triggered when the slider value changes', + '0a6a4aee139530801791c556e7177a7f': + 'Be triggered when the sliding block value changes', 'f34b1a3e26aadb6f60c546dbe9c62232': - 'When showinput is set to true, it will be triggered when the input box gets the focus', - '404625f170839b2a24d7ab65304c2fe7': 'Slider current value', + 'Be triggered when you set showInput to true and the input box gets a focus.', + '404625f170839b2a24d7ab65304c2fe7': 'Current value of the sliding block', '7c9ec5db3bf23f367c1a905d356aab5c': - 'When showinput is set to true, it will be triggered when the input box loses focus', + 'It is triggered when you set showInput to true and the input box loses the focus.', '1659f1112dd649ec55390fe7c8e3b1d0': 'Clear input box', - '7220e4d5f9f65e4fadee5183f2e0c54d': 'mode', - '9ec172e2cdff6146d623087d567c8574': 'Single slider', - '753a8c54d3944e252be1af928b8e7afd': 'Double slider', - 'f2996845b6bf0a07fe26f74f35e42ebe': 'Company', + '7220e4d5f9f65e4fadee5183f2e0c54d': 'Method', + '9ec172e2cdff6146d623087d567c8574': 'Single sliding block', + '753a8c54d3944e252be1af928b8e7afd': 'Double sliding block', + 'f2996845b6bf0a07fe26f74f35e42ebe': 'Units', 'e48d95a94e49b81b12a0113a5c253d8f': 'Value label', - 'a465db53b8c98f42caa15ca5662f9c90': 'direction', - '3aed2c11e95a9c0ea1d853d4aee72e8c': 'automatic', - '1d1a0bd85740653320d80f0d6e0918e7': '(can be input)', - 'd22aa5f57ff8679ee7b7d473ef31417d': 'reconfigurable ', - '15628d1d85aee23c229c528a70419414': 'track', - '108db12ed4454cf1ab4242ca98442b7a': 'score', + 'a465db53b8c98f42caa15ca5662f9c90': 'Direction', + '3aed2c11e95a9c0ea1d853d4aee72e8c': 'Automatic', + '1d1a0bd85740653320d80f0d6e0918e7': 'Inputtable', + 'd22aa5f57ff8679ee7b7d473ef31417d': 'Resettable', + '15628d1d85aee23c229c528a70419414': 'Track', + '108db12ed4454cf1ab4242ca98442b7a': 'Scores', 'f11a0f49123c2099ca6c6162ca37f0ec': - 'Support read-only and half star selection', - 'ce9201dd7d5816945fbedae79927518f': 'Triggered when the score value changes', - 'cef3580fce1b3156908cc852dadef892': 'Scoring value', + 'Support the read-only and half-star selection', + 'ce9201dd7d5816945fbedae79927518f': + 'Be triggered when the score value changes', + 'cef3580fce1b3156908cc852dadef892': 'Score value', 'e2c6470c3f2e76cb98ba951a64e41c3d': 'Clear score value', - '09bbfb387dce6201df1ccef2aab161a6': 'Cleanable', - '5ea244a79d480632f635a254c95c38df': 'Allow clearing after clicking again', - 'fa6f66437097fe23c948f4f9b78ecec0': 'Half star allowed', - '1a10cd6599219eafb615b34234cfc0b5': 'Description:', - '9c07532d0c9acfecfc4ec2eb265c3e03': 'character', - '2a3d1f6d5b0afdbf04033e2f2c1fa11e': 'Middle color value not selected', + '09bbfb387dce6201df1ccef2aab161a6': 'Clear', + '5ea244a79d480632f635a254c95c38df': + 'Whether to allow you to clear it after you click it again', + 'fa6f66437097fe23c948f4f9b78ecec0': 'Half-star allowed', + '1a10cd6599219eafb615b34234cfc0b5': 'Description content', + '9c07532d0c9acfecfc4ec2eb265c3e03': 'Characters', + '2a3d1f6d5b0afdbf04033e2f2c1fa11e': 'Failed to select color value', '497562b3159756834c7adfe9525bd7b5': - 'The default unchecked color value is # e7e7e8', + 'The default unselected color value is #e7e7e8.', '4dd547945b10f672a7e48d7ffc42496e': 'Select color value', - 'f186d55a48868a88b026d48efc1cf36f': 'Scoring Description:', - 'd38056d1c6aa9456f4b6b2c20aab06a2': 'Recurrence selection', + 'f186d55a48868a88b026d48efc1cf36f': 'Score description', + 'd38056d1c6aa9456f4b6b2c20aab06a2': 'Input Repeat', 'b3389af540d99fe9e51fb2995dbd6dff': - 'Select the frequency of repetition, such as hourly, daily, weekly, etc', - '2d842318fbd931286be387aaf5b2a7c3': 'cycle', - 'a2d92b5adb07a4bf8a45e55643bc39f8': 'Enabled by:', + 'Select the repeated frequency, e.g., hourly, daily, weekly, and so on.', + '2d842318fbd931286be387aaf5b2a7c3': 'Cycle', + 'a2d92b5adb07a4bf8a45e55643bc39f8': 'Enable unit', '42c036311993897680ef37f11e4e20a8': - 'Customizable rich text configuration bar', + 'You can customize the configuration bar of the rich text.', 'e2591e971f4c28db7c80a5f546084a1d': 'Rich text', '70209fc05c1a5b21f05b186a0f7ba2ee': 'Editor type', - 'eca97e97331bd76aab9f6160991e02bb': 'Froala setting item', + 'eca97e97331bd76aab9f6160991e02bb': 'froala setting item', '39624e820b79bbd62561357f6179c8d7': - 'The prompt language displayed when the mouse is configured in the configuration bar', - 'a7bac2239fcdcb3a067903d8077c4a07': 'chinese', - 'f9fb6a063d1856da86a06def2dc6b921': 'english', + 'Prompt language displayed when the mouse is over the configuration in the configuration bar', + 'a7bac2239fcdcb3a067903d8077c4a07': 'Chinese', + 'f9fb6a063d1856da86a06def2dc6b921': 'English', '81fafee54baebeb9591b5e7840d7e650': - 'Configuration items displayed in large screen', + 'Configuration item displayed in the large-screen mode', '0b6eee152cb2553ed4298ca2fe82d3f8': 'Screen width ≥ 1200px', - 'ac3906888a34e51c5bdc1297636857ed': - 'Use spaces to separate configuration, use < code > | < / code > to group configuration bars, < a target=_ blank href= https://www.froala.com/wysiwyg-editor/docs/options >Reference documents', + 'd85a80d177db696b29b7338af1501055': + 'The configuration is separated with a space. You can group the configuration bars using |. Reference documentation', 'f126c4368fbf51cfd470684e7c3d31c9': - 'Configuration items displayed in the middle screen', + 'Configuration item displayed in the medium-screen mode', '3b8c320d14dba586c581ceb951917397': 'Screen width ≥ 992px', '89bc688b5b497e515ce3c026a1d92669': - 'Configuration items displayed in small screen', + 'Configuration item displayed in the small-screen mode', 'a849d8a0f59f3ae146b149b7b4fc7480': 'Screen width ≥ 768px', - 'b8c8f1c6a56e902bd837420da0f554b3': 'TinyMCE setting item', + 'b8c8f1c6a56e902bd837420da0f554b3': 'tinymce Setting item', 'e4d0e65de0018b63698ff22d683d6dd5': 'Whether to display the menu bar', - '63068211669d69b4028eebe0052425e7': 'Enabled plug-ins', - 'a917d194212a4f48b60d094c7a83fa17': - 'Use spaces to separate the configuration, < a target=_ blank href= https://www.tiny.cloud/docs/general-configuration-guide/basic-setup/ >Reference documents', + '63068211669d69b4028eebe0052425e7': 'Enabled plugin', + '8cfcd52cebdc2555b202f4b03de93662': + 'The configuration is separated with a space. Reference documentation', '1a920d9999206a9fa5f588c7405fe081': - 'Subform, configure a child < code > form < / code > as the current form item', - '18c113b99afa964ee988f30e81baf12b': 'Name: field name', + 'The SubForm allows you to configure a subform as the current form item.', + '18c113b99afa964ee988f30e81baf12b': 'Name field description', '4d930a9c13fca9d74e1a77496abfaa58': - 'When this field exists in the value, the button name will be displayed using the value of this field.', - '307ae20f587910da3e9bb4e885334b6a': 'Button label name', - 'e366ccf1556c0672dcecba135ed5472e': 'set up', - '70c04a0f4522e39fde5f18ebc85b6232': 'Minimum number allowed', - 'f58ea00f6a84bcb1cac174d1f68c88bd': 'Maximum allowed', - 'e41fd1934b82f93f5737827be7323119': 'Table edit box', + 'The button description is displayed by using this field value when this field appears in the value.', + '307ae20f587910da3e9bb4e885334b6a': 'Button label description', + 'e366ccf1556c0672dcecba135ed5472e': 'Setting', + '70c04a0f4522e39fde5f18ebc85b6232': + 'The minimum number of buttons is allowed. ', + 'f58ea00f6a84bcb1cac174d1f68c88bd': + 'The maximum number of buttons is allowed.', + 'e41fd1934b82f93f5737827be7323119': 'Form edit box', '0fbb26a646da61d2123319b4d0144ba4': - 'Can be used to display data, can be used to display array type data, such as < code > form < / code > of < code > multiple < / code >', - '4ba0387a2daf11ad9c67a75b52819eb3': 'Form', - 'a80f36ea893b8135df8d9266bf13afac': 'Description:', - '1f9794dd5634220ed0a498c666cf46fe': 'Column set', - 'b2c712c788d3a143206eee22fe24d9f1': 'green', - '6b93fcfc1a5795189c6072fa6e86d4f6': 'Quickly build tables', - '0c14e431f1b5ecd163f8fa010a0654c7': 'Add a new column', - '13c250c68608118463871ce7cd8b292c': 'Table editing', + 'If it can be used to display the data, it can also be used to display the data of array type, e.g., multiple sub-form.', + '4ba0387a2daf11ad9c67a75b52819eb3': 'Table and form', + 'a80f36ea893b8135df8d9266bf13afac': 'Description text', + '1f9794dd5634220ed0a498c666cf46fe': 'Column collection', + 'b2c712c788d3a143206eee22fe24d9f1': 'Green', + '6b93fcfc1a5795189c6072fa6e86d4f6': 'Quickly build the table', + '0c14e431f1b5ecd163f8fa010a0654c7': 'Add a column', + '13c250c68608118463871ce7cd8b292c': 'Form edit', '6a2f67fe2d8bb1d389eb934dd8a72b1f': 'Add button name', '44177f78c596be113d4fe7c6bd7bb46a': 'Add button icon', - '1d34fdbdcac357588c255c1ed2336a3f': 'API submitted when adding', + '1d34fdbdcac357588c255c1ed2336a3f': 'API submitted during submission', '96848841ea9b2a7d692aa6de57aa5e3e': 'Delete button name', '34f020715121478c6a8e4654954c84fd': 'Delete button icon', - 'a497289d862c6aeff8e61b6479b1081a': 'API submitted when deleting', - '748f181258041bac1fe7346e970dfebc': 'Editable', + 'a497289d862c6aeff8e61b6479b1081a': 'API submitted during deletion', + '748f181258041bac1fe7346e970dfebc': 'Whether to edit', '412e319fdd893e6f3b26a1975d21b0e0': 'Edit button name', '396ffcbab4e21acb77f6987f18ec94a3': 'Edit button icon', - 'c128de224b606b094bd8139890fbe215': 'Replicable', + 'c128de224b606b094bd8139890fbe215': 'Whether to copy', 'd59abc7020b4a6d943a0031da4518422': 'Copy button name', '5d04af0e9d59ab3f1265cd8345c2517c': 'Copy button icon', - '681bdd6184b526ade9665e6d74976863': 'API submitted when modifying', - 'c29e632a658ecb98edb874833b070e98': 'Confirm Edit button name', - '24c39bb36955b3113baefcfc20c5f60b': 'Confirm Edit button icon', - '9c68c27e8939af40897d1b0bca0360a5': 'Cancel editing button name', - 'e54289c1f0e9311185adee89af24e618': 'Cancel Edit button icon', - '1205e138ba64dddf61c1f8e6eb3a1aa7': 'Confirmation mode', - '1c1618f67cfea6fefb5f287932be2c27': 'Get parent data', - 'c811e7212b773b5d698a708113007729': - 'Configure canaccesssuperdata: true and strictmode: false to enable this feature. Variables with the same name in the parent data field will be automatically mapped initially. It should be noted that only the initial mapping will be performed here. Once modified, the data in the current row will be the main one. In other words, the form item type only serves as the initial value', + '681bdd6184b526ade9665e6d74976863': 'API submitted during modification', + 'c29e632a658ecb98edb874833b070e98': 'Confirm edit button name', + '24c39bb36955b3113baefcfc20c5f60b': 'Confirm edit button icon', + '9c68c27e8939af40897d1b0bca0360a5': 'Cancel edit button name', + 'e54289c1f0e9311185adee89af24e618': 'Cancel edit button icon', + '1205e138ba64dddf61c1f8e6eb3a1aa7': 'Confirm mode', + '1c1618f67cfea6fefb5f287932be2c27': 'Get the parent data', + '5831c1f77c5acefa6dfe9c64d06ca78a': + 'Configure "canAccessSuperData": true Configure "strictMode" at the same time: False Enable this feature. It maps the variable with the same name of the parent data domain automatically during the initialization. Note that it is mapped only during the initialization. Once modified, the data in the current line predominates. If it is of form item type, it is used as the initial value.', '677fb705e57897710d28867b7628307e': 'Input CSS class name', - '14d342362f66aa86e2aa1c1e11aa1204': 'label', + '14d342362f66aa86e2aa1c1e11aa1204': 'Label', '1b4996b29c7b4d5fb45ca701e6438d14': - 'Configuring < code > Options < / code > enables you to select options', - '52636511861a0e08cbe6a0eb1c27d816': 'red', - '9c9aabab3f7627ff4bb224b2738b26ea': 'blue', - '9888468550779b1777260b8fafe6abc2': 'Options tips', - 'a2cbb42e488dffe644bdb87c26afbc07': 'Tags you used recently', + 'Configure options to implement the selected option.', + '52636511861a0e08cbe6a0eb1c27d816': 'Red', + '9c9aabab3f7627ff4bb224b2738b26ea': 'Blue', + '9888468550779b1777260b8fafe6abc2': 'Option prompt', + 'a2cbb42e488dffe644bdb87c26afbc07': 'The latest label you use', '6f6fa31a91b516b28ebee7a86a9b13e2': - 'After setting options, these options will be pulled down for user reference during input.', + 'After you set the option, drop down these options for your reference when you enter it.', '379b5486e7860a9f38f37dddabbb094c': - 'Text box, mailbox box, input email, URL box, input URL, password box, input password', + 'Text box, email box, input-email, URL box, input-url, password box, and input-password', 'f222f5413d3854897741e0ec4b0d2c7b': - 'Text input box, support common text, password, URL, email and other content input', + 'Text input box. It supports the input of common text, password, URL, email, and other content.', '9306b956ca5950203ee49a2680cac63d': - 'Additional pendant on the left or right side of the input box', - 'd548d3e938088d5d469a28c20e939750': 'Automatic completion', + 'Additional widget on the left side or right side of the input box', + 'd548d3e938088d5d469a28c20e939750': 'Automatic complementation', '424cd425082360322678a5c8d6910b80': - 'The calling interface provides options according to the input content. The current input value can be a ${term} variable', + 'Call the interface provision option according to the input content. The current input value can use the ${term} variable.', '7e9c83e86beb612377a94e6e8d1fc644': 'Display field', '26ff46d82166741297ce666b2792af85': - 'The data field corresponding to the option text. Please configure the template for multi field consolidation', - '6d4ce0631f37676a887c9599691fabec': 'Field corresponding to option text', + 'The data field corresponding to the option text. If multiple fields are merged, configure it through the template.', + '6d4ce0631f37676a887c9599691fabec': + 'It is the field that corresponds to the option text', '2e01f5f5889e33d003bec7857cd38445': 'Value field', - '959c27193eb0a41d01f4b53dcc4b9245': 'Field corresponding to value', - '82a61b32c76fba3dc83e2611624e93ec': 'Time frame', - 'c54993eb4c2a46263cca2e6bdebb051d': 'Hour minute second input', + '959c27193eb0a41d01f4b53dcc4b9245': + 'It is the field that corresponds to the value.', + '82a61b32c76fba3dc83e2611624e93ec': 'Time box', + 'c54993eb4c2a46263cca2e6bdebb051d': 'Hour, minute, and second input', 'c166d8f9804ecef74b3b74190599a7b8': - 'Time range selection, minimum and maximum dates can be set through < code > mindate < / code >, < code > maxdate < / code >', - '479728c411bac59bc44d5ab8dc3cb4f0': 'Tree selection box', + 'To select the date range, you can set the minimum and maximum dates through minDate and maxDate.', + '479728c411bac59bc44d5ab8dc3cb4f0': 'Tree Select', '15ac5d800c0163b4b806622739478e9b': - 'The tree structure is used for selection. You can configure options through < code > Options < / code > or pull options through < code > source < / code >', + 'You can select it in the tree structure. You can configure the option through options and can also fetch options through the source.', '57a6105deead3fec79028cce7bfa2004': 'Option C', - '9bc04a190ce0a5ba1ed473cb628b5ed4': 'Option:', + '9bc04a190ce0a5ba1ed473cb628b5ed4': 'Option D', 'f77f634e6892c6447c5d9df623e42aff': 'Tree selection', - 'b35014ec330e91860bb188200fba12db': 'Value of the selected node', - '65d76d0590aa6e05d61fe8db4c6a11ca': 'New options', - '0761b99481b1bd10c1d6aad6028a8281': 'Triggered when a new node is submitted', - 'de2392357fc78e9e0f0946bcc0af87b6': 'New node information', - 'cf965b232227a0e9d14f4f7e31b01c62': 'Options collection', - 'cd994c38456676f5a55c5593b6a652bf': 'Edit options', + 'b35014ec330e91860bb188200fba12db': 'Select node value', + '65d76d0590aa6e05d61fe8db4c6a11ca': 'Add an item', + '0761b99481b1bd10c1d6aad6028a8281': 'Be triggered when you submit a new node', + 'de2392357fc78e9e0f0946bcc0af87b6': 'Added node information', + 'cf965b232227a0e9d14f4f7e31b01c62': 'Option collection', + 'cd994c38456676f5a55c5593b6a652bf': 'Edit option', 'e385c7c6f726dc2641866d9050777efb': 'Edited node information', - 'd015e18748f42f53bb6ab213e9b06187': 'delete the selected entry', + 'd015e18748f42f53bb6ab213e9b06187': 'Delete option', '58cbd355c5bdb80653a8ae3d3b316c37': 'Deleted node information', '58995b490ba67e5d29dd87f422b14861': 'Lazy loading completed', 'ec2fb7a5db150690b14b63f83d9d4b30': - 'Triggered when the remote request of lazy load interface succeeds', + 'Be triggered when the remote request from the lazy loading interface is successful', 'e6b94af26512b3f7ea8eb1433d4a2aaa': - 'Deferapi lazy load the data returned after the remote request succeeds', - 'e2edde5adbdf33f6dce59a299cbf5fad': 'open', - '38747bcbc3c47924098076ee87e59933': 'Expand the specified level', - 'a148ea1749eaf611df5cc95b533751ec': 'Expand to', - '37252d3a5eb0ebab17bfce14968b47c9': 'layer', - '01356df4561f9da87d2876ec9c0dacfe': 'Expand hierarchy', - 'def9e98b60e3bfc493bcd7693e702096': 'Put away', - '3ebb9059b6abc8f80a212b5795270ec2': 'Collapse tree node', - 'd81f0b9079d5a38bbedffeacaad8b905': 'Clear data', - 'ce5e449208bb568eaf722bab9a20380e': 'Reset Data ', + 'deferApi The data returned after the lazy loading remote request is successful', + 'e2edde5adbdf33f6dce59a299cbf5fad': 'Unfold', + '38747bcbc3c47924098076ee87e59933': 'Unfold specified level', + 'a148ea1749eaf611df5cc95b533751ec': 'Unfolded to the level??', + '37252d3a5eb0ebab17bfce14968b47c9': '?', + '01356df4561f9da87d2876ec9c0dacfe': 'Unfold levels', + 'def9e98b60e3bfc493bcd7693e702096': 'Folded', + '3ebb9059b6abc8f80a212b5795270ec2': 'Fold tree nodes', + 'd81f0b9079d5a38bbedffeacaad8b905': 'Delete data', + 'ce5e449208bb568eaf722bab9a20380e': 'Reset data', '25ae4ca8d4b8a67b273066a97a516327': 'Options', - 'fe7509e0ed085b86f07e3e9975cc5b3d': 'value', - '72453d792655604f1fab821146133d7d': 'Sub options', - '210da23d108e85b2f0bbfa85846cb792': 'New sub option', + 'fe7509e0ed085b86f07e3e9975cc5b3d': 'Value', + '72453d792655604f1fab821146133d7d': 'Sub-option', + '210da23d108e85b2f0bbfa85846cb792': 'Add a sub-item', '7dae2e2c470a12011e0c8b831506f656': 'Hide top level', - 'feec2a81557811b7fc38b0e6b758c3f7': 'Show icon', + 'feec2a81557811b7fc38b0e6b758c3f7': 'Whether to display icon', '018d13580184c6ca3df616940ebaee66': 'Do not automatically select sub nodes', '210bc6834481c05ed90875d87a262ed5': 'Whether the child node is automatically selected when the parent is selected', - 'b39c6fb1cdf629d3f3032d6c7d4694a8': 'Whether the value carries a sub node', + 'b39c6fb1cdf629d3f3032d6c7d4694a8': 'Whether the value contains a sub-node.', '1fa482fed3042cac9f96c6f43c13f84a': - 'Whether the value contains only child nodes', - '55b50a43f58fa746600d6bafdf405336': 'Top level text', - 'c48d9f48ce8a798772f17d1f47560529': 'top-level', - '945da00807804cb992a3aeb0ed6ea698': 'Show radio buttons', + 'Whether the value contains a child node only.', + '55b50a43f58fa746600d6bafdf405336': 'Top-level text', + 'c48d9f48ce8a798772f17d1f47560529': 'Top level', + '945da00807804cb992a3aeb0ed6ea698': 'Whether to display single-select button', '13604cddfe74bc9b9078dd61f9fb94ef': 'URL input box', - 'ed2e16700e32afdcdd745aa31454edb9': 'Verify that the input is a legal URL', - 'b233766d3fae72574d3f9ee98c5be120': 'Year selection', + 'ed2e16700e32afdcdd745aa31454edb9': 'Verify whether a valid URL is input', + 'b233766d3fae72574d3f9ee98c5be120': 'Select year', '32a750b4fd61f1cfe37cac7147f05b3c': - 'Select the year range, and set the minimum and maximum dates through < code > mindate < / code >, < code > maxdate < / code >', - '973b69af999dbdf4fa124df8c928ca6e': 'read only mode', + 'To select the year range, you can set the minimum and maximum dates through minDate and maxDate.', + '973b69af999dbdf4fa124df8c928ca6e': 'Read-only mode', '710ad08b11419332713360d2750cd707': 'Disable', - '7abf78a41095c6d21a1cc89b4a876233': 'Delete form item value when hidden', - 'cd8992b644e6c18367861a4d913fd116': 'verification', - '1040279cf7b8dbdb842f597c30095f62': 'Verification interface', + '7abf78a41095c6d21a1cc89b4a876233': + 'Delete form item value when it is hidden', + 'cd8992b644e6c18367861a4d913fd116': 'Verify', + '1040279cf7b8dbdb842f597c30095f62': 'Check API', '133886b10fd9721e6cf91b76f2df5b6e': - 'Independently verify the interface of this form item', - 'b95c6e14a4d8f6a6c6d99d583916f327': 'Compose a line', - 'd22dfe420e4b00e000b93f94db3c856e': 'List selection', + 'Separately check the API of this form item', + 'b95c6e14a4d8f6a6c6d99d583916f327': 'Merged into one row', + 'd22dfe420e4b00e000b93f94db3c856e': 'Select List', '5e391af52da238f13c78b471a7cc54f3': - 'Single or multiple choices, support < code > source < / code > pull options, which can configure pictures or customize < code > HTML < / code > configuration', - 'd1f923b8e23b66b3e48953ba1ce17839': 'Geographic location selection', - '989ea9acbab9b17d2c15e2946b5365bb': 'Location selection', - 'dffd9d86d2003615897b12ce7597d77b': 'AK of Baidu map', - '3eaf4454ea75f435e78890d051775f68': - 'Please select from the < a href= http://lbsyun.baidu.com/ target=_ Blank > Baidu map open platform < / a > access', + 'You can select a single list of multiple lists. This feature allows you to fetch options by source. You can configure images for the options and also customize the HTML configuration.', + 'd1f923b8e23b66b3e48953ba1ce17839': 'Location Picker', + '989ea9acbab9b17d2c15e2946b5365bb': 'Select position', + 'dffd9d86d2003615897b12ce7597d77b': 'Baidu Map AK', + 'a269e7de6c7735290733eb3e574c2129': + 'Get Baidu Map AK from the Baidu Map Open Platform', 'b472ba224a7d132c487ee6ec4798f835': 'Coordinate format', - '36443b53c845b197db8d39eeda433ab9': 'Baidu coordinates', - 'f58cb611aec0998a44ef104b5c950b40': 'Coordinates of National Survey Bureau', - '076a041dcf45a36b29c5cdb8b8eca922': 'Matrix switch', + '36443b53c845b197db8d39eeda433ab9': 'Baidu coordinate', + 'f58cb611aec0998a44ef104b5c950b40': + 'Coordinate format by State Bureau of Surveying and Mapping', + '076a041dcf45a36b29c5cdb8b8eca922': 'Rectangular Switch', '183aae5eec1ff547833dc338aaeffc9a': - 'Configurable row single selection, column single selection and all options can only be selected single or all options can be selected multiple times', - '7583b85ff3579d60a9f9d323c2f6674a': 'Line Title Description', + 'You can configure row single-select and column single-select, and single-select or multi-select for all options. ', + '7583b85ff3579d60a9f9d323c2f6674a': 'Row title description', '3fc35bb610852289cf718f07a5b79369': 'Column 1', '50987924540e6e35c78246031499e75b': 'Column 2', - '08a6996be7a86af5692cbca41922a5d1': 'Line 1', - 'ce31d858c63395098c5e4cd892bd473b': 'Line 2', - 'e9b376d39966c8182683019f95ff8cf3': - 'Row level, column level or single cell (single choice)', - '0f244785fd9f555aae9797db4d14fb09': 'Rank', + '08a6996be7a86af5692cbca41922a5d1': 'Row 1', + 'ce31d858c63395098c5e4cd892bd473b': 'Row 2', + 'e9b376d39966c8182683019f95ff8cf3': 'Row, column, or cell single-select', + '0f244785fd9f555aae9797db4d14fb09': 'Column level', '5a57bd526cc3170b6c86f920fc24cdee': 'Row level', - '45dde5879e77d7f7a15d04b8fed26ec8': 'Single unit', + '45dde5879e77d7f7a15d04b8fed26ec8': 'Single cell', 'dc7558211f2990370954c2e7ca498ee9': 'Column configuration', 'f4c807fd8453f4b3fdaab02fb9c21ba7': 'Add a column', '39886861ea5d8b526e0ac5ecc78d110c': 'Column description', - '34ad26bd1fb448c7f2384252d856c02b': 'Line header text', + '34ad26bd1fb448c7f2384252d856c02b': 'Row title text', '48baa62373a2f90d6aa743d7821be956': 'Row configuration', - '854af3c2cd9c275ac70fc5121ea4fb2e': 'Line description:', - 'bf306308e467aeb7b00df0e2dd127d06': 'Add a line', - '75bf5fd49520bce97de632700fc8a129': 'Get matrix data interface', - '24d9de25721d1fb0ecf89ef81c43d877': 'Cascade selector', + '854af3c2cd9c275ac70fc5121ea4fb2e': 'Row description', + 'bf306308e467aeb7b00df0e2dd127d06': 'Add a row', + '75bf5fd49520bce97de632700fc8a129': 'Get matrix data API', + '24d9de25721d1fb0ecf89ef81c43d877': 'Nested Select', '10d1cfb7219a5445ef1e70aa16e4451d': - 'Applicable to options with sub items. You can pull options through < code > source < / code > and support multiple choices', - '03cd388fe29a4fc116c0021e496a113a': 'Option B1', - 'fb00d1c1a65d3739c03a0b2715168327': 'Option B2', - '353ae08afdb3d0a3587e9b27ca239c33': 'Option C1', - 'bea7ad76f0f321124ff614a099cb9a85': 'Option C2', + 'It applies to sub-items contained in the option. You can fetch options through source. It supports the selection of multiple options.', + '03cd388fe29a4fc116c0021e496a113a': 'Option b1', + 'fb00d1c1a65d3739c03a0b2715168327': 'Option b2', + '353ae08afdb3d0a3587e9b27ca239c33': 'Option c1', + 'bea7ad76f0f321124ff614a099cb9a85': 'Option c2', 'dbdae74eb12668e2b9568b013bf27d45': 'Retrievable', - 'ae45cdb51c795df3b046f71afe3611bf': 'Empty prompt', + 'ae45cdb51c795df3b046f71afe3611bf': 'Blank prompt', '601bb29fe72e56930dea03ae3e1aa555': - 'Retrieve the text when there is no result', - 'e3be7b8a459a08fec8f378a0660b642b': 'Multiple choices', - '6a7f7d89c8f1f3e6aab0962ff920b145': 'Parent as return value', + 'The text appeared when no result exists during retrieval', + 'e3be7b8a459a08fec8f378a0660b642b': 'Multi-select', + '6a7f7d89c8f1f3e6aab0962ff920b145': 'Parent option as a return value', 'c23eb92d1f249452c3ff3ee13738b47a': - 'After it is turned on, select the parent, not all the child options, and the parent is returned as a value', - '8fcbfdc1a9403f6339d81911473806da': 'List selection', + 'With this feature enabled, you can select the parent option but cannot select all child options. Also, the parent option is used as the return value.', + '8fcbfdc1a9403f6339d81911473806da': 'Picker', '819776e8d96b1438eca3594f47bdb1c6': - 'Configure the data sources available for selection through < code > pickerschema < / code > to select the required data, and support multiple selection', - 'dc0c50a5c9832b393df34835111c34a3': 'Turn on embedded mode', - '1ac065ed64b81380384a0b371d5b404f': 'Configure checkbox details', - 'd64b585847f015eaa1443a3a03562350': 'Display style of selected data', - 'c2ceb5af7595ec6d1818b35d5b68890b': - 'Support using < code > \\ ${XXX} < / code > to get variables, or lodash Template syntax is used to write template logic< a target=_ Blank href = / Amis / zh CN / docs / concepts / template > details', + 'Through the pickerSchema, you can configure the data source available to select the data you need. It supports the selection of multiple data sources.', + 'dc0c50a5c9832b393df34835111c34a3': 'Enable embedded mode', + '1ac065ed64b81380384a0b371d5b404f': 'Configuration option details', + 'd64b585847f015eaa1443a3a03562350': 'Display the style of the selected data', + '0861915dbac25ccb573b3bb72ffeebd7': + 'It allows you to get the variable using \\${xxx} or write the template logic using lodash.template syntax. Details', 'c2c23b4fc7f695c58e947ad413f2c5d8': 'Checkbox type', - '33e6c41fed95c25e3b426d596d504579': 'Drawout spring frame', + '33e6c41fed95c25e3b426d596d504579': 'Drawer type popout', '5a7af8d3e471d98339c84b07a844547b': - 'Configure options through < code > Options < / code > and pull options through < code > source < / code >', - '1e890599eec94efccec337cd474f7f1b': 'The first is selected by default', - '46110787e4774b81418b274e9b06127e': 'One line option display', - '83a00680e0872e2a35496be7e12c1309': 'Number of options per line', + 'You can configure the options through options and can fetch the options through the source.', + '1e890599eec94efccec337cd474f7f1b': + 'The first option is selected by default.', + '46110787e4774b81418b274e9b06127e': 'Display one row of options', + '83a00680e0872e2a35496be7e12c1309': 'Number of options in each row', 'c30264927c3c170efd2e7763becf12fc': 'Single option', '8a0c1f35cff334fc105b6d52b195369d': - 'Support multiple choices, input tips, and use < code > source < / code > to get options', - '75cc2a992ea150d3a6c68ac4bc486637': 'New options', - 'a13b85bddbcdab63ef2b2d98dd46afe9': 'Edited options', - '8aa4d6aedd7957ebc6b87fec655695ef': 'Deleted options', - 'e19c0792886a147d74fc662d7af138bb': 'Single line display of selected values', + 'It supports the selection of multiple options and can give an input prompt. You can get the options using the source. ', + '75cc2a992ea150d3a6c68ac4bc486637': 'Added item', + 'a13b85bddbcdab63ef2b2d98dd46afe9': 'Edited option', + '8aa4d6aedd7957ebc6b87fec655695ef': 'Deleted option', + 'e19c0792886a147d74fc662d7af138bb': + 'Display the selected value in a single row', 'b28aa9c36d0b506a71aa78b628e796c6': 'Number of labels displayed', '2b23767de575e27fc9e4e0949e885f81': - 'The maximum number of tags to be displayed. If the number exceeds the maximum number, it will be displayed in the way of containing floating layers. The default is full display', - 'dfac151de712ab0b3618072c8a7f0a0f': 'senior', + 'Maximum number of labels displayed. The floating layers are folded in case of exceeding the maximum number. All labels are displayed by default.', + 'dfac151de712ab0b3618072c8a7f0a0f': 'Advanced', '406af2b98e6210cd42d7f824cb6dfd16': 'Option value check', 'fa8d03e8b5458c1a1d742736bc26e25b': - 'After it is turned on, when the option value does not match the option in the current options, the option text will turn red', - '33e7b7433fdbeafa1ef71105ee28c061': 'Static display box', + 'With this feature enabled, the option text becomes red when the option value does not match the option among the current options.', + '33e7b7433fdbeafa1ef71105ee28c061': 'Static', 'c99e0a675933de39693b7e80d5b70405': - 'It is only used to display data. It can be used to display data such as < code > JSON, date, image, progress < / code >', + 'It is purely used to display data. Also, it can be used to display json, date, image, and progress data.', '134492cd10a0646da6f23a743feee6d4': 'Static value', - '04f5f12c49c2a6fdc43da049591328ad': 'Static display', - '663a93dacbba9f7860dca783cf772419': 'Quick editing', - 'abd733d00ec656e7b0cfd88deedf102f': 'quick edit mode', - '78f395c15aaf8c92d9223f6ca69b41a4': 'drop-down ', - '5e2d1e872682befd5350687f94a6b417': 'Save now', + '04f5f12c49c2a6fdc43da049591328ad': 'Static display ', + '663a93dacbba9f7860dca783cf772419': 'Quick edit', + 'abd733d00ec656e7b0cfd88deedf102f': 'Quick edit mode', + '78f395c15aaf8c92d9223f6ca69b41a4': 'Drop-down', + '5e2d1e872682befd5350687f94a6b417': 'Save immediately', '2d2eb2ac28f074d1caef0d332d61cfb0': - 'After opening, modification is submitted, instead of batch submission of marked modification.', - 'eccba4475f3144e417e55fd96e831e09': 'Save interface now', + 'With this feature enabled, the modification is submitted immediately. Instead, the modifications cannot be submitted in batch after they are marked.', + 'eccba4475f3144e417e55fd96e831e09': 'API for immediate saving', 'c8e5c062d5ad38e54413abd9c7cfb2f4': - 'Whether to provide a separate interface for saving the configuration immediately. If it is not configured, quicksaveitemapi will be used by default.', - 'c3ed36e4abb96c18a6c83350994cdea7': 'Configure Quick Edit type', - '45a6c55d8d2d92af84e219defef084d5': 'Configure quick editing', - '3f337f436989e9847790e4435423f77e': 'See more shows', - 'f7247cd14bd964b883bbb481892c440b': 'Pop up mode', - '2a2924380dfcaea998bd8a49703545a9': 'drawer', + 'Whether to separately configure an API for immediate saving. If no API is configured for immediate saving, quickSaveItemApi is used by default. ', + 'c3ed36e4abb96c18a6c83350994cdea7': 'Configure quick edit type', + '45a6c55d8d2d92af84e219defef084d5': 'Configure quick edit', + '3f337f436989e9847790e4435423f77e': 'View more display options', + 'f7247cd14bd964b883bbb481892c440b': 'Pop-out mode', + '2a2924380dfcaea998bd8a49703545a9': 'Drawer', 'a06e8df4e9232cc606e0202e06a198d8': 'Floating layer position', - '68b54e7b408c4fb83561c931aa668eae': 'Target middle', - 'e18459c93769a5afec01e1ce60f9b9fd': 'Upper left corner of target', - '1fc3cdd8437f5057774cde2f2c51f97c': 'Upper right corner of target', - '63dd9faca92bccfd436ff21a6b4b3151': 'Lower left corner of target', - 'd01c239688b9c8fc145191ee642dc080': 'Lower right corner of target', - '8fcf9802436282672a8e28ebd6262390': 'Upper left corner of the page', - 'aed25160b4e8cfc613a743c4549e9222': 'Upper right corner of the page', + '68b54e7b408c4fb83561c931aa668eae': 'Middle part of the target', + 'e18459c93769a5afec01e1ce60f9b9fd': 'Top left corner of the target', + '1fc3cdd8437f5057774cde2f2c51f97c': 'Top right corner of the target', + '63dd9faca92bccfd436ff21a6b4b3151': 'Bottom left corner of the target', + 'd01c239688b9c8fc145191ee642dc080': 'Bottom right corner of the target', + '8fcf9802436282672a8e28ebd6262390': 'Top left corner of the page', + 'aed25160b4e8cfc613a743c4549e9222': 'Top right corner of the page', 'd4a4ab1916187e09b9c037705fd49ffa': 'Bottom left corner of the page', - '921fccbb84c829bf8c6f0b9957029f44': 'Lower right corner of the page', + '921fccbb84c829bf8c6f0b9957029f44': 'Bottom right corner of the page', '1d53f83df1d889a70131b7a93c819575': 'Content details', '8dda45360dcf9ca501fd7d0eb53045b5': 'Configure to view more display content', 'fd389de167730ba8542217ad31b95562': 'View more content configuration', - 'f9a9fcc3bf6a3c8ff1e99fa48ed6d03d': 'Replicable', + 'f9a9fcc3bf6a3c8ff1e99fa48ed6d03d': 'Copy', 'deb65aca8dba2ff9d0cfaed0a3441068': 'Copy content template', '622e14515c4fd5ca6fe6946e3a1bfb4a': 'It defaults to the current field value and can be customized.', '261bba7ad82914e477f4b37f6a83874e': 'CSS class name', - '16a20243f9b741c08216dc9548de2968': 'whole', - 'e1b2f870112bd38f8d7e14a0ad589930': 'control', + '16a20243f9b741c08216dc9548de2968': 'Overall', + 'e1b2f870112bd38f8d7e14a0ad589930': 'Control', 'd38b7fc2d31e0ae21cb4bc7d7df14e92': 'Switch control', '6e17d8bb70df1c1e379fa86cb235ac82': 'Switch form', - 'ddccb436305b0a984c77d4ffa0725375': 'Triggered when the switch value changes', - 'a75c768fda740b2c8f6e2dcc76400f23': 'Switching value', + 'ddccb436305b0a984c77d4ffa0725375': + 'Be triggered when the switch value changes', + 'a75c768fda740b2c8f6e2dcc76400f23': 'Switch value', '7e1eec8349c4998d142960009305f27a': 'Fill text', - 'c580bacf343343f04a1b551e46d02c4f': 'On', - '9ff352ae39cdaeaa4fc54f83575eedc9': 'When closed', + 'c580bacf343343f04a1b551e46d02c4f': 'When it is enabled', + '9ff352ae39cdaeaa4fc54f83575eedc9': 'When it is disabled', '48433deca382e67b26af31c6ff967d04': - 'By default, the checked value is true, and the unchecked value is false', - 'cadd676e2710e50ac149211078f8a306': 'Checked value', - '13f19e1d0dd528aafd6263fafdc35e82': 'Unchecked value', - '617a63f1b19b5aad029f973479bac917': 'Combined shuttle', - '4f26f1edebcdeea90f6e4247a501dbaf': 'Combined shuttle assembly', - 'ab5dea29793d933fa7b5487a7309df6a': 'member', - '71f8043aefd52572b172e7d1fbd5af57': 'master', - 'fda93c79275b812a6c1c189fbebf8b08': 'Zhuge Liang', - '573cb0d34bd1cdc7b368c59db9b7bb7d': 'warrior', + 'The default selected value is true and the default unselected value is false.', + 'cadd676e2710e50ac149211078f8a306': 'Selected value', + '13f19e1d0dd528aafd6263fafdc35e82': 'Unselected value', + '617a63f1b19b5aad029f973479bac917': 'Tabs Transfer', + '4f26f1edebcdeea90f6e4247a501dbaf': 'Tabs Transfer Picker', + 'ab5dea29793d933fa7b5487a7309df6a': 'Member', + '71f8043aefd52572b172e7d1fbd5af57': 'Magician', + 'fda93c79275b812a6c1c189fbebf8b08': 'Zhu Geliang', + '573cb0d34bd1cdc7b368c59db9b7bb7d': 'Warrior', 'e37a86d1a1dbed0cd53c95582977f075': 'Cao Cao', 'ccddd2de691ff2d56b651877f72d90ed': 'Zhong Wuyan', - 'c0db8e7b42528eeae96310c6629e53b3': 'Fight wild', + 'c0db8e7b42528eeae96310c6629e53b3': 'Jungling', '293040fc607f40caf6d6e16042012182': 'Li Bai', 'b5256ec780343c4e20e397b43cab96a9': 'Han Xin', - '49dcf9f88e7b7b8ca7448631021d7d12': 'Yunzhongjun', - '1fd02a90c38333badc226309fea6fecb': 'user', - '8b3a9a5c912610c384bc8dc2c8514386': 'Check all options', - 'e1112a529dc969a03bbbb409905ff2ec': 'Tab switching', - 'd202bc660c4d2eeb58e194b6320bd235': 'Triggered when the tab is switched', - '9e7a97a3d043f566f2435329e01e09f9': 'Currently active tab index', - '91208131116f2823993daf99f15e1325': 'Clear selection', - 'dda222620b789d07c2c5c279475caaf1': 'Reset selection', - '2ac24a383a1faae33f81772b757b2817': 'Modify the selected tab', + '49dcf9f88e7b7b8ca7448631021d7d12': 'Yun Zhongjun', + '1fd02a90c38333badc226309fea6fecb': 'User', + '8b3a9a5c912610c384bc8dc2c8514386': 'Select all options', + 'e1112a529dc969a03bbbb409905ff2ec': 'Tab change-over', + 'd202bc660c4d2eeb58e194b6320bd235': + 'Be triggered when the tab change-over takes place', + '9e7a97a3d043f566f2435329e01e09f9': 'Currently activated tab index', + '91208131116f2823993daf99f15e1325': 'Clear selected content', + 'dda222620b789d07c2c5c279475caaf1': 'Reset selected content', + '2ac24a383a1faae33f81772b757b2817': 'Modify selected tab', '91f894b900f593c848e5b21f2b414b05': - 'Modify the currently selected tab to select other options', - '791959f9b90734dce08da79f4ac27a41': 'Retrieval interface', - '6eaeb8ccaa8473e2b985095be2bf3cd1': 'Check display mode when querying', + 'Modify currently selected tab and select other options', + '791959f9b90734dce08da79f4ac27a41': 'Search API', + '6eaeb8ccaa8473e2b985095be2bf3cd1': 'Select display mode during query', '6541f1702af367c41a3127ed8511eb50': 'List form', - 'd58ba4b5e94680fcb08300e176502fb8': 'Tabular form', + 'd58ba4b5e94680fcb08300e176502fb8': 'Table form', '406573cea6af9b0c6462295108e1f5c0': 'Tree selection form', - '6c5358b981a475da2a83e95e4170647a': 'Cascade selection form', + '6c5358b981a475da2a83e95e4170647a': 'Cascaded selection form', 'b51b404751554341aae342bc5a6e9b22': 'Title Text on the left', 'c7840604d79e814f02f8260bc2ba6544': 'Title Text of the result on the right', - 'c6a16ef980efc2ac48c58727e5bade81': 'Multiline text box', - '2af7e3952d7430d1e4c86ea5aca4e4fa': 'Support line feed input', + 'c6a16ef980efc2ac48c58727e5bade81': 'Textarea', + '2af7e3952d7430d1e4c86ea5aca4e4fa': + 'It allows you to enter characters in a newline.', '5bc28acd4afb712dcbc234927357cd87': - 'Triggered when the value of the input box changes', - 'cd7f479dd052edc1261261c15fb0b50f': 'Remove leading and trailing blanks', + 'Be triggered when the input box value changes', + 'cd7f479dd052edc1261261c15fb0b50f': + 'Remove blank space at start and end positions', 'd3a8fe0d542476cf7989ef9e69cdd6f7': - 'After it is turned on, the user will not be allowed to enter spaces before and after', - '829d96cf23f19759e4ef988fb5320032': 'Minimum number of display lines', - 'c0afd6005e68838e37e26dc7c34cf368': 'Maximum number of display lines', + 'With this feature enabled, you cannot enter blank space at start and end positions.', + '829d96cf23f19759e4ef988fb5320032': 'Minimum number of lines displayed', + 'c0afd6005e68838e37e26dc7c34cf368': 'Maximum number of lines displayed', '685e5f4815e87c4690dda7d7aa163904': 'Shuttle', - '26b4a55f458275a108c1ef213a354ced': 'Shuttle assembly', + '26b4a55f458275a108c1ef213a354ced': 'Shuttle component', '1b09b6621ebf0d10ce98f0178fa1bda1': - 'Trigger component data update, multiple values separated by ","', + 'Trigger the component data update. Several values are separated with “,”.', '0ba83d9fe027d8386b814f4966f20d4e': 'Check display mode', '847fe7c3978764607631845b0a43926b': 'Association selection form', '9037f708f0d9750505aa741399768ac0': 'Option set on the left', '3dd8d112997a8d0ae0641b8bf69eb7ff': 'Left selection form', '7980e24e70a7e56490fa397d5bc6b86a': 'Right selection form', 'baf916e9b0de774b78e716e91b963690': 'Show statistics', - 'e40d15221a911e060b8a05ec7aa9533c': 'Tree drop-down box', + 'e40d15221a911e060b8a05ec7aa9533c': 'Tree Select', '26aa42c81825364d2d691261017b6797': - 'Click the input box to pop up a tree selection box for selection', - '382df0b291e5306c423bcf471eb1734f': 'Tree drop down', - 'ac34e635d05de0ac2de78737ea313995': - 'Triggered when the new option is submitted', - '5f5e2d89e987fa64d56471b2e3d50cda': 'New option information', + 'Click the input box to pop out the tree select-box for your selection.', + '382df0b291e5306c423bcf471eb1734f': 'Tree drop-down', + 'ac34e635d05de0ac2de78737ea313995': 'Be triggered when you add an option.', + '5f5e2d89e987fa64d56471b2e3d50cda': 'Added option item', '8784005bbfb2b66592cc0c5cc0a62f2d': - 'Triggered when editing options are submitted', + 'Be triggered when you submit the edit option', '25a4d7b5ce2585aada1205e1121e9967': 'Edited option information', '91a6d3a760184e581eccd52bfa3f7a18': 'Delete node', '3c72d934764bb7205f593903c63ac7ec': - 'Triggered when the delete option is submitted', + 'Be triggered when you submit the deletion option', '7768e7d47fa6e9b811d1a1f684703cfb': 'Deleted option information', 'cfd5faa079bd9d7092e7cdc92f353c30': 'Autocomplete interface', 'a9f97c7c1bec32a0912f1dd36b2c3b90': @@ -1604,261 +1638,264 @@ extendLocale('en-US', { '8c05730667f91c371ace46c17f46c875': 'Delete option interface', '43474db97aff2ed0a876a47b6f4cdc7d': 'Automatically generated UUID', '43e1548e15272e1007051d7c8b70adf6': - 'Automatically generated in UUID V4 format without configuration', - '844d72db7e57be4d77881ee9b4294e75': 'UUID (display will be hidden)', + 'Automatically generate UUID in the UUID v4 format without the need to configure it', + '844d72db7e57be4d77881ee9b4294e75': 'UUID (will be hide)', '2820712cac089483cf2b4a0c939fc780': 'Column', '9e17d57a0ba39254a75c0265aa3063ca': 'Column layout', - 'e63907bf0db529e84866d1ae737bfc0d': 'column', - '9bdb07e72d3a9a6084201a7398523f5a': 'insert', - '3c43c5860b4dfaced296d7a63eae1513': 'Insert new line below', - 'decaeded2b6f2c66f191ff34b868b1eb': 'Insert new line above', + 'e63907bf0db529e84866d1ae737bfc0d': 'Column', + '9bdb07e72d3a9a6084201a7398523f5a': 'Insert', + '3c43c5860b4dfaced296d7a63eae1513': 'Insert a new row below', + 'decaeded2b6f2c66f191ff34b868b1eb': 'Insert a new row above', 'eb22d47f16f92e6f621c2b9d87119303': 'Number of columns', 'c288b519484207bea1d51884a5e9acaf': 'Column spacing', - 'd81bb206a889656035b929cd8bb1ef10': 'nothing', - '98d695d6a6a48cfb4bc2f6396ee64787': 'horizontal alignment', + 'd81bb206a889656035b929cd8bb1ef10': 'None', + '98d695d6a6a48cfb4bc2f6396ee64787': 'Horizontal alignment', '1cc9a6949b47913462ff832cb684bdde': 'Middle alignment', - 'da1b972efb29f850b50e219ad4d98ba5': 'Align both ends', + 'da1b972efb29f850b50e219ad4d98ba5': 'Justified alignment', '11b7fc50778c89572391ec4c6c4b55e1': 'Vertical alignment', - '2a6ad292447e6354ca39ee7f40d2fcc8': 'Align Top ', - 'd68c21b6b65e7a2e361762b65b8a5032': 'Align Bottom ', - '0d9eb53682343f1cbd562c9a944ef5bf': 'Insert new column on the left', - '814276d30e338eccbaee96c3e6bacb61': 'Insert new column on the right', + '2a6ad292447e6354ca39ee7f40d2fcc8': 'Top alignment', + 'd68c21b6b65e7a2e361762b65b8a5032': 'Top alignment', + '0d9eb53682343f1cbd562c9a944ef5bf': 'Insert a column on the left', + '814276d30e338eccbaee96c3e6bacb61': 'Insert a column on the right', '2a3e7f5c382c56faf261a87573658325': 'Manual', '19432e481cefd1bf88fc707f20ea62c5': 'Column CSS class name', '5ea5dbb698afe7ca566b94e92f6a3835': 'Column {{@1}}', '9cc03fc4b3e87e8410e10357a219b44e': 'Insert a column on the left', '6b12fc99e2a46aed982d46b93ac191a0': 'Insert a column on the right', - '57ff158884582ed498a87d03aed46146': 'Insert a row above', - 'bd63eab86ac0e0b35a06d0f24a098096': 'Insert a line below', + '57ff158884582ed498a87d03aed46146': 'Insert a row above ', + 'bd63eab86ac0e0b35a06d0f24a098096': 'Insert a row below', '69a519f6b7fd6d0bebba72e7572ea1d6': - 'It is used to realize left and right layout. By default, it is evenly distributed. The width of a column can be configured through columnclassname.', - 'f9c91bffab8b1202cf32ab508879e805': 'Fixed width < br / > w-xs', - '8c187c1862900db487c8d47e19490fac': 'Auto fill', + 'It is used to implement the left and right typesetting layout. It defaults to even distribution. You can configure the width of a column through columnClassName.', + 'f9c91bffab8b1202cf32ab508879e805': 'Fixed width
w-xs', + '8c187c1862900db487c8d47e19490fac': 'Automatic fill-up', 'b6f2fcb279241fe5ff9a8052a444266a': '< span class = label label default > column ${index | plus}', - 'cb2f68c9c24e85d21e6b090b6e5657d8': 'column', + 'cb2f68c9c24e85d21e6b090b6e5657d8': 'Column', '92e2c6523449dfad4350f58908260266': - 'Please press and hold the square on the right side of the highlighted box and drag to adjust the width', + 'Press and hold the right block of the highlighted box and then drag it to adjust the width ', '129b16a89a82c6d5e03ab075633b3892': 'Column CSS class name', 'd34cc10492e80595a901a292d0c16bb8': - 'You can add a width class style to adjust the width. The default width is evenly distributed.', + 'You can add a width class style to adjust the width. By default, the width is equally distributed.', '84b620405949e278f214a811a3a19e2b': 'Column {{@1}}', '4bfd6e7e1ec0fe485aa0e7741d1670db': 'Insert a column on the left', '9d75cc0b193601391a139285d55a3493': 'Insert a column on the right', - '713315591970d7c8b49d1c732fe54fde': 'Can be used to embed existing pages.', - '8f1c078c6d42759e6ccb1a9bf35f1629': 'Page address:', + '713315591970d7c8b49d1c732fe54fde': + 'It can be used to embed the current page.', + '8f1c078c6d42759e6ccb1a9bf35f1629': 'Page address', '51ad722113289f70b6d77c78ddf0c64a': - 'The default width is the width of the parent container, and the value unit is PX by default. Units such as percentage are also supported, such as 100%', + 'The default width is the parent container width. The value is expressed in px by default or in percent, e.g., 100%.', 'c78d9b9ab9db5951eb5526e8a46677d9': - 'The default height is the height of the parent container, and the value unit is PX by default. Units such as percentage are also supported, such as 100%', - '9ef4425332e5f8bcad86de483b4faedf': 'Iframe page ({{@1}})', - '67997ccf7ea846c3c2d278b01ed9600b': 'Picture display', + 'The default height is the container height. The value is expressed in px by default or in percent, e.g., 100%.', + '9ef4425332e5f8bcad86de483b4faedf': 'IFrame page ({{@1}})', + '67997ccf7ea846c3c2d278b01ed9600b': 'Image display', '6dcf991e992a0b765df0933411fe9bb2': - 'It can be used to display an image, support static setting of the image address, or configure < code > name < / code > to associate with variables.', - 'e18aa5e376437da71083a29c4cddaf46': 'Reduction diagram', - 'fb43d5ffa21f3c4055c29fad350f27e4': 'Original drawing', + 'It can be used to display an image. It supports the static setting of the image address. Also, you can configure the association of the name with the variable.', + 'e18aa5e376437da71083a29c4cddaf46': 'Thumbnail', + 'fb43d5ffa21f3c4055c29fad350f27e4': 'Original image', '582570bef8c57c5af7658c4a4eea45ff': 'Thumbnail address', '1193e1aab7bea094279ae7b4288ba848': - 'If the field name has been bound, you can use variables instead of setting it.', - 'f5865bf2d791d293374af4aa76d27c4d': 'Picture displayed when there is no data', - 'e1110b854bceeed0e887cb951bb3d2f3': - 'Turn on the picture enlargement function', - '7ffade593e390a2a2cc43e6663461b71': 'Original address', + 'If a field name is bound, you do not need to set it. Also, it supports the variable.', + 'f5865bf2d791d293374af4aa76d27c4d': + 'The image displayed when no data is available', + 'e1110b854bceeed0e887cb951bb3d2f3': 'Enable image enlargement feature', + '7ffade593e390a2a2cc43e6663461b71': 'Original image address', '214953c5f7557b1a5f1310c87238ee03': - 'If not configured, the thumbnail address will be used by default.', - '6d45b56ee94ea873a554ec41b9f2074a': 'Whether to display picture size', + 'If it is not configured, use the thumbnail address by default.', + '6d45b56ee94ea873a554ec41b9f2074a': 'Whether to display the image size', '00cedb73310cc531a43d23cfa5ba0e5f': 'Thumbnail display mode', - 'b0267f4aa776e75443b7ef6e8dad257e': 'Full width', - 'c30b1b6f29debb05449aa3cb40268e7e': 'Full height', - 'e13556bb3580ac3746e1f8663eb15896': 'contain', - '47303119ba97a66d168ff042575b9de4': 'Spread', + 'b0267f4aa776e75443b7ef6e8dad257e': 'Fill up the width', + 'c30b1b6f29debb05449aa3cb40268e7e': 'Fill up the height', + 'e13556bb3580ac3746e1f8663eb15896': 'Included', + '47303119ba97a66d168ff042575b9de4': 'Fill-up', '319501b9acacdd6f94a9bdd0637a3cd2': 'Thumbnail ratio', '4d080f1e18d86051b8d651c68685f319': 'Thumbnail CSS class name', - 'e040fc4bf539dd1cf6ebca6b4bff857a': 'Photo collection', - '93f46deec83b8f9005233a1467498d52': 'Show multiple pictures', - '2382c315a6ba396be1932dd8dafaff52': 'Picture 1', - 'ce6e2814f207c9333f10785606c57df3': 'Picture 2', - '45a4922d3f42d0b137c6845c4c77031f': 'Associated data', + 'e040fc4bf539dd1cf6ebca6b4bff857a': 'Image collection', + '93f46deec83b8f9005233a1467498d52': 'Display several images', + '2382c315a6ba396be1932dd8dafaff52': 'Image 1', + 'ce6e2814f207c9333f10785606c57df3': 'Image 2', + '45a4922d3f42d0b137c6845c4c77031f': 'Associate data', '2d4247be13246794180897b40fcdbcb1': - 'For example, \\ ${listvar} is used to associate existing data in the scope.', - '81a2b634d7ddcffc21b787613673943c': 'Photo collection data', - '0f088d8f579c362068d7a3858e207280': 'thumbnail', - 'ebb2073c604e72ffd9ae1b796665b702': 'Picture list CSS class name', - '5acc93183b7fe3816a845aca52baeff2': 'JSON presentation', - '5a4b81442789f3b2e7b665bd430eeabf': 'Used to display JSON data.', - 'f891291cbfaec7ba3754520e2a5227d8': 'Default deployment level', - '6dfe63d8c039df37787c87afe4c68604': 'Used to display text links', - '6ab20dc4b64021b85886ad9c12b6e0cc': 'Destination address:', + 'e.g., \\${listVar}. It is used to associate the data existed in the application domain.', + '81a2b634d7ddcffc21b787613673943c': 'Image collection data', + '0f088d8f579c362068d7a3858e207280': 'Thumbnail', + 'ebb2073c604e72ffd9ae1b796665b702': 'CSS class name of the image list', + '5acc93183b7fe3816a845aca52baeff2': 'JSON display', + '5a4b81442789f3b2e7b665bd430eeabf': 'It is used to display the JSON data.', + 'f891291cbfaec7ba3754520e2a5227d8': 'By default, unfold the levels.', + '6dfe63d8c039df37787c87afe4c68604': + 'You can use it to display the text address.', + '6ab20dc4b64021b85886ad9c12b6e0cc': 'Destination address', '78ce29fdc55e6d0980b591a264c537a8': - 'Variable fetching is supported. If the field name is bound, it can be omitted', + 'It allows you to fetch the variable. If a field name is bound, you do not need to set it.', '5d809212900f3bc3ba122fe93638394d': - 'If it is not filled in, the target address value will be used automatically', - '88a5126f6a1463fc9986b590ee4ab99f': 'Open in new window', - '39a2cb79c6d9762783e20522ea86dcff': 'left', - 'de2a774bf98944b8f0ec8755d5f59d64': 'right', - 'e370757f933a8ecd87bf0255c3ce45d0': 'advanced setting', + 'When it is left blank, automatically use the destination address value.', + '88a5126f6a1463fc9986b590ee4ab99f': 'Open it in a new window', + '39a2cb79c6d9762783e20522ea86dcff': 'Left', + 'de2a774bf98944b8f0ec8755d5f59d64': 'Right', + 'e370757f933a8ecd87bf0255c3ce45d0': 'Advanced setting', 'e35dbea2b0c097d7fb76173da0e0bba1': - 'HTML < a> Element, which specifies where to display the linked resources', + 'HTML <a> the target property of the element. This attribute specifies where to display the linked resource.', '9f556fb46ecef854282d17e631578b1c': - 'Display a list. You can customize the title, subtitle, content and button group. The current component needs to configure a data source and does not bring its own data pull. Please use the "crud" component first.', - '84c04f1e9ce6a6a228228dd3fb96b99e': 'Configure member details', - '1ac0e1626be43287983fe3e5559320eb': 'no data', - '4e53bfe03e30bb3eae63d90d1f7f2a1c': 'List DIV CSS class name', + 'It displays a list. It allows you to customize the title and sub-title, content, and button group. You need to configure a data source for the current component. This component does not have the data fetch feature. You need to take the priority to use the “CRUD” component.', + '84c04f1e9ce6a6a228228dd3fb96b99e': 'Configuration member details', + '1ac0e1626be43287983fe3e5559320eb': 'No data', + '4e53bfe03e30bb3eae63d90d1f7f2a1c': 'List div CSS class name', 'd9eac94850a74ec881198f4ffe4edcfa': 'List item', - '3ed7b428165499a1b91ed1eb287ba343': 'Support template syntax, such as ${XXX}', - '456d29ef8bafd5202547e50d3e64d4ea': 'journal', - 'd06f8476d115020496058363a32bc40b': 'Used to display logs in real time', + '3ed7b428165499a1b91ed1eb287ba343': + 'It supports the following template syntax: ${xxx}', + '456d29ef8bafd5202547e50d3e64d4ea': 'Log', + 'd06f8476d115020496058363a32bc40b': + 'It is used to display logs in real time.', 'a2bc1edd7be9348e5a998feb0886c55d': 'Log data source', 'ddeeaa33ae62ead1a77a859fb79b78d7': - 'Map and display the existing values. For example, the original values are: 1, 2, 3... And need to be displayed as offline, online, expired, etc.', - 'de5c484c2ef38a6908f501bd93339ea7': - '< span class = label label info > I', - '637729ecbb0395a5ce9fc43f94cb92bd': - '< span class = label label success > (II)', - '3a82dd75c3c3747c77329f682b243405': - '< span class = label label danger > III', - '6aa6f4aed3337b006be1052661f2b86b': - '< span class = label label warning > IV', - '8fb95b984334a27006b5d45613a79c51': - '< span class = label label primary > V', + 'It displays the mapping of the current values. For example, if the original value is 1, 2, or 3..., it is required to display offline, online, expiration, and so on.', + '844318bd1d58ba0bf7dabbb771174b12': 'I/span>', + '2fccd71275cdf5d6c0c677ef79dd84a0': + 'II', + '198a96c4cfc64d5feba81b3f931f8289': + 'III', + '626a0f2fdf13bcadf11581006ab9eba3': + 'IV', + 'ce3fd44456123f571e9d083b98da9fcb': ' V/span>', '8b139ce9fa196b602bb1ee3bd25b25df': 'Mapping table', 'a9de5901385d644363cd056482be7517': - '

When the value hits the key on the left side, the content on the right side is displayed. When the value does not hit, the content < / div > whose key is < code > * < / code > is implemented by default (please ensure that the key value is unique)', - '2b10dfa6dbdf8775ab2b38fc67e7ea49': 'General distribution value', - '87cac3a9c9576d9b5bad6639c891112c': 'Show markdown content', - 'eb99816b4a216b2eb884cc6194f00ec6': '##This is the title', + '

When the value hits the left Key, it displays the right conent. When the value does not hit the key, the key is the content of * by default. Ensure that the key value is unique.', + '2b10dfa6dbdf8775ab2b38fc67e7ea49': 'Wildcard value', + '87cac3a9c9576d9b5bad6639c891112c': 'It displays the markdown content.', + 'eb99816b4a216b2eb884cc6194f00ec6': '## This is a title', 'f6a5891819c67a80c1179c7cdaa00935': - 'It is used to render navigation menus and supports horizontal and vertical rows.', + 'It is used to render the nav menu and supports the landscape and portrait modes.', '4cb18f42ea06a97b382397c40ed64fb2': 'Page 1', 'a004407ac524b6d331671fb7a013c3fc': 'Page 2', '310c10c1fcd37bf760bc15c30f54e722': 'Menu management', 'ba750e6e302292402a4c61ed72331cba': 'Add menu', 'f7a63e1e77fac1bfa05a060d55e27692': - 'There is a configuration error in the menu, please check carefully', - '7fa141f341e173e2339dcf0ce6869b5c': 'Jump address', - '720fc47e20be9b7a2e67a4ed808b3bf2': 'Highlight', + 'A configuration error exists in the menu, so you need to check it carefully.', + '7fa141f341e173e2339dcf0ce6869b5c': 'Redirection address', + '720fc47e20be9b7a2e67a4ed808b3bf2': 'Whether to highlight', 'a6ed2640c41d0e3df4acb4f15d37f6e3': - 'You can configure whether the menu should be highlighted', + 'You can configure whether to highlight the menu. ', 'dc55fd2e990771fd670743ca5dd59275': - 'Leave blank to automatically analyze the menu address', - '78b7cf23a2b93db1ec36e6c6cfe170db': 'Include submenus', + 'Automatically analyze the menu address when you leave it blank', + '78b7cf23a2b93db1ec36e6c6cfe170db': 'Include sub-menu', '710b20ff1d85f7965bfaac44ae26344e': - 'There is a configuration error in the submenu, please check carefully', - '02f925f6a5136c2b65b5da8d1216b5b8': 'Submenu management', - '59ad4734917af165482774de9c2d50cc': 'Add submenu', - '4d25cfe4cd14270af9420acd25526691': 'Get menu interface', + 'A configuration error exists in the sub-menu, so you need to check it carefully.', + '02f925f6a5136c2b65b5da8d1216b5b8': 'Sub-menu management', + '59ad4734917af165482774de9c2d50cc': 'Add sub-menu', + '4d25cfe4cd14270af9420acd25526691': 'Get menu API', '9fc8c79aac0302a60ebc0777183cd181': - 'If you want the menu address to be dynamically set, please fill in the interface address here', - '737669a8ef038ebd37fd7b2f3b5f389d': 'Whether it is placed vertically', - '8d79a8cbe0ed37accbe0739024d5d896': 'Operation bar, for tables.', + 'If you want to set the menu address dynamically, enter the API address here.', + '737669a8ef038ebd37fd7b2f3b5f389d': 'Whether to arrange vertically', + '8d79a8cbe0ed37accbe0739024d5d896': 'Action bar. It is used for tables.', '6c0fe599b36c2a55efd8705681783ee5': 'Button set', '975903dc39691813530e108986e49ac1': - 'Please click the add new button from the component panel on the left', - 'c641fe0ae06e6c0547d89fefa91e7f75': 'add button', + 'Click to add a button in the left component panel', + 'c641fe0ae06e6c0547d89fefa91e7f75': 'Add button', '88d1257b0cf667319085f3e0033b9607': 'Button behavior', - 'f10f0be4aa9684eef9d78234072fe08b': 'Drawable cartridge', + 'f10f0be4aa9684eef9d78234072fe08b': 'Drawer type pop-out (Drawer)', '4f02d2efe05a20232ab9da63c090595c': 'Send request', - '5dfd5a78e2ba1bc8afb482a8745454ea': 'Download files', - '4e58f9c94d345e14e2d69cc8496b7b5a': 'Page Jump (single page mode)', - '982db3084a2c470d1a9b34efa024511c': 'Page Jump', - 'f20d9579ebdc9dfc30a212ae6cae931f': 'Refresh Target ', + '5dfd5a78e2ba1bc8afb482a8745454ea': 'Download file', + '4e58f9c94d345e14e2d69cc8496b7b5a': 'Page redirection (single-page mode)', + '982db3084a2c470d1a9b34efa024511c': 'Page redirection', + 'f20d9579ebdc9dfc30a212ae6cae931f': 'Refresh target', '6a086902a84969a835423002718e86b4': 'Copy content', - 'a56c9f13b1566009fdc7640bc551709e': 'Reset form and submit', - '30313d6fa06603604db18086bbcad9d3': 'Empty form and submit', - '0fc26855080a4219bbfad638029a795c': 'Jump to next', - '8ba8a1bead7ca55554cff1c85246ae09': 'Jump to previous', + 'a56c9f13b1566009fdc7640bc551709e': 'Reset and submit form', + '30313d6fa06603604db18086bbcad9d3': 'Clear and submit form', + '0fc26855080a4219bbfad638029a795c': 'Redirect to next entry', + '8ba8a1bead7ca55554cff1c85246ae09': 'Redirect to previous entry', 'c28f4d63beabc4833b17aaa10ca550db': 'Copy format', - '21fa07f18f80bee50695686831ae1286': 'Specify refresh target', - '8a089992349df754f182a5d02de8e8e0': 'Pop up title', - 'b680997c50ca749acd4e6075cdca244e': '

Yes, you just clicked

', - 'c3c8422fcecd8c1cc922cba15ab5cbc0': 'Configure pop-up contents', + '21fa07f18f80bee50695686831ae1286': 'Designate refresh target', + '8a089992349df754f182a5d02de8e8e0': 'Popout title', + 'b680997c50ca749acd4e6075cdca244e': + '

You are right! You click it just now

', + 'c3c8422fcecd8c1cc922cba15ab5cbc0': 'Configure popout content', '262c7c7b9874ae5607fb51da468d0e8c': - 'Configure the contents of drawout pop-up frame', + 'Configure content of drawer type popout ', '5eb694a4252528628929ced97ca95823': 'Target API', '84d38979bed546b93c4b3a399844419e': '

Content

', - '0cc0fff6eb667b140d3fd06e34a8c69f': 'Configuration feedback pop-up details', - 'deb9089ed7ebcacd712117fc4204c65f': - 'Configure the content of the feedback pop-up box', - '215f64480a93893fc56c51aeb5d40f11': 'Clear settings', - '7984d95c01b725a2709fb8f5ee330fb4': 'Pop up expression', + '0cc0fff6eb667b140d3fd06e34a8c69f': 'Configure feedback popout details', + 'deb9089ed7ebcacd712117fc4204c65f': 'Configure feedback popout content', + '215f64480a93893fc56c51aeb5d40f11': 'Clear setting', + '7984d95c01b725a2709fb8f5ee330fb4': 'Whether to pop up expression', 'dfa07586a471e24b23fe68e11f5dc41a': - 'Please use js expression such as: ` this xxx == 1`', + 'Use JS expression, e.g., `this.xxx == 1`.', '47186f00df86d3edad3b5595ba8c2a0a': - 'Whether to interrupt the subsequent operation when the pop-up box is cancelled', + 'Whether canceling the popout interrupts the subsequent operation?', '4f21e04fe35d39c79e7779cdf2f4e232': - 'Pop up the box to confirm whether to interrupt the subsequent operation', - '0bbc3ec26c36a87c9df3183def6ca9e0': 'Open with new window', - 'd0c3025a64b26e5fbf22005f400c06d7': 'Close the current pop-up box', - '0c15a924dc3bedefb79c958972bef2b9': 'Confirmation copy', + 'Whether confirming the popout interrupts the subsequent operation?', + '0bbc3ec26c36a87c9df3183def6ca9e0': 'Whether to open a new window?', + 'd0c3025a64b26e5fbf22005f400c06d7': 'Whether to close the current popout?', + '0c15a924dc3bedefb79c958972bef2b9': 'Confirm text', '06b13b11740f7663af325bf5426930ba': - 'This content will pop up after clicking, and the corresponding operation can be performed only after the user confirms.', - 'fa9a0a79f29fef72e3060ea1af93c305': 'Refresh target components', + 'Click to pop up this content. You can perform the corresponding operation after you confirm it. ', + 'fa9a0a79f29fef72e3060ea1af93c305': 'Refresh target component', '437d629f00e62cf99b3ad288f84ade46': - 'After the current action is completed, the specified target component is refreshed. Support data transfer, such as: < code > XXX? A = \\ ${a} & B = \\ ${B} < / code >, multiple targets should be separated by English commas.', - 'b01f08bf5b9f8e3ef9d49e31d89bf770': 'Specify response components', + 'Specify target component you want to refresh after you complete the current action. Support data transfer, such as xxx?a=\\${a}&b=\\${b}. Multiple targets are separated with a comma.', + 'b01f08bf5b9f8e3ef9d49e31d89bf770': 'Specify response component', 'f667748a8e9717498da714d4e5087af2': - 'Specify the action executor. By default, it is the functional component of the current component. If it is specified, it will be transferred to the target component for processing.', - '80ddab8a52f74d707765501b0caae21f': 'Custom click event', + 'Specify action executor. It defaults to the functional component where the current component resides. The action executor is specified in terms of the target component.', + '80ddab8a52f74d707765501b0caae21f': 'Customize click event', 'babbd439bc04241ed3536f892668c250': - 'Two parameters, event and props, will be passed', - '867ade50f0bbb10bac65a5c3bc7895e9': 'Keyboard shortcuts', + 'Transfer two parameters, i.e, event and props.', + '867ade50f0bbb10bac65a5c3bc7895e9': 'Keyboard shortcut key', '45882ddedb42c1a38462949750bc8a84': - 'A prompt icon will be displayed, and the mouse will prompt the content.', + 'Display a prompt icon. When your mouse hovers over the icon, the icon prompts the content.', 'ff88d5db9d61f14bce6e3397fd4652a5': - 'When there is no value, use this to replace the display', + 'When no value is available, this prompt is displayed in place of the value.', '348097cc50579e489f0bcb5433637d3a': - 'After it is enabled, it can be sorted according to the current column (back-end sorting).', + 'With this option enabled, you can sort them according to the current column sequence (backend sequence).', '9db64f772c11c614ee00bb3cc066f46f': 'Column group name', - '161799764950b7251c94ae3e44d4c06f': - 'When the grouping names of multiple columns are set to be the same, the table will display a super header on the upper layer of the display header, < a href= https://baidu.github.io/amis/crud/header-group target=_ Blank > example', - '19c4f5e98ad302574202de30dddbaf66': 'Enable quick editing', - '15c3796e07e33afc7252df751f610c5d': 'Save now', - 'ba5a0a1ff2c438ae7719ca48b0ce3af7': 'Enable view more presentations', - 'd689e3c38fdb32c98fb27f8f35a26552': 'View more pop-up modes', - '6e78b595d6a296938201a3c80660bf35': 'Enable content replication', + 'fea0f3f456153564218a9eefb78d8cec': + 'When the group name of multiple column groups keeps consistent, the table displays the super table header at the top layer of the table header displayed.Example', + '19c4f5e98ad302574202de30dddbaf66': 'Enable quick edit', + '15c3796e07e33afc7252df751f610c5d': 'Whether to save immediately', + 'ba5a0a1ff2c438ae7719ca48b0ce3af7': 'Enable “View more display options”', + 'd689e3c38fdb32c98fb27f8f35a26552': 'View more popout modes', + '6e78b595d6a296938201a3c80660bf35': 'Enable content copy feature', '65f7e01d58cb5065f49e0e8f48cc16be': 'Fixed position', - '9ed8a4c5d1b3726121175dc986268b0c': 'Not fixed', - '0a5ac2f5c327e28c58d51db967a0e603': 'Default display', - 'a3bd2104e3df81df713de636b907462c': 'Trigger bottom display condition', - '986a5f50e946674bb91c9408fc974497': 'always', - 'a165f0fe5fb904049f6b6961105e433f': 'Mobile phone', - '03ee8b948c9b34daca9584811bcca17d': 'Flat', - '82d9f1f96084674e2b0101ecc04d5d58': 'PC small screen', - 'f4166de371b5dfb87efce228b17a3fbb': 'PC large screen', - 'f8cffd4d3fcdca390a3a3de24d209bb6': 'Content forced wrap', + '9ed8a4c5d1b3726121175dc986268b0c': 'Unfixed', + '0a5ac2f5c327e28c58d51db967a0e603': 'Display by default', + 'a3bd2104e3df81df713de636b907462c': 'Trigger bottom display conditions', + '986a5f50e946674bb91c9408fc974497': 'Always', + 'a165f0fe5fb904049f6b6961105e433f': 'Mobile terminal', + '03ee8b948c9b34daca9584811bcca17d': 'Tablet', + '82d9f1f96084674e2b0101ecc04d5d58': 'Small PC screen', + 'f4166de371b5dfb87efce228b17a3fbb': 'Large PC screen', + 'f8cffd4d3fcdca390a3a3de24d209bb6': 'Forced wrapping of content ', '4619988f1c5d9093dc00d1430633b2bd': 'Internal CSS class name', 'bdd9d38d7e2929024089363dc8f48b7a': 'Column width', - 'b198805e7a6b35830ba813f51db2fdc4': 'Fixed column width, not recommended.', - 'abb58b3bac0533ab4359ed977fa3c073': '< {{@1}} > column', + 'b198805e7a6b35830ba813f51db2fdc4': + 'Fixed column width. Setting the fixed column width is not recommended.', + 'abb58b3bac0533ab4359ed977fa3c073': '<{{@1}}> column', '044892c0c637f2d9e78e78956b1ded01': 'Anonymous column', - '59ceff465ad16932d8972191ad815dfb': 'page', - '54002bbf7eb3da8346dd4be61d642bca': 'sidebar ', + '59ceff465ad16932d8972191ad815dfb': 'Page', + '54002bbf7eb3da8346dd4be61d642bca': 'Sidebar', '49400a573b9f7a7bd693f84ec59379d7': - 'Initialization data returned by remote request', - '5d758dc5e33ba0122c256d80c1572e88': 'Pull down refresh', + 'Initialization data returned from the remote request', + '5d758dc5e33ba0122c256d80c1572e88': 'Drop-down refresh', 'd6fdfa4f989be6586a7a29ea85522f24': - 'Trigger after the pull-down refresh is enabled and the pull-down is released (only for mobile end)', + 'With the drop-down refresh enabled, it is triggered after you stop the drop-down action.', '56e6db657d4775698984f883b71cb379': 'Toolbar content', '4f9fa9ee5b0604d97da73e77fdbc281e': 'Sidebar content', '40fd4b2a194b2b1284a7f7f738b69640': 'Page content', - '0e82bfaaec104a9f0eeb14820b42e7c8': 'Regional display', + '0e82bfaaec104a9f0eeb14820b42e7c8': 'Area display', '685fae7809f86f9edee4338daaa212a0': 'A prompt icon will appear near the title, and the mouse will prompt the content.', 'ac82acdf2f38faaf293c8690b2ea627f': 'Data initialization interface', '9d191f6126f21da8222755c14f49707b': - 'Set Ajax default prompt information, which is useful when Ajax does not return MSG information. If the Ajax return carries MSG value, the Ajax return is still the main one', + 'Set the default prompt information of ajax. It is useful when ajax does not return the msg information. If ajax returns a msg value, ajax returns the value predominately.', '4e5640b31caf3326c27026bd1ed8f4cb': 'Header CSS class name', 'e656f261cac36cc658e8d69973d7611d': 'Content CSS class name', '1444bd7ae7b7301b6edf930c2ab8b175': 'Sidebar CSS class name', 'dbe33f485b394a3e77240c530b9965e4': 'Toolbar CSS class name', '674be25c9feffcf78eba48d53a944148': 'Mobile terminal pull-down refresh', - 'e24bc5fd094c7c272725c6340d8aeb8e': 'Drop down process prompt copy', - '717b23399e04873441478fef1cc16d43': 'Release process prompt copy', + 'e24bc5fd094c7c272725c6340d8aeb8e': 'Drop-down process prompt text', + '717b23399e04873441478fef1cc16d43': 'Prompt text in the release process', 'f59b11ff84daeb60b027dc02490b627a': 'Paging component', '7cfb5e222a5954e891fba6e3802c7ea6': - 'Pagination component, which can paginate the list and improve page performance', - '9ed7d3adc032f6b78808e7f3786ec9cc': 'total', - '8e60090c332693095d5852d92ee149ee': 'Number of articles per page', + 'The paging component can display the paging of the list to improve the page performance.', + '9ed7d3adc032f6b78808e7f3786ec9cc': 'Total', + '8e60090c332693095d5852d92ee149ee': 'Number of entries on each page', '47c62ec10a240c35b8446cc923c5e8ef': 'Pager', '97b8cf6ae269b6f6d75063073cd565cc': 'Paging change', 'c9fc9b668c08d0e54415c7054d414651': 'Paging type', @@ -1871,1236 +1908,1428 @@ extendLocale('en-US', { '442d73ebc936d3b74e41b901cce44a6e': 'Current page', 'fe00f5ed371bdec5801ac07f8bb564be': 'Last page:', 'eec5bfeff8012238efbf611fc22c32f6': 'Total number', - '71fa2ba926cd032c0ebe0bcdd5d3eb10': 'Number of articles per page option', - '04519bf3bf428bb1a75938ac65dba040': 'Default number of entries per page', + '71fa2ba926cd032c0ebe0bcdd5d3eb10': 'Number of entries on each page', + '04519bf3bf428bb1a75938ac65dba040': 'Default number of entries on each page', '040f05137eb37e880873a763ff653fe9': 'Maximum number of buttons', '2ee8eb6b1a80a4b025f97fca6afb800d': - 'How many paging buttons can be displayed? The minimum is 5 and the maximum is 20', - 'cd6f79e7bff1337c12c86a15ceedd6da': 'panel', + 'Display the maximum number of paging buttons. The minimum value is 5 and the maximum value is 20. ', + 'cd6f79e7bff1337c12c86a15ceedd6da': 'Panel', 'e04a2f1662121e5a3c397d496114185b': - 'Display a panel, which can configure the title and content area.', - '4e9bb0326ab4d3a2af94d901c7f1b6a7': 'This is a panel', - '5bf5f1fd54476671bd6fd9d97e3e6b6b': 'This is the content area', - 'cac3ba71180c97b1b6432833b3417d2c': 'New content in content area', + 'Display a panel. You can configure the title and content area.', + '4e9bb0326ab4d3a2af94d901c7f1b6a7': 'This is a panel.', + '5bf5f1fd54476671bd6fd9d97e3e6b6b': 'This is the content area.', + 'cac3ba71180c97b1b6432833b3417d2c': 'Add content in the content area', '1fae678397df046c1754092f15a71d98': 'Fixed bottom', - '68744acedf015b8cfc445af30583815e': 'Content area display', + '68744acedf015b8cfc445af30583815e': 'Display content area', '5a0fbcaaeb439684bb4ae5be579e4cd4': 'Form display mode', - 'f99d7e5f15906ca78c45753ee3b04a8b': 'Form horizontal proportion', - '9970ad07468267e2f309f1467c75bb80': 'theme', - 'fbae87bcc352f6933541fb77a07418ed': 'Main color', - '540f84ddc0883866b229f71c2844199a': 'danger', - '5e5d3f13111593b2710673006d4c8297': 'Outer layer', - '65810a32a98f09be550b0c421df6c540': 'Head area', - 'f3b9889baa6d17ec63f05ea7d326bcfa': 'Bottom area', - 'da71dcbb13405815476cef28a8b9c4f6': 'Button outer layer', + 'f99d7e5f15906ca78c45753ee3b04a8b': 'Horizontal ratio of form', + '9970ad07468267e2f309f1467c75bb80': 'Theme', + 'fbae87bcc352f6933541fb77a07418ed': 'Primary color', + '540f84ddc0883866b229f71c2844199a': 'Danger', + '5e5d3f13111593b2710673006d4c8297': 'External layer', + '65810a32a98f09be550b0c421df6c540': 'Header area', + 'f3b9889baa6d17ec63f05ea7d326bcfa': 'Footer area', + 'da71dcbb13405815476cef28a8b9c4f6': 'External layer of button', '6c5b1f0e8e361a801fa75da070d1cba5': - 'Used to display plain text, HTML tags will be escaped.', - '67e77a196826a8880e47ad949ce08ac0': 'This is plain text', - '8f945732891671ab4a3e095ebe58ea38': - 'If the current field has a value, please do not set it, otherwise it will be overwritten. Support using < code > \\ ${XXX} < / code > to get variables, or lodash Template syntax is used to write template logic< a target=_ Blank href = / Amis / zh CN / docs / concepts / template > details', + 'It is used to display the pure text. The html label is escaped.', + '67e77a196826a8880e47ad949ce08ac0': 'This a pure text.', + 'f8fc21a9fd40881e8fd3d7f15919465c': + 'If the current field has a value, do not set it any more. Otherwise, the new set value overwrites the old one. It allows you to get the variable using \\${xxx} or write the template logic using lodash.template syntax. Details', '83077805e05ac6bedad69b47fca4462b': 'Progress display', 'c77048def6e8a2d6c556a3fcc9c66730': 'Progress bar, progress', 'b1aefb18d4bf96dc283a26d67abc41a8': - 'Used to show progress. Each progress stage can be configured to be displayed in different colors.', - '2dde3029c4170a1c8e961a90766e0194': 'inherit', - 'ce179eca04fab0d584506b0d19736836': 'linear', - '2db0fcd5342b479688fd999a0108ef5a': 'circular', + 'It is used to display the progress. You can configure this option to display the progresses in different color.', + '2dde3029c4170a1c8e961a90766e0194': 'Inheritance', + 'ce179eca04fab0d584506b0d19736836': 'Linear', + '2db0fcd5342b479688fd999a0108ef5a': 'Circular', '3fa8b34a2744f62fe93dd599a275af39': 'Dashboard', '1ca3fa86d8faa46cc75792bcf90d7fff': 'Progress value', - 'b0932e5bb7f7d95e3636d82d1a039854': 'No data vacancy prompt', - '940b12c19fcf7aced0cdd164edc9acbc': 'Space occupying prompt', + 'b0932e5bb7f7d95e3636d82d1a039854': 'No data void prompt', + '940b12c19fcf7aced0cdd164edc9acbc': 'Placeholder prompt', '9cf66e7783e4c9b1d74bcd411edb6950': - 'Value when the data field is undefined, excluding 0', + 'The value existed when the data field is not defined. The value does not include 0.', '2f0faae87508471abce4384b60900e15': 'Line width', 'bd9b3f7e564c9eeaedd72f1bcbb7fc9f': 'Notch angle', '31a088147dc0006e4775d066980fa688': 'Notch position', - '77a7419dd4fad70c3f3e4b075b2c3fcb': 'Show animation', - 'a04564aaca658461333b00cbcd071518': 'Solid color', - '0a9fc7083e2768107fc178ff36f29ba0': 'stripe', + '77a7419dd4fad70c3f3e4b075b2c3fcb': 'Display animation', + 'a04564aaca658461333b00cbcd071518': 'Pure color', + '0a9fc7083e2768107fc178ff36f29ba0': 'Strip', 'c035fb9e67c0b566fd5d35889035424e': - 'Assign different value segments and prompt users with different colors', - '23bf030ca760141f317dde1b7f49b11a': 'Property sheet', + 'Allocate different value segments. Give a prompt to the user in a different color.', + '23bf030ca760141f317dde1b7f49b11a': 'Property table', '44f2bc36dacb88424dabf9df71da0e77': 'Machine configuration', - '1cb82ab4f259d5b75da0ae86583b31ff': 'Other instructions', - '9a4ca43777061ebc91bc64cb994957bc': 'How many columns are displayed per row', - '17fa61e1da428936a31b51c955a99d65': 'display mode', - '7fa5c95b26550753b0931fa21cea5d10': 'Attributes are taken from variables', - '6940ea5aa4c18e105cbcd32cbe410839': 'Attribute list', - 'ae41a992ccceb36f83024f72531186ec': 'Attribute name', - '52dff5b153bb5eaca33a008458ce0209': 'Attribute value', - '42c3762943823c37b537a10c09765822': 'Span several columns', - '22b03c024d815ad327e8b95d684ced38': 'QR code', + '1cb82ab4f259d5b75da0ae86583b31ff': 'Other description', + '9a4ca43777061ebc91bc64cb994957bc': 'Number of columns displayed in each row', + '17fa61e1da428936a31b51c955a99d65': 'Display mode', + '7fa5c95b26550753b0931fa21cea5d10': + 'The property is taken from the variable.', + '6940ea5aa4c18e105cbcd32cbe410839': 'Property list', + 'ae41a992ccceb36f83024f72531186ec': 'Property name', + '52dff5b153bb5eaca33a008458ce0209': 'Property value', + '42c3762943823c37b537a10c09765822': 'Number of crossing columns ', + '22b03c024d815ad327e8b95d684ced38': 'QR Code', '1857d9050ac0527374f4324c0a5ad910': - 'It can be used to generate two-dimensional codes', + 'This option can be used to generate a QR code.', 'e71377bb59c70af683be127ec49d01c7': 'QR code value', '57eda9139c0b3bc0605ed4cf303ffbd2': - 'Support using < code > \\ ${XXX} < / code > to obtain variables', + 'It allows you to use \\${xxx} to get the variable.', 'f13c3e0717ea842cddc1402e8dabfb6b': 'Complexity', - 'c4bde7dba8c6eed0ca0165b071b259bf': 'Aspect ratio', + 'c4bde7dba8c6eed0ca0165b071b259bf': 'Width and height values', '2f97db95d75280bfedc5afa72d2c717d': 'Background color', - 'ebf2453eddf55441b711d187f3872ffe': 'Foreground', + 'ebf2453eddf55441b711d187f3872ffe': 'Foreground color', 'd5e6d5c44426a82e18e31eadf7f1e09b': - 'It is generally used to reset the form data to the initial value.', + 'It is usually used to reset the form data to the initial value.', '6a06f12bdf3fc96df6cb45467b9a7c2c': 'Service', '9cc50da6bb17ea7ecf44c254c9b37619': - 'A functional container that can be used to load data or to load the renderer configuration. The loaded data can be used in the container.', + 'The functional container can be used to load the data or the renderer configuration. The loaded data can be used in the container.', 'c5a33208cf3deab68cd9fe34679edff6': - 'A functional component used to pull data.', - '54d99a6a50a2373055c0f66ab727a869': 'API initialization data', - '7a0c222fcaa42473d1c75c113c3641b5': 'API initialization completed', - 'acd4bd22755a537431d74b28c3c2ad67': 'Schemaapi initialization data', - '5a7d03912f38d0b24d04b28da40864a6': 'Schemaapi initialization completed', - 'f885d4055567877facf0a3ff376a114e': 'Rebuild', + 'The functional component is used to fetch the data.', + '54d99a6a50a2373055c0f66ab727a869': 'api initialization data', + '7a0c222fcaa42473d1c75c113c3641b5': 'api initialization completed', + 'acd4bd22755a537431d74b28c3c2ad67': 'schemaApi initialization data', + '5a7d03912f38d0b24d04b28da40864a6': 'schemaApi initialization completed', + 'f885d4055567877facf0a3ff376a114e': 'Re-build', 'c8f0e77a9eb5de26e6ab62695d8494b6': - 'Trigger schema API refresh and rebuild schema', + 'Trigger schemaApi refresh and re-build Schema', 'e22855f53b7a1ab33e920375c0cd0e3d': 'Variable assignment', - '8b10146a8a896b890b3796eefcc3c6d3': 'Update data field data', - '47d68cd0f4c3e91a86d23afe8afccfb8': 'service', + '8b10146a8a896b890b3796eefcc3c6d3': 'Update the data in the data domain', + '47d68cd0f4c3e91a86d23afe8afccfb8': 'Service', 'f754888421621d122c110d83e710e9d3': 'Add content', - '31f8a7a967286a16eb404e3ba237619e': 'data interface ', + '31f8a7a967286a16eb404e3ba237619e': 'Data API', '54f876a529283de5668426b2dc8adb15': - 'Set the default prompt information of the service. It is useful when the service does not return MSG information. If the service return carries MSG values, the service return is still the main one', - '7fa237c1b62d04aaec0144d1fc89d620': 'Websocket real time update interface', - '9dfeacc54ab6cd6d2ac08df387777f9e': 'Initial loading of data interface', + 'Set the default prompt information of the service. It is useful when the service does not return the msg information. If the service returns and carries a msg value, the service’s return result value dominates.', + '7fa237c1b62d04aaec0144d1fc89d620': 'WebSocket Real-time API update', + '9dfeacc54ab6cd6d2ac08df387777f9e': 'Initial loading of Data API', '98223d478e88ccbc2406412a46dda8c2': 'Silent loading', '71ae1c76cc4160f8fb76e404e35ca08f': - 'Set whether to display loading animation in automatic scheduled refresh', - 'b897babfafd35cc5d6e66470115c93cf': 'Stop scheduled refresh detection', - '11bcbff684dfe6edf36e1fd1adc5ba30': 'Schema interface', - '8cc3239eba9fe65b99242adb33634b33': 'Content schema interface', - '3f423669b0ffeb3993b95085cd8a111e': 'Initial loading of schema interface', + 'Whether to display the loading animation after you set the automatic timed refresh.', + 'b897babfafd35cc5d6e66470115c93cf': 'Stop timed refresh detection', + '11bcbff684dfe6edf36e1fd1adc5ba30': 'Schema API', + '8cc3239eba9fe65b99242adb33634b33': 'Content Schema API', + '3f423669b0ffeb3993b95085cd8a111e': 'Initial loading of Schema API', '8e8aaafe8db0d8eb05e3b11550cbabe7': 'Global configuration', - '7481babe858320dd6a4adcf307fd151d': 'User defined function to get data', + '7481babe858320dd6a4adcf307fd151d': 'Customize function to get data', 'bfdee34e14602e3113c88a9145843e86': - 'Two parameters, data and SetData, will be passed', - 'fb559ab354303d1927dcd9f0f2dffa23': 'Obtained successfully', - '56f0a1c0bc0408556c5810ea4f219dd4': 'Acquisition failed', - '29326bcd28fb39bd41e54242fa532c85': 'trend chart', - '270301455c3de762a7e2b145dac7a8b4': 'For embedded display of simple charts', + 'Transfer two parameters, e.g., data and setData', + 'fb559ab354303d1927dcd9f0f2dffa23': 'Succeed to get data', + '56f0a1c0bc0408556c5810ea4f219dd4': 'Fail to get data', + '29326bcd28fb39bd41e54242fa532c85': 'Trend chart', + '270301455c3de762a7e2b145dac7a8b4': + 'It is used to embed and display simple charts', '44e13bdad8c7eb6391e84d940513b927': 'Status display', '82a3047196be368be13dcdd2373520ff': - 'Use more relevant fields such as 1 to show √ and 0 to show X. This piece can be customized', + 'Display the status by using icons to associate fields. For example, display √ for 1 and x for 0. You can customize this block.', '774b2bcaca8a64f46c84b510cec89109': 'Icon configuration', 'b698a95f1e217e5465835ee0d23b1b1c': - 'Configure the impassable value field and prompt the user with the impassable style', - 'aacb2b36c47395e4b4b409e351eb4279': 'Steps bar', - '863a8583132d087e57aebb7d89e18a50': 'First step', + 'Configure different value segments. Give a prompt to the user in a different style.', + 'aacb2b36c47395e4b4b409e351eb4279': 'Steps Step bar', + '863a8583132d087e57aebb7d89e18a50': 'Step 1', '9757f2c59c17e9aea46e0c8adb69597e': 'Step 2', '207e30c0e7318027d521dd7c6fab6a99': 'Step 3', 'b8a2d347bdb22fde367a851df8335771': 'Step list', - '59cecbff0cc77511590d2161cc3058e9': 'Current step', - 'f3f08da7f65e1d5596a66cedd7caeb9a': 'Start with zero', - '6bf1f392c0a404d1f7558e6dcdd6c2e6': 'current state', - 'fb852fc6cce168301447d1baff276dc5': 'have in hand', - '8797922788916874c39ee1524bbc3638': 'wait for', - '769d88e425e03120b83ee4ed6b9d588e': 'complete', - 'ad8e01fe719bf1a5af82ee0d100d246b': 'error', - 'd1f03ea8d9d3c3a241e8a340b8a384d3': 'Get step interface', + '59cecbff0cc77511590d2161cc3058e9': 'Current steps', + 'f3f08da7f65e1d5596a66cedd7caeb9a': 'Start from 0', + '6bf1f392c0a404d1f7558e6dcdd6c2e6': 'Current status', + 'fb852fc6cce168301447d1baff276dc5': 'In progress', + '8797922788916874c39ee1524bbc3638': 'Wait', + '769d88e425e03120b83ee4ed6b9d588e': 'Completed', + 'ad8e01fe719bf1a5af82ee0d100d246b': 'Error', + 'd1f03ea8d9d3c3a241e8a340b8a384d3': 'API for getting steps ', '74f0f6730053049f4c9beca2ab00c193': - 'It is used to submit a form and require form verification. If it is in the pop-up window, the pop-up window will be closed automatically.', + 'It is used to submit a form. The form verification is required. If it is in the popup, the popup is closed automatically.', 'ea2b32f5d78d2305b9b7bc21e056a009': - 'Used to display table data, you can configure column information, and then associate data to complete the display. Nesting, super header, column fixation, header top fixation, and cell consolidation are supported. The current component needs to configure a data source and does not bring its own data pull. Please use the "crud" component first.', + 'It is used to display the table data. You can configure the column information and then associate the data to complete the display. It supports the nested and super table headers, coluln fixing, table header fixing, and cell merging. You need to configure a data source for the current component. This component does not have the data fetch feature. You need to take the priority to use the “CRUD” component.', '257f5a3886d87d2255206f86b880d07e': 'Select table item', - '6130b1f75d624b2f73f5d923492e92f7': 'Manually select table item event', + '6130b1f75d624b2f73f5d923492e92f7': 'Manual table item selection event', 'aeddca0456d8fe520dc95545a83458e9': 'Selected row', - '4f907cb94921bb62a8399adec922bb60': 'No row selected', - 'f3d21138c8ecf5683503c4f814cc7199': 'Column sort', - 'd84464cfb2a5828a200fe9c28a323122': 'Click column sort event', - '652f155e644e82ebb0a1aed97ab6ab23': 'Column sort column name', - '460e3a697d1680445a47139c0816fbe6': 'Column sort value', - '3d0b957a99d0c366612c01913e17a0c7': 'Column filtering', - 'b35963687361af98e6acdc004e87fc3c': 'Click column to filter events', - 'ad11fba3ac676233f3105e76e7de0501': 'Column filter column name', - '8e4b9c88c51aaad1a28a28e8b536697f': 'Column filter value', + '4f907cb94921bb62a8399adec922bb60': 'Unselected row', + 'f3d21138c8ecf5683503c4f814cc7199': 'Column sorting', + 'd84464cfb2a5828a200fe9c28a323122': 'Column sorting click event', + '652f155e644e82ebb0a1aed97ab6ab23': 'Column sorting name', + '460e3a697d1680445a47139c0816fbe6': 'Column sorting value', + '3d0b957a99d0c366612c01913e17a0c7': 'Column screening', + 'b35963687361af98e6acdc004e87fc3c': 'Column screening click event', + 'ad11fba3ac676233f3105e76e7de0501': 'Column screening name', + '8e4b9c88c51aaad1a28a28e8b536697f': 'Column screening value', '93a5a0253f11e3a2e58f4e87a52fb094': 'Column search', - '6d4c4990ab2c32efe8a17c5f22e10cb5': 'Click column search event', - 'a80a4486100baf3f45fab3a59e4a816d': 'Column search column name', + '6d4c4990ab2c32efe8a17c5f22e10cb5': 'Column search click event', + 'a80a4486100baf3f45fab3a59e4a816d': 'Column search name', 'b9a565fe1dc488efae1d63464f277f09': 'Column search data', - '85ddd38957256b6e9026f42ed570bc35': 'Row sort', - 'd7a66def82af88cd5d408e38feb8a65a': - 'Event of manually dragging a row to sort', + '85ddd38957256b6e9026f42ed570bc35': 'Row sorting', + 'd7a66def82af88cd5d408e38feb8a65a': 'Manual drag-and-drop and sorting event', '1987561c006c7192ab619f81103d2a2f': 'Sorted data', 'ecfebbc91e2c18a512aeb11b7da15193': 'Column display change', - 'c94f45773a42dc386b9c9dcdc6fa542b': 'Click Custom column event', + 'c94f45773a42dc386b9c9dcdc6fa542b': 'Column customization click event', '70567329ee851a5ba7e7301bd8e9d9a1': - 'Currently displayed column configuration data', - '76e47871d654c3b0b0e301c0a076e55a': 'Row Click', - 'cc13521eab2c7423b3fb857772405cc3': 'Click whole line event', - '2fbbf5c38b66ac5496ac42246bbe9e0b': 'Line click data', - '8eb3c8b16106e5487cd1fa3b8a1342ce': 'Set checked item', - '908cc16fe4f7972450167e26276ac726': 'Set the selected item of the table', - 'a2b39e5a8b5015234dcd8e07a2e00e3d': 'Checked item', - '366a3c07289bd6efb7c2a182f7a12772': 'Set all selected', - 'e97c09cd119b64ae0a8dfd42a1d449cb': 'Set all items in the table (selected)', + 'Column configuration event displayed currently', + '76e47871d654c3b0b0e301c0a076e55a': 'Row click', + 'cc13521eab2c7423b3fb857772405cc3': 'Whole-row click event', + '2fbbf5c38b66ac5496ac42246bbe9e0b': 'Row click data', + '8eb3c8b16106e5487cd1fa3b8a1342ce': 'Set selected item', + '908cc16fe4f7972450167e26276ac726': 'Set selected table item', + 'a2b39e5a8b5015234dcd8e07a2e00e3d': 'Selected item', + '366a3c07289bd6efb7c2a182f7a12772': 'Set to select all', + 'e97c09cd119b64ae0a8dfd42a1d449cb': 'Set to select all table items', 'c3e8652924c258e121eed16414d3a9e5': 'Clear selected items', - '7619ec29c0a854dd49e0a7a47bf1a127': 'Clear all selected items in the table', - 'b94bd878cae4ddc567b00a2dc4f21d74': 'Turn on sorting', - '5dc3017c21ae2e31ab127dbde8ec80e9': 'Enable the table drag sort function', + '7619ec29c0a854dd49e0a7a47bf1a127': 'Clear selected all table items', + 'b94bd878cae4ddc567b00a2dc4f21d74': 'Enable sorting', + '5dc3017c21ae2e31ab127dbde8ec80e9': + 'Enable table dragging and sorting feature', '25915fb58615ba9a5e145efa252fec30': 'Automatically merge cells', - 'd7d0936858fcdf4ffdb2899451ec74fc': 'Set the number of columns', + 'd7d0936858fcdf4ffdb2899451ec74fc': 'Set number of columns', '80174cabf025dfe269aee5390b813708': - 'Set the number of columns from left to right in which auto merge is enabled, and decide whether to merge according to whether the field values are the same.', - '14921c3831512876f6d58b2a497b86df': 'Display column display switch', - 'cc42dd3170fdf36bdc2b0f58ab23eb84': 'open', - 'b15d91274e9fc68608c609999e0413fa': 'close', + 'Set the number of columns from left to right within which you can enable the feature of automatically merging cells. Thus, you can decide whether to merge cells according to whether their field values are the same.', + '14921c3831512876f6d58b2a497b86df': 'Column display switch', + 'cc42dd3170fdf36bdc2b0f58ab23eb84': 'Enable', + 'b15d91274e9fc68608c609999e0413fa': 'Disable', '6fe0b71c07a5ce5f7a09f7fdb1d63827': - 'Automatic: when the number of columns is greater than 5, it will be automatically turned on', - '2206c0e11aa5f4f154aa9e5dfffcb474': 'Fixed header', + 'It is enabled automatically when there are more than 5 columns.', + '2206c0e11aa5f4f154aa9e5dfffcb474': 'Whether to fix the table header', '5006fdc5659989e42c3855c17c57f878': - 'Whether to open the bottom display of single bar', + 'Whether to enable the bottom display of a single entry', '9db359f376a1a588ef7dcbef53cc114a': - 'If there are too many columns, the display will be bloated. You can consider displaying some columns at the bottom of the current row', - 'df74194830e695efbfce16c0c64223cf': 'Bottom default deployment', - '94be543c4fd399f0839211464c8583ce': 'Article 1', + 'If there are too many columns, some columns can be displayed at the footer of the current row.', + 'df74194830e695efbfce16c0c64223cf': 'Default footer expansion', + '94be543c4fd399f0839211464c8583ce': 'First entry', '9a7b52fc8659f1786907fe93efa85bf7': 'All', - 'b07deca9076bd3354b1b2709d58d725a': 'Do not expand', - '76b3250fb1e8593fac075b64029300fa': 'Line highlight rule', + 'b07deca9076bd3354b1b2709d58d725a': 'Fail to expand', + '76b3250fb1e8593fac075b64029300fa': 'Row highlighting rule', '1fe38acb67e766f7767d9f8e88bfe990': - "Support template syntax, such as <% = data id % 2 ? ' bg-success' : '' %>", - '734ebf8b33422c456e937fc27c9a16ce': 'Outer CSS class name', - '320f489db3dade075d69f155b346f98b': 'Table CSS class name', - '08ca0d502abc4336855d837f281caef4': 'Top outer CSS class name', - 'b6469055adf2b7bfb187f74ae17dfe54': 'Bottom outer CSS class name', - '39ff38577b97cf98fc130f9bd596d4c4': 'Toolbar CSS class name', - '175e01917d9d4891a40eab43f4487030': 'Tabular view', - '9fe8304dade75a37bc04f45515688325': 'Presentation of table types', - '2560b304e691da78ee2e02f5af9b494d': 'region', - 'f7d29dfae05b5d049b64b040b14d9a00': 'city', - '44e7ebb4007104495dcb7afbbb6778fb': 'sales volume', + "It supports the template syntax, such as <%= data.id % 2 ? 'bg-success' : '' %>.", + '734ebf8b33422c456e937fc27c9a16ce': 'CSS class name of external layer', + '320f489db3dade075d69f155b346f98b': 'CSS class name of table', + '08ca0d502abc4336855d837f281caef4': 'CSS class name of top layer', + 'b6469055adf2b7bfb187f74ae17dfe54': 'CSS class name of footer external layer', + '39ff38577b97cf98fc130f9bd596d4c4': 'CSS class name of toolbar ', + '175e01917d9d4891a40eab43f4487030': 'Table view', + '9fe8304dade75a37bc04f45515688325': 'Display table type', + '2560b304e691da78ee2e02f5af9b494d': 'Region', + 'f7d29dfae05b5d049b64b040b14d9a00': 'City', + '44e7ebb4007104495dcb7afbbb6778fb': 'Sales volume', '3f0cb8b8c238c3b4e08898ce6d449c8d': 'North China', '692e92669c0ca340eff4fdcef32896ee': 'Beijing', 'b8b75a5f9109919ff3f67b336b62afe9': 'Tianjin', 'd1c2b2d68063b4a57af61e3027861cd8': 'View width', 'b32ec25f2bdf7b2eed5e947cf82a4fde': 'Default internal spacing of cells', - '8a42ded5c9d58f3dd9e3a8968ec04b34': 'Show border', + '8a42ded5c9d58f3dd9e3a8968ec04b34': 'Display border', '9b4bae5d8251de0b6f00b704936b00d3': 'Border color', - 'd273f56b3e598e794c3480f1e62f3ed9': 'Cells {{@1}}, {{@2}}', - '466c65230ac92494c3af79757b4b78aa': 'Line: {{@1}}', + 'd273f56b3e598e794c3480f1e62f3ed9': 'Cell {{@1}}, {{@2}}', + '466c65230ac92494c3af79757b4b78aa': 'Row {{@1}}', '1ebd0cd417700f3f4a7ee5f64518fcd1': 'Cell', - '4d775d4cd79e2ed6a2fc66fd1e7139c8': 'display', + '4d775d4cd79e2ed6a2fc66fd1e7139c8': 'Display', '7ec907e7059b758ace2f3adb9bb803ff': 'Text color', - '104711e38d3cd9335dbd1f4301178edb': 'Text bold', + '104711e38d3cd9335dbd1f4301178edb': 'Text in bold', '65194da33aa3aa1d0fd08b5690af6f26': 'Cell width', - 'fbd9998b10e690230b0f2fa9b24087ac': 'Cell margin', - '0bbc2ea4e1d1f23feb576de5dca1ce3b': 'Center', - '4745afe0f89f665e41adf819da5df1b6': 'Number of horizontal merge columns', - '7c2e1f863e86715e892f61a54e558b20': 'Number of vertical merge columns', + 'fbd9998b10e690230b0f2fa9b24087ac': 'Cell padding', + '0bbc2ea4e1d1f23feb576de5dca1ce3b': 'Center alignment', + '4745afe0f89f665e41adf819da5df1b6': 'Number of horizontally merged columns', + '7c2e1f863e86715e892f61a54e558b20': 'Number of vertically merged columns', '5a431ad16d8f7f23fac3be5650e51caa': 'Row height', 'db439b129f3143e14a7024f08ea3732d': 'Row background color', - '30d6ed36667cb98165f07c59702754ea': 'lattice', - '49d45317662097180e27fa53235d9b13': 'The corresponding TD ID cannot be found', - '013326241579b9b2735756f2204bf8bc': 'There is no content in the first column', - 'a896691b72032fe21a00b6487381a529': 'New column on the left', - '24e4bbbf29a8d31e711c8d9366bf1a6f': 'New line below', - 'aea2dd682bc9dc2974dd971581148459': 'New row above', - 'bac058b86f8fd4e8f5e2ef3807799aea': 'New column on the right', - '488d0742c010851e9c6ce3264df9542b': 'split cell', - '9377e388f7189d6103a3985a321115c8': 'tab ', + '30d6ed36667cb98165f07c59702754ea': 'Grid', + '49d45317662097180e27fa53235d9b13': 'No corresponding td id is found.', + '013326241579b9b2735756f2204bf8bc': 'No content in the column I', + 'a896691b72032fe21a00b6487381a529': 'Add a column on the left', + '24e4bbbf29a8d31e711c8d9366bf1a6f': 'Add a row on the right', + 'aea2dd682bc9dc2974dd971581148459': 'Add a row above', + 'bac058b86f8fd4e8f5e2ef3807799aea': 'Add a column on the right', + '488d0742c010851e9c6ce3264df9542b': 'Split cell', + '9377e388f7189d6103a3985a321115c8': 'Tab', 'a8b1273cb2d53ad858906ff9744a9891': - 'Tabs can be used to group contents and display them in the form of tabs to reduce user use costs.', + 'The content group can be displayed in the form of tab to reduce the user cost.', 'f78416dbd6c6a40a3ecd1c1f2b0672c8': 'Tab 1', '9769ee568100b0c530a06ec3f0c0044d': 'Content 1', '4be268145385303e8ebeb480458a380e': 'Tab 2', 'c50159e2acff0f4ffdce4c67ec3513a3': 'Content 2', - 'c8794c58d0eb020ca40905d1904d88b2': 'Modify the active tab value', + 'c8794c58d0eb020ca40905d1904d88b2': 'Modify activation tab value', 'fcd3abb110aab48ebd0ac2a1d7040d6d': - 'Modify the key of the currently active tab item', - '9d000284174ff09642502803887f28ed': 'Activate ()', - '29645b509093191cad34c673c1b3efb7': 'term', + 'Modify the key of currently activated tab item of key', + '9d000284174ff09642502803887f28ed': 'Activate the item ?', + '29645b509093191cad34c673c1b3efb7': '?', '9578012b7d75a3a47c76acc176caf403': 'Active item', - '3ba265c6b63bde0319822afd6b9a649d': 'Title tips', + '3ba265c6b63bde0319822afd6b9a649d': 'Title prompt', 'b744b72fd649d904e561358fc26c455f': - 'A prompt will pop up when the mouse moves to the tab title, which is suitable for complete prompt when the title is too long', + 'Pop up the prompt when you move the mouse to the tab. It can give a complete prompt when the title is too long.', '6e7fe62a865cb9ae90e52f85f4c6b8a0': 'Default tab', 'a8986713e2b83c9ecafe5b107c09b68e': - 'A tab is displayed by default. When configuring hashes, hashes are used. Otherwise, index values are used. Variables can be obtained, such as < code > tab \\ ${ID} < / code >, < code > \\ ${ID} < / code >', + 'Display a tab by default. When you configure hash, use hash. Otherwise, you need to use an index value. It can get variables, such as tab\\${id} and \\${id}.', 'acb839aac679bb34be9b4b49806b74a8': - 'You can use the < code > \\ ${XXX} < / code > value to render the configured tab dynamically and repeatedly according to the data', - '5b9af1bc3012bb3c8e07b983b423ec17': 'Render content when active', + 'You can use \\${xxx} value. You can re-render the configured tab dynamically according to the data.', + '5b9af1bc3012bb3c8e07b983b423ec17': + 'Render the content during the activation.', '4bcecc15d16e8c851dc3d155b8f30929': - 'Content rendering can only be performed when the tab is activated to improve rendering performance', - '12c6a62683d63e404d71a31c9cb5209c': 'Destroy content after hiding', + 'The content rendering can be conducted to improve the rendering performance only when you activate the tab.', + '12c6a62683d63e404d71a31c9cb5209c': 'Destroy content after being hidden', '5b52bcb62a2e1dab99ef841b05395b6d': - 'When other tabs are activated, the current content is destroyed, so that the content can be re rendered when it is activated again. It is suitable for scenes where the data container needs to obtain data in real time every time it is rendered', - 'ecfcea4b381d761fecd512761bc07954': 'Linetype', + 'When you destroy other option cards, destroy the current content. Thus, you can re-render the content when you activate the tab again. This applies to the scenarios for getting the data when the data container should be rendered every time.', + 'ecfcea4b381d761fecd512761bc07954': 'Linear', 'b30f254eccefa14c9980235bcbec74f9': 'Simple', - '3d7443aeba7c8eaf1cbb42ad5232fa10': 'strengthen', - 'ee5e5a588705699a51eb3c5778c3020a': 'Chrome like', - 'c5b8044dacf2e63931d85e5e307a9168': 'Horizontal paving', - '22d18bf0c476ebe7aa9303108677ff2e': 'selector', - '5bff38cb05e3710a0c0cb16ed3ced78f': 'sidebar ', - '593c1c61592f80831f58b2e44cfe63fa': 'Title area location', - '030c8cb75e9707285b28c4931bfeddc5': 'Title Area', - '32b4bc87bf7f95cd6094992f0135ff7f': 'Title Icon', + '3d7443aeba7c8eaf1cbb42ad5232fa10': 'Enhanced', + 'ee5e5a588705699a51eb3c5778c3020a': 'Imitate Chrome', + 'c5b8044dacf2e63931d85e5e307a9168': 'Horizontal fill-up', + '22d18bf0c476ebe7aa9303108677ff2e': 'Selector', + '5bff38cb05e3710a0c0cb16ed3ced78f': 'Sidebar', + '593c1c61592f80831f58b2e44cfe63fa': 'Title area position', + '030c8cb75e9707285b28c4931bfeddc5': 'Title area', + '32b4bc87bf7f95cd6094992f0135ff7f': 'Title icon', '996a919888ae86e842c76245daae2360': - 'After setting, the hash in the address bar will be updated synchronously.', - 'f3051dd9b3538e170322fd5224b28de0': 'Render only when active', + 'After you set it, update the Hash of the address bar synchronously.', + 'f3051dd9b3538e170322fd5224b28de0': + 'It can be rendered only during activation.', 'ee51f2d49fa12c730d2a0efef0d67e44': - 'When the tab is selected, its content area is rendered, which can improve rendering performance.', - '024f24defb08c5c9d463a2668cbb9802': 'Hide and destroy', + 'Its content area cannot be rendered until you select the tab. Thus, it is possible to improve the rendering performance.', + '024f24defb08c5c9d463a2668cbb9802': 'Destroy upon being hidden', '370bb4d6806c88a7df2ac17ca2a7b6a6': - 'Close the tab to destroy its contents. Configure the "render only when activated" option to achieve the effect of reloading every time you select it.', + 'Disabling the tab leads to the destruction of its content area. By configuring the “Render only during activation” tab, it is possible to realize the re-load effect every time when you select it.', 'f6724322c613ca164ea9a9d03e9055c9': 'Card {{@1}}', - '8a471486c6c7bbe43e14392c6b127aea': 'Asynchronous task', + '8a471486c6c7bbe43e14392c6b127aea': 'Asynchronous Task', '4f58f808d62c4e31c347e483898396d5': - 'It is used to render or operate asynchronous tasks.', - '9ee043b0a77a26d22eec0f4ea99afbd3': 'Hive task', - 'f0eda973dd9e60c659057dadde816725': - 'View details < a target=_ blank href= http://www.baidu.com >Log < / a >.', - '3709f71c9552ed5db76cbe8f3cb5d4be': 'Small flow', + 'It is used to show or perform asynchronous tasks.', + '9ee043b0a77a26d22eec0f4ea99afbd3': 'hive task', + '2c8a99d35cb5704994cabcc61a4c3a4a': + 'View detailsLog.', + '3709f71c9552ed5db76cbe8f3cb5d4be': 'Small traffic', 'c60ad696dee4e1eeff6f0f2c2e9b9fc0': 'Total', '5c0dc424442c913c6d16a2cf43137da4': 'Initial task information', - '78caf7115c5140f8913c581920239f22': 'Task name:', + '78caf7115c5140f8913c581920239f22': 'Task name', '3a3778f20c0e1a55adafad4861a71216': 'Task ID', 'bc7e74f7ccf8ed6fa5b7b7649b221daa': 'Task status', - '1d35dcbf191e36dcc6c15f71277d72ed': 'Task description:', - '76ba17faedd82297d09b2edd70c5914e': 'New task information', + '1d35dcbf191e36dcc6c15f71277d72ed': 'Task description', + '76ba17faedd82297d09b2edd70c5914e': 'Add task information', '093bcd735847b8464d683464165adbb8': - 'It may not be set if the detection interface returns such information.', + 'You do not have to set it if the detection interface returns this information.', '7dca021cccc260dbe1d81dfc6b29f513': 'Status detection interface', - '358e55678114f19424efbb42c0a927d9': 'Timing detection interval', - '77bd60ba17a73ede5d81c4eeba0f830d': 'Submit interface', - '1e057692fcf81e07e20b5f7c9073ea35': 'Retry interface', + '358e55678114f19424efbb42c0a927d9': 'Timed detection interval', + '77bd60ba17a73ede5d81c4eeba0f830d': 'Submission API', + '1e057692fcf81e07e20b5f7c9073ea35': 'Retry API', '24e3562a3262e80c3119f22b8f447f64': 'Title of task name column', - 'cb8e07cea4df337bb6dcb8362b5f7e02': 'Operation bar title', + 'cb8e07cea4df337bb6dcb8362b5f7e02': 'Action bar title', 'f2acd3adcc0a0d73b318c83a29a4d2a9': 'Status bar title', - '8a4cf07caf84c91a87e8ff3c48a944b9': 'Remarks:', - '0cbbb89050458c2bcf0ca98c19dc8864': 'Remarks column title', - '879eb99c7b1aa3223925b9b2dbad4c63': 'go online', - '804b6382fa6d8b53c5a2a409f30f7fe2': 'Retry button name', - '132c5cdcceb0f1f17c8c088a42959aa4': 'retry ', - 'dd4e55c39cee201b82dbc9cb2aca173f': 'Not started', - 'c0d2181d579cd1e965ed10d5183b1fc0': 'be ready', + '8a4cf07caf84c91a87e8ff3c48a944b9': 'Remarks', + '0cbbb89050458c2bcf0ca98c19dc8864': 'Remarks bar title', + '879eb99c7b1aa3223925b9b2dbad4c63': 'Launch', + '804b6382fa6d8b53c5a2a409f30f7fe2': 'Re-try button name', + '132c5cdcceb0f1f17c8c088a42959aa4': 'Try again', + 'dd4e55c39cee201b82dbc9cb2aca173f': 'Do not get started', + 'c0d2181d579cd1e965ed10d5183b1fc0': 'Ready', 'fad5222ca0acfaee54f06458188d916a': 'Completed', - '7a4b9e6f14bda48d2c3bf0fa431bd2b3': 'Status label text configuration', + '7a4b9e6f14bda48d2c3bf0fa431bd2b3': 'Configuration of status label text', 'f198581dbbc357ccc0283cfe02d56edd': 'Initial status code', 'd6bab2368de31490741ed95f732aaa25': 'Ready status code', - '6eafca9359acbb0bedcf86d6b8609e41': 'In progress status code', + '6eafca9359acbb0bedcf86d6b8609e41': 'Status code in progress', '7e8b2e41a303cb8532b9ad2006da3c25': 'Error status code', '231b6f799949f9a743d5193006a15af7': 'Completion status code', - '003797f6b66c67cd87ec684cacb4ab70': 'Error but retrieable status code', - '89d19c1fda4906bd7a336895835ce20e': 'Button CSS class name', - 'c52b46333f6d5d2796ee64cb359cd58a': 'Retry button CSS class name', - 'b091a100499d48dd4ccf0b982aa37d68': 'Status tag CSS class name configuration', + '003797f6b66c67cd87ec684cacb4ab70': 'Error and retry status code ', + '89d19c1fda4906bd7a336895835ce20e': 'CSS class name of button ', + 'c52b46333f6d5d2796ee64cb359cd58a': 'CSS class name of re-try button ', + 'b091a100499d48dd4ccf0b982aa37d68': + 'Configure CSS class name of status label ', '7ac24322bc8eeac88db6823942423ac3': 'Time display', '82315a0cd63e7f81233ad804e0d02deb': 'Time value', 'a389ce9c52a94bbdd5c7fa84af85348c': 'Display time format', 'dd438f6fb09d6223fd95df16383f0f44': 'Text prompt container', '33813749a95477897085e2435acc16b6': - 'Similar to a container, multiple renderers can be placed together. When the user hovers or clicks on the container, a text prompt floating layer will be displayed', + 'It is similar to a container. Multiple renderers can be put together. When the user puts the mouse over or clicks on the container, a floating layer for the text prompt is displayed.', '9b14c9051067bef2dd9a15683201dd18': 'Prompt text', - 'ab97cef55407efa11f79211e17cb2b4b': 'The default method is mouse over“', + 'ab97cef55407efa11f79211e17cb2b4b': + 'The default configuration is “Mouseover”.', 'b47707f0e916e3e3f4ba885bc2cf2c11': 'Theme color', 'a32b3b848eee6929634dfc9a9d8bcdb1': 'Bright color', - 'adb7e5312abdb9a44297e48d63815fa3': 'dark colors', - '0de826c66ae3fe8043e9a39b35616ee6': 'Container inline', + 'adb7e5312abdb9a44297e48d63815fa3': 'Dark color', + '0de826c66ae3fe8043e9a39b35616ee6': 'Container inlink', '4583d3453c31cd3ff068c1358d8e7f1c': - 'Click the "close" prompt outside the container', + 'Click the area outside the container to close the prompt', '8e290c31bc0b4f76edbd58c3575b8420': 'Floating layer offset', '03c87fc8d49f865f0c2895d9ef3fe352': - 'Prompt the offset of floating layer position relative to "horizontal" and "vertical"', - '4e3e1e12e701890f4461808cc8f9d407': 'Accessible floating layer', + 'Prompt the offset of the floating layer position from the “Horizontal” and “Vertical” position.', + '4e3e1e12e701890f4461808cc8f9d407': 'Can enter the floating layer', '9d6246f57f6924410b0c68f2172420f9': - 'After closing, the floating layer is also closed after the mouse enters the prompt floating layer', - '90919000a708f8d66b7591e21b8e33f1': 'Show floating layer arrow', + 'With this option enabled, the floating layer is closed after your mouse is over the prompt floating layer.', + '90919000a708f8d66b7591e21b8e33f1': 'Display floating layer arrow', 'ed81f127f3b2aaff73a4f4dd5968fdcb': - 'After closing, the floating layer will be prompted and the pointing arrow will not be displayed', - 'b60e5222037939812dabb7da9979c27d': 'Delay opening', - '82bb338503938f2da52e91f7244a34a2': 'Delay closing', + 'With this option enabled, a prompt floating layer does not display the direction arrow. ', + 'b60e5222037939812dabb7da9979c27d': 'Delay in enabling', + '82bb338503938f2da52e91f7244a34a2': 'Delay in disabling', 'd55c726c99995e106ba5f3bb2b791a86': 'CSS class name of content area', - '0ce2605d7eed6782adb6bc62ffae2335': 'Floating layer CSS class name', + '0ce2605d7eed6782adb6bc62ffae2335': 'CSS class name of floating layer', 'edb5acdc9ee5e75fbc238ab4a0300eaf': 'Text content', - 'b1f824deef0d11e1fe3b73167a902e31': 'text format', - '74cfa7e77be335e8e5489a00ef099cb9': 'Plain text', - 'd482086f653d92fa8f1011d39738dba3': 'paragraph', - 'ae27115431c46fa374ac28200304f341': 'First level title', - 'de86106d6632da3fafb946f85ba91324': 'Secondary title', - '27f2c5c60f373a4380ec107ad8895f0e': 'Level III title', - 'c961174771e843ac4046b2b21c49424b': 'Level IV title', - 'a791de104833c917f801c1976b9af960': 'Level V title', - 'de2687f9a16fea3654be84c74137b805': 'Level VI title', + 'b1f824deef0d11e1fe3b73167a902e31': 'Text style', + '74cfa7e77be335e8e5489a00ef099cb9': 'Ordinary text', + 'd482086f653d92fa8f1011d39738dba3': 'Paragraph', + 'ae27115431c46fa374ac28200304f341': 'Level 1 heading', + 'de86106d6632da3fafb946f85ba91324': 'Level 2 heading', + '27f2c5c60f373a4380ec107ad8895f0e': 'Level 3 heading', + 'c961174771e843ac4046b2b21c49424b': 'Level 4 heading', + 'a791de104833c917f801c1976b9af960': 'Level 5 heading', + 'de2687f9a16fea3654be84c74137b805': 'Level 6 heading', '65862c97143c6c5479e0c623093a25d6': - 'It is used to display text or paragraphs. It supports template syntax and can be used to associate dynamic data.', + 'It is used to display a text or paragraph. Also, it supports the template syntax which can be used associate the dynamic data.', '38accbc34901ee6fd7bd7cd9f92f0a2a': - 'This is the template content current time <% - New date()% >', - '590e147e49735ebbfc51ae2175c36eb0': 'Please edit the content', + 'This is the current time of the template content <%- new Date() %>.', + '590e147e49735ebbfc51ae2175c36eb0': 'Edit content', '47ae015d04dda362d066e4f9ac09d647': - 'The inline mode uses the < code > span < / code > label to wrap the content by default, and the non inline mode uses the < code > div < / code > label as the container by default.', - '7fcf42edf5817042904f4a122ff77582': 'video', + 'In the inlink mode, the span label packaged content is adopted by default. In the non-inlink mode, the div label is used as a container by default.', + '7fcf42edf5817042904f4a122ff77582': 'Video', '1d5bbe0ab0d90a223c162fb375997a98': - 'Video control, which can be used to play various video files, including flv and HLS formats.', - 'f50bc38cf567e68250a8d15edfd8eb27': 'Video address:', + 'The video control can be used to play various types of video files, including flv and hls formats.', + 'f50bc38cf567e68250a8d15edfd8eb27': 'Video address', '733dda7842619a437b2486f6f71b0c10': - 'You can write static values or take variables, such as: < code > \\ ${videosrc} < / code >', - 'fb103fc64a0caeec24c707b9e7b50870': 'Video cover picture address', + 'You can write a static value and can also use variables, such as \\${videoSrc}.', + 'fb103fc64a0caeec24c707b9e7b50870': 'Video cover image address', '828f83110677bab8ef940f79f77b9049': - 'You can write static values or take variables, such as: < code > \\ ${videoposter} < / code >', + 'You can write a static value and can also use variables, such as \\${videoPoster}.', '351cb1f8ffbcc9d2d4c1f35505e15864': 'Mute', 'c7638cec349cb86eaeaeb983909fae0e': 'Live stream', '82f5f7bf3fb529360947cbb3b988037f': - 'If it is a live stream, please check it, otherwise it may not be played normally.', - 'df0134afa26415a560ae1320dee10c19': 'Video scale', - '0d682d277649d8c7952d36f836619a44': 'Show cover separately', + 'If it is a live stream, select it. Otherwise, it may not play normally.', + 'df0134afa26415a560ae1320dee10c19': 'Video proportion', + '0d682d277649d8c7952d36f836619a44': 'Display cover separately', 'ee1600dfbd6f9e86ca8761cf3fcf6a17': 'Video rate', '8e7124c3069460d4a8a04c3e3d9ce752': 'Video frame information', '1fc7d723b3a82ce32bfbbfa0a1761969': - 'For example, fill in: < code > \\ ${videoframes} < / code > to find the videoframes variable in the current scope. If it is an object, a list of video screenshots will be generated. Click to jump to the corresponding frame.', - '1fa035e78c5408c9079c20637acdb2bb': 'For rendering web component components', - '8df7c8a1f9f579f0ddc35bb4ee50f166': 'package', - '5acec91385a3b9093e3c803f6b0d869a': 'guide', + 'For example, enter \\${videoFrames}. You can search for the videoFrames in the current application domain. If it is an object, a video screen-shot list is generated. After you click the list, click the screen-shot to redirect to the corresponding frame.', + '1fa035e78c5408c9079c20637acdb2bb': 'It is used to render the Web Component.', + '8df7c8a1f9f579f0ddc35bb4ee50f166': 'Package?', + '5acec91385a3b9093e3c803f6b0d869a': 'Wizard', 'c8c0339a6f9e105cfef45b76b788b635': - 'The Form Wizard can split complex multiple form items into multiple steps and guide users to complete the filling step by step.', - '155149d24d20197bc0836bededf63abf': 'Click finish', - 'd384a3c931bdf315e4760c9fc5980e6d': 'Triggered on final submission', - '335d6c56c43204f9efcefe36f097d35a': 'Submitted form data', - '5be9e21eb0797c9faa053eb0237c36f9': 'Step switching', - 'd837ddaacb39a13806590da335e89397': 'Triggered when switching steps', + 'The form wizard can split multiple complex form items into multiple steps. Then, it can guide the user to fill the items step by step.', + '155149d24d20197bc0836bededf63abf': 'Click “Complete”', + 'd384a3c931bdf315e4760c9fc5980e6d': 'Be triggered during final submission', + '335d6c56c43204f9efcefe36f097d35a': 'Form data submitted', + '5be9e21eb0797c9faa053eb0237c36f9': 'Step change-over', + 'd837ddaacb39a13806590da335e89397': 'Be triggered during step change-over', '02f706d7510e68c96aa073852d90ec20': 'Step index', '33c627bce8015c50152941a5b6fada32': - 'Triggered when the final submission is successful', + 'Be triggered when the final submission is successful', '574f27f7223c86545a7724d18da96651': - 'Triggered when the final submission fails', - '8a427977d8135a019e4f1056120bfad2': 'Step submitted successfully', - 'd65dcca33a0118a0a5ce343264192ea6': 'Single step submitted successfully', - '5d7d91d9da162ee8fddd4d331d1434b5': 'Step submission failed', - '1c11d38e7ecf2facbf82f772d9222d45': 'Single step submission failed', + 'Be triggered when the final submission fails', + '8a427977d8135a019e4f1056120bfad2': 'Submit steps successfully', + 'd65dcca33a0118a0a5ce343264192ea6': 'Submit a single step successfully', + '5d7d91d9da162ee8fddd4d331d1434b5': 'Submitting steps fails', + '1c11d38e7ecf2facbf82f772d9222d45': 'Submitting a single step fails', '357954d848a9e2f12208673b3906a972': - 'Error information returned after a single step fails to submit', + 'Error information returned after submitting a single step fails', 'd6c21651c32c63c8d61c85944c2c91af': 'Submit all', '75e3dc4be4ae7aca7e1cebc13f7e486a': 'Submit all data', - '0c3005b490ef428660ca2265a714bdbb': 'Step by step submission', - '832efcc5c30746b84b910cde8630d491': 'Submit current step data', + '0c3005b490ef428660ca2265a714bdbb': 'Step-by-step submission', + '832efcc5c30746b84b910cde8630d491': + 'Submit the data of the current step data', 'eeb6908870e058bc23d52c1e405a054e': 'Previous step', 'fc5dbc5789e158384f634eb8ff466b46': 'Return to the previous step', - '38ce27d84639f3a6e07c00b3b4995c0e': 'next step', - '5fa57cab26a9d4e659c2e497018729ef': 'Positioning steps', + '38ce27d84639f3a6e07c00b3b4995c0e': 'Next step', + '5fa57cab26a9d4e659c2e497018729ef': 'Positioning step', 'fce22163929e8191b7de43699316f2a0': 'Switch to the specified step', - 'd529f7d5ed8956cd890173b4b5045a67': 'Switch to', - '4a0ff5106d129883b446a29b1dac6f47': 'step', - '78ada959bf5bdd6c70ee411c4cf23601': 'Target steps', - '098521c027a49fba5eb7f35430a6a9da': 'Step settings', - 'c5538d5c74235d2988e51e632c4eed0b': 'Add a new step', + 'd529f7d5ed8956cd890173b4b5045a67': 'Switch to the step ???', + '4a0ff5106d129883b446a29b1dac6f47': '??', + '78ada959bf5bdd6c70ee411c4cf23601': 'Target step', + '098521c027a49fba5eb7f35430a6a9da': 'Setting steps', + 'c5538d5c74235d2988e51e632c4eed0b': 'Add a step', 'dda36edbd4626e7fc868c14f9aa1556a': 'Other settings', '1fd41e410930ac58e748f7704c3a05f3': - 'If the interface returns the < code > step < / code > variable, and the value is numeric, such as < code > 3 < / code >, jump back to step 3 after submitting', - '938b484df1447d8f01f96e45125eb031': 'Whether it can be opened', + 'If the API returns the step variable and the value is of digit type, e.g., 3, redirect to Step 3 after the submission.', + '938b484df1447d8f01f96e45125eb031': 'Whether it is open or not', '20022725ac2c53869f7af6646ca4ba29': - 'Use the expression to determine whether the current step can be clicked. Additional available variables: currentstep indicates the current step.', - 'd4b8306441c00f01d4f044b3802c4266': 'Starting default', + 'An expression is used to decide whether the current step can be open by clicking it. Additional available variable: currentStep represents the current step.', + 'd4b8306441c00f01d4f044b3802c4266': 'Default start value', '37c0c041a0ad487d23c9f42c29f6d5e1': - 'Start with step. Templates can be supported, but only when the component is created can the template be rendered and the current number of steps be set. When the component is refreshed later, the current step will not change according to startstep', + 'Get started from Step N? It supports a template. However, you can render the template and set the current number of steps only during the component creation. Then, the current step cannot change according to the startStep when the component is refreshed.', '076bd7c0adfc4f5d2abde6b309d9f53b': - 'It is used to initialize wizard data. When the < code > step < / code > field is returned in the interface, you can control the default jump to the next step. Note that the numerical value must be a numerical type. When < code > submitting < / code > is returned and there is an asynchronous save interface in the current step, the wizard can initially enter the asynchronous submission state.', + 'It is used to initialize the wizard data. When the step field is returned from the interface, it is possible to control the default redirection to the Step N. Note that the value must be of number type. When submiting is returned and an asynchronous save interface exists in the current step, the wizard can initially enter the asynchronous submission status.', 'dbb19fea1965f7ef88cf1d1e0450c0f4': - 'It is used to save form data, which is triggered by clicking finish in the last step. < code > if the save interface has been set in the last step, the setting here is invalid', + 'It is used to save the form data. In the last step, click Finish to trigger the saving. If the save interface is already set in the last step, the setting here is invalid. ', '0f04a65952b58cbbc5ca6cba868c3bec': 'Previous button name', 'e54827ae56fcb690d879b9cdd29f0ac7': 'Next button name', 'abb7ba84b95c6c90341ac9c883fbc85b': 'Save and next button name', - 'bed196af058f458def957031f88abd09': 'Save and go to the next step', + 'bed196af058f458def957031f88abd09': 'Save and next step', '81b522590d543401ad15ae8a9155361d': 'Finish button name', '22c2aa6b59ab30c88fd84e8e5b3c4ad7': 'Previous step', '7b91646d808737e7138ad8f32a3b6cde': 'Next step', - '52b36576f88c31ed3971ca4d1fccd46f': 'step', - '8164ad50987e0508caf7638c663f8b7b': 'Step: {{@1}}', + '52b36576f88c31ed3971ca4d1fccd46f': 'Step', + '8164ad50987e0508caf7638c663f8b7b': 'Step {{@1}}', 'de5e232d10e2fa6218259289d4de4835': - 'Similar to containers, the only difference is that there will be an inner margin by default.', - '3954d7a9c047b7522ef92ddd5fc35852': 'Internal spacing', + 'Similar to the container, the only difference is that there is a layer of padding by default.', + '3954d7a9c047b7522ef92ddd5fc35852': 'Padding', '315dcc9412a4499cf846736fdbaaa72a': 'Child node', '5db7ca044a5179bf05428b283ac0452c': - 'After the style is set, the size setting will be invalid.', - 'c5e1f01e3d98b4db536765ae0d5b91a9': 'Click Select', - '7c57a563ab87bc6eb5edd8f5b953f499': 'Interface settings', - '6aa351f5dacd13d3d862d9c93e4a0241': 'Sending method:', - '8dc91bca9bc83efea73150e3478657fc': 'Sending conditions:', - 'd811d2650a17fb7cac710e9376645287': 'For example: this type == 123', + 'After you set the style, the size setting is invalid.', + 'c5e1f01e3d98b4db536765ae0d5b91a9': 'Click “Select”', + '7c57a563ab87bc6eb5edd8f5b953f499': 'Interface setting', + '6aa351f5dacd13d3d862d9c93e4a0241': 'Sending method', + '8dc91bca9bc83efea73150e3478657fc': 'Sending conditions', + 'bf9e242338d2c26b182aa6b9c015d84c': 'For example: this.type == "123"', '91ee84292a5bf5e59d3b6309f948f2f1': - 'Use an expression to set the sending condition of the request', - '55409342e28d37db86fb23efbd84a025': 'The format of the sender is:', + 'An expression is used to set the sending conditions for the request.', + '55409342e28d37db86fb23efbd84a025': 'The sending entity format is ', 'e06a14abe7ef66a8ead143db4ae9786e': - 'The form data format will be used automatically when there is a file in the sent content.', - '773a0e8384fd6f784088b829d7cc2f68': 'Set cache', + 'When a file exists in the sending content, the form-data format is used automatically.', + '773a0e8384fd6f784088b829d7cc2f68': 'Whether to set the cache', 'c1b110f13431df9662299f26def71df1': - 'Set the effective time of the request cache, unit: ms', - 'a18ea11244325dd3d20c5988bc7f6e39': 'File download', + 'Set the valid time of the request cache, which is in ms.', + 'a18ea11244325dd3d20c5988bc7f6e39': 'Download file', '68caa6082eda1745aa3f6b6d12efe423': - 'When the interface is binary file download, please check it, otherwise the file will be garbled.', + 'When the interface is for the binary file download, select it. Otherwise, the file shows unrecognizable codes.', '91831507074270c0da8a31ad9ff87495': 'Data replacement', '42be3061671b38468cc6ac84f6a0dd77': - 'The default data is the append mode, which completely replaces the current data after being enabled', - '4e7c006f535b13b9737ac310bc34193a': 'Initial load', + 'The default data is the append method. After being enabled, the current data is replaced completely.', + '4e7c006f535b13b9737ac310bc34193a': 'Initial loading', '3c743b8b2d662421117a2fb1c445425d': - 'After the interface is configured and initialized, the component will initially pull the interface data, which can be modified through the following configuration', + 'When you configure the initialization interface, the component fetches the interface data initially. It can be modified according to the following configuration.', '713ec76479b992652ed39364d3d03870': - 'For example: this ID indicates the initial load when there is an ID value', - 'e5e3131aaf96b6dd10574bc9beeaf934': 'Timed refresh ', - '81fe75a5216d4f612f1809c122f5145a': 'Regular refresh interval, unit: ms', - '83f16354dd1532422dc8b3581d096e7b': 'Scheduled refresh stop', + 'For example, this.id represents the initial loading when an id value exists.', + 'e5e3131aaf96b6dd10574bc9beeaf934': 'Timed refresh', + '81fe75a5216d4f612f1809c122f5145a': 'Timed refresh interval which is in ms.', + '83f16354dd1532422dc8b3581d096e7b': 'Stop timed refresh', '620f826a77f079c5683a9d3c59461ea1': - 'Scheduled refresh: once set, it will be refreshed all the time unless an expression is given. When the condition is met, the refresh will be stopped', + 'The timed refresh is always triggered once you set the timed refresh successfully. The refresh proceeds unless and until an expression is given and the conditions are satisfied.', '90260d55567cfd97ec2f085963a60bcf': 'HTTP configuration', '9ae7a582479116d4cb41e828fbd59798': 'Send data mapping', '0fcbf036057c6dd88b7b809daa0c5eb7': - 'When data mapping is not enabled, the API will send as much data as possible. If you want to control the data sent by yourself or need additional data processing, please enable this option', - 'eba0c4982948edc9b865292dc8abea33': - '

When the data mapping is not enabled, the sent data will be automatically cut into the white list mode. Please bind the data according to the configuration. For example, < code > {A: \\ ${a}, B: 2} < / code > < / P > < p > if you want to customize on the basis of default, please first add a key of ` & ` and a value of ` \\ $` as the first line < div > when the value is < code >__ Undefined < / code > means to delete the corresponding field, which can be combined with < code > {&: \\ $} < / code > to achieve the blacklist effect', - '7dd590a9d9e783e980d318bd52891905': 'Return result mapping', + 'When the data mapping is not enabled, it send as much data as possible when the API is sent. If you want to control the data sent by yourself, or need additional data processing, enable this option.', + '5414824fb8efdb7d59beae4bf95fdefd': + '

When the data mapping is not enabled, the sent data is automatically cut into the whitelist mode. Thus, what is sent is determined by the configuration. Bind the data, e.g., {"a": "\\${a}", "b": 2}

If you want to customize (???) based on the default(?????), add a Key as `&`. The Value is `\\$$` in the first row.

When the value is __undefined, it indicates that you need to delete the corresponding field. You can combine the {"&": "\\$$"} to achieve the blacklist effect.
', + '7dd590a9d9e783e980d318bd52891905': 'Return the result mapping', '7e295b6ff39ec7356e06c4534bfc4fb3': - 'If you need to do additional data processing on the returned results, please turn on this option', - '417125a06b1d2bfff025e83a4e067bf0': 'Send Adapter ', + 'If required to process the additional data for the return result, enable this option.', + '417125a06b1d2bfff025e83a4e067bf0': 'Sending adapter', '62efcb25e5b21da47c09780119da3458': - 'Function signature: (API) = > API, data in API In data, the API object is returned after modification.', - '6eb8944029108ad3b6bb3572a648fafa': 'Receive adapter', + 'Function signature: (api) => api, The data is in api.data. After being revised, return the api object.', + '6eb8944029108ad3b6bb3572a648fafa': 'Receiving adapter', 'e83cbec70e17988749c4a02a3b73f55c': - 'Function signature: (payload, response, API) = > payload', + 'Function signature: (payload, response, api) => payload', 'be47bd270e7756d4233e59bbe4cd5b96': 'Request header', '9e8c8bc795ad25fc992cee9d81a8c46d': - 'You can configure the headers object and add custom request headers', - 'be604f8b7ec5e80288b091ee12bbab7f': 'spot', + 'You can configure the headers object and add a custom request header.', + 'be604f8b7ec5e80288b091ee12bbab7f': 'Point', '9adcfe38533f68035b2bf7831d310381': 'Ribbon', 'cbc608353218e1d63e6f47c9db1eae64': 'Text content', '2613e43b46ca52dabc232054c1611c80': 'Corner mark theme', - 'd8c7e04c8e2be23dd3b81a31db6e04f1': 'information', - 'e4f10a8916d4c5375529e21d9b66e5f9': 'Corner marker position', + 'd8c7e04c8e2be23dd3b81a31db6e04f1': 'Information', + 'e4f10a8916d4c5375529e21d9b66e5f9': 'Corner mark position', 'ebc556841a9264ebaab728efad7af777': 'Offset', '81cdf47e8d8adfc70faac2cbc55e4067': - 'Offset of corner mark position relative to "horizontal" and "vertical"', - '7ba3812c61e01b3049404a46fac8deda': 'Custom corner mark size', + 'Offset of corner mark relative to the “horizontal” and “vertical” positions', + '7ba3812c61e01b3049404a46fac8deda': 'Customize corner mark size', '29e13ada94b145a1359291d5e1564655': 'Capping number', '42becf09dfd209746b66726e7d21d014': - 'It shall take effect when the text content is numbers', - 'b599979e9a40823363451aeaadc0723f': 'animation', - 'b8c467fce096a649583c0bc9d9281a5c': 'Angle mark', + 'It takes effect when it is a number in the text content.', + 'b599979e9a40823363451aeaadc0723f': 'Animation', + 'b8c467fce096a649583c0bc9d9281a5c': 'Corner mark', 'e35abd1e31f244eb08d1f62e6f825df2': 'Bind variable', 'f7d2996639d97b4a03fc0e40e2eb853a': 'Shortcut key', - '71dc8feb597052ecd0e73c9062eecdeb': 'not configured', - 'e8755fb1e985a5d26df0fce1f0b7b0f8': 'Add options', - '51d8a85a3c59453eed398eb8f5d35585': 'Please select the default value', - 'cb73fbd12620c6ff4d7e5d1047c3be4d': 'Please enter a static default', - '303efd5ba79e639001b4328cd266dddc': 'Click Configure expression', + '71dc8feb597052ecd0e73c9062eecdeb': 'No configuration', + 'e8755fb1e985a5d26df0fce1f0b7b0f8': 'Add option', + '51d8a85a3c59453eed398eb8f5d35585': 'Select default value', + 'cb73fbd12620c6ff4d7e5d1047c3be4d': 'Enter static default value', + '303efd5ba79e639001b4328cd266dddc': 'Click to configure expression', '7d92f998d24da41b58db140b1864f773': - 'Current expression exception (circular reference exists)', - 'b5cc1cd60cd694f45142dc52a5bf53fc': 'Value type mismatch', - '01820262aa9ad5b130f8f5b86bfd2968': 'Custom options', - 'c8158b3cad598b0b5939788ca4efb298': 'Interface acquisition', - 'b4fdf79b8f54856b072ec3874b830d1f': 'Please enter the display text', - 'f4ab507e2fa2d2bd66bcdeafd9fef797': 'The default is the same as the text', - 'aafda9e8f6b7b613680677c513edb7a6': 'Uncheck', - '0560b060c438e9326f92718ccbc3f95b': 'This option is selected by default', - '5d26b8a41e805204c9dcd5ea7e23b150': 'Please enter text / value', - '22de6ef85ed60ec54dbdc1d8583e5104': 'Batch add', - '421252e16c6cb544fe9ce0be94a190e0': 'Batch add options', - '55c4cbeae7ffae65d211bc5e9968dc28': - 'Each option is listed in a single row, and all items with non duplicate values are added as new options< Br / > each line can be set with a space to set the label and value respectively, for example: Zhang San Zhang San', - '1e2f96a69fbef8caa8823a3067ebbdc7': 'Please enter options', - 'a4f1ddbbfc96930d24e4b54cb815b62b': 'No options', - '5b4ffa2eadaf629b833b37a3e8742b2c': 'No block', - '3569877e498155b59ef5299870c43f80': 'average', - '15e1fdd9d5cc4dc595fba0eee0719cba': 'In steps', - '56d37871117270ce5d157a8de90dacd6': 'Keep consistent with block division', - '6903085e7f31286560e4a2e160beac42': 'Block', - '7145575ab9e3b4529eea61fe5fe76d0e': 'Number of blocks', - '1c8737ec7da60e12207c9eb04ccabcd4': 'New block', - 'dc4c91dfaa3b760147bd92e648560af4': 'subscript', + 'The current expression becomes exceptional. The loop reference exists.', + 'b5cc1cd60cd694f45142dc52a5bf53fc': 'The numeric type do not match.', + '01820262aa9ad5b130f8f5b86bfd2968': 'Customize option', + 'c8158b3cad598b0b5939788ca4efb298': 'Get API', + 'b4fdf79b8f54856b072ec3874b830d1f': 'Enter display text', + 'f4ab507e2fa2d2bd66bcdeafd9fef797': + 'Keep consistent with the text by default', + 'aafda9e8f6b7b613680677c513edb7a6': 'Cancel selection', + '0560b060c438e9326f92718ccbc3f95b': 'Select this item by default', + '5d26b8a41e805204c9dcd5ea7e23b150': 'Enter text or value', + '22de6ef85ed60ec54dbdc1d8583e5104': 'Add in batch', + '421252e16c6cb544fe9ce0be94a190e0': 'Add options in batch', + 'c130bd5b55edefdaf8923269e9a52439': + 'Each option is listed in a separate row. All items with non-repeated values are added as new options.
You can set the label and value for each row using a space, respectively, e.g., "张三 zhangsan"', + '1e2f96a69fbef8caa8823a3067ebbdc7': 'Enter option content', + 'a4f1ddbbfc96930d24e4b54cb815b62b': 'No option', + '5b4ffa2eadaf629b833b37a3e8742b2c': 'No chunking', + '3569877e498155b59ef5299870c43f80': 'By average', + '15e1fdd9d5cc4dc595fba0eee0719cba': 'By step width', + '56d37871117270ce5d157a8de90dacd6': 'Keep consistent with the chunk', + '6903085e7f31286560e4a2e160beac42': 'Chunk', + '7145575ab9e3b4529eea61fe5fe76d0e': 'Number of chunks', + '1c8737ec7da60e12207c9eb04ccabcd4': 'Add chunk', + 'dc4c91dfaa3b760147bd92e648560af4': 'Subscript', '662d8b49913650f543c024d4d02009a2': 'Add subscript', - '69fbb2e5fc9eb3ba06096cbedbf5a622': 'condition', - '8baf21fa26d6d24b4faa872953275d8d': 'static state', - '8494b2036d3ccfe6102e930d9d8a3397': 'Please enter {{@1}} condition', + '69fbb2e5fc9eb3ba06096cbedbf5a622': 'Conditions', + '8baf21fa26d6d24b4faa872953275d8d': 'Static', + '8494b2036d3ccfe6102e930d9d8a3397': 'Enter {{@1}} conditions', '311f6d1fa5f13b0e280d7b3c9d40c5be': 'Expand more', '38aa9dc2a0f14555322061d2ff997349': 'More configurations', - '355c54009e364bf4396be424fba10e0f': 'Keep at least one node', + '355c54009e364bf4396be424fba10e0f': 'At least retain a node', '9046ad86a1a47f16e954f2ec38fb680a': - 'The hierarchy is too deep. It is recommended to use the [interface acquisition] management option', - 'f69608e93e9728f4fbef583bfa1326c1': 'Option name:', + 'Because the level is too deep, it is recommended to use the [Get API] management option.', + 'f69608e93e9728f4fbef583bfa1326c1': 'Option name', '684a0d1aeca4e9acff89221b57826d4d': 'Option value', - 'bbcbe681f9225f8adf3663f563a9f294': 'Add sub option', - 'c08dbaf90614532aed9f526e58b7fef2': 'Options management', - '442781667396d6eff51113f482d89e54': 'Add verification rule', - 'd7a169e81b60ee08c82b5d9de473e362': 'Error message:', - '9d9cf35ff82a6d960538ecd650e09945': 'System default prompt: {{@1}}', - '5ef6ce89f52b4331b080a0f3019414f3': - 'System defined prompt is used by default', - 'db1cac8e2f6206e8f179b1ff47a676df': 'Data not matched', + 'bbcbe681f9225f8adf3663f563a9f294': 'Add sub-option', + 'c08dbaf90614532aed9f526e58b7fef2': 'Option management', + '442781667396d6eff51113f482d89e54': 'Add check rule', + 'd7a169e81b60ee08c82b5d9de473e362': 'Error prompt', + '9d9cf35ff82a6d960538ecd650e09945': 'Default system prompt: {{@1}}', + '5ef6ce89f52b4331b080a0f3019414f3': 'Use system-customized prompt by default', + 'db1cac8e2f6206e8f179b1ff47a676df': 'The data match fails', 'e9908cdf79e965f6907ce9f291cdfcf8': 'Action configuration', - 'be5fbbe34ce9979bfb6576d9eddc5612': 'preservation', + 'be5fbbe34ce9979bfb6576d9eddc5612': 'Save', 'd1d9049139d870edd490215530d90458': 'Execute action', - '9eac7e07ca0a3181766e5ecc70d20727': 'Please search for execution action', - '0174bdde9517fa331bf7d716a553e023': 'Action description:', + '9eac7e07ca0a3181766e5ecc70d20727': 'Search for the running action', + '0174bdde9517fa331bf7d716a553e023': 'Action description', '0aeca07a02601a8e701a46d1a8b5ce43': 'Basic settings', - 'da1ed600ce65be863766444e60c2da05': 'conditions for execution', - '13b2de1073f76444c49d2c6a21e46e26': 'This action is executed by default', - 'd80bc0fcbfb250480320b683e48b1467': 'Select components', + 'da1ed600ce65be863766444e60c2da05': 'Execution conditions', + '13b2de1073f76444c49d2c6a21e46e26': 'Execute this action by default', + 'd80bc0fcbfb250480320b683e48b1467': 'Select component', '07682f1424e400c467accdb556d59e1c': 'No configuration content', - '2e3ca80a58643bc28e87cc3b17bc9d80': 'Please select execute action', - '7030ff64701a938becbc5aa67ddb86e8': 'error', - 'dec2eb7145e149f281cb7e75fbe8972a': 'Jump link', - 'ae10a948eca808b3dd77506b24f3fd0e': - 'Jump to the page with the specified link', - 'c7a34a3465d1beea2f85d53edcff8235': 'Jump to', - '0b72392143e4038e98128cb0f6f679b3': 'Page parameters', + '2e3ca80a58643bc28e87cc3b17bc9d80': 'Execute this action', + '7030ff64701a938becbc5aa67ddb86e8': 'Error', + 'dec2eb7145e149f281cb7e75fbe8972a': 'Redirection link', + 'ae10a948eca808b3dd77506b24f3fd0e': 'Redirect to the specified page', + 'c7a34a3465d1beea2f85d53edcff8235': 'Redirect to', + '0b72392143e4038e98128cb0f6f679b3': 'Page Parameters', 'c068b579db3bf0a553bd0af4f81cc14f': 'Parameter name', 'bfed4943c5f487de1b63a82f7230cce2': 'Parameter value', - '56aa76ab3c987377e855ae2c6c612050': 'New window opens', - 'fd5fb471ecce1eea63a6a95b6707f815': 'Open page', + '56aa76ab3c987377e855ae2c6c612050': 'Open a new window', + 'fd5fb471ecce1eea63a6a95b6707f815': 'Open a page', '67e21dd387607ae3fb59846504fa2c4c': 'Open the specified page', - 'd7098f5050f017673319c5db1473ada7': 'open', - '39e107b7c4aa580f913ccbebc00f7534': 'Refresh page', - '261242fe62b18b620419802c7dd7da7f': 'Trigger browser refresh page', - 'ca180138a862543561d3a2c4f08b2e1b': 'Fallback page', - '5f6b9e7a050ae3f34b38191435e14b24': 'Browser fallback', - '27e0ca877865238aad6940481b2984d4': 'Back to previous page', - 'f80d12dcd65429fd28841e768062d3c2': 'Pop up message', - '0561589c26e732981f29709a9b574234': 'Open the pop-up window', + 'd7098f5050f017673319c5db1473ada7': 'Open', + '39e107b7c4aa580f913ccbebc00f7534': 'Refresh the page', + '261242fe62b18b620419802c7dd7da7f': 'Trigger the browser to refresh the page', + 'ca180138a862543561d3a2c4f08b2e1b': 'Return page', + '5f6b9e7a050ae3f34b38191435e14b24': 'Back from browser', + '27e0ca877865238aad6940481b2984d4': 'Return to the previous page', + 'f80d12dcd65429fd28841e768062d3c2': 'Dialog&Message', + '0561589c26e732981f29709a9b574234': 'Popup', '256dbc5161ae393ec8a0e83ae6cf9469': - 'Open the pop-up box, and complex interaction design is supported in the pop-up window', - '6cff4b6d794cc17f5d24dbe0d21e5732': 'pop-up notification', - '507c1d40c5d6b990cf8c832b0a91cadb': 'Pop up content', - 'a532be3ad5f3fda70d228b8542e81835': 'Deconfiguration', - 'b67cbb1ca7439053f06d59aac5e410dc': 'Drawer contents', - '3b02248ca3790e356e47b6900c0e3931': 'Close pop-up window', - 'f33c2c6ff58bcec40d3e74e591bb3df2': 'Close the current pop-up window', - 'e495f416b83e4c7ff3c66ec3be96a76f': 'Message reminder', - '61d7aaa88181c527cfb936d4c686d267': 'Pop up message reminder', + 'Open popout. The popup supports the complicated interaction design.', + '6cff4b6d794cc17f5d24dbe0d21e5732': 'Dialog', + '507c1d40c5d6b990cf8c832b0a91cadb': 'Popout content', + 'a532be3ad5f3fda70d228b8542e81835': 'Configure', + 'b67cbb1ca7439053f06d59aac5e410dc': 'Drawer content', + '3b02248ca3790e356e47b6900c0e3931': 'Close', + 'f33c2c6ff58bcec40d3e74e591bb3df2': 'Close the current popup window', + 'e495f416b83e4c7ff3c66ec3be96a76f': 'Message prompt', + '61d7aaa88181c527cfb936d4c686d267': 'Pop up message prompt', '4e5242a645864528e10f04dc2326a5c4': 'Message:', '6d00710a2528332bfcac14b58e412042': 'Message type', 'b87b77561e776367e6756e11ea652217': 'Message content', - '43ab9af06e1e0f0b2a8767b46cf8b1cf': 'Title Content', - 'f41a94bb85c5223181c4cdf83ea9021b': 'Duration (MS)', - 'a0a837f2873de80bc9ec353c30e73171': 'Display location:', - 'f3296f64a8a1330d7a07f1d269a1db92': 'Upper left', - 'b97a5adf068bee6c852db9dcea3a9799': 'so-so', - 'eafeba264b6338939f11f1b1adf40d2b': 'Upper right', - 'd429ffb093e9aa3bf80da125f1be318c': 'Lower left', - 'c241aa8f427118a719b94cbd8f2bb22d': 'lower-middle', - '9cd707caffdfb314d939298f2f2c267c': 'lower right', - '8c8fbec263e20f087555c9abcb6dd07a': 'Show close button', + '43ab9af06e1e0f0b2a8767b46cf8b1cf': 'Title content', + 'f41a94bb85c5223181c4cdf83ea9021b': 'Duration (ms)', + 'a0a837f2873de80bc9ec353c30e73171': 'Display position', + 'f3296f64a8a1330d7a07f1d269a1db92': 'Top left', + 'b97a5adf068bee6c852db9dcea3a9799': 'Middle upper', + 'eafeba264b6338939f11f1b1adf40d2b': 'Top right', + 'd429ffb093e9aa3bf80da125f1be318c': 'Bottom left', + 'c241aa8f427118a719b94cbd8f2bb22d': 'Middle lower', + '9cd707caffdfb314d939298f2f2c267c': 'Bottom right', + '8c8fbec263e20f087555c9abcb6dd07a': 'Display close button', '3f3a016027e540ef10a16dbd49fffde9': 'Display icon', - '0cd902f953656adb29985b68e6fc9754': 'Configure and send API requests', - '1535fcfa4cb8e4d467127154977e9788': 'send out', + '0cd902f953656adb29985b68e6fc9754': 'Configure and send an API request', + '1535fcfa4cb8e4d467127154977e9788': 'Sending', 'c14a21300b61bb83b4420a1586497951': 'Request:', - '88bdaf32c27ab169d3d686b86b3fae99': 'Configuration request', - 'c5dec2a8d2308c1c15ec2e5441fd721c': 'silent mode ', + '88bdaf32c27ab169d3d686b86b3fae99': 'Configure request', + 'c5dec2a8d2308c1c15ec2e5441fd721c': 'Static mode', '4abbdba4b6b06ce00702a255bd89c92c': - 'If checked, the service request will be sent in silent mode, that is, no success or error prompt will pop up.', - 'e3b49b5bbbdea05598525e91dbdfa638': 'Store results', + 'After being selected, the service request is sent in silent mode. That is, no success or error prompt pops up.', + 'e3b49b5bbbdea05598525e91dbdfa638': 'Storage result', '4dca05af026848011eedee1b53efa61c': - 'Please enter the variable name to store the request result', + 'Enter variable name of storage request result', '4da82260041107e5780bcbb3a14ef791': - 'If you need to send requests multiple times, you can modify this variable name to distinguish the results returned by different requests', - '0d83078816aa273f2941c9b55ec82bf3': 'data', + 'If you need to perform multiple sending requests, you can modify this variable name to distinguish the results returned by different requests.', + '0d83078816aa273f2941c9b55ec82bf3': 'Data', '3f9e257178738d5d180ddc2996809c10': 'Status identification', '99c74120cc62f4bf31d661e3212b7121': 'Prompt information', '89049706952412d790b801def284629e': 'Trigger download file', - 'bb79667f37035e9562ec6bcffd6cf8ef': 'assembly', + 'bb79667f37035e9562ec6bcffd6cf8ef': 'Component', 'c852fb60f1b8ce921c3def1eba000bc5': 'Component visibility', '1bd4cfded5e11a7a8ea4dcfd2fa17e15': - 'Controls the display / hiding of the selected components', - 'dce5379cb978a8259ecfca8f08f00817': 'hide', - 'edf25860e3d457eb8ca9cb5dca06dfd7': 'Show / hide', + 'Control the display and hide of the selected component', + 'dce5379cb978a8259ecfca8f08f00817': 'Hide', + 'edf25860e3d457eb8ca9cb5dca06dfd7': 'Display/hide', '12c8d50c55eeec7059ddd5c303e34f77': 'Component availability', '5e75800641ec5c1198092bcf9d34f180': - 'Controls the enabling / disabling of the selected component', + 'Control the enabling and disabling of the selected component', '7854b52a889b3ef0590d9f542efeb4c8': 'Enable', - 'd86d5919f595226b7a1e8264635ca23d': 'Enable / disable', + 'd86d5919f595226b7a1e8264635ca23d': 'Enable/disable', 'c5a9b6e8c522de8a14ad7fab51c1a1e3': 'Refresh component', 'be4b778e7f5aa6aa5a811d7db4e1a8b3': - 'Request and reload the data of the selected component', + 'Request and re-load the data of the selected component', '694fc5efa9e1d1c2c5eb6525e1c7fb29': 'Refresh', 'ea4d3723b350b2cb8f4c1a615e1b7df1': 'Set component data', - 'cb7add16ba6f0cd65d5ddcad71359813': 'Set data of data container or form item', - 'b91ebe714155c83b6d3bc02b675a31e9': 'Data of', - '08ce6e74bb4a64753f1af2e5c836debb': 'Assignment method:', - '139294edcce271bf483dda437c421c29': 'Specify sequence number', + 'cb7add16ba6f0cd65d5ddcad71359813': + 'Set the data of the data container or form item', + 'b91ebe714155c83b6d3bc02b675a31e9': 'Data', + '08ce6e74bb4a64753f1af2e5c836debb': 'Assignment method', + '139294edcce271bf483dda437c421c29': 'Designate serial number', 'a7b0b80a7bea1e5e973967c179866ef0': 'Enter serial number', - 'e887792fbbd65d21e43e832a5cd63aac': - 'Please enter the serial number to be updated', + 'e887792fbbd65d21e43e832a5cd63aac': 'Enter the serial number to be updated', 'e3a6f648390842e0c7aa82d0f2c3f6e3': 'Field assignment', 'a25657422b40023f2731619587940bc7': 'Variable name', - 'a33903526e8fb3d1ac3066da70e7941e': 'field value', + 'a33903526e8fb3d1ac3066da70e7941e': 'Field value', '82986a4cab1d0efdbc23b3ac5f0fd509': 'Clear form data', 'f457845da8c119a8688e333a3554284f': 'Reset form data', - 'a84a1311bea7370f1749341ffa6f75e1': 'Verify form data', - 'b7579706a363e5f23b1040fecfbcb677': 'check', - '51325230409d4b7c64aaeb3db9904801': 'Component characteristic action', + 'a84a1311bea7370f1749341ffa6f75e1': 'Check form data', + 'b7579706a363e5f23b1040fecfbcb677': 'Check', + '51325230409d4b7c64aaeb3db9904801': 'Component feature action', '98d130cb9a360df782f6510abacbc022': - 'Trigger the characteristic action of the selected component', - '557d01c07aa7c4450a414932e6c1ed2a': 'Copy text content to pasteboard', + 'Trigger the feature action of the selected component', + '557d01c07aa7c4450a414932e6c1ed2a': 'Copy the text content to the clipboard', '5aa4369ec61715ddef3641992fad0d4d': 'Copy content:', 'ac04259507be8ba6b891dc9dc208f491': 'Content template', - 'c7f16d729f3bca8f6936416884a74fb8': 'Custom JS', + 'c7f16d729f3bca8f6936416884a74fb8': 'Customize JS', '1b5a6299ef404c1f7b4292c290b80f55': 'Customize action logic through JavaScript', '9a2ee7044ff04234a8892a13583d14b6': 'Variable value', 'fe9e25f4e4b3aeefeb9b7a9c368ede7e': 'All data', - '186c8d63db1c09c38bcfd048fb15846e': 'Scroll to previous', - 'd9b6b8e29d63ac6bb7a0381e994ebcb5': 'Return to the previous step', - '47b9cbf9f3a3f08264b19f4a1228e865': 'Scroll to next', - '211ae8c8666f8b803282a74f90fb0dc6': 'Open prompt dialog box', - '56eafb82d11c72b65efe07b9bedb5c19': 'Open the confirmation dialog box', - 'e777eb796f8a02e97a891fde43d10ce4': '@(1) variable', - 'cc6aeb073ebc3cb29734a49164f8964c': 'Page variable', - '979a50681e278dcc0be18f68459e8217': 'System variable', + '186c8d63db1c09c38bcfd048fb15846e': 'Scroll to previous page', + 'd9b6b8e29d63ac6bb7a0381e994ebcb5': 'Return to previous step', + '47b9cbf9f3a3f08264b19f4a1228e865': 'Scroll to next page', + '211ae8c8666f8b803282a74f90fb0dc6': 'Open prompt dialog', + '56eafb82d11c72b65efe07b9bedb5c19': 'Open confirmation dialog', + 'e777eb796f8a02e97a891fde43d10ce4': '{{@1}} variable', + 'cc6aeb073ebc3cb29734a49164f8964c': 'Page variables', + '979a50681e278dcc0be18f68459e8217': 'System variables', '8deee3cdecdf06a05d22fcacc7031492': 'Component action', '9654916723a8d1d82f5ab9d2911edf93': - 'Warm tip: after adding the event action below, the event action below will be executed before the action of the old version. It is recommended to migrate to the event action mechanism uniformly to help you achieve more flexible interaction design', - '88f7a3aef4888dd507482aedc02bb808': 'Configure actions (Legacy)', - 'c500cfabdec9b2761fe9f1aa543933eb': 'action', + 'Tip: After you add the following event action, the following event action should be done earlier than the old version action. It is recommended to you migrate it to the event action mechanism, helping you achieve the more flexible interaction design.', + '88f7a3aef4888dd507482aedc02bb808': 'Configuration action (old version)', + 'c500cfabdec9b2761fe9f1aa543933eb': 'Action', 'fa476b76ccbd4ac9316f0fd80257b77a': 'Reset and submit', 'c0a8088f2bbc993500c5a01b0f0a1887': 'Data source variable', '71448f8c10c79b32312b7e3abe9104ef': '({{@1}} result)', - 'f4381cd48d8cb4307bc140613ea57d48': '@(1) results', + 'f4381cd48d8cb4307bc140613ea57d48': '{{@1}} result', '0b446df580ad309e7c26e5242eddafac': 'Event variable', '1fab2b4934161e87a1f0133b9d5bc1b5': 'Add event', '4db5110d41293fef57f5a1f364187896': - 'Go and add events to make your product move', + 'Go to add an event quickly and start you product.', '5baa9ac58c00a7fb818d4a113d3f8cff': - 'Picture upload address is not configured', - '7241f67ee4fa8e0adb5d602b5f9516df': 'Start color:', - '9f1b854df133912bb46203e84f0594ee': 'Starting color', - '8ea65e3d4e52c871d1c58b1926380ab0': 'End color:', + 'The image upload address is not configured.', + '7241f67ee4fa8e0adb5d602b5f9516df': 'Start color', + '9f1b854df133912bb46203e84f0594ee': 'Start color', + '8ea65e3d4e52c871d1c58b1926380ab0': 'End color', '0c46a7f77a7247a9cc6d6e995c0ea8cb': 'End color', - 'c7706039e8ad85969df13ce3458d199a': 'Gradient angle', + 'c7706039e8ad85969df13ce3458d199a': 'Gradually-changed angle', 'f4882cbf65b232af449d7289354b9a16': - '*Angle range: 0-360 degrees, 0 degrees means gradual change from bottom to top', - '5b9ea77bb6ce2d6c82e97b120d757201': 'Click or drag the image to upload', - '61a87a021904dc65995e99d4c476cb21': 'Picture location:', - '737391648d1216a1f84ac9ff52da5aa2': 'Picture size:', - '0f1fd39145bad43e18f81337e0144c8c': 'full', - 'e0d76824dfe5e09c7068b44f605266d2': 'appropriate', - 'e39d3b7a3600d9327221a637f910fc0b': 'stretching', + '* The angle ranges from 0 to 360 degrees. 0 degree indicates that the angle changes gradually from the bottom to the top.', + '5b9ea77bb6ce2d6c82e97b120d757201': 'Click or drag image to upload', + '61a87a021904dc65995e99d4c476cb21': 'Image position', + '737391648d1216a1f84ac9ff52da5aa2': 'Image size', + '0f1fd39145bad43e18f81337e0144c8c': 'Fill-up', + 'e0d76824dfe5e09c7068b44f605266d2': 'Appropriate', + 'e39d3b7a3600d9327221a637f910fc0b': 'Stretch', 'e1ff2c83c09f2dc6cc74ae02ab6b8222': 'Tile', '7ddd9dbf373f760acfd63778469b5c4b': 'Tile horizontally', - '4ab931e0f709f9b493e660156925a113': 'Vertical tiling', + '4ab931e0f709f9b493e660156925a113': 'Tile vertically', '21f3929a4484e6e992af64ec1dd3a576': 'Original size', - 'a80a25b59908402cf7ee31a07d0e7739': 'border-left ', - 'e0dfa25ebceabddb2180720d36d4c3b6': 'border-top ', - '57463587977a534f7859eb9d7c536629': 'border-right ', - '154d5216e42c916884431f0eea951999': 'bottom', - 'a8b0c20416853bda54120bf19477ad11': 'whole', - 'df68a5dc8f8847179b7afdf943f80796': 'top left corner', - 'e717b4ae480e7c073fd5a44647a7f0da': 'Upper right corner', - '2a97dfb2d236c87c41fd588f006111dc': 'lower left quarter', - '1c9bc9dab33944e953412f8b22cb024a': 'Lower right corner', - '4dbe7c40ee82a56bb7a8152d4bbc07f9': 'Fillet size', - 'bb1531cc9643230ba0cbd7465818b52f': 'Border Linetype', + 'a80a25b59908402cf7ee31a07d0e7739': 'Left border', + 'e0dfa25ebceabddb2180720d36d4c3b6': 'Top border', + '57463587977a534f7859eb9d7c536629': 'Right border', + '154d5216e42c916884431f0eea951999': 'Bottom border', + 'a8b0c20416853bda54120bf19477ad11': 'All', + 'df68a5dc8f8847179b7afdf943f80796': 'Top left corner', + 'e717b4ae480e7c073fd5a44647a7f0da': 'Top right corner', + '2a97dfb2d236c87c41fd588f006111dc': 'Bottom left corner', + '1c9bc9dab33944e953412f8b22cb024a': 'Bottom right corner', + '4dbe7c40ee82a56bb7a8152d4bbc07f9': 'Rounded corner size', + 'bb1531cc9643230ba0cbd7465818b52f': 'Border line type', 'cc4c575642609fbf059a5df81eb86bfc': 'Solid line', 'b1e0ebac23ed95807ecc566da3ffab48': 'Dotted line', '61f6f4fc0b806ac9d41ad0792e6155f6': 'Dashed line', - 'bade10099f8447210ce7b97fa106b527': 'line width', - '5babfafd769570de3bba47605753361a': 'Border width', + 'bade10099f8447210ce7b97fa106b527': 'Line width', + '5babfafd769570de3bba47605753361a': 'Border width ', 'af208c560d926f0daf4b2ce2d396505d': 'X-axis offset', 'b6b46126bfb0851ca10e74541c5d7be1': 'Y-axis offset', - '4a32b29da68a6ee204b3743e0fab8bb3': 'Blur radius', - '22d460dcddb7fda718bc62034c459158': 'Diffusion radius', + '4a32b29da68a6ee204b3743e0fab8bb3': 'Blur', + '22d460dcddb7fda718bc62034c459158': 'Spread', 'b24a723b73f96ab3340fe9502370ee13': 'Inner shadow', - '1cbac849ccc41edb12271d9fe9b65b5f': 'Shadow color', - 'e94d6fc08a97892ff9d8c8d9a8d9e0ab': 'Set shadow color', - 'a5d833839a610994dc4752e2d91f4192': 'Display type:', - '2c86d897c71cc9c2e648222a200d5bbb': 'block', - '0b0052c532b457b2d032c9f56af9e4e5': 'Intra bank block', + '1cbac849ccc41edb12271d9fe9b65b5f': 'Shadow Color', + 'e94d6fc08a97892ff9d8c8d9a8d9e0ab': 'Set Shadow Color', + 'a5d833839a610994dc4752e2d91f4192': 'Display Type', + '2c86d897c71cc9c2e648222a200d5bbb': 'Block', + '0b0052c532b457b2d032c9f56af9e4e5': 'Inline block', '70d457cd36de1acefe7d9587f3f862c9': 'Inline element', - 'b5f55e5c7101d9be5218d63850e1ad8b': 'Flexible layout', - 'a648bd0b9eb3c86e39cabeac484917a5': 'Flexible layout configuration', - '452dba7c65211630f8066b070fdf157f': 'Wrap', - '098d946b6f0cc85110c54cfac8691cc3': 'Spindle direction', + 'b5f55e5c7101d9be5218d63850e1ad8b': 'Flex layout', + 'a648bd0b9eb3c86e39cabeac484917a5': 'Flex layout configuration', + '452dba7c65211630f8066b070fdf157f': 'Automatic line wrapping', + '098d946b6f0cc85110c54cfac8691cc3': 'Flex direction', 'aee1aeb8d65547f8a368bd7364cacf12': 'Default level', - '4c38eb0fea71a9506fd434a7ac5cb1c2': 'Default vertical', + '4c38eb0fea71a9506fd434a7ac5cb1c2': 'Default to vertical', 'ae07817b441091793c8af39256908373': 'Horizontal reverse', '618515fd68ecfc4a5b58462f0cb9666b': 'Vertical reverse', - '58554717be87c1f8a6d6c769f74f0679': 'Spindle alignment', - 'dfc71567fb75f5c73da377013a223168': 'Leave blank', - 'eb5ec10ef70689996dd5cd66e17a64aa': 'End to end alignment', - 'ba3a7db7cc1ac5a908358f62fdbb21de': 'Element equal spacing', - 'f6cbf29fdb5e94052a22986533c7267f': 'Cross axis alignment', - '6b461e0a4ffef9438fb8f01369091cac': 'Font type:', - '2539fe0e6d40a023dd95d0bd71d10bc9': 'Please select a font', - '690660d9dbd7312ad2825e554736e2f8': 'Font color:', - '5f15efdc32badce0902c46a7a0105c51': 'font size', - '4c5fead0489fbc7651c91400dec5d379': 'Text style', - 'd1b490c01d24a1a70e9c83a29ac38fde': 'Text position:', - '4ae7f423d9ed9ffa48c3e404f96bb51f': 'Text typesetting', - '65786fea9d354015d3a2724086f7f3d6': 'default font', - '1a63ac23010e0573f7c0a8cd3314b8c6': 'Examples:', + '58554717be87c1f8a6d6c769f74f0679': 'Main axis alignment', + 'dfc71567fb75f5c73da377013a223168': + 'Leave a blank at the starting and end points', + 'eb5ec10ef70689996dd5cd66e17a64aa': + 'Alignment at the starting and end points', + 'ba3a7db7cc1ac5a908358f62fdbb21de': 'Equal spacing between elements', + 'f6cbf29fdb5e94052a22986533c7267f': 'Cross-axis alignment', + '6b461e0a4ffef9438fb8f01369091cac': 'Font Type', + '2539fe0e6d40a023dd95d0bd71d10bc9': 'Select Font', + '690660d9dbd7312ad2825e554736e2f8': 'Font Color', + '5f15efdc32badce0902c46a7a0105c51': 'Font Size', + '4c5fead0489fbc7651c91400dec5d379': 'Text Style', + 'd1b490c01d24a1a70e9c83a29ac38fde': 'Text position', + '4ae7f423d9ed9ffa48c3e404f96bb51f': 'Text Type Setting', + '65786fea9d354015d3a2724086f7f3d6': 'Default font', + '1a63ac23010e0573f7c0a8cd3314b8c6': 'Example', '226c06861b0605a3276311b1369204f2': 'Interface return example', '1f318234cab713b51b5172d91770bc11': 'Advanced configuration', 'a0472043a9598b1b19f1adcec1e1d75d': - 'There is an error in the interface configuration, please check carefully', - '2816c3584802b2fc75db5bc3c6aa81e8': - 'Set the effective time of the request cache', + 'An error exists in the interface configuration, so you need to check it carefully.', + '2816c3584802b2fc75db5bc3c6aa81e8': 'Set valid time of request cache', '6e889f0cc8c1d8f705edfd5d0bbdaaa0': - 'When the interface is binary file download, please check it and set content disposition', + 'Select it and set Content-Disposition when the interface is used to download binary files.', '508a38f518821a0f6bb2d15269b31ece': - 'By default, all data is added. After this is enabled, it is completely replaced', - '5c131eb3bc61f6b0a26e20449ad7ce56': 'custom adapter ', + 'The default data is the append method. After you enable this option, it is replaced completely.', + '5c131eb3bc61f6b0a26e20449ad7ce56': 'Customize adapter', 'f514cabe63553a850063834c9d44a5ee': - 'You can get dynamic options through the interface and pull all at once.', - '47d0a7caaa2baee8d38612a1c57421ef': 'Whether to load initially', + 'You can get dynamic options through the interface and fetch all options once.', + '47d0a7caaa2baee8d38612a1c57421ef': 'Whether to perform initial load', '866a60d7fbdfeba6ae42c7e9c7b03059': - 'After the interface is configured and initialized, the component will initially pull the interface data, which can be modified through the following configuration.', - '3f4f3acd6968f38361dddc6612a0c54f': 'Back end agent', + 'When you configure the initialization interface, the component fetches the interface data initially. It can be modified according to the following configuration.', + '3f4f3acd6968f38361dddc6612a0c54f': 'Backend agency', '66670400b1f3e4b6c94cff171d441585': 'Form item inline', '21a1d138166d5d92276d126cf1d6ecac': 'Control width', - 'ffaa96ef7232cb6d8ee4d7e673dbf4ac': 'completely fill', + 'ffaa96ef7232cb6d8ee4d7e673dbf4ac': 'Full occupation', '4e9ce9dfe13d97031d228fc5ae229f0d': 'Hide title', 'e2773277c7765d4590f7128423c58cee': - 'After hiding, the title width is 0 in horizontal layout', - 'cc572c07586f4ea0c5b9b1060eb777f2': 'Empty content prompt', + 'After the title is hidden, the title width is 0 in the horizontal layout.', + 'cc572c07586f4ea0c5b9b1060eb777f2': 'Placeholder for empty content prompt', '8528426e54902956723f322bdbbcfafc': 'Input box prompt', 'dc5dbe7a1b1ff5cae22ffbb636bc6380': - 'It is displayed when the input box gets focus and is used to prompt the user to input content.', - 'ff255db9b108589abd5c649e2a02e3f1': 'Control tips', + 'It appears when the input box gets the focus. It is used to prompt the user’s input content.', + 'ff255db9b108589abd5c649e2a02e3f1': 'Control prompt', '9e783b34207fe24bc488136faba65442': - 'Display a prompt next to the input control. Note that the width of the control needs to be set, otherwise the prompt trigger icon will wrap automatically', - '7ad83bbe4646a0011ece7fd338d1e189': 'Show tips next to the title', - 'b3e55578af5dd473bab62641bb2f5f8e': 'Input type:', + 'Display the prompt beside the input control. Note that you need to set the control width. Otherwise, the prompt to trigger the icon leads to the automatic wrapping.', + '7ad83bbe4646a0011ece7fd338d1e189': 'Display prompt beside title', + 'b3e55578af5dd473bab62641bb2f5f8e': 'Input type', '16084784a0f126b501e96994c792d411': 'Date type', - '8190915888889ed18be44ea0351d0448': 'month', - '8f30e9f8678c24496921bebae6ca2ac6': 'particular year', + '8190915888889ed18be44ea0351d0448': 'Month', + '8f30e9f8678c24496921bebae6ca2ac6': 'Year', 'dc46b7f19799047a26fee668d49be0f3': - 'Option render template, support JSX, variable use \\ ${XX}', + 'The option rendering template supports JSX and uses the variable \\${xx}.', 'b18ec08df2e47313bcc93430e7a25fd3': - 'Support JS expressions, such as: ` this xxx == 1`', - 'b7dee01f2d085d90c47bcb8b490d9055': 'Click the select Icon', - '689fad203a167d542c12bdc46f27e921': 'name', + 'It supports the JS expression, such as `this.xxx == 1`.', + 'b7dee01f2d085d90c47bcb8b490d9055': 'Click to select icon', + '689fad203a167d542c12bdc46f27e921': 'Name', '6c1e18fd4cb57288a9f43603d5167292': - 'Only when linkage is required. Other components can be linked with the current component through this name', - 'ae344073ea6ca9ce742899cdf6d3e106': 'Please enter letters or numbers', + 'It is required when you need to link it. Other components can be linked with the current component through this name.', + 'ae344073ea6ca9ce742899cdf6d3e106': 'Enter a letter or figure', '1a1ff1e1149a0cd1b39c0b231a334d04': - 'You can specify to refresh the target component after the operation is completed. Please fill in the < code > name < / code > attribute of the target component. Multiple components should be separated by < code >, < / code >. If the target component is a form item, please fill in the name of the form first, and then connect the name of the form item with < code >. < / code > xxControl。 In addition, if the refresh target object is set to < code > window < / code >, the entire page will be refreshed.', + 'You can specify to refresh the target component after the operation is complete. Enter the name property of the target component. Multiple components should be separated with ,. If the target component is a form item, first enter the form name, and then connect the form item name with ., such as xxForm.xxControl. Additionally, you can refresh the whole page if you set the refresh target object to window. ', '705b3b333576dbf6c063d7060a4cc509': 'After the name is set, the completion of the current component operation will trigger the refresh of the target component (according to the set name).', - '018dcc21d4c932029eaff062c4767f3f': - 'What are the CSS class names of auxiliary classes? Please go to < a href= https://baidu.github.io/amis/docs/concepts/style target=_ Blank > style description < / a > in addition, you can add a custom class name, and then add a custom style in the system configuration.', - '3bce1a6217990c8dc087d254f1fe754a': 'Auto fill', + '7080fa6e0ca1d7e24f6f8cac05077a3a': + 'Which secondary CSS class names are available? Go to Style instructions. In addition, you can add a custom class name, and then add a custom style in the system configuration.', + '3bce1a6217990c8dc087d254f1fe754a': 'Automatic fill', 'f01553e415ca33cc89d0bca84023f4b5': - 'Automatically fill the value of a field of the currently selected option into a form item in the form, and support data mapping', - '04d815a5d4b803d6bb956d2da5a82688': 'Required', + 'Automatically fill the value in a field of the currently-selected option into a form item in the form. The data mapping is supportive.', + '04d815a5d4b803d6bb956d2da5a82688': 'Required?', 'a1b6281dc554ac84a3e6062f812fe50d': 'Light text description below the form item control', - '85541bd9f7f39a6e6d9d26cbe09cbdd4': 'read-only', - '4d681c4aa93c8d005ec2ca2370618d6e': 'so', - '5d0595edc3d14aec24efef85534e4314': 'Default settings', + '85541bd9f7f39a6e6d9d26cbe09cbdd4': 'Read-only', + '4d681c4aa93c8d005ec2ca2370618d6e': 'Visible', + '5d0595edc3d14aec24efef85534e4314': 'Default value setting', '495333d64fc1efafd6c40bc9a3929fee': - 'If it is not set, it is obtained according to name', - '32f13c9db34f638c2c5cf2bf19326ebf': 'Keyboard events', - '2882b15b04cb47d1497160b5061b9186': 'The default is not enabled', - '530c4483c7e52dc409509b755eabee11': 'Millimetre', - '090dbd614a66a56a5eadec87f59ea15c': 'Picture path:', - '2a0c4740f156a9536049f4610da25400': 'file', + 'Get the value according to the name when it is not set', + '32f13c9db34f638c2c5cf2bf19326ebf': 'Keyboard event', + '2882b15b04cb47d1497160b5061b9186': 'Disabled by default', + '530c4483c7e52dc409509b755eabee11': 'Thousands separator', + '090dbd614a66a56a5eadec87f59ea15c': 'Image path', + '2a0c4740f156a9536049f4610da25400': 'File', '4fa2ae7d726dc395cfea70ff3d7256d2': 'Markdown content', '52f43ce846b2bf73f86195cf196fe578': 'Counter', 'b9245d69d2d82b0081ced47a18c27f41': 'Full border', '8f9b1b7e38cd2ed16f22807417ab3573': 'Half border', - '7fc7940b4f7f58b49c71bf9e237b633e': 'no border', + '7fc7940b4f7f58b49c71bf9e237b633e': 'No border', 'b4521626a48dcb61001fc563d2433ed3': 'Sortable', - '6fdccea6068e0698c565acd92052a86e': 'Must be selected to the end level', + '6fdccea6068e0698c565acd92052a86e': 'You must select the end level.', 'a80c61384a8459ef7bfb5082a2b54b5f': - 'It must be selected to the end level and cannot be selected to the intermediate level', - '71758057056e7f31d73e3f3ac8860b4f': 'Delete field when hidden', + 'You must select the end level, but cannot select the middle level.', + '71758057056e7f31d73e3f3ac8860b4f': 'Delete field when it is hid.', 'ce641d8297471a5d65c46cdfb023097c': - 'When the current form item is hidden, the value of the form item will be deleted from the form submission data', + 'Delete the value of the form item in the form submission data when the current form item is hid.', '3e719b87b9ee71d4613caefbf2fd1074': 'UTC conversion', 'd52e57147787797ae0153d43bf8be298': - 'After opening, the submitted data and display data will undergo UTC conversion; It is recommended to open applications with cross regional users', - '339b9ebd91070de050b4bfe483aa4474': 'Embedded Mode ', + 'After this feature is enabled, the submitted data and displayed data are UTC-converted. Recommend you enable the applications that have cross-region users.', + '339b9ebd91070de050b4bfe483aa4474': 'Embedded mode', '49a79f4047b81186c069ed1c9c151c66': 'Light color', - '41e8e8b9935c9ee4e88b06643a2d5b81': 'Dark', - 'bde770827b9137ddb3eb676878af9709': 'secondary', - 'b1ea078db7298ea7872d894283378507': 'Upload method:', - '74cef1162781310e1503d2dc463a76fc': 'Object storage', - '38fbc7fb70b4399d7e4050d3cbcdf229': 'Storage warehouse', - 'e5d59ccec2caa64ca83b7cc740645928': 'Platform (default)', + '41e8e8b9935c9ee4e88b06643a2d5b81': 'Dark color', + 'bde770827b9137ddb3eb676878af9709': 'Secondary', + 'b1ea078db7298ea7872d894283378507': 'Uploading method', + '74cef1162781310e1503d2dc463a76fc': 'Baidu Object Storage', + '38fbc7fb70b4399d7e4050d3cbcdf229': 'Storage repository', + 'e5d59ccec2caa64ca83b7cc740645928': 'Default repository in the platform', 'b6789c926cf3d23d13a6a3220bcb8e23': 'Initial static data', - 'a4895ee2e87d1c47b734dbcf1a535aeb': 'Select Page', - '150075376834f1879d6ceb7c2d10ec67': 'proportion', + 'a4895ee2e87d1c47b734dbcf1a535aeb': 'Select page', + '150075376834f1879d6ceb7c2d10ec67': 'Proportion', '34598b2c71a8affb13da84ba39e905d5': - '12 equal parts, title width ratio n / 12', + '12 equally-divided parts. The title width occupies n/12.', '73ec114993142f627ab6c3e6706fa3c3': 'Title width', 'ae6fa9e75d38b9db24f78496b72bcc75': 'Fixed width', - '424f04d454332ddaff4daa0a365e9335': 'Sub form display mode', - 'b17754a193ac835bcae0bf960f3a3772': 'Sub form horizontal proportion setting', + '424f04d454332ddaff4daa0a365e9335': 'Sub-form display mode', + 'b17754a193ac835bcae0bf960f3a3772': 'Set sub-form horizontal ratio', '2e282fb6405a60830112991f88e95753': 'Left width', - 'c41b3271487a3cc63e79feeb11b11de0': 'ratio', + 'c41b3271487a3cc63e79feeb11b11de0': 'Ratio', '0fcf69b5d0b44955fcbec9702f90b556': 'Small width', 'b591aed69defa2abf0486da6a58dfb5e': 'Fixed width', - '0fa590019ace86acee8d7655e5fb11b7': 'Large width', + '0fa590019ace86acee8d7655e5fb11b7': 'Big width', '51c1e80408011ba118cdcc696f28283d': - 'Left and right distribution adjustment (n / 12)', + 'Left and right distribution adjustment (n/12)', 'aa0ff71cb10c3e54d68874dc2b17acaf': - 'There are 12 equal parts in total. Here, you can set the left width ratio n / 12.', + 'There are 12 equally-divided parts in total. You can set the left width equivalent to n/12.', '1f08c91da33fc5f0616e8a85c0456a18': - 'Static data does not support multi-level at present. Please switch to code mode or use the source interface to obtain it.', - 'cf763c357566be6fdaee886a40ddcca7': 'Option copy', - '1ca0b9b486be3b766a92474189f11fc8': 'Splicer', + 'The static data do not support multiple levels temporarily. Thus, you can switch to the code mode or use the source interface to get the data.', + 'cf763c357566be6fdaee886a40ddcca7': 'Option text', + '1ca0b9b486be3b766a92474189f11fc8': 'Concatenation symbol', 'ab8e2e8cd076bd115cdd600d17ca5020': - 'A connecting symbol that concatenates multiple values into a string', - '6df0630b4f00b6bd05de8af09c2f78ad': 'Extract values only', + 'Concatenate multiple values to a connector that consists of a string.', + '6df0630b4f00b6bd05de8af09c2f78ad': 'Extract value only', 'd7d810ec89408c206a220f62edde737f': - 'When on, the value of the selected item is encapsulated as an array. When off, the entire option data is encapsulated as an array.', - '4cff56e2b9703018efc48218b83844b1': 'Can be created', + 'After this option is enabled, the value of the selected option is encapsulated to an array. After this option is disabled, the data of the whole option is encapsulated to an array.', + '4cff56e2b9703018efc48218b83844b1': 'Can create', '457c4cf8e1e2e0daef8949085555563f': - 'Configure event actions to insert or intercept default interactions', - 'd03c96a2da4905c5f13a87c0d8ddbdb4': 'New interface', - '26bb8418786593149c0bf9f8970ab6de': 'newly build', + 'The configuration event action can be inserted or intercept the default interaction.', + 'd03c96a2da4905c5f13a87c0d8ddbdb4': 'Add API', + '26bb8418786593149c0bf9f8970ab6de': 'Create', 'a32b3bf74850faad3a9ae6a0a5dac781': 'Editable', - 'ea56ca3dac0d39e463a8233fd40a9eb6': 'Editing interface', - '3c87af7c432e6b1f59e4f415fd5060cf': 'Can be deleted', - '793e260d5b7c67d43b5c6d5e885d2363': 'Delete interface', - '63bbd68594c9a987d0ff41d645fafa16': 'Select the first by default', + 'ea56ca3dac0d39e463a8233fd40a9eb6': 'Edit API', + '3c87af7c432e6b1f59e4f415fd5060cf': 'Deletable', + '793e260d5b7c67d43b5c6d5e885d2363': 'Delete API', + '63bbd68594c9a987d0ff41d645fafa16': + 'Whether the first option is selected by default.', '0dd2e4469872c176ab1e85b66d99da98': 'Hide path', 'b7e26fcff328b28b393ef2e57e96e258': - 'Hide the text information of the ancestor node of the selected node', - 'c49fc970bcd168e1c652a8ced5d95d0d': 'Other items', - 'a45b5d3fcdb8210d249b2c6d545b6691': 'Cursor Type ', + 'Hide the text information about the ancestor node of the selected node', + 'c49fc970bcd168e1c652a8ced5d95d0d': 'Other item', + 'a45b5d3fcdb8210d249b2c6d545b6691': 'Cursor type', '2c3888961c01fc9c466d88c88029158f': 'No pointer', - '062d0b688adb10f3af5ebc2fd2667f1c': 'suspension', - '92e3a830ae9a1252278da742c0af74c3': 'help', + '062d0b688adb10f3af5ebc2fd2667f1c': 'Floating', + '92e3a830ae9a1252278da742c0af74c3': 'Help', '87e277f953fd3c867d7fa02897c2c124': 'Cross pointer', - 'c19639326396d2527268484379a671d8': 'portability', - '183f48b3c1f0f84e538cd4315e5645e9': 'Graspable', - '4f9b192ce84b4df0900510257082ef43': 'enlarge', - 'b21ac25366449b1720bdd75d39f163d2': 'narrow', - '93ab99d761c9ca97dc926e6db10469a3': 'Text size:', - '86cdd659decaa1b959795eff92a0c2d6': 'Text thickness', + 'c19639326396d2527268484379a671d8': 'Moveable', + '183f48b3c1f0f84e538cd4315e5645e9': 'Fetchable', + '4f9b192ce84b4df0900510257082ef43': 'Enlarged', + 'b21ac25366449b1720bdd75d39f163d2': 'Reduced', + '93ab99d761c9ca97dc926e6db10469a3': 'Font size', + '86cdd659decaa1b959795eff92a0c2d6': 'Font weight', 'e8ed49e9fde0bb778e2185876c2d2697': 'Margin', - '4e7f76261f8c4c6d78998f85fc1f4c6e': 'Margin ', - '841d77223f0ec8cd0b530ed8e0775b20': 'padding ', - 'b5bd9a6703f5433ff34aa0af9049740c': 'Fillet width', + '4e7f76261f8c4c6d78998f85fc1f4c6e': 'Margin', + '841d77223f0ec8cd0b530ed8e0775b20': 'Padding', + 'b5bd9a6703f5433ff34aa0af9049740c': 'Rounded corner width', '14eb3a698316caf3fbe9b2ab9c3d9527': 'Special effect', - 'cff1ec632eaf35f64791615e15ce6d76': 'Email format:', - 'fab6f9029822dea7838bf9908d7f5c09': 'URL format', - '1111c44adfa40fe9cb22797d2c1e37e8': 'letter', + 'cff1ec632eaf35f64791615e15ce6d76': 'Mailbox format', + 'fab6f9029822dea7838bf9908d7f5c09': 'Url format', + '1111c44adfa40fe9cb22797d2c1e37e8': 'Letter', '725bf3485a0456cf7f65a507ce67254b': 'Letters and numbers', - '96c4ea83892a3227a2aa5b8f3759bca4': 'Integer number', - '35962d17a3fba5f4802d7845695a3e72': 'Floating point number', + '96c4ea83892a3227a2aa5b8f3759bca4': 'Integer', + '35962d17a3fba5f4802d7845695a3e72': 'Floating-point number', '28e8e048490110c8dd8e2ad6af324980': 'Fixed length', '8c4ee6022f1525097a1141acad094d4e': 'Maximum length', - '17971609e210034c0d6a25b0186e2b7b': 'Minimum length', - '92448a35f41de3a1fa69135acfed5ce9': 'phone number', - '193a8c42c1c373f385a4c7b33ffc381e': 'Telephone number', - '6102d474314f27577d89e85b4c6cc4a5': 'Zip code:', - '84e0cb5d57ed995b0cc04b4ab9a7997b': 'ID card No', - '8dbec4f0c05be45a8acf6a5ae9d1f880': 'JSON format', - 'eb242bc7524c797fb1aee2344dec92da': 'Same as specified', - 'c17d9577233793976d3902c117eed82b': 'Same as specified field value', - 'b457177c184722b655954a08cf3f71ca': 'Custom regular', - 'd3927ffde0fdefc47f910e70226d6a4e': 'Custom regular 2', - '0ebee58f4f2a0f807f08a6427dc58497': 'Custom regular 3', - '15f52cddb226421e68c70488fff3db5b': 'Custom regular 4', - '271b01959e09c0771760f59964baed56': 'Custom regular 5', - '4eddee6a20aceddd6bcdf7e0736887ee': 'Validation rules', - 'ba3c802f3ce1641eb6f8986e8d19e672': 'New rule', + '17971609e210034c0d6a25b0186e2b7b': 'Maximum length', + '92448a35f41de3a1fa69135acfed5ce9': 'Mobile phone number', + '193a8c42c1c373f385a4c7b33ffc381e': 'Phone number', + '6102d474314f27577d89e85b4c6cc4a5': 'Postcode', + '84e0cb5d57ed995b0cc04b4ab9a7997b': 'ID card number', + '8dbec4f0c05be45a8acf6a5ae9d1f880': 'JSON Format', + 'eb242bc7524c797fb1aee2344dec92da': 'Identical to the specified value', + 'c17d9577233793976d3902c117eed82b': + 'It is identical to the specified field value.', + 'b457177c184722b655954a08cf3f71ca': 'Customize regular expressions', + 'd3927ffde0fdefc47f910e70226d6a4e': 'Customize regular expression 2', + '0ebee58f4f2a0f807f08a6427dc58497': 'Customize regular expression 3', + '15f52cddb226421e68c70488fff3db5b': 'Customize regular expression 4', + '271b01959e09c0771760f59964baed56': 'Customize regular expression 5', + '4eddee6a20aceddd6bcdf7e0736887ee': 'Verification rules', + 'ba3c802f3ce1641eb6f8986e8d19e672': 'Add rule', '7be30fe376e9bfd8895ee50e6f4216f3': 'Set length', - 'd00f99fd76e86ba4dab6f70858010ca0': 'Set maximum', - 'e993ecfbb3f934481257f1bb57056bfe': 'Set minimum', + 'd00f99fd76e86ba4dab6f70858010ca0': 'Set maximum value', + 'e993ecfbb3f934481257f1bb57056bfe': 'Set minimum value', '99f5d503544334c670cbe1f400aea9e1': 'Set maximum length value', '91bdac623455c91b7400328a5600cec0': 'Set minimum length value', '7002c4a1b7cb5bc32ffd52e1f2d74c70': 'Set value', - 'aa9cfa5321e589494841ddd90a10c467': 'set field name', - 'd22b6fb1c857777ba21467835efc65d6': 'Set regular rules', - '1b7e06ef04d7167e174eb6929421592f': 'Email format is incorrect', - '2d163645de4d4b4760e9fbdb535a1a88': 'This is required', - '87c91ce706ab845b55ce95372265b92e': 'Incorrect URL format', - '2b702fb5b95d47944246f79ae4032281': 'Please enter an integer number', - '48e2aca8e6347b008b6fbdb48fc4b597': 'Please enter a letter', - 'de66a286057d4e3f1ee2d9bccbd48ce5': 'please enter a number', - '84f46c9b82c3c8fe276dfa65173c59bb': 'Please enter a floating-point value', + 'aa9cfa5321e589494841ddd90a10c467': 'Set field name', + 'd22b6fb1c857777ba21467835efc65d6': 'Set regular expression rules', + '1b7e06ef04d7167e174eb6929421592f': 'Email format incorrect', + '2d163645de4d4b4760e9fbdb535a1a88': 'This option is required.', + '87c91ce706ab845b55ce95372265b92e': 'Url format incorrect', + '2b702fb5b95d47944246f79ae4032281': 'Enter integer', + '48e2aca8e6347b008b6fbdb48fc4b597': 'Enter letter', + 'de66a286057d4e3f1ee2d9bccbd48ce5': 'Enter figure', + '84f46c9b82c3c8fe276dfa65173c59bb': 'Enter floating-point value', 'fb73d98245f558dbb2d6a0c8d2699780': - 'You can only enter letters, numbers, ` - `, and ` _ `', + 'You can input letters, figures, `-`, and `_` only.', '923a91fdc2c777f8443c85278060195a': - "The format is incorrect. Please enter the content that meets the rule of ` $1 '.", + 'The format is incorrect. Enter the content that meets the rule of `$1`.', 'd87b1a3d180a1cc56bbd174d2860ca4c': - 'Please enter more content, at least $1 characters.', + 'Enter more content which includes at least $1 character.', '9b8d6abb2f03fbcbdb0e4d2b1970a751': - 'Please control the content length. Please do not enter more than $1 characters', + 'Control the content length and do not enter more than $1 character.', '2a5d0be4d5cd088f0371ba6f8656fe7a': - 'The current input value exceeds the maximum value of $1, please check', + 'Check it when the current input value exceeds the maximum value $1 ', '8256618e16217325e6a1d880f8eb7adb': - 'The current input value is lower than the minimum value of $1, please check', - 'f58829312013d929923b0c2a1fbacf19': 'Please check the JSON format.', - '161278fb2c71e5a8aa8aac50f230233d': - 'Please enter a valid mobile phone number', - 'ba42949accfe87c20e6c2486cd065dd2': 'Please enter a valid phone number', - '1d2c5048143328e21cb9c2dd84b696fb': 'Please enter a legal zip code address', - '038b3ed111e87b56572f3945a1b0e02c': 'Please enter a valid ID number', - '335e2618dda48c05f4f833ebb1e299df': 'Please enter content with length of $1', - 'bce45e909d6d14a126554c8cf6f65a13': - 'Please do not enter all blank characters', - '17bb8e76f78bd16a1841e36ab8462e53': - 'The entered data is inconsistent with the value of $1', - 'ab534c35774dccc322331a079ae6e7df': - 'The entered data is inconsistent with $1', - 'ebd0dc3ebde6182caa3b66e0faf658b6': 'Custom verification prompt', + 'Check it when the current input value is less than minimum value $1', + 'f58829312013d929923b0c2a1fbacf19': 'Check Json format', + '161278fb2c71e5a8aa8aac50f230233d': 'Enter valid phone number', + 'ba42949accfe87c20e6c2486cd065dd2': 'Enter valid phone number', + '1d2c5048143328e21cb9c2dd84b696fb': 'Enter valid postal address', + '038b3ed111e87b56572f3945a1b0e02c': 'Enter valid ID number', + '335e2618dda48c05f4f833ebb1e299df': 'Enter the content with a length of $1', + 'bce45e909d6d14a126554c8cf6f65a13': 'Do not enter all blank characters', + '17bb8e76f78bd16a1841e36ab8462e53': 'The input data is inconsistent with $1.', + 'ab534c35774dccc322331a079ae6e7df': 'The input data is inconsistent with $1.', + 'ebd0dc3ebde6182caa3b66e0faf658b6': 'Customize verification prompt', 'd7772d568894afbb1c924bed7f7ddb32': - 'If the built-in prompt is not satisfied, it can be customized.', - '58c9592f818d706420236c6f9f595517': 'New tips', - '171f7b825707ddd79175fed3f8def6cd': 'Submit upon modification', + 'When the prompt conditions are not satisfied, you can customize it.', + '58c9592f818d706420236c6f9f595517': 'Add prompt', + '171f7b825707ddd79175fed3f8def6cd': + 'The submission is done once the modification is complete', '6ccb7091c39a5229f7e77eff4dd44a0e': - 'After setting, every modification in the form will trigger submission', - '1a006028adf7167ae28cdf532bb75ef4': 'Verification trigger', + 'After you enable this option, trigger the submission once you make a modification every time', + '1a006028adf7167ae28cdf532bb75ef4': 'Trigger check action', '8d877748c3bc71b517e2d46344916b3f': - 'Triggered after each modification after submission', - '2c60032f2a57717e4f7c16ee185795d6': 'Trigger upon modification', - '5ed62f810226722d7c910c2d8dc4a0e8': 'Commit trigger', - 'ed3dd0bfa89500c5feb306cd4d9db56c': 'regular', + 'Trigger the check action once you make a modification every time after the submission', + '2c60032f2a57717e4f7c16ee185795d6': + 'Trigger the check once you make a modification', + '5ed62f810226722d7c910c2d8dc4a0e8': 'Trigger it upon the submission', + 'ed3dd0bfa89500c5feb306cd4d9db56c': 'Regular expressions', '537b39a8b56fdc27a5fdd70aa032d3bc': 'Required', 'ab90c616dd114af087b31b90d3cb4063': 'Number of characters', - '41e82a5a0e53ba94d1160ee855c72a7a': 'Please enter the number of characters', + '41e82a5a0e53ba94d1160ee855c72a7a': 'Enter number of characters', 'a85ce2404b26140080c929ad9c3ec305': - 'Please enter more content, at least $1 characters', - 'e93275245d529c486018e47136bfae2e': 'Please check the JSON format', + 'Enter more content which includes at least $1 character', + 'e93275245d529c486018e47136bfae2e': 'Check Json format', '2c8c25bb51dfd9ddfc74fd75a8a380a1': 'Value content', - '859102d8ced9928cc71bb225961171bf': 'Please enter JS regular', - 'a4313469fd7361486fe47076629c76ac': '', - '50abd0bf31e07dbee84e9e5b9a407840': '', - '73f28ac83b623fb81d73f16fb3856fa0': '', - '8d9a071ee2ef45e045968e117a205c07': '', - '09d44261d7883bf5141a462a790d2816': '', - '55405ea6ff6fd823ffab7e6b10ddfa95': '', - '6ff4bf3d567e977aa4c90c27dff1e6db': '', - 'e5f71fc31e7246dd6ccc5539570471b0': '', - 'c26996a6506adf397f0668d376d0b40b': '', - '9c4666fd08c2738eb9611a3721cb5f0f': '', - 'e22b59b6bda1cf9a58f8979fd0a0b43c': '', - 'a790208cafd5c95a18dd9a168319ecf8': '', - '39ccc34fa3ee9be12d8bae7e6fecbac2': '', - '240145572215920ae06db1eeb85b29c0': '', - '099cf136d6a4b6ed4646af4a2ed066b2': '', - '60011314ed92794f3d4f3e874c359279': '', - '949a8b7bd2c10070a2fae16f9c66afbb': '', - '2816cea6c4887a53c417831deb5fbe00': '', - 'd3c5079f7e26b1a7374ff76341376de4': '', - '4a3ebd0ef27212de3b0c39e6a9701b1d': '', - 'a9a3a4608d48214efbdfac99888f6e0f': '', - '84a2f40385427bbf2edc79e3368e4e0f': '', - 'cb43abed5ba14bf32fbb1058e12d2303': '', - '48b42e5c3ea447092eaf0a1a13195540': '', - '16b8ff2b147382be4cf8654f829df904': '', - 'd2e20bb1e977f9571a9e2d1b39a7ff10': '', - '73721e611daaafe5c34aa9f3f901d016': '', - '46a0f3086dce242abe54e48bd86e0394': '', - '278249b178c958cee0f5ee9ee9d1e0f5': '', - 'd75a7984d3fa5b32f5d8312e899aeea8': '', - 'c2f1f9254c245976e346377515c2e578': '', - '0943d61befec4c6cf2d21d170c9b066e': '', - '5246d2c81fa12b1f4f73635c257e232d': '', - '1b79a4f49b7a21e62b8868f12189b0b0': '', - '5a28d015b7b3518f75bc4cc27d9f6c20': '', - 'cfd84204d9476936c949d071cc2338cf': '', - 'c6bd3393c21379d3f75d179abe36da3d': '', - '3a6ecf25c38317b21b8c6287100f053a': '', - 'b3a4d6a345372c5def1d5a1bf6077bce': '', - '34e83e1be408c4f198464da1bf56bf9c': '', - '2c77cfaef73ce2e81131861e9c6d670e': '', - '9c9153c49491c381dc2adb2c36fccb04': '', - '9a4fe969f1066e197fd2369a44d879ac': '', - 'a7f33a2d99056edcdaced5c8841a9bcb': '', - 'a0c35361a003527d123cb581f5c68f4b': '', - '860827796ce2fa94e9ee39e53f011ec0': '', - '629645f147f378869fe9d7ee2bbc2857': '', - '97d03d4621f0024cf045afbd901197a5': '', - '44705bb94d83e7bd6b3b6c1480ebfb38': '', - 'e30a958a6397e53fae9d5316e851d3aa': '', - '31ad7a215f3df84c33b8c28223147b8e': '', - '563ae5ccda5004fa1fce77c1ed5bf057': '', - 'aeca6900b9e45f7f235eb9d443f0dd61': '', - '1d4103a96a70de2cb69dd597d679fefe': '', - 'e8b90f43fc3cfb0a68e4392054de97e9': '', - 'a955021cdf0249de1f3818f83cf248b7': '', - '24bdc7e8957abfc5d82f4206e92bb518': '', - '787366b0d678071a5ed98e55d31eba84': '', - '6a0508144ae12bfa79001693d713c0d6': '', - 'ae3816c5b00fcff4111842ac19f0a706': '', - 'fe805d91ae93be775670c61214dd2f28': '', - 'fbbbe30d78c335bad27f3dfc5efd2a5d': '', - 'f8c5e0ac29e905e91146e967cfd39dc9': '', - 'a8065b6d2062bf061762b9200a88251a': '', - '717a7095d0330ee4bdb46ba8c8b44463': '', - 'f29ab26877ed22ffa59636d747d824b9': '', - 'dcba76890a534e1fe94421be2a17b484': '', - 'af5876b89583552eef4c781718886dec': '', - 'ff57dff3fca4dee46a8e693d35b7e728': '', - '290aa0d8fd40285d213a3786c98e28d3': '', - 'c7505acc5b5dd1ad17f35dd90e0884d6': '', - '9567f8bbb315b1217b7b32be37f97792': '', - 'bde8a41fc64bfe78d0c4951ac6f93718': '', - '874cf31274d782914c7833cc39836c4e': '', - '0eeffa0f121262f0c737975a7a6553e4': '', - 'd3e329f73ae4b58d95cc7769eeca8370': '', - '9c203944698316da279b3c6f8d1933ac': '', - '45ce37c24c6e7252d98c6d450e3ca4ad': '', - '660553eee939d2bd8ea68172fa7216df': '', - 'fd179c2844536ce198290441c38c814e': '', - '1495c26f33625552e4845630b6b7b44a': '', - '057a9c2b2027a6b443741d8a0c04e4be': '', - 'e23c9e6279487960ebf85b9985dcba07': '', - '4838f2f4ecafd0a3a4fcfe82521acdd9': '', - 'c7fa7f54ece94ae684aee1ee2088a5ae': '', - 'bd698e3f47ede4e59aafb28a291b77e7': '', - 'f785a357a820555445acd6f7051b1048': '', - 'a2b62974f4d7564bb68b570116f25a10': '', - '2bd921d0ea7a73b77ee0fcddb1afcc84': '', - 'b7623c7e17098d5950694437aa7584ad': '', - '204770091fd4b7cd0611ddc65bf21d37': '', - 'be7d848c40dfdd3e20f233c373af00a5': '', - '4c3ed2fc7331db687fc0e8ffb8f672a7': '', - '0ae8c01434dc2a38a90561fcbf5d79b5': '', - '22c023bf51970a461cc164e711f3d3ff': '', - '6e19e48a52986659ae5ba1bfe612ba8a': '', - 'cccb3595f8ff536e27d94ec91a49bfdf': '', - '49ccf100ac35e1cc3d40b7222cdcd1a7': '', - '4e373f3ff64ad29a01da87317eb92088': '', - '160cb9a7d57c5b5ca65b5cdf79e8fd28': '', - '1cd9e1bb335cb0643d9e310dd4edd830': '', - 'a0e965072593eb1b19b4568fa26d977c': '', - '8865c6822a31e0da6bc7eece8677d8f0': '', - 'bc560e477282dafc3c37b7a665af4f9c': '', - '89664aa96ba7eb788ea273c0d36467cc': '', - 'b4eab506cf436d3cdd1cd68fc857ec04': '', - '2b3073b1ba5f9deab7818d8be02de3a1': '', - '14dc30e68a3d8d53e8ddd98876c1d480': '', - '68c7da9593da32100cb82ef5106047e1': '', - '9cb417cfac37e6d65dedbc35ee9e916e': '', - 'd6840c02c4d9cd5f4f5fd4d9f3e6b916': '', - 'e2c310a329c2cf62a0764fc912f2f583': '', - '8c9a3a8cd5de83121c03c83f909a7534': '', - 'ae7d563d3190ddbafdda8093fc28fc5f': '', - '4444d03faa51f8550a8a4547fb471ab7': '', - 'd7eae84550f9b9bc0c78a94e4072ad0d': '', - '346f7e0c7ef27b6a83f3c9f8f406d737': '', - 'b40163733b8e3a420e38f295bfab369d': '', - '0911a348aaf24601e633e318ccb8aace': '', - '84a76ba52297727f6bb47d8a1cc74094': '', - 'a2888bca5f435690ff9f5a5d615a968a': '', - '1e409f26f9c1d58ce0c47a68104d45f0': '', - 'eebda442c4bff2aaaf8274383d0ed12f': '', - 'b3a17ee1af382c467d857d33089fc0c7': '', - 'd5dbf5285b2dbe07b481fbd5d4536c60': '', - 'b720b2abd62161c3c99625c8160df987': '', - 'acef03eee638dc4239ee60f627f33d85': '', - 'e3ed623b79100791f156d3586751c652': '', - 'd4865602e26e9c985814380beae99b6d': '', - '0aa73cfbe5a84cd34a212de5bab2058d': '', - '4dabfefd787102b8159b5c4a221aa048': '', - '0f993a54d2c67716220632577d3b5b51': '', - '846da282ebfa6dfe61deb1d58145158c': '', - '93199f3864cf5a68b286b927fa68ae6a': '', - '391555a3772260743f19278f01adf75e': '', - '8d6b5924f187048cfa28d6c21fa6d2d6': '', - 'e7f2f04f7c2b2e9e07b69767ea28d6ab': '', - '28d602809bd1dc6b47ceb38cb54f32de': '', - '36bded76593f98fab62453c7430b2918': '', - '4143d7418de740e8bc26ef4b27c63534': '', - 'c95e748d5811faae5c52bdc07bee51a0': '', - '04f767eaa571383ea271432bee6deedf': '', - '0b3eef4f8a8061baa22416dc1e5dad03': '', - '0059d50e3f7b2fe7f1822ccc218fed66': '', - '41ed1e238b846005dfb0f087cbec644b': '', - '7b755ba413eac50423859395c68e6280': '', - '642e5368b742c82472e2ef35114459c9': '', - '8369004103635f8e75026217ebf237da': '', - 'bd3e7a1b636e4477a4ea59922ed2cc1e': '', - '11d00f37d934b2464f3258952a398626': '', - '4e3cd1a7b193e2fd3458278d10c530e2': '', - '023ff3530e48493e653eb48e958a4eb8': '', - 'dd9b85b2cd13ca724afd1f43567abdbf': '', - 'c89b5fd3b706a17feb016d93c80e34b1': '', - 'a5baa4818b14f4680955aa34dd559d02': '', - '1ef8fd21130d17cb7c1613eaed6ca1e4': '', - 'ee18dc475df8654cb13ad67dd84eec28': '', - '8bb5781dc5f2745e6356cdc5e6d76b16': '', - '88a364068f684dc77aca5b6c006ef576': '', - '6e3d35b57c29b1b419569cc55b3a5d33': '', - '8ce1cd75b6e9c0c0e3468589fcea822c': '', - 'ba4f461832cbdb7fbdb170fc9c1db647': '', - 'aa2bd9f54608c0c85d3ceecb707938c9': '', - 'ed85be57262e5a0c3116293e88278fef': '', - '3d2ac2fd2c60931fff1db814662334c3': '', - '85a49c5ed4628647f2ead9206224dba3': '', - '4296d7d293c9ea4a0e52c6415f0b5c96': '', - '1f1ca9df5fa3648c718ad04649888943': '', - '596171970b639a35dadde2aa930d666a': '', - '388855093d17f3df43ff80242d7a1bed': '', - '46705a530ba9721527a4202bae7091bd': '', - 'aab57a3547a451f756bb8231a1eee8d7': '', - '76159d0d1261c0b6c310901244457e36': '', - 'be4751b0c9adf1d8deee45226c6124ee': '', - '49f4010dade8652e5aff6a2c67aa23a4': '', - '49b4aa407b91ac997e27314e30c03110': '', - '8c1f5c49de09adab9a0e0c39e0106f78': '', - 'caca6cb58342bb604483d94f49515234': '', - '5bdff9fd07d2a2430ac50e1559dbee27': '', - '33eaf97ecb3465754855e847f14d129c': '', - 'ce7d31d64f2315e1d4cede288b9dfc60': '', - '927b639f244953f237cd12943c8b815c': '', - 'fdd59ca00eba17d4bfebf744056ce4ab': '', - '6bfd4423d8aebbf0cac7ba4d74f245bd': '', - '21922c6479665dcba83106f8e9ffdf68': '', - '31b7c58c2d9a170829b90314ff98b66a': '', - '81ccf26d9622d139a13ba2a61bd9fea4': '', - '68e9249db7bd12ab17994b1761b049f5': '', - 'ef0c5b6fa16497343eedb76171d61d68': '', - '1a7bd457c08093cf2cf887403dc249d8': '', - '4ca07911d10b74cc7c357b510e7cc948': '', - 'eb2719a7e6cebda7ca234560f21fb448': '', - 'f35c90b504521a2da346960b9db23828': '', - 'ac83dbca40c9d2151b5f7d81795535cc': '', - 'af9cbd3988196fc104af4fed9461e152': '', - '34dceb7c51000849ea3596fbaab6f67c': '', - '9a899d9ab83d8ffa6308fb31e93f23a1': '', - '4562be5a3f9823a5f61b25f8d14b2b43': '', - 'c115f372bcdced1e70824bcbf42b5923': '', - 'fba91204d335ae6eda35809023a94f7f': '', - '90ef7c485bd31fab681c6e9d9afd5be8': '', - '71c0319fce9f416330b18e554e0acc55': '', - '64035b04a21bc337a351b5a2a5d12acb': '', - 'ea71a81cf874780294d517b0314feada': '', - 'ca60c525372028b9f75ee4c708cccae1': '', - 'c9f7324519225bc72fce24a09518a8a8': '', - '9af45e91a08b54764610ada28272d590': '', - 'ad96280bb24a38f9a83051b16ebc9688': '', - 'eb58b078f2f8560160ebf87bc7109de9': '', - 'f1f4c88f30744f2365b65f1790c71da8': '', - 'd17020cd3e6564f5154cf2251cd30f52': '', - '7cef725b75da8afecda59900b780be75': '', - '8f32bcb8d5baf6cbb410ef3f6dbed8d5': '', - '1aa46d7cdc632756dfbf16c55436bcdf': '', - 'c360e994dbcffdf31e86d2d8875370e1': '', - '825f53899a11e598fc9f9b43e0814a58': '', - '8eb4b7abb66f0922778a39044b42d345': '', - '0da2ab28a6e03922d4a0c78451146b87': '', - '00ff9356c34d05ecbfd6559a46f56e25': '', - '71039986e2386573ab6e5681986c2230': '', - 'c5d48d5732c64d5dea4bb0b4aaf13813': '', - 'f80cc88446cc10da4838556666f6b9f1': '', - '005c50d1af6e833d6991ab882653b7ae': '', - '76f47297fe988267a26073a9aaf7911f': '', - '020586d0c69f8211840ddf9ee9bbf6ab': '', - '91be693dd1ccea38f8f514318fd8a944': '', - '8517171ce4ad0e9a5b511bd6bb26f839': '', - 'b51796f5778fdc31bac73769a85f89c7': '', - 'eee03351367bb1907dcc3140ffa3e3b8': '', - 'f99603414a616bdee85de0e6e3938b65': '', - 'e6ff6a97bf600c02942db3126a7077b8': '', - '37087e5bb2d0367872a461f535580d91': '', - '96641a78cfd9f9f8ba68f0524347b186': '', - 'a11cc7a65b27f3993d58438d275f3447': '', - '34df758502e02c7c1a58f804a6c96c28': '', - '1d20d90b7c7301b7739900242d38544e': '', - '8aea4138b4fac2627c9b72da37e0671f': '', - '82e9f5ad74c0ff5a041369bd6c7a0760': '', - 'd584018521820dac9e92120737b733ba': '', - '72a3c1690dead6e24f7ac1abc90d5063': '', - '79d3abe929f67f0644a78bf32adb3a89': '', - 'f86418b525af4b573aed36b8e3f9aeb8': '', - 'ec159d98c6c25fadd38bcd9362f6a28e': '', - 'f302b37cf6530d3fb39234a220d95437': '', - '6090f7af1ae15892abe97409b9e557b1': '', - 'e6a10b831ae920bba1bb89a725e0fbe8': '', - '9bef5e571702130c5710af4ee2c27455': '', - '8df0f3891f8a80a392816f6ca662a33d': '', - '21157cbff85802e353409f647f1f1f91': '', - '4fe2f10c6d5bedac03f40a4362e4f69b': '', - '89bc2a21c778b36d09c8d795aac8260e': '', - '666352a09304cba42de24312f509c3b4': '', - 'e367011e16762afd7db7cf4ff06dcb68': '' + '859102d8ced9928cc71bb225961171bf': 'Enter Js regular expression', + 'a4313469fd7361486fe47076629c76ac': 'Add record', + '50abd0bf31e07dbee84e9e5b9a407840': 'Add record', + '73f28ac83b623fb81d73f16fb3856fa0': 'Data import', + '8d9a071ee2ef45e045968e117a205c07': 'Import', + '09d44261d7883bf5141a462a790d2816': 'Data export', + '55405ea6ff6fd823ffab7e6b10ddfa95': 'Export', + '6ff4bf3d567e977aa4c90c27dff1e6db': 'Fuzzy query', + 'e5f71fc31e7246dd6ccc5539570471b0': 'Search', + 'c26996a6506adf397f0668d376d0b40b': 'Simple query', + '9c4666fd08c2738eb9611a3721cb5f0f': 'Advanced query', + 'e22b59b6bda1cf9a58f8979fd0a0b43c': 'Edit record', + 'a790208cafd5c95a18dd9a168319ecf8': 'Delete record', + '39ccc34fa3ee9be12d8bae7e6fecbac2': 'Action column', + '240145572215920ae06db1eeb85b29c0': 'Optional', + '099cf136d6a4b6ed4646af4a2ed066b2': 'Retain selected items', + '60011314ed92794f3d4f3e874c359279': + 'After the default switch-over to a page and the search, the items selected by the user are cleared. After you enable this feature, the user’s selection is retained. Also, this feature allows you to achieve the cross-page batch actions.', + '949a8b7bd2c10070a2fae16f9c66afbb': 'Column setting', + '2816cea6c4887a53c417831deb5fbe00': 'Custom display column', + 'd3c5079f7e26b1a7374ff76341376de4': + 'It is enabled automatically when the number of columns exceeds 10.', + '4a3ebd0ef27212de3b0c39e6a9701b1d': 'Search setting', + 'a9a3a4608d48214efbdfac99888f6e0f': 'Action setting', + '84a2f40385427bbf2edc79e3368e4e0f': 'Add action', + 'cb43abed5ba14bf32fbb1058e12d2303': 'More and paging', + '48b42e5c3ea447092eaf0a1a13195540': 'Paging mode', + '16b8ff2b147382be4cf8654f829df904': 'Frontend paging', + 'd2e20bb1e977f9571a9e2d1b39a7ff10': + 'The data is loaded to the browser once, so you do not make a request to load the data on the current page that is requested by the backend user. It is not recommended to enable this option because it has significant influence on the performance.', + '73721e611daaafe5c34aa9f3f901d016': 'Data container', + '46a0f3086dce242abe54e48bd86e0394': 'List display', + '278249b178c958cee0f5ee9ee9d1e0f5': '{{@ 1}} Create wizard', + 'd75a7984d3fa5b32f5d8312e899aeea8': 'Data configuration', + 'c2f1f9254c245976e346377515c2e578': 'Feature configuration', + '0943d61befec4c6cf2d21d170c9b066e': 'Condition query', + '5246d2c81fa12b1f4f73635c257e232d': 'Data operation', + '1b79a4f49b7a21e62b8868f12189b0b0': 'Data loading', + '5a28d015b7b3518f75bc4cc27d9f6c20': 'List data paging', + 'cfd84204d9476936c949d071cc2338cf': 'Data query', + 'c6bd3393c21379d3f75d179abe36da3d': + 'Use specified conditions to accomplish list data query', + '3a6ecf25c38317b21b8c6287100f053a': 'Trigger data query', + 'b3a4d6a345372c5def1d5a1bf6077bce': 'Load more data to list container', + '34e83e1be408c4f198464da1bf56bf9c': 'Load more data', + '2c77cfaef73ce2e81131861e9c6d670e': 'Selected data', + '9c9153c49491c381dc2adb2c36fccb04': 'No data selected', + '9a4fe969f1066e197fd2369a44d879ac': 'Current page', + 'a7f33a2d99056edcdaced5c8841a9bcb': 'Total number of data entries', + 'a0c35361a003527d123cb581f5c68f4b': + 'This option is to realize the addition, deletion, change, and view of the data in the card list. It is used for data fetch, paging, single-entry operation, batch operation, sorting, quick edit, and other features. Also, it is integrated with the query conditions.', + '860827796ce2fa94e9ee39e53f011ec0': + 'This option is to realize the addition, deletion, change, and view of the data in the list. It is used for data fetching, paging, single operation, batch operation, sorting, quick edit, and other features. Also, it is integrated with the query conditions.', + '629645f147f378869fe9d7ee2bbc2857': 'Sub-title content', + '97d03d4621f0024cf045afbd901197a5': 'Select area', + '44705bb94d83e7bd6b3b6c1480ebfb38': + 'Click to trigger selected area or cancel selected area', + 'e30a958a6397e53fae9d5316e851d3aa': 'Entire', + '31ad7a215f3df84c33b8c28223147b8e': 'Select-box', + '563ae5ccda5004fa1fce77c1ed5bf057': 'Hide select-box', + 'aeca6900b9e45f7f235eb9d443f0dd61': + 'This option is used to hide the select-box. It is possible to achieve the selection style by customizing the appearance of the selection status.', + '1d4103a96a70de2cb69dd597d679fefe': 'Selection status', + 'e8b90f43fc3cfb0a68e4392054de97e9': + '\r\n If the backend does not return the Echart configuration directly, you can compile a paragraph of function to pack it. \r\n

Signature: (config, echarts, data) => config

\r\n

Parameter description

\r\n
    \r\n
  • config Original data
  • \r\n
  • echarts echarts object
  • \r\n
  • data If you configure a data API, the data returned from the API is imported through this variable
  • \r\n
\r\n

Example

\r\n
debugger; // You can conduct the breakpoint debugging in the browser\\n\\n// Check the original data\\nconsole.log(config)\\n\\n// Return the new result\\nreturn {}
\r\n ', + 'a955021cdf0249de1f3818f83cf248b7': + 'It is used to display the custom display column button in the table. You can configure different display styles.', + '24bdc7e8957abfc5d82f4206e92bb518': 'Button text', + '787366b0d678071a5ed98e55d31eba84': 'Button prompt', + '6a0508144ae12bfa79001693d713c0d6': 'Whether to unfold the panel by default', + 'ae3816c5b00fcff4111842ac19f0a706': 'Button icon', + 'fe805d91ae93be775670c61214dd2f28': 'Button size', + 'fbbbe30d78c335bad27f3dfc5efd2a5d': 'Display column style', + 'f8c5e0ac29e905e91146e967cfd39dc9': + "\r\n const button = document.createElement('button');\r\n button.innerText = 'Click to modify the name';\r\n button.onclick = event => {\r\n event.preventDefault();\r\n };\r\n dom.appendChild(button);", + 'a8065b6d2062bf061762b9200a88251a': + "\r\n const button = document.createElement('button');\r\n button.innerText = 'Click to modify the name ddd';\r\n button.onclick = event => {\r\n onChange('new name');\r\n event.preventDefault();\r\n };\r\n dom.appendChild(button);", + '73ac822ddf4685dbfec661dec41a96b7': + '
\r\n

hello, world!

\r\n
Custom container area
\r\n
', + 'f29ab26877ed22ffa59636d747d824b9': + 'You can press the Esc key to close the popout.', + 'dcba76890a534e1fe94421be2a17b484': + 'Display the error message at the bottom left corner.', + 'af5876b89583552eef4c781718886dec': + 'Display the loading animation at the bottom left corner.', + 'f19464cd1d7c55610b84b4972eaf506f': + '
With the data mapping enabled, the data in the popout only contains the set part. Then, you need to bind the data. For example:{"a": "${a}", "b": 2}.
', + '784cf5219012b5f16f2985b7f1fd52f5': + '
When the value is __undefined, it indicates that the corresponding field is deleted. You can combine {"&": "$$"} to achieve the blacklist effect.
', + 'af9f27383daeec508815a33753247f42': + '${data["&"] ? "The parameter customization feature is already enabled. Thus, you can click to disable this feature." : "If you need to customize the parameters based on the default data, enable the parameter customization feature and then define the key and value."}', + '9567f8bbb315b1217b7b32be37f97792': + '${data[&] ? Disable immediately: disable immediately}', + 'bde8a41fc64bfe78d0c4951ac6f93718': 'Display mask', + '874cf31274d782914c7833cc39836c4e': + 'You can drag the drawer to change its size.', + '94397b87ac63fe238c779120fadab024': + "It takes effect when it is at the 'left' or 'right' position. The default width is the width configured in the 'size' field. The value unit defaults to px. It also supports such units as percentage, e.g., 100%.", + 'a6d91e801974dfa735a4ae0e098c522a': + "It takes effect when it is at the 'upper' or 'bottom' position. The default width is the height configured in the 'size' field. The value unit defaults to px. It also supports such units as percentage, e.g., 100%.", + '45ce37c24c6e7252d98c6d450e3ca4ad': 'Title area', + '660553eee939d2bd8ea68172fa7216df': 'Footer area', + '1495c26f33625552e4845630b6b7b44a': + '
Description of available variables
    \r\n
  • valueCurrent value
  • \r\n
  • levelThe fetch level starts from 1.
  • \r\n
  • parentIdvalue selected at the previous layer
  • \r\n
  • parentThe option selected at the previous layer includes a label and value.
  • \r\n
', + '057a9c2b2027a6b443741d8a0c04e4be': + '{\r\n "status": 0,\r\n "msg": "",\r\n\r\n // The data cannot be returned. If the data is returned, the data is merged. \r\n data: {}\r\n }', + 'e23c9e6279487960ebf85b9985dcba07': 'Fixed size', + '4838f2f4ecafd0a3a4fcfe82521acdd9': 'Enable crop', + 'c7fa7f54ece94ae684aee1ee2088a5ae': 'Rotate during cropping', + 'bd698e3f47ede4e59aafb28a291b77e7': 'Zooming-in during cropping', + 'f785a357a820555445acd6f7051b1048': 'Cropping area', + 'a2b62974f4d7564bb68b570116f25a10': 'Minimum width', + '2bd921d0ea7a73b77ee0fcddb1afcc84': 'Maximum height', + 'b7623c7e17098d5950694437aa7584ad': 'Aspect ratio', + '204770091fd4b7cd0611ddc65bf21d37': 'Automatic selection of child node', + 'be7d848c40dfdd3e20f233c373af00a5': + 'Select child node in a cascaded manner when you select a parent node.', + '4c3ed2fc7331db687fc0e8ffb8f672a7': + 'The child node can be selected inversely.', + '0ae8c01434dc2a38a90561fcbf5d79b5': + 'The child node can be selected inversely. The value includes the parent and child nodes. ', + '22c023bf51970a461cc164e711f3d3ff': 'The value includes parent nodes.', + '6e19e48a52986659ae5ba1bfe612ba8a': + 'When you select the parent node, its value includes the value of the parent and child nodes. Otherwise, only the value of the parent node is retained.', + 'cccb3595f8ff536e27d94ec91a49bfdf': 'The value contains the sub-nodes only.', + '49ccf100ac35e1cc3d40b7222cdcd1a7': + 'Through the ui behavior, you can select the child nodes in a cascaded manner. The child node can be selected reversely. The value contains the value of the child node only.', + '4e373f3ff64ad29a01da87317eb92088': 'Minimum number of nodes', + '160cb9a7d57c5b5ca65b5cdf79e8fd28': 'Maximum number of nodes', + '1cd9e1bb335cb0643d9e310dd4edd830': 'Icon field', + 'a0e965072593eb1b19b4568fa26d977c': 'You can select the child node only', + '8865c6822a31e0da6bc7eece8677d8f0': 'You can add', + 'bc560e477282dafc3c37b7a665af4f9c': + 'You can add a child node at the top layer', + '89664aa96ba7eb788ea273c0d36467cc': 'Top-layer text', + 'b4eab506cf436d3cdd1cd68fc857ec04': 'Add a level 1 node', + '2b3073b1ba5f9deab7818d8be02de3a1': 'Highlight node characters', + '14dc30e68a3d8d53e8ddd98876c1d480': 'The option value includes parent nodes', + '68c7da9593da32100cb82ef5106047e1': + 'After being enabled, the corresponding node value contains parent nodes.', + '9cb417cfac37e6d65dedbc35ee9e916e': 'Path separator', + 'd6840c02c4d9cd5f4f5fd4d9f3e6b916': 'Display top-level node', + 'e2c310a329c2cf62a0764fc912f2f583': 'Node text', + '8c9a3a8cd5de83121c03c83f909a7534': 'Display node icon', + 'ae7d563d3190ddbafdda8093fc28fc5f': 'Display node select-box', + '4444d03faa51f8550a8a4547fb471ab7': + 'In the single-select condition, it can display the tree node select-box.', + 'd7eae84550f9b9bc0c78a94e4072ad0d': 'Customize unfolding levels', + '346f7e0c7ef27b6a83f3c9f8f406d737': + 'By default, unfold all node levels. With this option enabled, you can customize the number of unfolding levels.', + 'b40163733b8e3a420e38f295bfab369d': 'Set levels', + '0911a348aaf24601e633e318ccb8aace': 'Left option title', + '84a76ba52297727f6bb47d8a1cc74094': 'Right result title', + 'a2888bca5f435690ff9f5a5d615a968a': 'Left option panel', + '1e409f26f9c1d58ce0c47a68104d45f0': 'Display form', + 'eebda442c4bff2aaaf8274383d0ed12f': 'Tree form', + 'b3a17ee1af382c467d857d33089fc0c7': + 'The left option rendering template supports JSX and uses the variable \\${xx}.', + 'd5dbf5285b2dbe07b481fbd5d4536c60': 'Right result panel', + 'b720b2abd62161c3c99625c8160df987': 'It follows the left option panel.', + 'acef03eee638dc4239ee60f627f33d85': + 'Currently, the query feature allows you to perform fuzzy match query according to the name or value.', + 'e3ed623b79100791f156d3586751c652': 'It supports the sorting.', + 'd4865602e26e9c985814380beae99b6d': + 'The result option rendering template supports JSX and uses the variable \\${xx}.', + '0aa73cfbe5a84cd34a212de5bab2058d': + 'The option text only displays the selected node.', + '4dabfefd787102b8159b5c4a221aa048': + 'Hide the text information about the ancestor node of the selected node in the select-box.', + '0f993a54d2c67716220632577d3b5b51': 'Display the unfolding line of the level', + '846da282ebfa6dfe61deb1d58145158c': + 'Display the unfolding line of the tree level', + '93199f3864cf5a68b286b927fa68ae6a': 'Tree container', + '391555a3772260743f19278f01adf75e': 'Title bar', + '8d6b5924f187048cfa28d6c21fa6d2d6': 'Page title', + 'e7f2f04f7c2b2e9e07b69767ea28d6ab': 'The sidebar width is adjustable', + '28d602809bd1dc6b47ceb38cb54f32de': 'Sidebar fixed', + '36bded76593f98fab62453c7430b2918': + 'Means whether the sidebar content is fixed. The sidebar content does not roll together the content area.', + '4143d7418de740e8bc26ef4b27c63534': + 'It is used to get the API for initial data. The returned data can be used at the whole page level.', + 'c95e748d5811faae5c52bdc07bee51a0': 'Mobile terminal', + '04f767eaa571383ea271432bee6deedf': 'Drop-down text', + '0b3eef4f8a8061baa22416dc1e5dad03': 'Release text', + '0059d50e3f7b2fe7f1822ccc218fed66': 'Redirection page', + '41ed1e238b846005dfb0f087cbec644b': + 'Select this option to indicate that it is enabled. You can drag and drop the features to adjust their sequence.', + '7b755ba413eac50423859395c68e6280': 'Table V2', + '642e5368b742c82472e2ef35114459c9': 'Table data', + '8369004103635f8e75026217ebf237da': 'Bind current environment variables', + 'bd3e7a1b636e4477a4ea59922ed2cc1e': 'Display title', + '11d00f37d934b2464f3258952a398626': 'Table title', + '4e3cd1a7b193e2fd3458278d10c530e2': 'Display table header', + '023ff3530e48493e653eb48e958a4eb8': 'Freeze table header', + 'dd9b85b2cd13ca724afd1f43567abdbf': 'Display table footer', + 'c89b5fd3b706a17feb016d93c80e34b1': 'Table footer', + 'a5baa4818b14f4680955aa34dd559d02': 'Content height', + '1ef8fd21130d17cb7c1613eaed6ca1e4': 'Fix', + 'ee18dc475df8654cb13ad67dd84eec28': 'Height value', + '8bb5781dc5f2745e6356cdc5e6d76b16': 'Content width', + '88a364068f684dc77aca5b6c006ef576': + 'When there are too much column content and the content exceeds the width limit, you can view the data in the landscape mode.', + '6e3d35b57c29b1b419569cc55b3a5d33': 'Width value', + '8ce1cd75b6e9c0c0e3468589fcea822c': 'Placeholder content', + 'ba4f461832cbdb7fbdb170fc9c1db647': 'The column width is adjustable.', + 'aa2bd9f54608c0c85d3ceecb707938c9': + 'The user can drag the column to adjust its width.', + 'ed85be57262e5a0c3116293e88278fef': 'Row setting', + '3d2ac2fd2c60931fff1db814662334c3': 'Select height', + '85a49c5ed4628647f2ead9206224dba3': 'Follow-up content', + '4296d7d293c9ea4a0e52c6415f0b5c96': 'High', + '1f1ca9df5fa3648c718ad04649888943': 'Selectable area', + '596171970b639a35dadde2aa930d666a': 'Whole row', + '388855093d17f3df43ff80242d7a1bed': 'Row disable conditions', + '46705a530ba9721527a4202bae7091bd': 'Select menu item', + 'aab57a3547a451f756bb8231a1eee8d7': 'Inverse', + '76159d0d1261c0b6c310901244457e36': 'Cancel selection', + 'be4751b0c9adf1d8deee45226c6124ee': 'Select odd item', + '49f4010dade8652e5aff6a2c67aa23a4': 'Select even item', + '49b4aa407b91ac997e27314e30c03110': 'Expandable', + '8c1f5c49de09adab9a0e0c39e0106f78': 'Row expansion conditions', + 'caca6cb58342bb604483d94f49515234': 'Nestable', + '5bdff9fd07d2a2430ac50e1559dbee27': 'Draggable', + '33eaf97ecb3465754855e847f14d129c': 'Quick saving', + 'ce7d31d64f2315e1d4cede288b9dfc60': 'Quickly save a single entry', + '927b639f244953f237cd12943c8b815c': 'Horizontal scroll', + 'fdd59ca00eba17d4bfebf744056ce4ab': 'Nested indent', + '6bfd4423d8aebbf0cac7ba4d74f245bd': 'Select column width', + '21922c6479665dcba83106f8e9ffdf68': 'Width of fixed selected column', + '31b7c58c2d9a170829b90314ff98b66a': 'Expanded column width', + '81ccf26d9622d139a13ba2a61bd9fea4': 'Width of fixed expanded column', + '68e9249db7bd12ab17994b1761b049f5': 'Customize row style', + 'ef0c5b6fa16497343eedb76171d61d68': 'Expanded row style', + '1a7bd457c08093cf2cf887403dc249d8': 'Expanded column content', + '4ca07911d10b74cc7c357b510e7cc948': 'Column field', + 'eb2719a7e6cebda7ca234560f21fb448': 'Column title', + 'f35c90b504521a2da346960b9db23828': + 'When no value is available, this prompt is displayed in place of the value.', + 'ac83dbca40c9d2151b5f7d81795535cc': + 'With this option enabled, you can sort it according to the current column sequence. For the interface types, you can increase sorting parameters.', + 'af9cbd3988196fc104af4fed9461e152': 'Searchable', + '34dceb7c51000849ea3596fbaab6f67c': 'Search type of configuration column', + '9a899d9ab83d8ffa6308fb31e93f23a1': 'Quick edit', + '4562be5a3f9823a5f61b25f8d14b2b43': 'Modify and save immediately', + 'c115f372bcdced1e70824bcbf42b5923': + 'With this feature enabled, the modification is submitted immediately. Instead, the modifications cannot be submitted in batch.', + 'fba91204d335ae6eda35809023a94f7f': 'Configure edited table', + '90ef7c485bd31fab681c6e9d9afd5be8': 'View more', + '71c0319fce9f416330b18e554e0acc55': 'Floating window', + '64035b04a21bc337a351b5a2a5d12acb': 'Floating window position', + 'ea71a81cf874780294d517b0314feada': 'Configure content', + 'ca60c525372028b9f75ee4c708cccae1': 'It defaults to the current field value.', + 'c9f7324519225bc72fce24a09518a8a8': 'Merge rows', + '9af45e91a08b54764610ada28272d590': 'Merge rows', + 'ad96280bb24a38f9a83051b16ebc9688': + 'Default display during the customization of columns', + 'eb58b078f2f8560160ebf87bc7109de9': 'Content exceeding line break', + 'f1f4c88f30744f2365b65f1790c71da8': + 'Wrong component merging object. The panel is too old, it cannot be handled unless you add a panel.', + 'd17020cd3e6564f5154cf2251cd30f52': ' Row', + '7cef725b75da8afecda59900b780be75': 'Timeline', + '8f32bcb8d5baf6cbb410ef3f6dbed8d5': 'It is used to display the timeline.', + '1aa46d7cdc632756dfbf16c55436bcdf': 'Node data', + 'c360e994dbcffdf31e86d2d8875370e1': 'Sorting', + '825f53899a11e598fc9f9b43e0814a58': 'Positive sequence', + '8eb4b7abb66f0922778a39044b42d345': 'Inverted sequence', + '0da2ab28a6e03922d4a0c78451146b87': 'Timeline direction', + '00ff9356c34d05ecbfd6559a46f56e25': 'Position of text relative to timeline', + '71039986e2386573ab6e5681986c2230': 'Alternation on both sides', + 'f80cc88446cc10da4838556666f6b9f1': + 'You can configure the headers object, add the custom request header.', + '005c50d1af6e833d6991ab882653b7ae': + 'Due to failure to load the available field, please contact the administrator! ', + '76f47297fe988267a26073a9aaf7911f': 'No bindable field available', + '020586d0c69f8211840ddf9ee9bbf6ab': 'Bind field', + '91be693dd1ccea38f8f514318fd8a944': 'Enter name for search', + '8517171ce4ad0e9a5b511bd6bb26f839': 'No available field available', + 'b51796f5778fdc31bac73769a85f89c7': + 'The corresponding component is not found.', + 'eee03351367bb1907dcc3140ffa3e3b8': 'Go to edit', + 'f99603414a616bdee85de0e6e3938b65': 'External API', + 'e6ff6a97bf600c02942db3126a7077b8': 'API center', + '37087e5bb2d0367872a461f535580d91': 'Enter time', + '96641a78cfd9f9f8ba68f0524347b186': 'Enter title', + '1bf14fd24efe68f62bbff0538dee238a': + 'Each option is listed in a separate row. All items with non-repeated values are added as new options.
You can set the time and title for each row using spaces, respectively, e.g., "End-of-term makeup examination on June 23, 2022"', + 'd584018521820dac9e92120737b733ba': 'Node configuration', + '72a3c1690dead6e24f7ac1abc90d5063': 'Enter display time', + '79d3abe929f67f0644a78bf32adb3a89': 'Copy', + 'f86418b525af4b573aed36b8e3f9aeb8': 'Add table column', + 'ec159d98c6c25fadd38bcd9362f6a28e': 'Set table column option', + 'f302b37cf6530d3fb39234a220d95437': + 'You cannot set the table row until you set the table column.', + '6090f7af1ae15892abe97409b9e557b1': 'Add table row', + 'e6a10b831ae920bba1bb89a725e0fbe8': 'Set table row option', + '9bef5e571702130c5710af4ee2c27455': + "/* Customize JS instructions: \r\n * 1. The action execution function doAction can execute all types of actions.\r\n * 2. You can get the current component instance through the context object. For example, context.props can get the relevant properties of this component.\r\n * 3. The event object can execute event.stopPropagation = true after the doAction. It can stop executing the follow-up action*/\r\nconst myMsg = ‘I am the custom JS';\r\ndoAction({\r\n actionType: 'toast',\r\n args: {\r\n msg: myMsg\r\n }\r\n});\r\n", + '8df0f3891f8a80a392816f6ca662a33d': 'Refresh interval', + '21157cbff85802e353409f647f1f1f91': 'Millisecond', + '4fe2f10c6d5bedac03f40a4362e4f69b': 'Enter component name', + '89bc2a21c778b36d09c8d795aac8260e': 'Data entry', + '666352a09304cba42de24312f509c3b4': 'Automatic fill or reference entry', + '7237d0dfa065bf451120d06330291b7d': + "({\n isEmail: 'The Email format is incorrect',\n isRequired: 'This option is required',\n isUrl: 'The Url format is incorrect',\n isInt: 'Enter an integer',\n isAlpha: 'Enter a letter',\n isNumeric: 'Enter a number',\n isAlpha: 'Enter a letter or number',\n isFloat: 'Enter a floating-point value',\n isWords: 'Enter a letter',\n isUrlPath: 'You can enter letters, numbers, \\-\\, and \\_\\. only',\n matchRegexp: 'The format is incorrect. Enter the content that meets the rule of \\$1\\ .' ,\n minLength: 'Enter more content which includes at least $1 character.' ,\n maxLength: 'Control the content length and do not enter more than $1 character',\n maximum: ''Check it when the current input value exceeds the maximum value $1',\n minimum: 'Check it when the current input value is less than minimum value $1',\n isJson: 'Check the Json format.' ,\n isLength: 'Enter the content with a length of $1',\n notEmptyString: 'Do not enter all blank characters',\n equalsField: 'The input data is inconsistent with $1',\n equals: 'The input data is inconsistent with $1',\n isPhoneNumber: 'Enter a valid phone number',\n isTelNumber: 'Enter a valid phone number',\n isZipcode: 'Enter a valid postal address',\n isId: 'Enter a valid ID number',\n })[data.type] || ''", + 'd3e329f73ae4b58d95cc7769eeca8370': + 'It takes effect when it is at the left or right position.', + 'fd179c2844536ce198290441c38c814e': + '<% if (data.type === button-group) { %> Button group <% } else { %><%= data.label %><% if (data.icon) { %>/><% }%><% } %>', + 'c5d48d5732c64d5dea4bb0b4aaf13813': 'Enter className', + 'a11cc7a65b27f3993d58438d275f3447': 'Enter content', + '34df758502e02c7c1a58f804a6c96c28': 'Text before being folded', + '1d20d90b7c7301b7739900242d38544e': + 'No configuration. The title appears by default.', + '8aea4138b4fac2627c9b72da37e0671f': 'Text after being folded', + 'e9b91e9101059dc2e234d9847dd7b003': 'Popup data', + '544fac400db790f57ea8ee4207cbeb6b': 'Standard', + 'fcb9b16d5d056bfbf6b6cba9dcf61efa': + 'Refer to the format application in moment.', + '17a689143f0c7003123bb3c947d35273': + 'The verification priority is higher than the maximum width.', + '2aa41edf8cfa79e7e5fcf38c9742b495': + 'The verification priority is higher than the maximum height.', + '37ad5d98b12853d786b08cb52b91a43a': + 'After enabling it, you need to set its height and width through the CSS class.', + '324d0ccd6fa9d976d2f17de3bf0b70bd': + 'Control the display size according to this value when the fixed size is enabled.', + '7a377ac3904628fd73e7d33ce6130ae1': + 'Minimum number of nodes selected for form validation', + '674ddb63a7cd9e14a49813d52cf7e25e': + 'Maximum number of nodes selected for form validation', + '24c5febd312d27b5e80354cf03e241f0': 'Outer container', + '54d621d5bd588bea4e896de52147a229': 'Row data selected', + 'ae76ff4dcb615d3b0232dcd10115e149': 'Initialize static data', + '152b66069787294e53cfc176a189c81f': 'Field corresponding to the icon', + '10cfe8897db8c032986138ba7b2f48da': 'Data field assignment', + 'a6e2cf5b7fa625f571a3e6d0df3a7327': 'Data field member assignment', + '3371427f1b82095309092ef82418ec1a': 'You have added this event.', + '0e9525b2bb1493c567c114dd61b69095': 'Notes:', + 'ff0d36eac9b9c029d91c365cd2c7e6cf': + '${data[&] ? Disable immediately: disable immediately}', + 'a718dcd3a16bee2a4086244ef1eb0ab4': 'Enter the content with a length of $1', + 'c323e3527a805cfdd264700fdf013daf': + 'Control the content length and do not enter more than $1 character.', + 'c762cefa0ff423010af0a943c04d603b': + 'Enter more content which includes at least $1 character', + 'b95aed5c6f2c8e49e23b382ac3d593ba': + 'Check it when the current input value exceeds the maximum value $1', + 'fd11733fbabaf2ae3cf1fcd3fe385cc5': + 'Check it when the current input value is less than minimum value $1', + 'acf719549561f28f38bf750a64cda508': 'The input data is inconsistent with $1.', + 'e027500d91d46a962036f63c09492c6c': 'The input data is inconsistent with $1.', + 'd01886eeef1de19f2e99617017f4def8': + "'The format is incorrect. Enter the content that meets the rule of \\$1\\ .'", + '5e568c42a5ecb74db2dc3d8531079dd6': + 'Reference documentation', + 'cadf0e302ddbc6fdbf005aed670b5e3e': 'Code changes', + '6006074bdabc639b86f42aa18876e33a': 'Fired when code changes', + '28e5fd494ea37a09fd2ad36d0f98bacc': 'Deleted item', + '046de1a6cb21ff83af74958342c0db64': 'Activated item', + 'f6e5fc909971d2e5f6ffe23edae93584': + 'If there is a lot of data and the comparison is stuck, you can turn on this configuration item', + '31dae237cbd03ae0d2dcf7ad2fd4fb76': + 'The data returned after the initial interface request is successful', + '850c62f7b1ebfb4b89182ecd51202a7d': + 'Triggered after the form is submitted successfully. If the event source is a button and the type of the button is "Submit", the submit success event will be triggered even if the current form is not configured with "Save Interface"', + '88b2930823f9fd6706473805e9b11797': + 'Save the data returned after the interface request is successful', + '3e07258baf3c4389c1ffd4a98c20b8fe': + 'Save the error information returned after the interface request fails', + '0d6581b6dd51f6c03a4edf26475d75c6': 'Removed item', + '4ea280a2e54969de1d1b9bbd5b708e63': 'Click option', + 'f05520432bb87ced419a1da818c6cc9d': 'Fired when an option is clicked', + '91f7b7fdf9b91073ca3519260f7a62d7': 'Option clicked', + '6afde638796d237377b0755506d08ded': 'target component', + 'fee99f2bcced486e4753a8f58f511d3f': 'Append data', + '3f3f4c71c1b736e7f01cf910a553ff43': + 'When "Yes" is selected, the data domain variables of the source component will be synchronized to the data domain of the target component.
If the target component is a CRUD component, and the data pull interface of the CRUD component is a get request, the data domain variable where the source component is located will be appended to the target component\'s initialization request query.', + '2aecb19ca1655d66fc80fc27a783cc9e': 'Append method', + 'b67b01a3b9170f1daf78082cfd0df793': + 'When "Merge" is selected, the data is merged into the data field of the target component.
When "Override" is selected, the data will directly overwrite the data field of the target component.', + 'bd81577a6fd4956e676cec499bb70d00': 'Merge', + 'e09fea40f7e4abd4b2a495b315940688': 'Cover', + '9a5500b6013ec1ebf61bdf0e18452348': + 'The data defaults to the data field where the source component is located, you can select "Custom" to customize the required data', + 'f30bcdccf71b19e858c37d8881d2b206': + 'The data domain where the source component is located', + 'fa644cb20c66f7530d8a376d4fa6a36e': 'Component data', + '7d9260bd45b2e85a09398f218c25f220': + 'Update the data field of the target component or the data value of the target form item', + 'e7af71fb102cc86ab3be6a2fb32b5e3f': 'Data settings', + '77b1081c177fa3334cc93c99f0ecee75': 'Direct assignment', + 'f5c5e3d69daee06ea1606378ef466765': 'Member assignment', + '697af73997072e0ce9ee65b15a7b3715': 'Reset PageNo', + 'd7bf42dd6e66f2818f9a232603c4a53b': + 'When "Yes" is selected, the crud component will request the first page of data', + '3e573fd37473d789211ee44335d82fad': 'Static CSS class name', + '905407c57ccd033cb6bd64bfad20a8c7': 'CSS class name in static display', + '0d1f68afa19f3f3dd88e28d17c98ddf9': 'Table 2', + 'e052287273ad39a1d3fa9fa3decb5fd9': 'Component display status', + '506f28f48dbebd5d19e19dfc721e13be': + 'Control the input state/static state of the selected component', + '0e35b091e18032508758899735664df7': 'Components switch to static', + '34d361256526b04909e064c29d9a9b76': + 'The component switches to the input state', + 'd2e930293da37452638759e17d771adf': 'Component Status', + 'b535bea11c97ec5588b1494799de4d60': 'Form Input', + 'f7784642f42d33f506ba05f3daefc3c4': 'Form Static', + 'a8797a840f3c0bbb5297aada95f9b13a': 'Form Item Static', + '7bb3e24cc54f4b8ee0a65d14fa4c067c': 'Modify activation tab value', + 'fd951a59a7c635d5330bc1aeec22c813': 'Custom Data', + 'b62ce3df3c0d5772006c525b60d5eeab': + 'The data defaults to the data field where the source component is located, you can select "Custom" to customize the required data', + '0f9803bd27434940d4017007c105a861': + 'When "Yes" is selected, and the target component is CRUD, the request be send with this data. Other target components send with this data just when the request api is POST method.', + '81e1ff0bb8917a9df99d737982ee24b7': + 'SubForm, configure a subform as the current form item', + 'a5c2dba5ccf62851b24cfa12d4958ce2': + 'It can be used to display data and array type data, such as multiform of multiple', + '74104c62ed33836f0bc74297539dd7c9': + 'Configure options to realize selection options', + 'b5ade3d97d5b11bc784786111e011571': + 'Tree structure, options can be configured through options, or options can be pulled through source', + '2c05e451a6f2b2fe1cf55f7afb8c8423': + 'Single or multiple choices, support the source pull option, which can be configured with pictures or customized HTML configuration', + 'c65c9862813c7a66c0df52e301e0e1d1': + 'Applicable to options that contain sub items. You can pull options from source and support multiple choices', + '8f650b58c8421edecfb380d6f60ef40e': + 'Configure the data sources available for selection through pickerSchema to select the required data. Multiple selections are supported', + 'b7a4abc1e4e975c9df5bb9d9cf4823ba': + 'Configure options through options, and pull options through source', + 'f2fc416c7d95a93a8da621f760be8417': + 'Support multiple choices, input prompts, and use source to obtain options', + 'b4482a3d9523f48e83a816fa85911185': + 'It is purely used to display data, such as json, date, image, progress, etc', + 'ecfd82eb65102274188011a502913d3a': 'Drawer data', + '951f802ebd0c0d795fbae6767a5ee9b3': 'Initialize interface request succeeded', + 'da0126992b4937a5fd847ef5366b02e6': + 'Data returned by initialization interface request successfully', + '70b8342d743374233bfee0f56c7f0fc7': 'Node Sample Data' }); diff --git a/packages/amis-editor/src/locale/zh-CN.ts b/packages/amis-editor/src/locale/zh-CN.ts index 9eaa8d0cd..ac4f6ab9e 100644 --- a/packages/amis-editor/src/locale/zh-CN.ts +++ b/packages/amis-editor/src/locale/zh-CN.ts @@ -20,8 +20,6 @@ extendLocale('zh-CN', { '4d9c32c23df5d234e629c922c58d8e12': '右', '5ef69f62dc668c1a3e68b51c50a2530a': '图标', '4434b33a8731a73613ba5fa1eb984efb': 'CSS 类名', - 'd46908ab96b7955bc7ba9cb172c4d2c8': - '有哪些辅助类 CSS 类名?请前往 样式说明,除此之外你可以添加自定义类名,然后在系统配置中添加自定义样式。', '159dbc2fafd57b9d3652f16659b1b519': '触发方式', '45a51525391d4a3771b22f2cf1aa96b3': '浮层触发方式默认值为鼠标悬停', '728c7cdfa431821d291b5108394ec65a': '鼠标悬停', @@ -534,8 +532,6 @@ extendLocale('zh-CN', { "\n const button = document.createElement('button');\n button.innerText = '点击修改姓名ddd';\n button.onclick = event => {\n onChange('new name');\n event.preventDefault();\n };\n dom.appendChild(button);", 'b82231f254baf9a28bf752683d31b169': '自定义容器', 'e5b5798a8bab7dc8a578431991731040': '通过自定义代码来实现容器组件', - '717a7095d0330ee4bdb46ba8c8b44463': - '
\n

hello, world!

\n
自定义容器区域
\n
', '96ec95de2d7da5b16465eb980f74deae': '

自定义容器区域

', '749f710d280419b1da031c9bc79b3b07': '自定义容器区', '356b1959a9da95997b4de31415d9d74e': '日期展示', @@ -565,13 +561,6 @@ extendLocale('zh-CN', { 'dcba76890a534e1fe94421be2a17b484': '左下角展示报错消息', 'af5876b89583552eef4c781718886dec': '左下角展示loading动画', 'dd10fdec63a2224aa3d28b48d428cb98': '数据映射', - 'ff57dff3fca4dee46a8e693d35b7e728': - '
当开启数据映射时,弹框中的数据只会包含设置的部分,请绑定数据。如:{a: ${a}, b: 2}。
', - '290aa0d8fd40285d213a3786c98e28d3': - '
当值为 __undefined时,表示删除对应的字段,可以结合{&: $$}来达到黑名单效果。
', - 'c7505acc5b5dd1ad17f35dd90e0884d6': - '${data[&] ? 已开启定制参数功能,可点击关闭该功能。 : 如果需要在默认数据的基础上定制参数,请配置开启参数定制再定义key和value。}', - '9567f8bbb315b1217b7b32be37f97792': '${data[&] ? 立即关闭 : 立即开启}', '261bba7ad82914e477f4b37f6a83874e': 'CSS类名', '5e5d3f13111593b2710673006d4c8297': '外层', '7e1eb2c588aa1301f4aa19395ef0a177': '分隔线', @@ -587,11 +576,7 @@ extendLocale('zh-CN', { 'bde8a41fc64bfe78d0c4951ac6f93718': '显示蒙层', '4a757588f5aee8cd039b1d166b096d1a': '点击外部关闭', '874cf31274d782914c7833cc39836c4e': '可拖拽抽屉大小', - '0eeffa0f121262f0c737975a7a6553e4': - '位置为 左 或 右 时生效。 默认宽度为尺寸字段配置的宽度,值单位默认为 px,也支持百分比等单位 ,如:100%', 'd3e329f73ae4b58d95cc7769eeca8370': '位置为 为 左 或 右 时生效', - '9c203944698316da279b3c6f8d1933ac': - '位置为 上 或 下 时生效。 默认宽度为尺寸字段配置的高度,值单位默认为 px,也支持百分比等单位 ,如:100%', '45ce37c24c6e7252d98c6d450e3ca4ad': '标题区域', '660553eee939d2bd8ea68172fa7216df': '页脚区域', 'cc70a816b7d61e7212d57335c0a15af5': '下拉按钮', @@ -638,8 +623,6 @@ extendLocale('zh-CN', { '7ac1519928de413cfe36f5d2e0610430': '自动拉伸', '8e15f51c9512fdbf4287794d6642a90b': '子节点管理', 'bc78248b34b7bf18691e6d385e0f544b': '子节点内容', - '2f10b0974520010e9db4ed5c87bc2a95': - '子节点${index | plus}', '023c4bfc60545a2668c2d5111171b5d8': '外层CSS类名', 'a4611da51ffee9140976d01668e45d45': '子节点集合', '729a4cca5ed3504793c1f3a87d2b48b9': '按钮点选', @@ -729,7 +712,6 @@ extendLocale('zh-CN', { '66e867eb73a118649800c0a064d0b5aa': '类型名称', '5aa528690fd771f89683a7f00868f39e': '分支管理', '35b65a5a3f8d721e12cae310463d69d6': '命中条件', - 'c4f1a371191ac24d16e00e105540c47a': '比如: this.type === text', '85485d70be6b380294428018e54fc9b9': '根据成员数据判断是否使用此分支', '50bfed6ada3e7d0ef4d20eb727b3d7df': '配置子表单项', 'd68162ea1904f627b033fe3953da295d': '配置子表单集合', @@ -942,8 +924,6 @@ extendLocale('zh-CN', { 'c80c42a0be1b39ed899b1f5560875cf8': '支持 JS 表达式,如: data.var_a + 2,即当表单项 var_a 变化的时候,会自动给当前表单项设置为 var_a + 2 的值。若设置为字符串,则需要加引号', '89a8549c2ed7fc23a683599731d92b22': '作用条件', - 'e16e5eca749d250efd3ad95434ff7026': - '支持如:\\${xxx}或者data.xxx == a 表达式来配置作用条件,当满足该作用条件时,会将计算结果设置到目标变量上。', '3df193f5d4f652a4bac331a69761041b': '是否初始应用', '86cebf86c66c6a4e6731b840c3967ab0': '是否初始化的时候运行公式结果,并设置到目标变量上。', @@ -1017,8 +997,6 @@ extendLocale('zh-CN', { '0a72b3858efffaa1bab685fa840b701b': '时间值', 'f6db3514c72bdc34922f137a8a92b997': '输入框获取焦点(非内嵌模式)时触发', '0f5fc3b84cf9c24ff3acae45ae22fb57': '输入框失去焦点(非内嵌模式)时触发', - 'cfbace00045a3debdc8f02858cf753c6': - '提交数据前将根据设定格式化数据,请参考 moment 中的格式用法。', 'ecd1a3cadcf1d55250afafbbde767250': '显示格式', '182503224cfaf1f63c566f13da56a2a4': '请参考 moment 中的格式用法。', @@ -1095,8 +1073,6 @@ extendLocale('zh-CN', { 'd28879b6a8a4ddb62bf6f2ab59303df7': '随表单提交', '3a76423b7ae40b0fa8b0bedb470cce7e': '独立上传', '7c6722203327e8173be987f36fadf610': '数据格式', - 'abe8f84fa8436e1033af359d8ef25634': - '${formType ? asBase64 ? 小文件时可以使用,默认给 Form 提交的是文件下载地址,设置后给 Form 提交文件内容的 base64 格式字符串。 : File 控件不接管文件上传,直接由表单的保存接口完成。和 Base64 选项二选一。 : }', '6168fb08fe64663a502a132c5589b73d': '二进制', '7245fe895fa1cfc42b5217a3de314565': '自动上传', 'cf9e4c80962e712eaa55551cccff317e': '开启分块', @@ -1240,8 +1216,6 @@ extendLocale('zh-CN', { 'f9fb6a063d1856da86a06def2dc6b921': '英文', '81fafee54baebeb9591b5e7840d7e650': '大屏时展示的配置项', '0b6eee152cb2553ed4298ca2fe82d3f8': '屏幕宽度 ≥ 1200px', - 'ac3906888a34e51c5bdc1297636857ed': - '使用空格分开配置,使用|可将配置栏分组,参考文档', 'f126c4368fbf51cfd470684e7c3d31c9': '中屏时展示的配置项', '3b8c320d14dba586c581ceb951917397': '屏幕宽度 ≥ 992px', '89bc688b5b497e515ce3c026a1d92669': '小屏时展示的配置项', @@ -1249,8 +1223,6 @@ extendLocale('zh-CN', { 'b8c8f1c6a56e902bd837420da0f554b3': 'tinymce 设置项', 'e4d0e65de0018b63698ff22d683d6dd5': '是否显示菜单栏', '63068211669d69b4028eebe0052425e7': '启用的插件', - 'a917d194212a4f48b60d094c7a83fa17': - '使用空格分开配置,参考文档', '1a920d9999206a9fa5f588c7405fe081': 'SubForm, 配置一个子form作为当前的表单项', '18c113b99afa964ee988f30e81baf12b': '名称字段名', @@ -1289,8 +1261,6 @@ extendLocale('zh-CN', { 'e54289c1f0e9311185adee89af24e618': '取消编辑按钮图标', '1205e138ba64dddf61c1f8e6eb3a1aa7': '确认模式', '1c1618f67cfea6fefb5f287932be2c27': '获取父级数据', - 'c811e7212b773b5d698a708113007729': - '配置canAccessSuperData: true 同时配置 strictMode: false 开启此特性,初始会自动映射父级数据域的同名变量。需要注意的是,这里只会初始会映射,一旦修改过就是当前行数据为主了。也就是说,表单项类型的,只会起到初始值的作用', '677fb705e57897710d28867b7628307e': 'Input CSS 类名', '14d342362f66aa86e2aa1c1e11aa1204': '标签', '1b4996b29c7b4d5fb45ca701e6438d14': @@ -1407,8 +1377,6 @@ extendLocale('zh-CN', { 'd1f923b8e23b66b3e48953ba1ce17839': '地理位置选择', '989ea9acbab9b17d2c15e2946b5365bb': '位置选择', 'dffd9d86d2003615897b12ce7597d77b': '百度地图的 AK', - '3eaf4454ea75f435e78890d051775f68': - '请从百度地图开放平台获取', 'b472ba224a7d132c487ee6ec4798f835': '坐标格式', '36443b53c845b197db8d39eeda433ab9': '百度坐标', 'f58cb611aec0998a44ef104b5c950b40': '国测局坐标', @@ -1451,8 +1419,6 @@ extendLocale('zh-CN', { 'dc0c50a5c9832b393df34835111c34a3': '开启内嵌模式', '1ac065ed64b81380384a0b371d5b404f': '配置选框详情', 'd64b585847f015eaa1443a3a03562350': '已选定数据的展示样式', - 'c2ceb5af7595ec6d1818b35d5b68890b': - '支持使用 \\${xxx} 来获取变量,或者用 lodash.template 语法来写模板逻辑。详情', 'c2c23b4fc7f695c58e947ad413f2c5d8': '选框类型', '33e6c41fed95c25e3b426d596d504579': '抽出式弹框', '5a7af8d3e471d98339c84b07a844547b': @@ -1688,15 +1654,6 @@ extendLocale('zh-CN', { 'a2bc1edd7be9348e5a998feb0886c55d': '日志数据源', 'ddeeaa33ae62ead1a77a859fb79b78d7': '对现有值做映射展示,比如原始值是:1、2、3...,需要展示成:下线、上线、过期等等。', - 'de5c484c2ef38a6908f501bd93339ea7': '', - '637729ecbb0395a5ce9fc43f94cb92bd': - '', - '3a82dd75c3c3747c77329f682b243405': - '', - '6aa6f4aed3337b006be1052661f2b86b': - '', - '8fb95b984334a27006b5d45613a79c51': - '', '8b139ce9fa196b602bb1ee3bd25b25df': '映射表', 'a9de5901385d644363cd056482be7517': '

当值命中左侧 Key 时,展示右侧内容,当没有命中时,默认实现 Key 为 *的内容(请确保key值唯一)', @@ -1771,8 +1728,6 @@ extendLocale('zh-CN', { 'ff88d5db9d61f14bce6e3397fd4652a5': '当没有值时用这个来替代展示', '348097cc50579e489f0bcb5433637d3a': '开启后可以根据当前列排序(后端排序)。', '9db64f772c11c614ee00bb3cc066f46f': '列分组名称', - '161799764950b7251c94ae3e44d4c06f': - '当多列的分组名称设置一致时,表格会在显示表头的上层显示超级表头,示例', '19c4f5e98ad302574202de30dddbaf66': '启用快速编辑', '15c3796e07e33afc7252df751f610c5d': '是否立即保存', 'ba5a0a1ff2c438ae7719ca48b0ce3af7': '启用查看更多展示', @@ -1849,8 +1804,6 @@ extendLocale('zh-CN', { 'da71dcbb13405815476cef28a8b9c4f6': '按钮外层', '6c5b1f0e8e361a801fa75da070d1cba5': '用来展示纯文字,html 标签会被转义。', '67e77a196826a8880e47ad949ce08ac0': '这是纯文本', - '8f945732891671ab4a3e095ebe58ea38': - '如果当前字段有值,请不要设置,否则覆盖。支持使用 \\${xxx} 来获取变量,或者用 lodash.template 语法来写模板逻辑。详情', '83077805e05ac6bedad69b47fca4462b': '进度展示', 'c77048def6e8a2d6c556a3fcc9c66730': '进度条、progress', 'b1aefb18d4bf96dc283a26d67abc41a8': @@ -2115,7 +2068,7 @@ extendLocale('zh-CN', { '9769ee568100b0c530a06ec3f0c0044d': '内容1', '4be268145385303e8ebeb480458a380e': '选项卡2', 'c50159e2acff0f4ffdce4c67ec3513a3': '内容2', - 'c8794c58d0eb020ca40905d1904d88b2': '修改激活tab值', + 'c8794c58d0eb020ca40905d1904d88b2': '激活指定选项卡', 'fcd3abb110aab48ebd0ac2a1d7040d6d': '修改当前激活tab项的key', '9d000284174ff09642502803887f28ed': '激活第', '29645b509093191cad34c673c1b3efb7': '项', @@ -2153,8 +2106,6 @@ extendLocale('zh-CN', { '8a471486c6c7bbe43e14392c6b127aea': '异步任务', '4f58f808d62c4e31c347e483898396d5': '用来做异步任务呈现或者操作。', '9ee043b0a77a26d22eec0f4ea99afbd3': 'hive 任务', - 'f0eda973dd9e60c659057dadde816725': - '查看详情日志。', '3709f71c9552ed5db76cbe8f3cb5d4be': '小流量', 'c60ad696dee4e1eeff6f0f2c2e9b9fc0': '全量', '5c0dc424442c913c6d16a2cf43137da4': '初始任务信息', @@ -2321,7 +2272,6 @@ extendLocale('zh-CN', { '7c57a563ab87bc6eb5edd8f5b953f499': '接口设置', '6aa351f5dacd13d3d862d9c93e4a0241': '发送方式', '8dc91bca9bc83efea73150e3478657fc': '发送条件', - 'd811d2650a17fb7cac710e9376645287': '如:this.type == 123', '91ee84292a5bf5e59d3b6309f948f2f1': '用表达式来设置该请求的发送条件', '55409342e28d37db86fb23efbd84a025': '发送体格式为', 'e06a14abe7ef66a8ead143db4ae9786e': @@ -2342,8 +2292,6 @@ extendLocale('zh-CN', { '9ae7a582479116d4cb41e828fbd59798': '发送数据映射', '0fcbf036057c6dd88b7b809daa0c5eb7': '当没开启数据映射时,发送 API 的时候会发送尽可能多的数据,如果你想自己控制发送的数据,或者需要额外的数据处理,请开启此选项', - 'eba0c4982948edc9b865292dc8abea33': - '

当没开启数据映射时,发送数据自动切成白名单模式,配置啥发送啥,请绑定数据。如:{a: \\${a}, b: 2}

如果希望在默认的基础上定制,请先添加一个 Key 为 `&` Value 为 `\\$$` 作为第一行。

当值为 __undefined时,表示删除对应的字段,可以结合{&: \\$$}来达到黑名单效果。
', '7dd590a9d9e783e980d318bd52891905': '返回结果映射', '7e295b6ff39ec7356e06c4534bfc4fb3': '如果需要对返回结果做额外的数据处理,请开启此选项', @@ -2403,8 +2351,6 @@ extendLocale('zh-CN', { '5d26b8a41e805204c9dcd5ea7e23b150': '请输入文本/值', '22de6ef85ed60ec54dbdc1d8583e5104': '批量添加', '421252e16c6cb544fe9ce0be94a190e0': '批量添加选项', - '55c4cbeae7ffae65d211bc5e9968dc28': - '每个选项单列一行,将所有值不重复的项加为新的选项;
每行可通过空格来分别设置label和value,例:张三 zhangsan', '1e2f96a69fbef8caa8823a3067ebbdc7': '请输入选项内容', 'a4f1ddbbfc96930d24e4b54cb815b62b': '无选项', '5b4ffa2eadaf629b833b37a3e8742b2c': '不分块', @@ -2427,8 +2373,6 @@ extendLocale('zh-CN', { '34df758502e02c7c1a58f804a6c96c28': '折叠前文案', '1d20d90b7c7301b7739900242d38544e': '无配置情况,默认显示标题', '8aea4138b4fac2627c9b72da37e0671f': '折叠后文案', - '82e9f5ad74c0ff5a041369bd6c7a0760': - '每个选项单列一行,将所有值不重复的项加为新的选项;
每行可通过空格来分别设置time和title,例:2022-06-23 期末补考', 'd584018521820dac9e92120737b733ba': '节点配置', 'c8158b3cad598b0b5939788ca4efb298': '接口获取', '72a3c1690dead6e24f7ac1abc90d5063': '请输入显示时间', @@ -2675,8 +2619,6 @@ extendLocale('zh-CN', { '1a1ff1e1149a0cd1b39c0b231a334d04': '可以指定操作完成后刷新目标组件,请填写目标组件的 name 属性,多个组件请用,隔开,如果目标组件为表单项,请先填写表单的名字,再用.连接表单项的名字如:xxForm.xxControl。另外如果刷新目标对象设置为 window,则会刷新整个页面。', '4fe2f10c6d5bedac03f40a4362e4f69b': '请输入组件name', - '018dcc21d4c932029eaff062c4767f3f': - '有哪些辅助类 CSS 类名?请前往 样式说明,除此之外你可以添加自定义类名,然后在系统配置中添加自定义样式。', '3bce1a6217990c8dc087d254f1fe754a': '自动填充', 'f01553e415ca33cc89d0bca84023f4b5': '将当前已选中的选项的某个字段的值,自动填充到表单中某个表单项中,支持数据映射', @@ -2824,8 +2766,6 @@ extendLocale('zh-CN', { 'ebd0dc3ebde6182caa3b66e0faf658b6': '自定义验证提示', 'd7772d568894afbb1c924bed7f7ddb32': '自带提示不满足时,可以自定义。', '58c9592f818d706420236c6f9f595517': '新增提示', - 'e367011e16762afd7db7cf4ff06dcb68': - "({\n isEmail: 'Email 格式不正确',\n isRequired: '这是必填项',\n isUrl: 'Url 格式不正确',\n isInt: '请输入整形数字',\n isAlpha: '请输入字母',\n isNumeric: '请输入数字',\n isAlphanumeric: '请输入字母或者数字',\n isFloat: '请输入浮点型数值',\n isWords: '请输入字母',\n isUrlPath: '只能输入字母、数字、\\-\\ 和 \\_\\.',\n matchRegexp: '格式不正确, 请输入符合规则为 \\$1\\ 的内容。',\n minLength: '请输入更多的内容,至少输入 $1 个字符。',\n maxLength: '请控制内容长度, 请不要输入 $1 个字符以上',\n maximum: '当前输入值超出最大值 $1,请检查',\n minimum: '当前输入值低于最小值 $1,请检查',\n isJson: '请检查 Json 格式。',\n isLength: '请输入长度为 $1 的内容',\n notEmptyString: '请不要全输入空白字符',\n equalsField: '输入的数据与 $1 值不一致',\n equals: '输入的数据与 $1 不一致',\n isPhoneNumber: '请输入合法的手机号码',\n isTelNumber: '请输入合法的电话号码',\n isZipcode: '请输入合法的邮编地址',\n isId: '请输入合法的身份证号',\n })[data.type] || ''", '171f7b825707ddd79175fed3f8def6cd': '修改即提交', '6ccb7091c39a5229f7e77eff4dd44a0e': '设置后,表单中每次有修改都会触发提交', '1a006028adf7167ae28cdf532bb75ef4': '校验触发', @@ -2839,5 +2779,171 @@ extendLocale('zh-CN', { 'a85ce2404b26140080c929ad9c3ec305': '请输入更多的内容,至少输入 $1 个字符', 'e93275245d529c486018e47136bfae2e': '请检查 Json 格式', '2c8c25bb51dfd9ddfc74fd75a8a380a1': '值内容', - '859102d8ced9928cc71bb225961171bf': '请输入Js正则' + '859102d8ced9928cc71bb225961171bf': '请输入Js正则', + '544fac400db790f57ea8ee4207cbeb6b': '标准', + '7a377ac3904628fd73e7d33ce6130ae1': '表单校验最少选中的节点数', + '674ddb63a7cd9e14a49813d52cf7e25e': '表单校验最多选中的节点数', + '54d621d5bd588bea4e896de52147a229': '选中的行数据', + 'ae76ff4dcb615d3b0232dcd10115e149': '初始化静态数据', + '152b66069787294e53cfc176a189c81f': '图标对应的字段', + '10cfe8897db8c032986138ba7b2f48da': '数据域赋值', + 'a6e2cf5b7fa625f571a3e6d0df3a7327': '数据域成员赋值', + '3371427f1b82095309092ef82418ec1a': '您已添加该事件', + 'a718dcd3a16bee2a4086244ef1eb0ab4': '请输入长度为 \\$1 的内容', + 'c323e3527a805cfdd264700fdf013daf': + '请控制内容长度, 请不要输入 \\$1 个字符以上', + 'c762cefa0ff423010af0a943c04d603b': '请输入更多的内容,至少输入 \\$1 个字符', + 'b95aed5c6f2c8e49e23b382ac3d593ba': '当前输入值超出最大值 \\$1,请检查', + 'fd11733fbabaf2ae3cf1fcd3fe385cc5': '当前输入值低于最小值 \\$1,请检查', + 'acf719549561f28f38bf750a64cda508': '输入的数据与 \\$1 不一致', + 'e027500d91d46a962036f63c09492c6c': '输入的数据与 \\$1 值不一致', + 'd01886eeef1de19f2e99617017f4def8': + '格式不正确, 请输入符合规则为 \\$1 的内容。', + 'f10b676db977ae808af8d96b327be7f3': + '有哪些辅助类 CSS 类名?请前往 样式说明,除此之外你可以添加自定义类名,然后在系统配置中添加自定义样式。', + '73ac822ddf4685dbfec661dec41a96b7': + '
\n

hello, world!

\n
自定义容器区域
\n
', + 'e9b91e9101059dc2e234d9847dd7b003': '弹窗数据', + '94397b87ac63fe238c779120fadab024': + '位置为 "左" 或 "右" 时生效。 默认宽度为"尺寸"字段配置的宽度,值单位默认为 px,也支持百分比等单位 ,如:100%', + 'a6d91e801974dfa735a4ae0e098c522a': + '位置为 "上" 或 "下" 时生效。 默认宽度为"尺寸"字段配置的高度,值单位默认为 px,也支持百分比等单位 ,如:100%', + '197af5d5971778e3b80deb25182d63e3': + '子节点${index | plus}', + '7341e991c8e8cfec68d31ffe0e06e429': '比如: this.type === "text"', + '8add6799ceff24eb041c5a6a92bb1694': + '支持如:\\${xxx}或者data.xxx == "a" 表达式来配置作用条件,当满足该作用条件时,会将计算结果设置到目标变量上。', + 'e02d111d524de97e8622121f7ce845cf': + '提交数据前将根据设定格式化数据,请参考 moment 中的格式用法。', + 'fcb9b16d5d056bfbf6b6cba9dcf61efa': + '请参考 moment 中的格式用法。', + 'fde1ab2f504097f3f717acbb653b4f09': + '${formType ? asBase64 ? "小文件时可以使用,默认给 Form 提交的是文件下载地址,设置后给 Form 提交文件内容的 base64 格式字符串。" : "File 控件不接管文件上传,直接由表单的保存接口完成。和 Base64 选项二选一。" : ""}', + '17a689143f0c7003123bb3c947d35273': '校验优先级比最大宽度和最大宽度高', + '2aa41edf8cfa79e7e5fcf38c9742b495': '校验优先级比最大高度和最大高度高', + '37ad5d98b12853d786b08cb52b91a43a': '开启后需通过CSS类设置其高度、宽度', + '324d0ccd6fa9d976d2f17de3bf0b70bd': '开启固定尺寸时,根据此值控制展示尺寸', + 'd85a80d177db696b29b7338af1501055': + '使用空格分开配置,使用|可将配置栏分组,参考文档', + '8cfcd52cebdc2555b202f4b03de93662': + '使用空格分开配置,参考文档', + '5831c1f77c5acefa6dfe9c64d06ca78a': + '配置"canAccessSuperData": true 同时配置 "strictMode": false 开启此特性,初始会自动映射父级数据域的同名变量。需要注意的是,这里只会初始会映射,一旦修改过就是当前行数据为主了。也就是说,表单项类型的,只会起到初始值的作用', + '24c5febd312d27b5e80354cf03e241f0': '外层容器', + 'a269e7de6c7735290733eb3e574c2129': + '请从百度地图开放平台获取', + '0861915dbac25ccb573b3bb72ffeebd7': + '支持使用 \\${xxx} 来获取变量,或者用 lodash.template 语法来写模板逻辑。详情', + '844318bd1d58ba0bf7dabbb771174b12': + '', + '2fccd71275cdf5d6c0c677ef79dd84a0': + '', + '198a96c4cfc64d5feba81b3f931f8289': + '', + '626a0f2fdf13bcadf11581006ab9eba3': + '', + 'ce3fd44456123f571e9d083b98da9fcb': + '', + 'fea0f3f456153564218a9eefb78d8cec': + '当多列的分组名称设置一致时,表格会在显示表头的上层显示超级表头,示例', + 'f8fc21a9fd40881e8fd3d7f15919465c': + '如果当前字段有值,请不要设置,否则覆盖。支持使用 \\${xxx} 来获取变量,或者用 lodash.template 语法来写模板逻辑。详情', + '2c8a99d35cb5704994cabcc61a4c3a4a': + '查看详情日志。', + 'bf9e242338d2c26b182aa6b9c015d84c': '如:this.type == "123"', + '5414824fb8efdb7d59beae4bf95fdefd': + '

当没开启数据映射时,发送数据自动切成白名单模式,配置啥发送啥,请绑定数据。如:{"a": "\\${a}", "b": 2}

如果希望在默认的基础上定制,请先添加一个 Key 为 `&` Value 为 `\\$$` 作为第一行。

当值为 __undefined时,表示删除对应的字段,可以结合{"&": "\\$$"}来达到黑名单效果。
', + 'c130bd5b55edefdaf8923269e9a52439': + '每个选项单列一行,将所有值不重复的项加为新的选项;
每行可通过空格来分别设置label和value,例:"张三 zhangsan"', + '1bf14fd24efe68f62bbff0538dee238a': + '每个选项单列一行,将所有值不重复的项加为新的选项;
每行可通过空格来分别设置time和title,例:"2022-06-23 期末补考"', + '0e9525b2bb1493c567c114dd61b69095': '温馨提示:', + '7080fa6e0ca1d7e24f6f8cac05077a3a': + '有哪些辅助类 CSS 类名?请前往 样式说明,除此之外你可以添加自定义类名,然后在系统配置中添加自定义样式。', + 'f19464cd1d7c55610b84b4972eaf506f': + '
当开启数据映射时,弹框中的数据只会包含设置的部分,请绑定数据。如:{"a": "${a}", "b": 2}。
', + '784cf5219012b5f16f2985b7f1fd52f5': + '
当值为 __undefined时,表示删除对应的字段,可以结合{"&": "$$"}来达到黑名单效果。
', + 'af9f27383daeec508815a33753247f42': + '${data["&"] ? "已开启定制参数功能,可点击关闭该功能。" : "如果需要在默认数据的基础上定制参数,请配置开启参数定制再定义key和value。"}', + 'ff0d36eac9b9c029d91c365cd2c7e6cf': '${data["&"] ? "立即关闭" : "立即开启"}', + '7237d0dfa065bf451120d06330291b7d': + "({\n isEmail: 'Email 格式不正确',\n isRequired: '这是必填项',\n isUrl: 'Url 格式不正确',\n isInt: '请输入整形数字',\n isAlpha: '请输入字母',\n isNumeric: '请输入数字',\n isAlphanumeric: '请输入字母或者数字',\n isFloat: '请输入浮点型数值',\n isWords: '请输入字母',\n isUrlPath: '只能输入字母、数字、\\`-\\` 和 \\`_\\`.',\n matchRegexp: '格式不正确, 请输入符合规则为 \\`$1\\` 的内容。',\n minLength: '请输入更多的内容,至少输入 $1 个字符。',\n maxLength: '请控制内容长度, 请不要输入 $1 个字符以上',\n maximum: '当前输入值超出最大值 $1,请检查',\n minimum: '当前输入值低于最小值 $1,请检查',\n isJson: '请检查 Json 格式。',\n isLength: '请输入长度为 $1 的内容',\n notEmptyString: '请不要全输入空白字符',\n equalsField: '输入的数据与 $1 值不一致',\n equals: '输入的数据与 $1 不一致',\n isPhoneNumber: '请输入合法的手机号码',\n isTelNumber: '请输入合法的电话号码',\n isZipcode: '请输入合法的邮编地址',\n isId: '请输入合法的身份证号',\n })[data.type] || ''", + '5e568c42a5ecb74db2dc3d8531079dd6': + '参考文档', + 'cadf0e302ddbc6fdbf005aed670b5e3e': '代码变化', + '6006074bdabc639b86f42aa18876e33a': '代码变化时触发', + '28e5fd494ea37a09fd2ad36d0f98bacc': '被删除的项', + '046de1a6cb21ff83af74958342c0db64': '被激活的项', + 'f6e5fc909971d2e5f6ffe23edae93584': + '如果数据比较多,比较卡顿时,可开启此配置项。', + '31dae237cbd03ae0d2dcf7ad2fd4fb76': '初始化接口请求成功后返回的数据', + '850c62f7b1ebfb4b89182ecd51202a7d': + '表单提交成功后触发,如果事件源是按钮,且按钮的类型为“提交”,那么即便当前表单没有配置“保存接口”也将触发提交成功事件', + '88b2930823f9fd6706473805e9b11797': '保存接口请求成功后返回的数据', + '3e07258baf3c4389c1ffd4a98c20b8fe': '保存接口请求失败后返回的错误信息', + '0d6581b6dd51f6c03a4edf26475d75c6': '被移除的项', + '4ea280a2e54969de1d1b9bbd5b708e63': '点击选项', + 'f05520432bb87ced419a1da818c6cc9d': '选项被点击时触发', + '91f7b7fdf9b91073ca3519260f7a62d7': '所点击的选项', + '6afde638796d237377b0755506d08ded': '目标组件', + 'fee99f2bcced486e4753a8f58f511d3f': '追加数据', + '3f3f4c71c1b736e7f01cf910a553ff43': + '选择“是”时,会将源组件所在数据域变量同步到目标组件的数据域。
如果目标组件是增删改查组件,且增删改查组件的数据拉取接口是get请求,则源组件所在数据域变量将追加到目标组件的初始化请求query中。', + '2aecb19ca1655d66fc80fc27a783cc9e': '追加方式', + 'b67b01a3b9170f1daf78082cfd0df793': + '选择“合并”时,会将数据合并到目标组件的数据域。
选择“覆盖”时,数据会直接覆盖目标组件的数据域。', + 'bd81577a6fd4956e676cec499bb70d00': '合并', + 'e09fea40f7e4abd4b2a495b315940688': '覆盖', + '9a5500b6013ec1ebf61bdf0e18452348': + '数据默认为源组件所在数据域,可以选择“自定义”来定制所需数据', + 'f30bcdccf71b19e858c37d8881d2b206': '源组件所在数据域', + 'fa644cb20c66f7530d8a376d4fa6a36e': '组件数据', + '7d9260bd45b2e85a09398f218c25f220': + '更新目标组件的数据域或目标表单项的数据值', + 'e7af71fb102cc86ab3be6a2fb32b5e3f': '数据设置', + '77b1081c177fa3334cc93c99f0ecee75': '直接赋值', + 'f5c5e3d69daee06ea1606378ef466765': '成员赋值', + '697af73997072e0ce9ee65b15a7b3715': '重置页码', + 'd7bf42dd6e66f2818f9a232603c4a53b': '选择“是”时,将重新请求第一页数据。', + '3e573fd37473d789211ee44335d82fad': '静态 CSS 类名', + '905407c57ccd033cb6bd64bfad20a8c7': '静态展示时 的 CSS 类名', + '0d1f68afa19f3f3dd88e28d17c98ddf9': '表格2', + 'e052287273ad39a1d3fa9fa3decb5fd9': '组件展示态', + '506f28f48dbebd5d19e19dfc721e13be': '控制所选的组件的输入态/静态', + '0e35b091e18032508758899735664df7': '组件切换为静态', + '34d361256526b04909e064c29d9a9b76': '组件切换为输入态', + 'd2e930293da37452638759e17d771adf': '组件状态', + 'b535bea11c97ec5588b1494799de4d60': '表单输入', + 'f7784642f42d33f506ba05f3daefc3c4': '表单静态', + 'a8797a840f3c0bbb5297aada95f9b13a': '表单项静态', + '7bb3e24cc54f4b8ee0a65d14fa4c067c': '激活指定选项卡', + 'fd951a59a7c635d5330bc1aeec22c813': '自定义数据', + 'b62ce3df3c0d5772006c525b60d5eeab': + '数据默认为源组件所在数据域,开启“自定义”可以定制所需数据', + '0f9803bd27434940d4017007c105a861': + '当选择“是”,且目标组件是增删改查组件时,数据接口请求时将带上这些数据,其他类型的目标组件只有在数据接口是post请求时才会带上这些数据。', + '81e1ff0bb8917a9df99d737982ee24b7': + 'SubForm, 配置一个子 form 作为当前的表单项', + 'a5c2dba5ccf62851b24cfa12d4958ce2': + '可以用来展现数据的,可以用来展示数组类型的数据,比如 multiple 的子 form', + '74104c62ed33836f0bc74297539dd7c9': '配置 options 可以实现选择选项', + 'b5ade3d97d5b11bc784786111e011571': + '树型结构来选择,可通过 options 来配置选项,也可通过 source 拉取选项', + '2c05e451a6f2b2fe1cf55f7afb8c8423': + '单选或者多选,支持 source 拉取选项,选项可配置图片,也可以自定义 HTML 配置', + 'c65c9862813c7a66c0df52e301e0e1d1': + '适用于选项中含有子项,可通过 source 拉取选项,支持多选', + '8f650b58c8421edecfb380d6f60ef40e': + '通过 pickerSchema 配置可供选取的数据源进行选择需要的数据,支持多选', + 'b7a4abc1e4e975c9df5bb9d9cf4823ba': + '通过 options 配置选项,可通过 source 拉取选项', + 'f2fc416c7d95a93a8da621f760be8417': + '支持多选,输入提示,可使用 source 获取选项', + 'b4482a3d9523f48e83a816fa85911185': + '纯用来展示数据,可用来展示 json、date、image、progress 等数据', + 'ecfd82eb65102274188011a502913d3a': '抽屉数据', + '951f802ebd0c0d795fbae6767a5ee9b3': '初始化接口请求成功', + 'da0126992b4937a5fd847ef5366b02e6': '初始化接口请求成功返回的数据', + '70b8342d743374233bfee0f56c7f0fc7': '节点示例数据' }); diff --git a/packages/amis-editor/src/plugin/Avatar.tsx b/packages/amis-editor/src/plugin/Avatar.tsx index ec5ba3c2e..85a4b3b08 100644 --- a/packages/amis-editor/src/plugin/Avatar.tsx +++ b/packages/amis-editor/src/plugin/Avatar.tsx @@ -54,7 +54,7 @@ export class AvatarPlugin extends BasePlugin { getSchemaTpl('collapseGroup', [ { className: 'p-none', - title: '常用', + title: '基本', body: [ // 如果同时存在 src、text 和 icon,会优先用 src、接着 text、最后 icon { @@ -96,13 +96,11 @@ export class AvatarPlugin extends BasePlugin { className: 'ae-ExtendMore mb-3', body: [ // 图标 - { - label: '图标', + getSchemaTpl('icon', { name: 'icon', - type: 'icon-picker', - className: 'fix-icon-picker-overflow', + label: '图标', visibleOn: 'data.showtype === "icon"' - }, + }), // 图片 getSchemaTpl('valueFormula', { rendererSchema: { diff --git a/packages/amis-editor/src/plugin/Breadcrumb.tsx b/packages/amis-editor/src/plugin/Breadcrumb.tsx index 48d2fe2e7..bc50ccb4c 100644 --- a/packages/amis-editor/src/plugin/Breadcrumb.tsx +++ b/packages/amis-editor/src/plugin/Breadcrumb.tsx @@ -73,12 +73,10 @@ export class BreadcrumbPlugin extends BasePlugin { name: 'href', placeholder: '链接' }, - { + getSchemaTpl('icon', { name: 'icon', - label: '图标', - type: 'icon-picker', - className: 'fix-icon-picker-overflow' - } + label: '图标' + }) ] } ] diff --git a/packages/amis-editor/src/plugin/ButtonToolbar.tsx b/packages/amis-editor/src/plugin/ButtonToolbar.tsx deleted file mode 100644 index cf52174ef..000000000 --- a/packages/amis-editor/src/plugin/ButtonToolbar.tsx +++ /dev/null @@ -1,81 +0,0 @@ -import {BasePlugin} from 'amis-editor-core'; -import {getSchemaTpl} from 'amis-editor-core'; - -export class ButtonToolbarPlugin extends BasePlugin { - // 关联渲染器名字 - rendererName = 'button-toolbar'; - $schema = '/schemas/ButtonToolbarSchema.json'; - // 组件名称 - name = '按钮工具栏'; - isBaseComponent = true; - description = '可以用来放置多个按钮或者按钮组,按钮之间会存在一定的间隔'; - tags = ['按钮']; - icon = 'fa fa-ellipsis-h'; - pluginIcon = 'btn-toolbar-plugin'; - /** - * 组件选择面板中隐藏,和ButtonGroup合并 - */ - disabledRendererPlugin = true; - - scaffold = { - type: 'button-toolbar', - buttons: [ - { - type: 'button', - label: '按钮1' - }, - { - type: 'button', - label: '按钮2' - } - ] - }; - previewSchema = { - ...this.scaffold - }; - - panelTitle = '按钮工具栏'; - panelBody = [ - getSchemaTpl('tabs', [ - { - title: '常规', - body: [ - { - name: 'buttons', - type: 'combo', - label: '按钮管理', - multiple: true, - addable: true, - draggable: true, - draggableTip: '可排序、可移除、如要编辑请在预览区选中编辑', - editable: false, - visibleOn: 'this.buttons && this.buttons.length', - items: [ - { - type: 'tpl', - inline: false, - className: 'p-t-xs', - tpl: `<% if (data.type === "button-group") { %> ${'按钮组'} <% } else { %><%= data.label %><% if (data.icon) { %><% }%><% } %>` - } - ], - addButtonText: '新增按钮', - scaffold: { - type: 'button', - label: '按钮' - } - } - ] - }, - { - title: '外观', - body: [getSchemaTpl('className')] - }, - { - title: '显隐', - body: [getSchemaTpl('ref'), getSchemaTpl('visible')] - } - ]) - ]; -} -// 和plugin/Form/ButtonToolbar.tsx的重复了 -// registerEditorPlugin(ButtonToolbarPlugin); diff --git a/packages/amis-editor/src/plugin/CRUD.tsx b/packages/amis-editor/src/plugin/CRUD.tsx index 5b041ef77..7c896d7a6 100644 --- a/packages/amis-editor/src/plugin/CRUD.tsx +++ b/packages/amis-editor/src/plugin/CRUD.tsx @@ -242,7 +242,7 @@ export class CRUDPlugin extends BasePlugin { }); } else { toast.warning( - `API返回格式不正确,请点击接口地址右侧示例的问号查看示例` + 'API返回格式不正确,请点击接口地址右侧示例的问号查看示例' ); } } @@ -527,6 +527,7 @@ export class CRUDPlugin extends BasePlugin { getSchemaTpl('switch', { name: 'filter', label: '启用查询条件', + visibleOn: 'data.api && data.api.url', pipeIn: (value: any) => !!value, pipeOut: (value: any, originValue: any) => { if (value) { @@ -552,10 +553,11 @@ export class CRUDPlugin extends BasePlugin { }), { - type: 'divider' + type: 'divider', + visibleOn: 'data.api && data.api.url' }, - { + getSchemaTpl('combo-container', { label: '批量操作', name: 'bulkActions', type: 'combo', @@ -597,7 +599,7 @@ export class CRUDPlugin extends BasePlugin { ) } ] - }, + }), // getSchemaTpl('switch', { // name: 'defaultChecked', @@ -610,7 +612,7 @@ export class CRUDPlugin extends BasePlugin { type: 'divider' }, - { + getSchemaTpl('combo-container', { label: '单条操作', name: 'itemActions', type: 'combo', @@ -658,7 +660,7 @@ export class CRUDPlugin extends BasePlugin { ) } ] - }, + }), { type: 'divider', @@ -679,7 +681,7 @@ export class CRUDPlugin extends BasePlugin { } }), - { + getSchemaTpl('combo-container', { label: '默认参数', type: 'input-kv', name: 'defaultParams', @@ -690,7 +692,7 @@ export class CRUDPlugin extends BasePlugin { content: '可以用来设置默认参数,比如 perPage:20', placement: 'left' } - }, + }), { type: 'divider' @@ -1090,7 +1092,7 @@ export class CRUDPlugin extends BasePlugin { ] }, - { + getSchemaTpl('combo-container', { name: 'headerToolbar', type: 'combo', draggable: true, @@ -1264,9 +1266,9 @@ export class CRUDPlugin extends BasePlugin { // className: 'm-l-none' // } ] - }, + }), - { + getSchemaTpl('combo-container', { name: 'footerToolbar', type: 'combo', draggable: true, @@ -1442,7 +1444,7 @@ export class CRUDPlugin extends BasePlugin { className: 'm-l-none' } ] - }, + }), getSchemaTpl('switch', { name: 'filterTogglable', diff --git a/packages/amis-editor/src/plugin/CRUD2.tsx b/packages/amis-editor/src/plugin/CRUD2.tsx index 22c0f7d07..a7405150a 100644 --- a/packages/amis-editor/src/plugin/CRUD2.tsx +++ b/packages/amis-editor/src/plugin/CRUD2.tsx @@ -527,7 +527,7 @@ export class CRUDPlugin extends BasePlugin { return; } - // 可能会出错,但是cards table-v2 list 配置面板结构统一,因此 + // 可能会出错,但是cards table2 list 配置面板结构统一,因此 (context.data as any).tabs.forEach((tab: any) => { if (tab.title === '属性') { tab.body[0].body.forEach((collapse: any) => { @@ -610,7 +610,7 @@ export class CRUDPlugin extends BasePlugin { }); // 只有表格才能找到操作列放这个内容,卡片和列表不知道位置 - if (context.schema.mode === 'table-v2') { + if (context.schema.mode === 'table2') { DataOperators.forEach(op => { if (!builder.features.includes(op.value)) { return; @@ -681,7 +681,7 @@ export class CRUDPlugin extends BasePlugin { } const existCols = - node!.children.find(child => child.type === 'table-v2')?.children[0] + node!.children.find(child => child.type === 'table2')?.children[0] ?.children || []; const hasOperatorCol = node!.schema.columns?.some( (col: any) => col.type === 'operation' @@ -707,7 +707,7 @@ export class CRUDPlugin extends BasePlugin { ); if (appendCols?.length) { appendCols.forEach((col: any) => { - if (existColsName.includes(col.key)) { + if (existColsName.includes(col.name)) { return; } @@ -741,7 +741,7 @@ export class CRUDPlugin extends BasePlugin { // context.node. // // 只有表格才能找到操作列放这个内容,卡片和列表不知道位置 - // if (context.schema.mode === 'table-v2') { + // if (context.schema.mode === 'table2') { // DataOperators.forEach(op => { // if (!builder.features.includes(op.value)) { // return; @@ -760,7 +760,6 @@ export class CRUDPlugin extends BasePlugin { // }); // }); // } - return columns; } @@ -1342,7 +1341,7 @@ export class CRUDPlugin extends BasePlugin { // actionType: 'resetQuery', // actionLabel: '重置查询', // description: '重新恢复查询条件为初始值', - // desc: (info: any) => { + // descDetail: (info: any) => { // return ( //
// {info?.__rendererLabel} @@ -1383,14 +1382,14 @@ export class CRUDPlugin extends BasePlugin { columns: [ { title: 'A', - key: 'a' + name: 'a' }, { title: 'B', - key: 'b' + name: 'b' }, { - key: 'operation', + name: 'operation', title: '操作', buttons: [ { @@ -1422,7 +1421,7 @@ export class CRUDPlugin extends BasePlugin { async buildDataSchemas(node: EditorNodeType, region?: EditorNodeType) { const child: EditorNodeType = node.children.find( - item => !!~['table-v2', 'cards', 'list'].indexOf(item.type) + item => !!~['table2', 'cards', 'list'].indexOf(item.type) ); let items; @@ -1531,10 +1530,10 @@ export class TableCRUDPlugin extends CRUDPlugin { scaffold: any = { type: 'crud2', - mode: 'table-v2', + mode: 'table2', columns: [ { - key: 'id', + name: 'id', title: 'ID', type: 'container', body: [ @@ -1544,7 +1543,7 @@ export class TableCRUDPlugin extends CRUDPlugin { ] }, { - key: 'engine', + name: 'engine', title: '示例', type: 'container', body: [ diff --git a/packages/amis-editor/src/plugin/Card2.tsx b/packages/amis-editor/src/plugin/Card2.tsx index 612fe81f3..070bb57a1 100644 --- a/packages/amis-editor/src/plugin/Card2.tsx +++ b/packages/amis-editor/src/plugin/Card2.tsx @@ -16,6 +16,7 @@ export class Card2Plugin extends BasePlugin { // 组件名称 name = '卡片'; isBaseComponent = true; + disabledRendererPlugin = true; description = '展示单个卡片。'; tags = ['展示']; icon = ''; diff --git a/packages/amis-editor/src/plugin/CollapseGroup.tsx b/packages/amis-editor/src/plugin/CollapseGroup.tsx index f8214e00f..017465348 100644 --- a/packages/amis-editor/src/plugin/CollapseGroup.tsx +++ b/packages/amis-editor/src/plugin/CollapseGroup.tsx @@ -96,18 +96,16 @@ export class CollapseGroupPlugin extends BasePlugin { autoFocus: false, form: { body: [ - { - label: '图标', + getSchemaTpl('icon', { name: 'expandIcon', - type: 'icon-picker', - className: 'fix-icon-picker-overflow', + label: '图标', pipeIn: (value: any) => value?.icon, pipeOut: (value: any) => ({ type: 'icon', vendor: '', icon: value }) - } + }) ] }, pipeIn: (value: string) => { diff --git a/packages/amis-editor/src/plugin/Dialog.tsx b/packages/amis-editor/src/plugin/Dialog.tsx index 09e8f8cec..6d70601a5 100644 --- a/packages/amis-editor/src/plugin/Dialog.tsx +++ b/packages/amis-editor/src/plugin/Dialog.tsx @@ -56,12 +56,34 @@ export class DialogPlugin extends BasePlugin { { eventName: 'confirm', eventLabel: '确认', - description: '点击弹窗确认按钮时触发' + description: '点击弹窗确认按钮时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data': { + type: 'object', + title: '弹窗数据' + } + } + } + ] }, { eventName: 'cancel', eventLabel: '取消', - description: '点击弹窗取消按钮时触发' + description: '点击弹窗取消按钮时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data': { + type: 'object', + title: '弹窗数据' + } + } + } + ] } ]; diff --git a/packages/amis-editor/src/plugin/Drawer.tsx b/packages/amis-editor/src/plugin/Drawer.tsx index 84c9eac22..162de50dc 100644 --- a/packages/amis-editor/src/plugin/Drawer.tsx +++ b/packages/amis-editor/src/plugin/Drawer.tsx @@ -57,12 +57,34 @@ export class DrawerPlugin extends BasePlugin { { eventName: 'confirm', eventLabel: '确认', - description: '点击抽屉确认按钮时触发' + description: '点击抽屉确认按钮时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data': { + type: 'object', + title: '抽屉数据' + } + } + } + ] }, { eventName: 'cancel', eventLabel: '取消', - description: '点击抽屉取消按钮时触发' + description: '点击抽屉取消按钮时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data': { + type: 'object', + title: '抽屉数据' + } + } + } + ] } ]; @@ -123,7 +145,19 @@ export class DrawerPlugin extends BasePlugin { } ], pipeIn: defaultValue('right'), - pipeOut: (value: any) => (value ? value : 'right') + pipeOut: (value: any) => (value ? value : 'right'), + onChange: ( + value: string, + oldValue: string, + model: any, + form: any + ) => { + if (value === 'left' || value === 'right') { + form.deleteValueByName('height'); + } else if (value === 'top' || value === 'bottom') { + form.deleteValueByName('width'); + } + } }, getSchemaTpl('switch', { name: 'overlay', diff --git a/packages/amis-editor/src/plugin/Form/ButtonGroupSelect.tsx b/packages/amis-editor/src/plugin/Form/ButtonGroupSelect.tsx index 37f253e09..a059b3951 100644 --- a/packages/amis-editor/src/plugin/Form/ButtonGroupSelect.tsx +++ b/packages/amis-editor/src/plugin/Form/ButtonGroupSelect.tsx @@ -25,7 +25,8 @@ export class ButtonGroupControlPlugin extends BasePlugin { tags = ['按钮']; scaffold = { type: 'button-group-select', - name: 'a', + name: 'buttonGroupSelect', + label: '按钮点选', inline: false, options: [ { diff --git a/packages/amis-editor/src/plugin/Form/ButtonToolbar.tsx b/packages/amis-editor/src/plugin/Form/ButtonToolbar.tsx index 5db0732f5..a0bc47a79 100644 --- a/packages/amis-editor/src/plugin/Form/ButtonToolbar.tsx +++ b/packages/amis-editor/src/plugin/Form/ButtonToolbar.tsx @@ -89,7 +89,7 @@ export class ButtonToolbarControlPlugin extends BasePlugin { type: 'tpl', inline: false, className: 'p-t-xs', - tpl: '<% if (data.type === "button-group") { %> 按钮组 <% } else { %><%= data.label %><% if (data.icon) { %><% }%><% } %>' + tpl: `<% if (data.type === "button-group") { %> ${'按钮组'} <% } else { %><%= data.label %><% if (data.icon) { %><% }%><% } %>` } ], addButtonText: '新增按钮', @@ -121,6 +121,7 @@ export class ButtonToolbarControlPlugin extends BasePlugin { }, getSchemaTpl('style:classNames', { isFormItem: true, + unsupportStatic: true, schema: [ getSchemaTpl('className', { label: '描述', diff --git a/packages/amis-editor/src/plugin/Form/ChainedSelect.tsx b/packages/amis-editor/src/plugin/Form/ChainedSelect.tsx index d22c60283..85d6f18fa 100644 --- a/packages/amis-editor/src/plugin/Form/ChainedSelect.tsx +++ b/packages/amis-editor/src/plugin/Form/ChainedSelect.tsx @@ -143,6 +143,7 @@ export class ChainedSelectControlPlugin extends BasePlugin { body: [ getSchemaTpl('apiControl', { name: 'source', + mode: 'normal', label: tipedLabel( '获取选项接口', `
可用变量说明
    diff --git a/packages/amis-editor/src/plugin/Form/CodeEditor.tsx b/packages/amis-editor/src/plugin/Form/CodeEditor.tsx index 5cdba635a..54db8c7ba 100644 --- a/packages/amis-editor/src/plugin/Form/CodeEditor.tsx +++ b/packages/amis-editor/src/plugin/Form/CodeEditor.tsx @@ -42,6 +42,22 @@ export class CodeEditorControlPlugin extends BasePlugin { }; events: RendererPluginEvent[] = [ + { + eventName: 'change', + eventLabel: '代码变化', + description: '代码变化时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data.value': { + type: 'string', + title: '当前代码' + } + } + } + ] + }, { eventName: 'focus', eventLabel: '获取焦点', @@ -143,7 +159,10 @@ export class CodeEditorControlPlugin extends BasePlugin { getSchemaTpl('autoFillApi') ] }, - getSchemaTpl('status', {isFormItem: true}), + getSchemaTpl('status', { + isFormItem: true, + unsupportStatic: true + }), getSchemaTpl('validation', { tag: ValidatorTag.Code }) @@ -190,7 +209,9 @@ export class CodeEditorControlPlugin extends BasePlugin { } ] }), - getSchemaTpl('style:classNames') + getSchemaTpl('style:classNames', { + unsupportStatic: true + }) ]) }, { diff --git a/packages/amis-editor/src/plugin/Form/Combo.tsx b/packages/amis-editor/src/plugin/Form/Combo.tsx index fb38ce80c..8b9246195 100644 --- a/packages/amis-editor/src/plugin/Form/Combo.tsx +++ b/packages/amis-editor/src/plugin/Form/Combo.tsx @@ -15,10 +15,7 @@ import React from 'react'; import {diff, JSONPipeIn} from 'amis-editor-core'; import {JSONPipeOut} from 'amis-editor-core'; import {mockValue} from 'amis-editor-core'; -import { - RendererPluginEvent, - RendererPluginAction -} from 'amis-editor-core'; +import {RendererPluginEvent, RendererPluginAction} from 'amis-editor-core'; import {setVariable} from 'amis-core'; export class ComboControlPlugin extends BasePlugin { @@ -109,6 +106,10 @@ export class ComboControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '现有组合项的值' + }, + 'event.data.item': { + type: 'object', + title: '被删除的项' } } } @@ -125,6 +126,14 @@ export class ComboControlPlugin extends BasePlugin { 'event.data.key': { type: 'string', title: '选项卡索引' + }, + 'event.data.value': { + type: 'string', + title: '现有组合项的值' + }, + 'event.data.item': { + type: 'object', + title: '被激活的项' } } } @@ -490,14 +499,26 @@ export class ComboControlPlugin extends BasePlugin { name: 'lazyLoad', label: '懒加载', pipeIn: defaultValue(false), - description: '如果数据比较多,比较卡顿时,可开启此配置项' + labelRemark: { + className: 'm-l-xs', + trigger: 'click', + rootClose: true, + placement: 'left', + content: '如果数据比较多,比较卡顿时,可开启此配置项。' + } }), getSchemaTpl('switch', { name: 'strictMode', label: '严格模式', pipeIn: defaultValue(true), - description: '如果你希望环境变量的值实时透传到 Combo 中,请关闭此选项。' + labelRemark: { + className: 'm-l-xs', + trigger: 'click', + rootClose: true, + placement: 'left', + content: '如果你希望环境变量的值实时透传到 Combo 中,请关闭此选项。' + } }), { @@ -515,8 +536,14 @@ export class ComboControlPlugin extends BasePlugin { name: 'nullable', label: '允许为空', pipeIn: defaultValue(false), - description: - '如果子表单项里面配置验证器,且又是单条模式。可以允许用户选择清空(不填)。' + labelRemark: { + className: 'm-l-xs', + trigger: 'click', + rootClose: true, + placement: 'left', + content: + '如果子表单项里面配置验证器,且又是单条模式。可以允许用户选择清空(不填)。' + } }), { diff --git a/packages/amis-editor/src/plugin/Form/Control.tsx b/packages/amis-editor/src/plugin/Form/Control.tsx index 6bbbcdf69..56a5ecc5a 100644 --- a/packages/amis-editor/src/plugin/Form/Control.tsx +++ b/packages/amis-editor/src/plugin/Form/Control.tsx @@ -15,7 +15,7 @@ export class ControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-object-group'; pluginIcon = 'form-group-plugin'; - description = `表单项容器`; + description = '表单项容器'; docLink = '/amis/zh-CN/components/form/group'; tags = ['容器']; /** diff --git a/packages/amis-editor/src/plugin/Form/DiffEditor.tsx b/packages/amis-editor/src/plugin/Form/DiffEditor.tsx index 79df439e5..81744746d 100644 --- a/packages/amis-editor/src/plugin/Form/DiffEditor.tsx +++ b/packages/amis-editor/src/plugin/Form/DiffEditor.tsx @@ -48,6 +48,22 @@ export class DiffEditorControlPlugin extends BasePlugin { }; events: RendererPluginEvent[] = [ + { + eventName: 'change', + eventLabel: '代码变化', + description: '代码变化时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data.value': { + type: 'string', + title: '当前代码' + } + } + } + ] + }, { eventName: 'focus', eventLabel: '获取焦点', @@ -155,7 +171,10 @@ export class DiffEditorControlPlugin extends BasePlugin { getSchemaTpl('autoFillApi') ] }, - getSchemaTpl('status', {isFormItem: true}), + getSchemaTpl('status', { + isFormItem: true, + unsupportStatic: true + }), getSchemaTpl('validation', { tag: ValidatorTag.All }) @@ -202,7 +221,9 @@ export class DiffEditorControlPlugin extends BasePlugin { } ] }), - getSchemaTpl('style:classNames') + getSchemaTpl('style:classNames', { + unsupportStatic: true + }) ]) }, { diff --git a/packages/amis-editor/src/plugin/Form/FieldSet.tsx b/packages/amis-editor/src/plugin/Form/FieldSet.tsx index 4709c8171..f353b5a75 100644 --- a/packages/amis-editor/src/plugin/Form/FieldSet.tsx +++ b/packages/amis-editor/src/plugin/Form/FieldSet.tsx @@ -13,7 +13,7 @@ export class FieldSetControlPlugin extends BasePlugin { name = '字段集'; isBaseComponent = true; icon = 'fa fa-toggle-down'; - description = `多个表单项的组合,可配置是否折叠`; + description = '多个表单项的组合,可配置是否折叠'; docLink = '/amis/zh-CN/components/form/fieldset'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/Form.tsx b/packages/amis-editor/src/plugin/Form/Form.tsx index fd038b409..9d27dded0 100644 --- a/packages/amis-editor/src/plugin/Form/Form.tsx +++ b/packages/amis-editor/src/plugin/Form/Form.tsx @@ -214,7 +214,7 @@ export class FormPlugin extends BasePlugin { events: RendererPluginEvent[] = [ { eventName: 'inited', - eventLabel: '初始化完成', + eventLabel: '初始化接口请求成功', description: '远程初始化接口请求成功时触发', // 表单数据为表单变量 dataSchema: [ @@ -223,7 +223,7 @@ export class FormPlugin extends BasePlugin { properties: { 'event.data': { type: 'object', - title: 'initApi 远程请求返回的初始化数据' + title: '初始化接口请求成功返回的数据' } } } @@ -309,17 +309,34 @@ export class FormPlugin extends BasePlugin { } ] }, + // { + // eventName: 'submit', + // eventLabel: '表单提交', + // strongDesc: '配置该事件后将不会触发表单提交时默认的校验、提交到api或者target等行为,所有行为需要自己配置', + // dataSchema: [ + // { + // type: 'object', + // properties: { + // 'event.data': { + // type: 'object', + // title: '当前表单数据' + // } + // } + // } + // ] + // }, { eventName: 'submitSucc', eventLabel: '提交成功', - description: '表单提交请求成功后触发', + description: + '表单提交成功后触发,如果事件源是按钮,且按钮的类型为“提交”,那么即便当前表单没有配置“保存接口”也将触发提交成功事件', dataSchema: [ { type: 'object', properties: { 'event.data.result': { type: 'object', - title: '提交成功后返回的数据' + title: '保存接口请求成功后返回的数据' } } } @@ -335,7 +352,7 @@ export class FormPlugin extends BasePlugin { properties: { 'event.data.error': { type: 'object', - title: '提交失败后返回的错误信息' + title: '保存接口请求失败后返回的错误信息' } } } @@ -794,6 +811,11 @@ export class FormPlugin extends BasePlugin { getSchemaTpl('className'), + getSchemaTpl('className', { + name: 'staticClassName', + label: '静态展示时 的 CSS 类名' + }), + getSchemaTpl('className', { name: 'panelClassName', visibleOn: 'this.wrapWithPanel !== false', @@ -828,7 +850,8 @@ export class FormPlugin extends BasePlugin { }), getSchemaTpl('disabled'), - getSchemaTpl('visible') + getSchemaTpl('visible'), + getSchemaTpl('static') ] } ]) diff --git a/packages/amis-editor/src/plugin/Form/Formula.tsx b/packages/amis-editor/src/plugin/Form/Formula.tsx index 8a3e6296e..210504080 100644 --- a/packages/amis-editor/src/plugin/Form/Formula.tsx +++ b/packages/amis-editor/src/plugin/Form/Formula.tsx @@ -12,7 +12,7 @@ export class FormulaControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-calculator'; pluginIcon = 'formula-plugin'; - description = `通过公式计算指定的变量值,并将其结果作用到指定的变量中`; + description = '通过公式计算指定的变量值,并将其结果作用到指定的变量中'; docLink = '/amis/zh-CN/components/form/formula'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/Hidden.tsx b/packages/amis-editor/src/plugin/Form/Hidden.tsx index 09a07b7d9..f6f8f1727 100644 --- a/packages/amis-editor/src/plugin/Form/Hidden.tsx +++ b/packages/amis-editor/src/plugin/Form/Hidden.tsx @@ -12,7 +12,7 @@ export class HiddenControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-eye-slash'; pluginIcon = 'hidden-plugin'; - description = `隐藏表单项`; + description = '隐藏表单项'; docLink = '/amis/zh-CN/components/form/hidden'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/InputCity.tsx b/packages/amis-editor/src/plugin/Form/InputCity.tsx index 74c4895b6..8191cd0ab 100644 --- a/packages/amis-editor/src/plugin/Form/InputCity.tsx +++ b/packages/amis-editor/src/plugin/Form/InputCity.tsx @@ -10,6 +10,8 @@ import { import {formItemControl} from '../../component/BaseControl'; import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; +import {ValidatorTag} from '../../validator'; +import {getEventControlConfig} from '../../renderer/event-control/helper'; export class CityControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -84,66 +86,67 @@ export class CityControlPlugin extends BasePlugin { } ]; + panelJustify = true; panelBodyCreator = (context: BaseEventContext) => { - return formItemControl( + return getSchemaTpl('tabs', [ { - common: { - replace: true, - body: [ - getSchemaTpl('formItemName', { - required: true - }), - getSchemaTpl('label'), - // getSchemaTpl('switchDefaultValue'), + title: '属性', + body: getSchemaTpl('collapseGroup', [ + { + title: '基本', + body: [ + getSchemaTpl('formItemName', { + required: true + }), + getSchemaTpl('label'), + getSchemaTpl('valueFormula', { + rendererSchema: context?.schema, + rendererWrapper: true, + mode: 'vertical' // 改成上下展示模式 + }), + getSchemaTpl('switch', { + name: 'allowDistrict', + label: '允许选择区域', + pipeIn: defaultValue(true) + }), - /* - { - name: 'value', - type: 'input-city', - label: '默认值', - visibleOn: 'typeof data.value !== "undefined"', - validations: 'isNumeric', - labelRemark: { - trigger: 'click', - className: 'm-l-xs', - rootClose: true, - content: '城市编码', - placement: 'left' - } - }, - */ + getSchemaTpl('switch', { + name: 'allowCity', + label: '允许选择城市', + pipeIn: defaultValue(true) + }), - getSchemaTpl('valueFormula', { - rendererSchema: context?.schema, - rendererWrapper: true, - mode: 'vertical' // 改成上下展示模式 - }), - - getSchemaTpl('switch', { - name: 'allowDistrict', - label: '允许选择区域', - pipeIn: defaultValue(true) - }), - - getSchemaTpl('switch', { - name: 'allowCity', - label: '允许选择城市', - pipeIn: defaultValue(true) - }), - - getSchemaTpl('switch', { - name: 'searchable', - label: '是否出搜索框', - pipeIn: defaultValue(false) - }), - - getSchemaTpl('extractValue') - ] - }, - status: {} + getSchemaTpl('switch', { + name: 'searchable', + label: '是否出搜索框', + pipeIn: defaultValue(false) + }) + ] + }, + getSchemaTpl('status', {isFormItem: true}), + getSchemaTpl('validation', {tag: ValidatorTag.MultiSelect}) + ]) }, - context - ); + { + title: '外观', + body: [ + getSchemaTpl('collapseGroup', [ + getSchemaTpl('style:formItem', {renderer: context.info.renderer}), + getSchemaTpl('style:classNames') + ]) + ] + }, + { + title: '事件', + className: 'p-none', + body: [ + getSchemaTpl('eventControl', { + name: 'onEvent', + ...getEventControlConfig(this.manager, context) + }) + ] + } + ]); }; } diff --git a/packages/amis-editor/src/plugin/Form/InputDate.tsx b/packages/amis-editor/src/plugin/Form/InputDate.tsx index 49c3e0286..65cb4da62 100644 --- a/packages/amis-editor/src/plugin/Form/InputDate.tsx +++ b/packages/amis-editor/src/plugin/Form/InputDate.tsx @@ -198,12 +198,34 @@ export class DateControlPlugin extends BasePlugin { { eventName: 'focus', eventLabel: '获取焦点', - description: '输入框获取焦点(非内嵌模式)时触发' + description: '输入框获取焦点(非内嵌模式)时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data.value': { + type: 'string', + title: '时间值' + } + } + } + ] }, { eventName: 'blur', eventLabel: '失去焦点', - description: '输入框失去焦点(非内嵌模式)时触发' + description: '输入框失去焦点(非内嵌模式)时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data.value': { + type: 'string', + title: '时间值' + } + } + } + ] } ]; diff --git a/packages/amis-editor/src/plugin/Form/InputFile.tsx b/packages/amis-editor/src/plugin/Form/InputFile.tsx index b22b32153..e115bd4d8 100644 --- a/packages/amis-editor/src/plugin/Form/InputFile.tsx +++ b/packages/amis-editor/src/plugin/Form/InputFile.tsx @@ -15,12 +15,15 @@ export class FileControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-upload'; pluginIcon = 'input-file-plugin'; - description = `可上传多个文件,可配置是否自动上传以及大文件分片上传`; + description = '可上传多个文件,可配置是否自动上传以及大文件分片上传'; docLink = '/amis/zh-CN/components/form/input-file'; tags = ['表单项']; scaffold = { type: 'input-file', label: '文件上传', + autoUpload: true, + proxy: true, + uploadType: 'fileReceptor', name: 'file', receiver: { url: 'object-upload://default', @@ -51,7 +54,7 @@ export class FileControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.value': { + 'event.data.file': { type: 'object', title: '上传的文件' } @@ -67,7 +70,7 @@ export class FileControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.value': { + 'event.data.item': { type: 'object', title: '被移除的文件' } @@ -83,7 +86,7 @@ export class FileControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.value': { + 'event.data.item': { type: 'object', title: '远程上传请求成功后返回的结果数据' } @@ -99,7 +102,7 @@ export class FileControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.file': { + 'event.data.item': { type: 'object', title: '上传的文件' }, @@ -240,7 +243,7 @@ export class FileControlPlugin extends BasePlugin { }), getSchemaTpl('proxy', { - value: false, + value: true, visibleOn: 'data.uploadType !== "asForm" || !data.uploadType' }), @@ -263,7 +266,7 @@ export class FileControlPlugin extends BasePlugin { type: 'container', className: 'ae-ExtendMore mb-3', visibleOn: - 'data.uploadType !== "asForm" && data.useChunk != false', + 'data.uploadType !== "asForm" && data.useChunk === true', body: [ { type: 'input-group', @@ -287,6 +290,7 @@ export class FileControlPlugin extends BasePlugin { 'data.uploadType == "fileReceptor" && data.useChunk != false', body: [ getSchemaTpl('apiControl', { + mode: 'row', name: 'startChunkApi', label: tipedLabel( '分块准备接口', @@ -295,6 +299,7 @@ export class FileControlPlugin extends BasePlugin { value: '/api/upload/startChunk' }), getSchemaTpl('apiControl', { + mode: 'row', name: 'chunkApi', label: tipedLabel( '分块上传接口', @@ -303,6 +308,7 @@ export class FileControlPlugin extends BasePlugin { value: '/api/upload/chunk' }), getSchemaTpl('apiControl', { + mode: 'row', name: 'finishChunkApi', label: tipedLabel( '上传完成接口', @@ -362,7 +368,10 @@ export class FileControlPlugin extends BasePlugin { }) ] }, - getSchemaTpl('status', {isFormItem: true}), + getSchemaTpl('status', { + isFormItem: true, + unsupportStatic: true + }), getSchemaTpl('validation', {tag: ValidatorTag.File}) ]) }, @@ -371,6 +380,7 @@ export class FileControlPlugin extends BasePlugin { body: getSchemaTpl('collapseGroup', [ getSchemaTpl('style:formItem', {renderer: context.info.renderer}), getSchemaTpl('style:classNames', { + unsupportStatic: true, schema: [ getSchemaTpl('className', { name: 'descriptionClassName', diff --git a/packages/amis-editor/src/plugin/Form/InputGroup.tsx b/packages/amis-editor/src/plugin/Form/InputGroup.tsx index 3a7d4e03f..74cf5f12e 100644 --- a/packages/amis-editor/src/plugin/Form/InputGroup.tsx +++ b/packages/amis-editor/src/plugin/Form/InputGroup.tsx @@ -14,7 +14,7 @@ export class InputGroupControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-object-group'; pluginIcon = 'input-group-plugin'; - description = `输入组合,支持多种类型的控件组合`; + description = '输入组合,支持多种类型的控件组合'; docLink = '/amis/zh-CN/components/form/input-group'; tags = ['表单项']; scaffold = { @@ -64,8 +64,7 @@ export class InputGroupControlPlugin extends BasePlugin { type: 'tpl', inline: false, className: 'p-t-xs', - tpl: - '<%= data.label %><% if (data.icon) { %><% }%>' + tpl: '<%= data.label %><% if (data.icon) { %><% }%>' } ] }, diff --git a/packages/amis-editor/src/plugin/Form/InputImage.tsx b/packages/amis-editor/src/plugin/Form/InputImage.tsx index 25a1bff8a..941d26b66 100644 --- a/packages/amis-editor/src/plugin/Form/InputImage.tsx +++ b/packages/amis-editor/src/plugin/Form/InputImage.tsx @@ -19,7 +19,8 @@ export class ImageControlPlugin extends BasePlugin { // 组件名称 name = '图片上传'; isBaseComponent = true; - description = `可以对图片实现裁剪,限制图片的宽高以及大小,支持自动上传及上传多张图片`; + description = + '可以对图片实现裁剪,限制图片的宽高以及大小,支持自动上传及上传多张图片'; docLink = '/amis/zh-CN/components/form/input-image'; tags = ['表单项']; icon = 'fa fa-crop'; @@ -28,6 +29,9 @@ export class ImageControlPlugin extends BasePlugin { type: 'input-image', label: '图片上传', name: 'image', + autoUpload: true, + proxy: true, + uploadType: 'fileReceptor', imageClassName: 'r w-full', receiver: { url: 'object-upload://default', @@ -57,7 +61,7 @@ export class ImageControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.value': { + 'event.data.file': { type: 'object', title: '上传的文件' } @@ -73,7 +77,7 @@ export class ImageControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.value': { + 'event.data.item': { type: 'object', title: '被移除的文件' } @@ -89,7 +93,7 @@ export class ImageControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.value': { + 'event.data.item': { type: 'object', title: '远程上传请求成功后返回的结果数据' } @@ -105,7 +109,7 @@ export class ImageControlPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data.file': { + 'event.data.item': { type: 'object', title: '上传的文件' }, @@ -173,6 +177,7 @@ export class ImageControlPlugin extends BasePlugin { }), getSchemaTpl('apiControl', { + mode: 'row', name: 'receiver', label: tipedLabel( '文件接收器', @@ -188,7 +193,7 @@ export class ImageControlPlugin extends BasePlugin { }), getSchemaTpl('proxy', { - value: false + value: true }), // getSchemaTpl('autoFill'), @@ -207,12 +212,6 @@ export class ImageControlPlugin extends BasePlugin { ] }), - getSchemaTpl('switch', { - name: 'fixedSize', - label: '固定尺寸', - value: false - }), - getSchemaTpl('switch', { name: 'hideUploadButton', label: '隐藏上传按钮', @@ -225,38 +224,38 @@ export class ImageControlPlugin extends BasePlugin { value: false }), - getSchemaTpl('switch', { - name: 'compress', - value: true, - label: tipedLabel( - '开启压缩', - '由 hiphoto 实现,自定义接口将无效' - ) - }), - { - type: 'container', - className: 'ae-ExtendMore mb-3', - visibleOn: 'data.compress', - name: 'compressOptions', - body: [ - { - type: 'input-number', - label: '最大宽度', - name: 'maxWidth' - }, + // getSchemaTpl('switch', { + // name: 'compress', + // value: true, + // label: tipedLabel( + // '开启压缩', + // '由 hiphoto 实现,自定义接口将无效' + // ) + // }), + // { + // type: 'container', + // className: 'ae-ExtendMore mb-3', + // visibleOn: 'data.compress', + // name: 'compressOptions', + // body: [ + // { + // type: 'input-number', + // label: '最大宽度', + // name: 'compressOptions.maxWidth' + // }, - { - type: 'input-number', - label: '最大高度', - name: 'maxHeight' - } - ] - }, + // { + // type: 'input-number', + // label: '最大高度', + // name: 'compressOptions.maxHeight' + // } + // ] + // }, - getSchemaTpl('switch', { - name: 'showCompressOptions', - label: '是否显示压缩选项' - }), + // getSchemaTpl('switch', { + // name: 'showCompressOptions', + // label: '显示压缩选项' + // }), getSchemaTpl('switch', { name: 'crop', @@ -317,6 +316,7 @@ export class ImageControlPlugin extends BasePlugin { { name: 'maxSize', type: 'input-number', + suffix: 'B', label: tipedLabel( '最大体积', '超出大小不允许上传,单位字节' @@ -325,13 +325,19 @@ export class ImageControlPlugin extends BasePlugin { { type: 'input-number', name: 'limit.width', - label: '宽度' + label: tipedLabel( + '宽度', + '校验优先级比最大宽度和最大宽度高' + ) }, { type: 'input-number', name: 'limit.height', - label: '高度' + label: tipedLabel( + '高度', + '校验优先级比最大高度和最大高度高' + ) }, { @@ -366,7 +372,7 @@ export class ImageControlPlugin extends BasePlugin { { type: 'input-text', - name: 'limit.限制最小高度', + name: 'limit.aspectRatioLabel', label: tipedLabel( '宽高比描述', '当宽高比没有满足条件时,此描述将作为提示信息显示' @@ -376,7 +382,10 @@ export class ImageControlPlugin extends BasePlugin { } ] }, - getSchemaTpl('status', {isFormItem: true}), + getSchemaTpl('status', { + isFormItem: true, + unsupportStatic: true + }), getSchemaTpl('validation', {tag: ValidatorTag.File}) ]) }, @@ -384,7 +393,38 @@ export class ImageControlPlugin extends BasePlugin { title: '外观', body: getSchemaTpl('collapseGroup', [ getSchemaTpl('style:formItem', {renderer: context.info.renderer}), + { + title: '尺寸', + body: [ + getSchemaTpl('switch', { + name: 'fixedSize', + label: tipedLabel( + '固定尺寸', + '开启后需通过CSS类设置其高度、宽度' + ), + value: false + }), + + { + type: 'container', + className: 'ae-ExtendMore mb-3', + visibleOn: 'data.fixedSize', + body: [ + { + type: 'input-text', + required: true, + name: 'fixedSizeClassName', + label: tipedLabel( + 'CSS类名', + '开启固定尺寸时,根据此值控制展示尺寸' + ) + } + ] + } + ] + }, getSchemaTpl('style:classNames', { + unsupportStatic: true, schema: [] }) ]) diff --git a/packages/amis-editor/src/plugin/Form/InputKV.tsx b/packages/amis-editor/src/plugin/Form/InputKV.tsx index 6fd3eb806..2d85350d8 100644 --- a/packages/amis-editor/src/plugin/Form/InputKV.tsx +++ b/packages/amis-editor/src/plugin/Form/InputKV.tsx @@ -1,10 +1,7 @@ /** * @file input-kv 组件的素项目部 */ -import { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; import {defaultValue, getSchemaTpl, valuePipeOut} from 'amis-editor-core'; import {registerEditorPlugin} from 'amis-editor-core'; import { @@ -77,6 +74,10 @@ export class KVControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '当前组合项的值' + }, + 'event.data.item': { + type: 'object', + title: '被移除的项' } } } diff --git a/packages/amis-editor/src/plugin/Form/InputMonth.tsx b/packages/amis-editor/src/plugin/Form/InputMonth.tsx index 4b1923dbe..dc8ea4cd7 100644 --- a/packages/amis-editor/src/plugin/Form/InputMonth.tsx +++ b/packages/amis-editor/src/plugin/Form/InputMonth.tsx @@ -12,7 +12,7 @@ export class MonthControlPlugin extends DateControlPlugin { isBaseComponent = true; pluginIcon = 'inputMonth-plugin'; icon = 'fa fa-calendar'; - description = `月份选择`; + description = '月份选择'; docLink = '/amis/zh-CN/components/form/input-month'; tags = ['表单项']; // @ts-ignore diff --git a/packages/amis-editor/src/plugin/Form/InputQuarter.tsx b/packages/amis-editor/src/plugin/Form/InputQuarter.tsx index ce616c462..860a20a79 100644 --- a/packages/amis-editor/src/plugin/Form/InputQuarter.tsx +++ b/packages/amis-editor/src/plugin/Form/InputQuarter.tsx @@ -12,7 +12,7 @@ export class InputQuarterPlugin extends DateControlPlugin { isBaseComponent = true; icon = 'fa fa-calendar'; pluginIcon = 'input-quarter-plugin'; - description = `季度选择`; + description = '季度选择'; docLink = '/amis/zh-CN/components/form/input-quarter'; tags = ['表单项']; // @ts-ignore diff --git a/packages/amis-editor/src/plugin/Form/InputRange.tsx b/packages/amis-editor/src/plugin/Form/InputRange.tsx index 20c147344..617a7f7c4 100644 --- a/packages/amis-editor/src/plugin/Form/InputRange.tsx +++ b/packages/amis-editor/src/plugin/Form/InputRange.tsx @@ -15,7 +15,7 @@ export class RangeControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-sliders'; pluginIcon = 'input-range-plugin'; - description = `选择某个值或者某个范围`; + description = '选择某个值或者某个范围'; docLink = '/amis/zh-CN/components/form/input-range'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/InputRating.tsx b/packages/amis-editor/src/plugin/Form/InputRating.tsx index fc61f0dfd..ff8de4262 100644 --- a/packages/amis-editor/src/plugin/Form/InputRating.tsx +++ b/packages/amis-editor/src/plugin/Form/InputRating.tsx @@ -8,10 +8,7 @@ import {registerEditorPlugin} from 'amis-editor-core'; import {BasePlugin, BaseEventContext, tipedLabel} from 'amis-editor-core'; import {ValidatorTag} from '../../validator'; import {getEventControlConfig} from '../../renderer/event-control/helper'; -import { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; export class RateControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -23,7 +20,7 @@ export class RateControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-star-o'; pluginIcon = 'input-rating-plugin'; - description = `支持只读、半星选择`; + description = '支持只读、半星选择'; docLink = '/amis/zh-CN/components/form/input-rating'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/InputRepeat.tsx b/packages/amis-editor/src/plugin/Form/InputRepeat.tsx index d6800986f..a390cf54f 100644 --- a/packages/amis-editor/src/plugin/Form/InputRepeat.tsx +++ b/packages/amis-editor/src/plugin/Form/InputRepeat.tsx @@ -12,7 +12,7 @@ export class RepeatControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-repeat'; pluginIcon = 'input-repeat-plugin'; - description = `选择重复的频率,如每时、每天、每周等`; + description = '选择重复的频率,如每时、每天、每周等'; docLink = '/amis/zh-CN/components/form/input-repeat'; tags = ['表单项']; scaffold = { @@ -46,9 +46,10 @@ export class RepeatControlPlugin extends BasePlugin { name: 'options', type: 'select', label: '启用单位', - options: 'secondly,minutely,hourly,daily,weekdays,weekly,monthly,yearly'.split( - ',' - ), + options: + 'secondly,minutely,hourly,daily,weekdays,weekly,monthly,yearly'.split( + ',' + ), value: 'hourly,daily,weekly,monthly', multiple: true } diff --git a/packages/amis-editor/src/plugin/Form/InputRichText.tsx b/packages/amis-editor/src/plugin/Form/InputRichText.tsx index 312911480..43fbab9f3 100644 --- a/packages/amis-editor/src/plugin/Form/InputRichText.tsx +++ b/packages/amis-editor/src/plugin/Form/InputRichText.tsx @@ -1,4 +1,4 @@ -import {getSchemaTpl} from 'amis-editor-core'; +import {BaseEventContext, getSchemaTpl} from 'amis-editor-core'; import {registerEditorPlugin} from 'amis-editor-core'; import {BasePlugin} from 'amis-editor-core'; @@ -12,13 +12,15 @@ export class RichTextControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-newspaper-o'; pluginIcon = 'input-rich-text-plugin'; - description = `可自定义富文本的配置栏`; + description = '可自定义富文本的配置栏'; docLink = '/amis/zh-CN/components/form/input-rich-text'; tags = ['表单项']; scaffold = { type: 'input-rich-text', label: '富文本', - name: 'rich-text' + name: 'rich-text', + receiver: '/api/upload/image', + vendor: 'tinymce' }; previewSchema: any = { type: 'form', @@ -33,154 +35,188 @@ export class RichTextControlPlugin extends BasePlugin { }; panelTitle = '富文本'; - panelBody = [ - getSchemaTpl('switchDefaultValue'), - { - type: 'textarea', - name: 'value', - label: '默认值', - visibleOn: 'typeof this.value !== "undefined"' - }, - getSchemaTpl('api', { - name: 'receiver', - label: '文件接收接口', - value: '/api/upload/image', - __isUpload: true - }), - { - type: 'select', - name: 'vendor', - label: '编辑器类型', - value: 'tinymce', - options: ['tinymce', 'froala'] - }, - getSchemaTpl('fieldSet', { - title: 'froala 设置项', - visibleOn: 'data.vendor === "froala"', - body: [ - { - type: 'combo', - name: 'options', - noBorder: true, - multiLine: true, - items: [ - { - type: 'select', - name: 'language', - label: '语言', - labelRemark: '鼠标覆盖配置栏中配置时显示的提示语言', - defaultValue: 'zh_cn', - options: [ - {label: '中文', value: 'zh_cn'}, - {label: '英文', value: 'en_us'} - ] - }, - { - type: 'textarea', - name: 'toolbarButtons', - label: '大屏时展示的配置项', - labelRemark: '屏幕宽度 ≥ 1200px', - description: - '使用空格分开配置,使用|可将配置栏分组,参考文档', - minRows: 5, - value: [ - 'paragraphFormat', - 'quote', - 'color', - '|', - 'bold', - 'italic', - 'underline', - 'strikeThrough', - '|', - 'formatOL', - 'formatUL', - 'align', - '|', - 'insertLink', - 'insertImage', - 'insertEmotion', - 'insertTable', - '|', - 'undo', - 'redo', - 'html' - ], - pipeIn: (value: any) => - Array.isArray(value) ? value.join(' ') : '', - pipeOut: (value: any) => value.replace(/\s+/g, ' ').split(' ') - }, - { - type: 'textarea', - name: 'toolbarButtonsMD', - label: '中屏时展示的配置项', - labelRemark: '屏幕宽度 ≥ 992px', - description: - '使用空格分开配置,使用|可将配置栏分组,参考文档', - minRows: 5, - pipeIn: (value: any) => - Array.isArray(value) ? value.join(' ') : '', - pipeOut: (value: any) => value.replace(/\s+/g, ' ').split(' ') - }, - { - type: 'textarea', - name: 'toolbarButtonsSM', - label: '小屏时展示的配置项', - labelRemark: '屏幕宽度 ≥ 768px', - description: - '使用空格分开配置,使用|可将配置栏分组,参考文档', - minRows: 5, - pipeIn: (value: any) => - Array.isArray(value) ? value.join(' ') : '', - pipeOut: (value: any) => value.replace(/\s+/g, ' ').split(' ') - } - ] - } - ] - }), - getSchemaTpl('fieldSet', { - title: 'tinymce 设置项', - visibleOn: 'data.vendor === "tinymce"', - body: [ - { - type: 'combo', - name: 'options', - noBorder: true, - multiLine: true, - items: [ - getSchemaTpl('switch', { - label: '是否显示菜单栏', - value: 'true', - name: 'menubar' - }), - { - type: 'input-number', - label: '高度', - min: 0, - value: 400, - name: 'height' - }, - { - type: 'textarea', - name: 'plugins', - label: '启用的插件', - description: - '使用空格分开配置,参考文档', - value: - 'advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking table emoticons template paste help' - }, - { - type: 'textarea', - name: 'toolbar', - label: '工具栏', - value: - 'undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | print preview media fullpage | forecolor backcolor emoticons | help' - } - ] - } - ] - }) - ]; + + panelBodyCreator = (context: BaseEventContext) => { + // 有设置这个就默认使用 froala + const hasRichTextToken = this.manager.env?.richTextToken ? true : false; + return [ + getSchemaTpl('switchDefaultValue'), + { + type: 'textarea', + name: 'value', + label: '默认值', + visibleOn: 'typeof this.value !== "undefined"' + }, + getSchemaTpl('api', { + name: 'receiver', + label: '文件接收接口', + value: '/api/upload/image', + __isUpload: true + }), + { + type: 'select', + name: 'vendor', + label: '编辑器类型', + value: hasRichTextToken ? 'froala' : 'tinymce', + options: ['tinymce', 'froala'] + }, + getSchemaTpl('fieldSet', { + title: 'froala 设置项', + visibleOn: 'data.vendor === "froala"', + body: [ + { + type: 'combo', + name: 'options', + noBorder: true, + multiLine: true, + items: [ + { + type: 'select', + name: 'language', + label: '语言', + labelRemark: '鼠标覆盖配置栏中配置时显示的提示语言', + defaultValue: 'zh_cn', + options: [ + {label: '中文', value: 'zh_cn'}, + {label: '英文', value: 'en_us'} + ] + }, + { + type: 'textarea', + name: 'toolbarButtons', + label: '大屏时展示的配置项', + labelRemark: '屏幕宽度 ≥ 1200px', + description: + '使用空格分开配置,使用|可将配置栏分组,参考文档', + minRows: 5, + value: [ + 'paragraphFormat', + 'quote', + 'color', + '|', + 'bold', + 'italic', + 'underline', + 'strikeThrough', + '|', + 'formatOL', + 'formatUL', + 'align', + '|', + 'insertLink', + 'insertImage', + 'insertEmotion', + 'insertTable', + '|', + 'undo', + 'redo', + 'html' + ], + pipeIn: (value: any) => + Array.isArray(value) ? value.join(' ') : '', + pipeOut: (value: any) => value.replace(/\s+/g, ' ').split(' ') + }, + { + type: 'textarea', + name: 'toolbarButtonsMD', + label: '中屏时展示的配置项', + labelRemark: '屏幕宽度 ≥ 992px', + description: + '使用空格分开配置,使用|可将配置栏分组,参考文档', + minRows: 5, + pipeIn: (value: any) => + Array.isArray(value) ? value.join(' ') : '', + pipeOut: (value: any) => value.replace(/\s+/g, ' ').split(' ') + }, + { + type: 'textarea', + name: 'toolbarButtonsSM', + label: '小屏时展示的配置项', + labelRemark: '屏幕宽度 ≥ 768px', + description: + '使用空格分开配置,使用|可将配置栏分组,参考文档', + minRows: 5, + pipeIn: (value: any) => + Array.isArray(value) ? value.join(' ') : '', + pipeOut: (value: any) => value.replace(/\s+/g, ' ').split(' ') + } + ] + } + ] + }), + getSchemaTpl('fieldSet', { + title: 'tinymce 设置项', + visibleOn: 'data.vendor === "tinymce"', + body: [ + { + type: 'combo', + name: 'options', + noBorder: true, + multiLine: true, + items: [ + getSchemaTpl('switch', { + label: '是否显示菜单栏', + value: 'true', + name: 'menubar' + }), + { + type: 'input-number', + label: '高度', + min: 0, + value: 400, + name: 'height' + }, + { + name: 'plugins', + label: '启用的插件', + description: + '参考文档', + + type: 'input-array', + + inline: true, + items: { + type: 'input-text', + clearable: true + }, + value: [ + 'advlist', + 'autolink', + 'link', + 'image', + 'lists', + 'charmap', + 'preview', + 'anchor', + 'pagebreak', + 'searchreplace', + 'wordcount', + 'visualblocks', + 'visualchars', + 'code', + 'fullscreen', + 'insertdatetime', + 'media', + 'nonbreaking', + 'table', + 'emoticons', + 'template', + 'help' + ] + }, + { + type: 'textarea', + name: 'toolbar', + label: '工具栏', + value: + 'undo redo | formatselect | bold italic backcolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | removeformat | help' + } + ] + } + ] + }) + ]; + }; } registerEditorPlugin(RichTextControlPlugin); diff --git a/packages/amis-editor/src/plugin/Form/InputSubForm.tsx b/packages/amis-editor/src/plugin/Form/InputSubForm.tsx index f4cc9100a..627de378d 100644 --- a/packages/amis-editor/src/plugin/Form/InputSubForm.tsx +++ b/packages/amis-editor/src/plugin/Form/InputSubForm.tsx @@ -21,7 +21,7 @@ export class SubFormControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-window-restore'; pluginIcon = 'sub-form-plugin'; - description = `SubForm, 配置一个子form作为当前的表单项`; + description = 'SubForm, 配置一个子 form 作为当前的表单项'; docLink = '/amis/zh-CN/components/form/input-sub-form'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/InputTable.tsx b/packages/amis-editor/src/plugin/Form/InputTable.tsx index 8089cc9ed..e80c50b0c 100644 --- a/packages/amis-editor/src/plugin/Form/InputTable.tsx +++ b/packages/amis-editor/src/plugin/Form/InputTable.tsx @@ -28,7 +28,8 @@ export class TableControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-table'; pluginIcon = 'table-plugin'; - description = `可以用来展现数据的,可以用来展示数组类型的数据,比如 multiple 的子 form`; + description = + '可以用来展现数据的,可以用来展示数组类型的数据,比如 multiple 的子 form'; docLink = '/amis/zh-CN/components/form/input-table'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/InputTag.tsx b/packages/amis-editor/src/plugin/Form/InputTag.tsx index 0ab798949..fe95292e6 100644 --- a/packages/amis-editor/src/plugin/Form/InputTag.tsx +++ b/packages/amis-editor/src/plugin/Form/InputTag.tsx @@ -23,7 +23,7 @@ export class TagControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-tag'; pluginIcon = 'input-tag-plugin'; - description = `配置options可以实现选择选项`; + description = '配置 options 可以实现选择选项'; docLink = '/amis/zh-CN/components/form/input-tag'; tags = ['表单项']; scaffold = { @@ -76,6 +76,10 @@ export class TagControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } @@ -92,6 +96,10 @@ export class TagControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } diff --git a/packages/amis-editor/src/plugin/Form/InputTime.tsx b/packages/amis-editor/src/plugin/Form/InputTime.tsx index 0a4f79c16..0f1de1aaf 100644 --- a/packages/amis-editor/src/plugin/Form/InputTime.tsx +++ b/packages/amis-editor/src/plugin/Form/InputTime.tsx @@ -11,7 +11,7 @@ export class TimeControlPlugin extends DateControlPlugin { isBaseComponent = true; icon = 'fa fa-clock-o'; pluginIcon = 'input-time-plugin'; - description = `时分秒输入`; + description = '时分秒输入'; docLink = '/amis/zh-CN/components/form/input-time'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/InputTree.tsx b/packages/amis-editor/src/plugin/Form/InputTree.tsx index b3c615c0a..48c92f001 100644 --- a/packages/amis-editor/src/plugin/Form/InputTree.tsx +++ b/packages/amis-editor/src/plugin/Form/InputTree.tsx @@ -20,7 +20,8 @@ export class TreeControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-list-alt'; pluginIcon = 'input-tree-plugin'; - description = `树型结构来选择,可通过options来配置选项,也可通过source拉取选项`; + description = + '树型结构来选择,可通过 options 来配置选项,也可通过 source 拉取选项'; docLink = '/amis/zh-CN/components/form/input-tree'; tags = ['表单项']; scaffold = { @@ -93,7 +94,7 @@ export class TreeControlPlugin extends BasePlugin { type: 'object', title: '新增的节点信息' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -113,7 +114,7 @@ export class TreeControlPlugin extends BasePlugin { type: 'object', title: '编辑的节点信息' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -133,7 +134,7 @@ export class TreeControlPlugin extends BasePlugin { type: 'object', title: '删除的节点信息' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -488,27 +489,17 @@ export class TreeControlPlugin extends BasePlugin { }, { title: '外观', - body: [ - { - label: '顶级文字', - name: 'rootLabel', - type: 'input-text', - pipeIn: defaultValue('顶级'), - visibleOn: 'data.hideRoot !== true' - }, - - getSchemaTpl('switch', { - name: 'showIcon', - label: '是否显示图标', - pipeIn: defaultValue(true) - }), - - getSchemaTpl('switch', { - label: '是否显示单选按钮', - name: 'showRadio', - visibleOn: '!data.multiple' + body: getSchemaTpl('collapseGroup', [ + getSchemaTpl('style:formItem', {renderer}), + getSchemaTpl('style:classNames', { + schema: [ + getSchemaTpl('className', { + label: '外层容器', + name: 'treeContainerClassName' + }) + ] }) - ] + ]) }, { title: '事件', diff --git a/packages/amis-editor/src/plugin/Form/InputYear.tsx b/packages/amis-editor/src/plugin/Form/InputYear.tsx index b9a97b846..9eae2c769 100644 --- a/packages/amis-editor/src/plugin/Form/InputYear.tsx +++ b/packages/amis-editor/src/plugin/Form/InputYear.tsx @@ -12,7 +12,7 @@ export class YearControlPlugin extends DateControlPlugin { isBaseComponent = true; icon = 'fa fa-calendar'; pluginIcon = 'input-year-plugin'; - description = `年选择`; + description = '年选择'; docLink = '/amis/zh-CN/components/form/input-year'; tags = ['表单项']; // @ts-ignore diff --git a/packages/amis-editor/src/plugin/Form/Item.tsx b/packages/amis-editor/src/plugin/Form/Item.tsx index 542038e26..6bfcba1c1 100644 --- a/packages/amis-editor/src/plugin/Form/Item.tsx +++ b/packages/amis-editor/src/plugin/Form/Item.tsx @@ -15,6 +15,7 @@ import { import {defaultValue, getSchemaTpl} from 'amis-editor-core'; import find from 'lodash/find'; import {JSONDelete, JSONPipeIn, JSONUpdate} from 'amis-editor-core'; +import {SUPPORT_STATIC_FORMITEM_CMPTS} from '../../renderer/event-control/helper'; export class ItemPlugin extends BasePlugin { // panelTitle = '表单项通配'; @@ -55,9 +56,9 @@ export class ItemPlugin extends BasePlugin { } } panelBodyCreator = (context: BaseEventContext) => { - const ignoreName = ~['button', 'submit', 'reset'].indexOf( - context.schema.type - ); + const type = context.schema.type || ''; + const supportStatic = SUPPORT_STATIC_FORMITEM_CMPTS.includes(type); + const ignoreName = ~['button', 'submit', 'reset'].indexOf(type); const notRequiredName = ~[ 'button-toobar', 'container', @@ -72,7 +73,7 @@ export class ItemPlugin extends BasePlugin { 'table', 'elevator', 'static' - ].indexOf(context.schema.type); + ].indexOf(type); const hasReadOnly = ~[ 'switch', 'wizard', @@ -81,9 +82,9 @@ export class ItemPlugin extends BasePlugin { 'input-rating', 'input-text', 'textarea' - ].indexOf(context.schema.type); + ].indexOf(type); /** 不支持配置校验属性的组件 */ - const ignoreValidator = !!~['input-group'].indexOf(context.schema.type); + const ignoreValidator = !!~['input-group'].indexOf(type); const renderer: any = context.info.renderer; return [ getSchemaTpl('tabs', [ @@ -155,7 +156,15 @@ export class ItemPlugin extends BasePlugin { label: '描述 CSS 类名', name: 'descriptionClassName', visibleOn: 'this.description' - }) + }), + ...(!supportStatic + ? [] + : [ + getSchemaTpl('className', { + label: '静态 CSS 类名', + name: 'staticClassName' + }) + ]) ] }, @@ -165,11 +174,10 @@ export class ItemPlugin extends BasePlugin { // TODO: 有些表单项没有 disabled getSchemaTpl('disabled'), getSchemaTpl('visible'), - + supportStatic ? getSchemaTpl('static') : null, getSchemaTpl('switch', { name: 'clearValueOnHidden', - label: '隐藏时删除表单项值', - disabledOn: 'typeof this.visible === "boolean"' + label: '隐藏时删除表单项值' }) ] }, diff --git a/packages/amis-editor/src/plugin/Form/ListSelect.tsx b/packages/amis-editor/src/plugin/Form/ListSelect.tsx index d07b9b861..761446054 100644 --- a/packages/amis-editor/src/plugin/Form/ListSelect.tsx +++ b/packages/amis-editor/src/plugin/Form/ListSelect.tsx @@ -3,10 +3,7 @@ import {registerEditorPlugin} from 'amis-editor-core'; import {BasePlugin, BaseEventContext} from 'amis-editor-core'; import {formItemControl} from '../../component/BaseControl'; -import { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; export class ListControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -20,7 +17,8 @@ export class ListControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-ellipsis-h'; pluginIcon = 'list-select-plugin'; - description = `单选或者多选,支持source拉取选项,选项可配置图片,也可以自定义HTML配置`; + description = + '单选或者多选,支持 source 拉取选项,选项可配置图片,也可以自定义 HTML 配置'; docLink = '/amis/zh-CN/components/form/list-select'; tags = ['表单项']; scaffold = { @@ -112,7 +110,6 @@ export class ListControlPlugin extends BasePlugin { getSchemaTpl('label'), getSchemaTpl('multiple'), getSchemaTpl('extractValue'), - getSchemaTpl('valueFormula', { rendererSchema: context?.schema, useSelectMode: true, // 改用 Select 设置模式 diff --git a/packages/amis-editor/src/plugin/Form/LocationPicker.tsx b/packages/amis-editor/src/plugin/Form/LocationPicker.tsx index ce0a35e06..3483292a5 100644 --- a/packages/amis-editor/src/plugin/Form/LocationPicker.tsx +++ b/packages/amis-editor/src/plugin/Form/LocationPicker.tsx @@ -12,7 +12,7 @@ export class LocationControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-location-arrow'; pluginIcon = 'location-picker-plugin'; - description = `地理位置选择`; + description = '地理位置选择'; docLink = '/amis/zh-CN/components/form/location-picker'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/MatrixCheckboxes.tsx b/packages/amis-editor/src/plugin/Form/MatrixCheckboxes.tsx index 429ebc50f..6f24bb971 100644 --- a/packages/amis-editor/src/plugin/Form/MatrixCheckboxes.tsx +++ b/packages/amis-editor/src/plugin/Form/MatrixCheckboxes.tsx @@ -10,10 +10,7 @@ import { } from 'amis-editor-core'; import {ValidatorTag} from '../../validator'; import {getEventControlConfig} from '../../renderer/event-control/helper'; -import { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; export class MatrixControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -25,7 +22,7 @@ export class MatrixControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-th-large'; pluginIcon = 'matrix-checkboxes-plugin'; - description = `可配置行单选,列单选,以及全部选项只能单选或者全部选项多选`; + description = '可配置行单选,列单选,以及全部选项只能单选或者全部选项多选'; docLink = '/amis/zh-CN/components/form/matrix-checkboxes'; tags = ['表单项']; scaffold = { @@ -159,8 +156,9 @@ export class MatrixControlPlugin extends BasePlugin { title: '选项', body: [ [ - { + getSchemaTpl('combo-container', { label: '列配置', + mode: 'normal', name: 'columns', type: 'combo', multiple: true, @@ -175,16 +173,17 @@ export class MatrixControlPlugin extends BasePlugin { placeholder: '列说明' } ] - }, + }), { name: 'rowLabel', label: '行标题文字', type: 'input-text' }, - { + getSchemaTpl('combo-container', { label: '行配置', name: 'rows', type: 'combo', + mode: 'normal', multiple: true, scaffold: { label: '行说明' @@ -197,16 +196,12 @@ export class MatrixControlPlugin extends BasePlugin { placeholder: '行说明' } ] - } + }) ], getSchemaTpl('apiControl', { label: tipedLabel('接口', '获取矩阵数据接口'), name: 'source', - mode: 'horizontal', - horizontal: { - left: 4, - justify: true - } + mode: 'normal' }) // getSchemaTpl('value') ] diff --git a/packages/amis-editor/src/plugin/Form/NestedSelect.tsx b/packages/amis-editor/src/plugin/Form/NestedSelect.tsx index 461a0bbb5..728e4bacd 100644 --- a/packages/amis-editor/src/plugin/Form/NestedSelect.tsx +++ b/packages/amis-editor/src/plugin/Form/NestedSelect.tsx @@ -24,7 +24,7 @@ export class NestedSelectControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-indent'; pluginIcon = 'nested-select-plugin'; - description = `适用于选项中含有子项,可通过source拉取选项,支持多选`; + description = '适用于选项中含有子项,可通过 source 拉取选项,支持多选'; docLink = '/amis/zh-CN/components/form/nestedselect'; tags = ['表单项']; scaffold = { @@ -305,9 +305,7 @@ export class NestedSelectControlPlugin extends BasePlugin { }, { title: '选项', - body: [ - getSchemaTpl('treeOptionControl') - ] + body: [getSchemaTpl('treeOptionControl')] }, getSchemaTpl('status', {isFormItem: true}), getSchemaTpl('validation', { diff --git a/packages/amis-editor/src/plugin/Form/Picker.tsx b/packages/amis-editor/src/plugin/Form/Picker.tsx index afc8ef6b2..95e7f3924 100644 --- a/packages/amis-editor/src/plugin/Form/Picker.tsx +++ b/packages/amis-editor/src/plugin/Form/Picker.tsx @@ -27,7 +27,8 @@ export class PickerControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-window-restore'; pluginIcon = 'picker-plugin'; - description = `通过pickerSchema配置可供选取的数据源进行选择需要的数据,支持多选`; + description = + '通过 pickerSchema 配置可供选取的数据源进行选择需要的数据,支持多选'; docLink = '/amis/zh-CN/components/form/picker'; tags = ['表单项']; scaffold = { @@ -72,13 +73,29 @@ export class PickerControlPlugin extends BasePlugin { type: 'string', title: '选中值' }, - 'event.data.option': { + 'event.data.selectedItems': { type: 'string', title: '选中的行数据' } } } ] + }, + { + eventName: 'itemclick', + eventLabel: '点击选项', + description: '选项被点击时触发', + dataSchema: [ + { + type: 'object', + properties: { + 'event.data.item': { + type: 'object', + title: '所点击的选项' + } + } + } + ] } ]; diff --git a/packages/amis-editor/src/plugin/Form/Radios.tsx b/packages/amis-editor/src/plugin/Form/Radios.tsx index 05de63f9a..3efe8e827 100644 --- a/packages/amis-editor/src/plugin/Form/Radios.tsx +++ b/packages/amis-editor/src/plugin/Form/Radios.tsx @@ -4,10 +4,7 @@ import {BasePlugin, BaseEventContext} from 'amis-editor-core'; import {ValidatorTag} from '../../validator'; import {getEventControlConfig} from '../../renderer/event-control/helper'; -import { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; export class RadiosControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -21,7 +18,7 @@ export class RadiosControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-dot-circle-o'; pluginIcon = 'radios-plugin'; - description = `通过options配置选项,可通过source拉取选项`; + description = '通过 options 配置选项,可通过 source 拉取选项'; docLink = '/amis/zh-CN/components/form/radios'; tags = ['表单项']; scaffold = { @@ -70,6 +67,10 @@ export class RadiosControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } diff --git a/packages/amis-editor/src/plugin/Form/Select.tsx b/packages/amis-editor/src/plugin/Form/Select.tsx index 457735f2a..f91b2082b 100644 --- a/packages/amis-editor/src/plugin/Form/Select.tsx +++ b/packages/amis-editor/src/plugin/Form/Select.tsx @@ -19,7 +19,7 @@ export class SelectControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-th-list'; pluginIcon = 'select-plugin'; - description = `支持多选,输入提示,可使用source获取选项`; + description = '支持多选,输入提示,可使用 source 获取选项'; docLink = '/amis/zh-CN/components/form/select'; tags = ['表单项']; scaffold = { @@ -67,6 +67,10 @@ export class SelectControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } @@ -83,6 +87,10 @@ export class SelectControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } @@ -99,6 +107,10 @@ export class SelectControlPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } @@ -116,7 +128,7 @@ export class SelectControlPlugin extends BasePlugin { type: 'object', title: '新增的选项' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -136,7 +148,7 @@ export class SelectControlPlugin extends BasePlugin { type: 'object', title: '编辑的选项' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -156,7 +168,7 @@ export class SelectControlPlugin extends BasePlugin { type: 'object', title: '删除的选项' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } diff --git a/packages/amis-editor/src/plugin/Form/Static.tsx b/packages/amis-editor/src/plugin/Form/Static.tsx index 7674c2fc7..1131d1015 100644 --- a/packages/amis-editor/src/plugin/Form/Static.tsx +++ b/packages/amis-editor/src/plugin/Form/Static.tsx @@ -18,7 +18,7 @@ export class StaticControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-info'; pluginIcon = 'static-plugin'; - description = `纯用来展示数据,可用来展示json、date、image、progress等数据`; + description = '纯用来展示数据,可用来展示 json、date、image、progress 等数据'; docLink = '/amis/zh-CN/components/form/static'; tags = ['表单项']; scaffold = { @@ -58,13 +58,14 @@ export class StaticControlPlugin extends BasePlugin { getSchemaTpl('label'), // getSchemaTpl('value'), getSchemaTpl('valueFormula', { - rendererSchema: { - ...context?.schema, - type: 'textarea', // 改用多行文本编辑 - value: context?.schema.tpl // 避免默认值丢失 - }, - mode: 'vertical', // 改成上下展示模式 - name: 'tpl' + // TODO: 因为 formulaControl 未适配 static 这类特殊组件,暂不传递 rendererSchema属性,让其内部先使用 InputBox + // 待后续 formulaControl 优化之后再重新调整适配 + // rendererSchema: { + // ...context?.schema, + // type: 'textarea', // 改用多行文本编辑 + // value: context?.schema.tpl // 避免默认值丢失 + // }, + mode: 'vertical' // 改成上下展示模式 }), getSchemaTpl('switch', { name: 'quickEdit', @@ -95,8 +96,13 @@ export class StaticControlPlugin extends BasePlugin { name: 'quickEdit.saveImmediately', label: '立即保存', visibleOn: 'data.quickEdit', - description: '开启后修改即提交,而不是标记修改批量提交。', - descriptionClassName: 'help-block m-b-none', + labelRemark: { + className: 'm-l-xs', + trigger: 'click', + rootClose: true, + placement: 'left', + content: '开启后修改即提交,而不是标记修改批量提交。' + }, pipeIn: (value: any) => !!value }), getSchemaTpl('apiControl', { diff --git a/packages/amis-editor/src/plugin/Form/Switch.tsx b/packages/amis-editor/src/plugin/Form/Switch.tsx index 6fb73291b..0ccb86ecd 100644 --- a/packages/amis-editor/src/plugin/Form/Switch.tsx +++ b/packages/amis-editor/src/plugin/Form/Switch.tsx @@ -3,10 +3,7 @@ import {registerEditorPlugin, tipedLabel} from 'amis-editor-core'; import {BasePlugin, BaseEventContext} from 'amis-editor-core'; import {ValidatorTag} from '../../validator'; import {getEventControlConfig} from '../../renderer/event-control/helper'; -import type { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import type {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; export class SwitchControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -20,12 +17,13 @@ export class SwitchControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-toggle-on'; pluginIcon = 'switch-plugin'; - description = `开关控件`; + description = '开关控件'; docLink = '/amis/zh-CN/components/form/switch'; tags = ['表单项']; scaffold = { type: 'switch', - option: '开关', + label: '开关', + option: '说明', name: 'switch', falseValue: false, trueValue: true diff --git a/packages/amis-editor/src/plugin/Form/TabsTransfer.tsx b/packages/amis-editor/src/plugin/Form/TabsTransfer.tsx index a1a387693..7afd26e12 100644 --- a/packages/amis-editor/src/plugin/Form/TabsTransfer.tsx +++ b/packages/amis-editor/src/plugin/Form/TabsTransfer.tsx @@ -16,7 +16,7 @@ export class TabsTransferPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-th-list'; pluginIcon = 'tabs-transfer-plugin'; - description = `组合穿梭器组件`; + description = '组合穿梭器组件'; docLink = '/amis/zh-CN/components/form/transfer'; tags = ['表单项']; scaffold = { @@ -144,22 +144,10 @@ export class TabsTransferPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' - } - } - } - ] - }, - { - eventName: 'selectAll', - eventLabel: '全选', - description: '选中所有选项', - dataSchema: [ - { - type: 'object', - properties: { - 'event.data.value': { - type: 'string', - title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } @@ -279,12 +267,12 @@ export class TabsTransferPlugin extends BasePlugin { getSchemaTpl('label'), getSchemaTpl('searchable'), - + getSchemaTpl('api', { label: '检索接口', name: 'searchApi' }), - + { label: '查询时勾选展示模式', name: 'searchResultMode', @@ -309,16 +297,16 @@ export class TabsTransferPlugin extends BasePlugin { } ] }, - + getSchemaTpl('sortable'), - + getSchemaTpl('formulaControl', { label: '左侧选项标题', name: 'selectTitle', type: 'input-text', inputClassName: 'is-inline ' }), - + getSchemaTpl('formulaControl', { label: '右侧结果标题', name: 'resultTitle', diff --git a/packages/amis-editor/src/plugin/Form/Textarea.tsx b/packages/amis-editor/src/plugin/Form/Textarea.tsx index f1e86bf2d..4f6503869 100644 --- a/packages/amis-editor/src/plugin/Form/Textarea.tsx +++ b/packages/amis-editor/src/plugin/Form/Textarea.tsx @@ -5,10 +5,7 @@ import {BasePlugin, tipedLabel} from 'amis-editor-core'; import type {BaseEventContext} from 'amis-editor-core'; import {ValidatorTag} from '../../validator'; import {getEventControlConfig} from '../../renderer/event-control/helper'; -import { - RendererPluginAction, - RendererPluginEvent -} from 'amis-editor-core'; +import {RendererPluginAction, RendererPluginEvent} from 'amis-editor-core'; export class TextareaControlPlugin extends BasePlugin { // 关联渲染器名字 @@ -21,7 +18,7 @@ export class TextareaControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-paragraph'; pluginIcon = 'textarea-plugin'; - description = `支持换行输入`; + description = '支持换行输入'; docLink = '/amis/zh-CN/components/form/textarea'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/Form/Transfer.tsx b/packages/amis-editor/src/plugin/Form/Transfer.tsx index e86283669..27df37169 100644 --- a/packages/amis-editor/src/plugin/Form/Transfer.tsx +++ b/packages/amis-editor/src/plugin/Form/Transfer.tsx @@ -17,7 +17,7 @@ export class TransferPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-th-list'; pluginIcon = 'transfer-plugin'; - description = `穿梭器组件`; + description = '穿梭器组件'; docLink = '/amis/zh-CN/components/form/transfer'; tags = ['表单项']; scaffold = { @@ -63,6 +63,10 @@ export class TransferPlugin extends BasePlugin { 'event.data.value': { type: 'string', title: '选中值' + }, + 'event.data.items': { + type: 'array', + title: '选项集合' } } } @@ -76,9 +80,9 @@ export class TransferPlugin extends BasePlugin { { type: 'object', properties: { - 'event.data': { + 'event.data.items': { type: 'array', - title: '选中值' + title: '选项集合' } } } @@ -180,7 +184,6 @@ export class TransferPlugin extends BasePlugin { }), getSchemaTpl('labelRemark'), getSchemaTpl('remark'), - getSchemaTpl('placeholder'), getSchemaTpl('description'), getSchemaTpl('switch', { label: '统计数据', @@ -290,7 +293,10 @@ export class TransferPlugin extends BasePlugin { options: [ {label: '列表形式', value: false}, {label: '跟随左侧', value: true} - ] + ], + onChange: (value: any, origin: any, item: any, form: any) => { + form.setValueByName('sortable', !value ? true : undefined); + } }, getSchemaTpl('switch', { label: tipedLabel( diff --git a/packages/amis-editor/src/plugin/Form/TreeSelect.tsx b/packages/amis-editor/src/plugin/Form/TreeSelect.tsx index 8122bfae2..811dd08c3 100644 --- a/packages/amis-editor/src/plugin/Form/TreeSelect.tsx +++ b/packages/amis-editor/src/plugin/Form/TreeSelect.tsx @@ -16,13 +16,14 @@ export class TreeSelectControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-chevron-down'; pluginIcon = 'tree-select-plugin'; - description = `点击输入框,弹出树型选择框进行选择`; + description = '点击输入框,弹出树型选择框进行选择'; docLink = '/amis/zh-CN/components/form/treeselect'; tags = ['表单项']; scaffold = { type: 'tree-select', label: '树下拉框', name: 'tree-select', + clearable: false, options: [ { label: '选项A', @@ -89,7 +90,7 @@ export class TreeSelectControlPlugin extends BasePlugin { type: 'object', title: '新增的选项信息' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -109,7 +110,7 @@ export class TreeSelectControlPlugin extends BasePlugin { type: 'object', title: '编辑的选项信息' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -129,7 +130,7 @@ export class TreeSelectControlPlugin extends BasePlugin { type: 'object', title: '删除的选项信息' }, - 'event.data.options': { + 'event.data.items': { type: 'array', title: '选项集合' } @@ -252,6 +253,7 @@ export class TreeSelectControlPlugin extends BasePlugin { panelBodyCreator = (context: BaseEventContext) => { const renderer: any = context.info.renderer; + return getSchemaTpl('tabs', [ { title: '属性', @@ -270,8 +272,7 @@ export class TreeSelectControlPlugin extends BasePlugin { justify: true, left: 8 }, - inputClassName: 'is-inline ', - value: true + inputClassName: 'is-inline ' }), getSchemaTpl('searchable'), getSchemaTpl('multiple', { @@ -389,11 +390,6 @@ export class TreeSelectControlPlugin extends BasePlugin { { title: '高级', body: [ - getSchemaTpl('valueFormula', { - name: 'highlightTxt', - label: '高亮节点字符', - type: 'input-text' - }), { type: 'ae-Switch-More', mode: 'normal', @@ -422,26 +418,27 @@ export class TreeSelectControlPlugin extends BasePlugin { ), name: 'hideNodePathLabel' }), - { - type: 'ae-Switch-More', - mode: 'normal', - name: 'hideRoot', - label: '显示顶级节点', - value: true, - trueValue: false, - falseValue: true, - formType: 'extend', - form: { - body: [ - { - type: 'input-text', - label: '节点文案', - value: '顶级', - name: 'rootLabel' - } - ] - } - }, + // tree-select 该组件目前无此配置 + // { + // type: 'ae-Switch-More', + // mode: 'normal', + // name: 'hideRoot', + // label: '显示顶级节点', + // value: true, + // trueValue: false, + // falseValue: true, + // formType: 'extend', + // form: { + // body: [ + // { + // type: 'input-text', + // label: '节点文案', + // value: '顶级', + // name: 'rootLabel' + // } + // ] + // } + // }, getSchemaTpl('switch', { label: '显示节点图标', name: 'showIcon', diff --git a/packages/amis-editor/src/plugin/Form/UUID.tsx b/packages/amis-editor/src/plugin/Form/UUID.tsx index 89b89ec0c..25ed7884b 100644 --- a/packages/amis-editor/src/plugin/Form/UUID.tsx +++ b/packages/amis-editor/src/plugin/Form/UUID.tsx @@ -17,7 +17,7 @@ export class UUIDControlPlugin extends BasePlugin { isBaseComponent = true; icon = 'fa fa-eye-slash'; pluginIcon = 'uuid-plugin'; - description = `自动生成的 UUID`; + description = '自动生成的 UUID'; docLink = '/amis/zh-CN/components/form/uuid'; tags = ['表单项']; scaffold = { diff --git a/packages/amis-editor/src/plugin/HBox.tsx b/packages/amis-editor/src/plugin/HBox.tsx index 95c48f870..909fa6e29 100644 --- a/packages/amis-editor/src/plugin/HBox.tsx +++ b/packages/amis-editor/src/plugin/HBox.tsx @@ -165,7 +165,7 @@ export class HBoxPlugin extends BasePlugin { ] }, - { + getSchemaTpl('combo-container', { name: 'columns', label: '列集合', type: 'combo', @@ -188,7 +188,7 @@ export class HBoxPlugin extends BasePlugin { label: '' }) ] - }, + }), getSchemaTpl('fieldSet', { title: '水平对齐', collapsable: false, diff --git a/packages/amis-editor/src/plugin/Nav.tsx b/packages/amis-editor/src/plugin/Nav.tsx index 57bcb7fb4..28a6ffe25 100644 --- a/packages/amis-editor/src/plugin/Nav.tsx +++ b/packages/amis-editor/src/plugin/Nav.tsx @@ -66,12 +66,10 @@ export class NavPlugin extends BasePlugin { required: true }, - { - type: 'icon-picker', + getSchemaTpl('icon', { name: 'icon', - label: '图标', - className: 'fix-icon-picker-overflow' - }, + label: '图标' + }), { type: 'group', diff --git a/packages/amis-editor/src/plugin/Others/Action.tsx b/packages/amis-editor/src/plugin/Others/Action.tsx index 6b3c82b2d..f03f0bc50 100644 --- a/packages/amis-editor/src/plugin/Others/Action.tsx +++ b/packages/amis-editor/src/plugin/Others/Action.tsx @@ -147,7 +147,10 @@ export class ActionPlugin extends BasePlugin { name: 'dialog', pipeIn: defaultValue({ title: '弹框标题', - body: '

    对,你刚刚点击了

    ' + body: '

    对,你刚刚点击了

    ', + showCloseButton: true, + showErrorMsg: true, + showLoading: true }), asFormItem: true, children: ({value, onChange, data}: any) => @@ -406,7 +409,7 @@ export class ActionPlugin extends BasePlugin { ) { toolbars.push({ iconSvg: 'dialog', - tooltip: `配置弹框内容`, + tooltip: '配置弹框内容', placement: 'bottom', onClick: () => this.editDetail(id) }); diff --git a/packages/amis-editor/src/plugin/Page.tsx b/packages/amis-editor/src/plugin/Page.tsx index 4818a8e88..e1333ae2b 100644 --- a/packages/amis-editor/src/plugin/Page.tsx +++ b/packages/amis-editor/src/plugin/Page.tsx @@ -50,7 +50,7 @@ export class PagePlugin extends BasePlugin { events: RendererPluginEvent[] = [ { eventName: 'inited', - eventLabel: '初始化完成', + eventLabel: '初始化接口请求成功', description: '远程初始化接口请求成功时触发', dataSchema: [ { @@ -58,7 +58,7 @@ export class PagePlugin extends BasePlugin { properties: { 'event.data': { type: 'object', - title: '远程请求返回的初始化数据' + title: '初始化接口请求成功返回的数据' } } } @@ -265,7 +265,7 @@ export class PagePlugin extends BasePlugin { className: 'p-none', body: [ getSchemaTpl('collapseGroup', [ - ...getSchemaTpl('style:common'), + ...getSchemaTpl('style:common', ['layout']), getSchemaTpl('style:classNames', { isFormItem: false, schema: [ diff --git a/packages/amis-editor/src/plugin/Pagination.tsx b/packages/amis-editor/src/plugin/Pagination.tsx index ac4136829..327ad6581 100644 --- a/packages/amis-editor/src/plugin/Pagination.tsx +++ b/packages/amis-editor/src/plugin/Pagination.tsx @@ -19,6 +19,7 @@ export class PaginationPlugin extends BasePlugin { // 组件名称 name = '分页组件'; isBaseComponent = true; + disabledRendererPlugin = true; description = '分页组件,可以对列表进行分页展示,提高页面性能'; tags = ['容器']; icon = 'fa fa-window-minimize'; diff --git a/packages/amis-editor/src/plugin/Progress.tsx b/packages/amis-editor/src/plugin/Progress.tsx index 9f0db8a42..d209d7e4c 100644 --- a/packages/amis-editor/src/plugin/Progress.tsx +++ b/packages/amis-editor/src/plugin/Progress.tsx @@ -214,7 +214,7 @@ export class ProgressPlugin extends BasePlugin { form.setValueByName('stripe', value === 'stripe'); } }, - { + getSchemaTpl('combo-container', { name: 'map', type: 'combo', mode: 'normal', @@ -250,7 +250,7 @@ export class ProgressPlugin extends BasePlugin { pipeIn: (value: any) => { return Array.isArray(value) ? value : []; } - } + }) ] }, getSchemaTpl('style:classNames', { diff --git a/packages/amis-editor/src/plugin/Steps.tsx b/packages/amis-editor/src/plugin/Steps.tsx index d4edd8d6c..72c70b051 100644 --- a/packages/amis-editor/src/plugin/Steps.tsx +++ b/packages/amis-editor/src/plugin/Steps.tsx @@ -45,7 +45,7 @@ export class StepsPlugin extends BasePlugin { { title: '常规', body: [ - { + getSchemaTpl('combo-container', { name: 'steps', label: '步骤列表', type: 'combo', @@ -76,7 +76,7 @@ export class StepsPlugin extends BasePlugin { placeholder: '描述' } ] - }, + }), { name: 'value', type: 'input-text', diff --git a/packages/amis-editor/src/plugin/Table-v2.tsx b/packages/amis-editor/src/plugin/Table2.tsx similarity index 96% rename from packages/amis-editor/src/plugin/Table-v2.tsx rename to packages/amis-editor/src/plugin/Table2.tsx index 67a499847..4683864e1 100644 --- a/packages/amis-editor/src/plugin/Table-v2.tsx +++ b/packages/amis-editor/src/plugin/Table2.tsx @@ -25,27 +25,28 @@ import {getEventControlConfig} from '../renderer/event-control/helper'; import {SchemaObject} from 'amis/lib/Schema'; import {getArgsWrapper} from '../renderer/event-control/helper'; -export class TableV2Plugin extends BasePlugin { +export class Table2Plugin extends BasePlugin { // 关联渲染器名字 - rendererName = 'table-v2'; + rendererName = 'table2'; $schema = '/schemas/TableSchema.json'; // 组件名称 - name = '表格V2'; + name = '表格2'; isBaseComponent = true; panelJustify = true; + disabledRendererPlugin = true; description = '用来展示表格数据,可以配置列信息,然后关联数据便能完成展示。支持嵌套、超级表头、列固定、表头固顶、合并单元格等等。当前组件需要配置数据源,不自带数据拉取,请优先使用 「CRUD」 组件。'; - docLink = '/amis/zh-CN/components/table-v2'; + docLink = '/amis/zh-CN/components/table2'; icon = 'fa fa-table'; scaffold: SchemaObject = { - type: 'table-v2', + type: 'table2', columns: [ { title: '列信息', - key: 'a' + name: 'a' } ], @@ -63,7 +64,7 @@ export class TableV2Plugin extends BasePlugin { ]; previewSchema: any = { - type: 'table-v2', + type: 'table2', className: 'text-left m-b-none', items: [ {a: 1, b: 2, c: 9}, @@ -73,11 +74,11 @@ export class TableV2Plugin extends BasePlugin { columns: [ { title: 'A', - key: 'a' + name: 'a' }, { title: 'B', - key: 'b' + name: 'b' } ] }; @@ -100,7 +101,7 @@ export class TableV2Plugin extends BasePlugin { }, { type: 'input-text', - name: 'key', + name: 'name', placeholder: '绑定字段名' }, { @@ -325,23 +326,24 @@ export class TableV2Plugin extends BasePlugin { const columns: EditorNodeType = node.children.find( item => item.isRegion && item.region === 'columns' ); - - for (let current of columns.children) { - const schema = current.schema; - if (schema && schema.key) { - itemsSchema.properties[schema.key] = current.info?.plugin - ?.buildDataSchemas - ? await current.info.plugin.buildDataSchemas(current, region) - : { - type: 'string', - title: schema.label || schema.title, - description: schema.description - }; + if (columns) { + for (let current of columns.children) { + const schema = current.schema; + if (schema && schema.key) { + itemsSchema.properties[schema.key] = current.info?.plugin + ?.buildDataSchemas + ? await current.info.plugin.buildDataSchemas(current, region) + : { + type: 'string', + title: schema.label || schema.title, + description: schema.description + }; + } } } const result: any = { - $id: 'table-v2', + $id: 'table2', type: 'object', properties: { items: { @@ -821,8 +823,8 @@ export class TableV2Plugin extends BasePlugin { if (Array.isArray(props.columns)) { props.columns.forEach((column: any) => { - if (column.key) { - setVariable(mockedData, column.key, mockValue(column)); + if (column.name) { + setVariable(mockedData, column.name, mockValue(column)); } }); } @@ -869,7 +871,7 @@ export class TableV2Plugin extends BasePlugin { if ( !schema.$$id && ['crud', 'crud2'].includes(schema.$$editor?.renderer.name) && - renderer.name === 'table-v2' + renderer.name === 'table2' ) { return { ...({id: schema.$$editor.id} as any), @@ -904,4 +906,4 @@ export class TableV2Plugin extends BasePlugin { } } -registerEditorPlugin(TableV2Plugin); +registerEditorPlugin(Table2Plugin); diff --git a/packages/amis-editor/src/plugin/TableCell-v2.tsx b/packages/amis-editor/src/plugin/TableCell2.tsx similarity index 98% rename from packages/amis-editor/src/plugin/TableCell-v2.tsx rename to packages/amis-editor/src/plugin/TableCell2.tsx index d06b38888..576b8576a 100644 --- a/packages/amis-editor/src/plugin/TableCell-v2.tsx +++ b/packages/amis-editor/src/plugin/TableCell2.tsx @@ -1,6 +1,6 @@ import {Button, Icon} from 'amis'; import React from 'react'; -import {FormItemProps, getVariable} from 'amis-core'; +import {getVariable} from 'amis-core'; import { BasePlugin, @@ -20,7 +20,7 @@ import {TabsSchema} from 'amis/lib/renderers/Tabs'; import {SchemaObject} from 'amis/lib/Schema'; import {remarkTpl} from '../component/BaseControl'; -export class TableCellV2Plugin extends BasePlugin { +export class TableCell2Plugin extends BasePlugin { panelTitle = '列配置'; panelIcon = 'fa fa-columns'; @@ -28,7 +28,7 @@ export class TableCellV2Plugin extends BasePlugin { const {context, data} = event.context; if ( !context.node.parent?.parent?.type || - context.node.parent.parent.type !== 'table-v2' + context.node.parent.parent.type !== 'table2' ) { return; } @@ -42,7 +42,7 @@ export class TableCellV2Plugin extends BasePlugin { ? false : { sameName: context.info.renderer.isFormItem ? 'name' : undefined, - name: 'key', + name: 'name', type: 'ae-DataBindingControl', label: '列字段', onBindingChange( @@ -557,7 +557,6 @@ export class TableCellV2Plugin extends BasePlugin { const parent = dom.parentElement?.parentElement; const groupId = parent?.getAttribute('data-group-id'); const wrapper = dom.closest('table')!.parentElement?.parentElement; - return [].slice.call( wrapper?.querySelectorAll( `th[data-group-id="${groupId}"], @@ -585,4 +584,4 @@ export class TableCellV2Plugin extends BasePlugin { } } -registerEditorPlugin(TableCellV2Plugin); +registerEditorPlugin(TableCell2Plugin); diff --git a/packages/amis-editor/src/plugin/TableView.tsx b/packages/amis-editor/src/plugin/TableView.tsx index 1a66778f0..02c248235 100644 --- a/packages/amis-editor/src/plugin/TableView.tsx +++ b/packages/amis-editor/src/plugin/TableView.tsx @@ -185,7 +185,7 @@ export class TableViewPlugin extends BasePlugin { body: [ getSchemaTpl('collapseGroup', [ { - title: '常用', + title: '基本', body: [ { label: '标题', diff --git a/packages/amis-editor/src/plugin/Tabs.tsx b/packages/amis-editor/src/plugin/Tabs.tsx index 1fe5d3499..0a1cc2284 100644 --- a/packages/amis-editor/src/plugin/Tabs.tsx +++ b/packages/amis-editor/src/plugin/Tabs.tsx @@ -74,7 +74,7 @@ export class TabsPlugin extends BasePlugin { { type: 'object', properties: { - value: { + 'event.data.value': { type: 'string', title: '选项卡索引' } @@ -87,13 +87,12 @@ export class TabsPlugin extends BasePlugin { actions = [ { actionType: 'changeActiveKey', - actionLabel: '修改激活tab值', + actionLabel: '激活指定选项卡', description: '修改当前激活tab项的key', config: ['activeKey'], - desc: (info: any) => { + descDetail: (info: any) => { return (
    - {info?.__rendererLabel} 激活第 {info?.args?.activeKey} @@ -164,8 +163,9 @@ export class TabsPlugin extends BasePlugin { ), type: 'input-text', name: 'activeKey', - pipeOut: (data: string) => data === '' || isNaN(Number(data)) ? data : Number(data) - }, + pipeOut: (data: string) => + data === '' || isNaN(Number(data)) ? data : Number(data) + } ] }, getSchemaTpl('status'), diff --git a/packages/amis-editor/src/plugin/Timeline.tsx b/packages/amis-editor/src/plugin/Timeline.tsx index 3d6df6dc2..27247d0cc 100644 --- a/packages/amis-editor/src/plugin/Timeline.tsx +++ b/packages/amis-editor/src/plugin/Timeline.tsx @@ -20,8 +20,9 @@ export class TimelinePlugin extends BasePlugin { label: '时间轴', name: 'timeline', items: [ - {time: '2012-12-21', title: '节点数据'}, - {time: '2012-12-24', title: '节点数据'} + {time: '2012-12-21', title: '节点示例数据'}, + {time: '2012-12-24', title: '节点示例数据'}, + {time: '2012-12-27', title: '节点示例数据'} ] }; previewSchema = { diff --git a/packages/amis-editor/src/plugin/TooltipWrapper.tsx b/packages/amis-editor/src/plugin/TooltipWrapper.tsx index 5e7c11715..b31548e8c 100644 --- a/packages/amis-editor/src/plugin/TooltipWrapper.tsx +++ b/packages/amis-editor/src/plugin/TooltipWrapper.tsx @@ -59,7 +59,7 @@ export class TooltipWrapperPlugin extends BasePlugin { body: [ getSchemaTpl('collapseGroup', [ { - title: '常用', + title: '基本', body: [ { type: 'input-text', @@ -205,7 +205,7 @@ export class TooltipWrapperPlugin extends BasePlugin { Array.isArray(value) ? value[0] || 0 : 0, pipeOut: (value: any, oldValue: any, data: any) => [ value, - data.offset[1] + data.offset?.[1] || 0 ] }, { @@ -215,7 +215,7 @@ export class TooltipWrapperPlugin extends BasePlugin { pipeIn: (value: any) => Array.isArray(value) ? value[1] || 0 : 0, pipeOut: (value: any, oldValue: any, data: any) => [ - data.offset[0], + data.offset?.[0] || 0, value ] } diff --git a/packages/amis-editor/src/plugin/Video.tsx b/packages/amis-editor/src/plugin/Video.tsx index 8a13f99f7..fee653224 100644 --- a/packages/amis-editor/src/plugin/Video.tsx +++ b/packages/amis-editor/src/plugin/Video.tsx @@ -62,7 +62,13 @@ export class VideoPlugin extends BasePlugin { getSchemaTpl('switch', { name: 'isLive', label: '直播流', - description: '如果是直播流,请勾选,否则有可能不能正常播放。' + labelRemark: { + className: 'm-l-xs', + trigger: 'click', + rootClose: true, + placement: 'left', + content: '如果是直播流,请勾选,否则有可能不能正常播放。' + } }) ] }, diff --git a/packages/amis-editor/src/plugin/Wizard.tsx b/packages/amis-editor/src/plugin/Wizard.tsx index 5ebad8359..ffcbd7c9d 100644 --- a/packages/amis-editor/src/plugin/Wizard.tsx +++ b/packages/amis-editor/src/plugin/Wizard.tsx @@ -1,4 +1,8 @@ -import {EditorNodeType, jsonToJsonSchema, registerEditorPlugin} from 'amis-editor-core'; +import { + EditorNodeType, + jsonToJsonSchema, + registerEditorPlugin +} from 'amis-editor-core'; import { BaseEventContext, BasePlugin, @@ -85,7 +89,7 @@ export class WizardPlugin extends BasePlugin { events: RendererPluginEvent[] = [ { eventName: 'inited', - eventLabel: '初始化完成', + eventLabel: '初始化接口请求成功', description: '远程初始化接口请求成功时触发', dataSchema: [ { @@ -93,7 +97,7 @@ export class WizardPlugin extends BasePlugin { properties: { 'event.data': { type: 'object', - title: 'initApi 远程请求返回的初始化数据' + title: '初始化接口请求成功返回的数据' } } } diff --git a/packages/amis-editor/src/plugin/Wrapper.tsx b/packages/amis-editor/src/plugin/Wrapper.tsx index 5d244cb53..ce523f4ea 100644 --- a/packages/amis-editor/src/plugin/Wrapper.tsx +++ b/packages/amis-editor/src/plugin/Wrapper.tsx @@ -39,7 +39,7 @@ export class WrapperPlugin extends BasePlugin { body: [ getSchemaTpl('collapseGroup', [ { - title: '常用', + title: '基本', body: [ { label: '内间距', @@ -95,8 +95,7 @@ export class WrapperPlugin extends BasePlugin { items: [ { type: 'tpl', - tpl: - '子节点${index | plus}' + tpl: '子节点${index | plus}' } ] } diff --git a/packages/amis-editor/src/renderer/ColumnControl.tsx b/packages/amis-editor/src/renderer/ColumnControl.tsx index 50450e794..527a73837 100644 --- a/packages/amis-editor/src/renderer/ColumnControl.tsx +++ b/packages/amis-editor/src/renderer/ColumnControl.tsx @@ -5,12 +5,7 @@ import React from 'react'; import cx from 'classnames'; import findIndex from 'lodash/findIndex'; -import { - FormControlProps, - FormItem, - TreeSelection -} from 'amis'; - +import {FormControlProps, FormItem, TreeSelection} from 'amis'; export interface ColumnControlProps extends FormControlProps { className?: string; @@ -24,7 +19,6 @@ export default class ColumnControl extends React.Component< ColumnControlProps, ColumnsControlState > { - constructor(props: any) { super(props); @@ -51,16 +45,22 @@ export default class ColumnControl extends React.Component< render() { const {columns} = this.state; - const options = columns ? columns.map(c => ({value: c.key, label: c.title})) : []; - const value = columns ? columns.filter(c => c.toggled !== false).map(c => ({value: c.key, label: c.title})) : [] + const options = columns + ? columns.map(c => ({value: c.key, label: c.title})) + : []; + const value = columns + ? columns + .filter(c => c.toggled !== false) + .map(c => ({value: c.key, label: c.title})) + : []; return (
    ) => this.onChange(v)}> - + onChange={(v: Array) => this.onChange(v)} + >
    ); } diff --git a/packages/amis-editor/src/renderer/DataPickerControl.tsx b/packages/amis-editor/src/renderer/DataPickerControl.tsx index 1fb1585f7..765ffdc0a 100644 --- a/packages/amis-editor/src/renderer/DataPickerControl.tsx +++ b/packages/amis-editor/src/renderer/DataPickerControl.tsx @@ -47,9 +47,7 @@ class DataPickerControl extends React.Component { onChange={() => {}} header={''} > - {({onClick}: { - onClick: (e: React.MouseEvent) => void; - }) => { + {({onClick}: {onClick: (e: React.MouseEvent) => void}) => { return ( {this.renderContent()}
    - {render('inner', { - type: 'dropdown-button', - label: '添加选项', - closeOnClick: true, - closeOnOutside: true, - buttons: optionList - })} + {render( + 'inner', + { + type: 'dropdown-button', + label: '添加选项', + closeOnClick: true, + closeOnOutside: true, + buttons: optionList + }, + { + popOverContainer: null // amis 渲染挂载节点会使用 this.target + } + )}
    ); diff --git a/packages/amis-editor/src/renderer/FeatureControl.tsx b/packages/amis-editor/src/renderer/FeatureControl.tsx index 09c08b97d..ae6f051c1 100644 --- a/packages/amis-editor/src/renderer/FeatureControl.tsx +++ b/packages/amis-editor/src/renderer/FeatureControl.tsx @@ -236,12 +236,17 @@ export default class FeatureControl extends React.Component< className: `${klass}-action`, btnClassName: `${klass}-action--btn`, menuClassName: `${klass}-action--menus`, - buttons: this.state.unUseFeat.map(item => { - return { - label: item.label, - onClick: () => this.handleAdd(item) - }; - }) + buttons: this.state.unUseFeat.map( + item => { + return { + label: item.label, + onClick: () => this.handleAdd(item) + }; + }, + { + popOverContainer: null // amis 渲染挂载节点会使用 this.target + } + ) }); } diff --git a/packages/amis-editor/src/renderer/FormulaControl.tsx b/packages/amis-editor/src/renderer/FormulaControl.tsx index 87c35c11d..25927e78e 100644 --- a/packages/amis-editor/src/renderer/FormulaControl.tsx +++ b/packages/amis-editor/src/renderer/FormulaControl.tsx @@ -236,6 +236,7 @@ export default class FormulaControl extends React.Component< if (value === null || value === undefined) { return true; // 数值为空不进行类型识别 } + const {rendererSchema} = this.props; const expectType = this.props.valueType; if (expectType === null || expectType === undefined) { @@ -246,6 +247,16 @@ export default class FormulaControl extends React.Component< const curData = this.getContextData(); if ( + rendererSchema.type === 'switch' && + (rendererSchema.trueValue !== undefined || + rendererSchema.falseValue !== undefined) + ) { + // 开关类型组件单独处理 + return ( + rendererSchema.trueValue === value || + rendererSchema.falseValue === value + ); + } else if ( (expectType === 'number' && isNumber(value)) || (expectType === 'boolean' && isBoolean(value)) || (expectType === 'object' && isPlainObject(value)) || diff --git a/packages/amis-editor/src/renderer/OptionControl.tsx b/packages/amis-editor/src/renderer/OptionControl.tsx index 005697e10..5dbcf08fc 100644 --- a/packages/amis-editor/src/renderer/OptionControl.tsx +++ b/packages/amis-editor/src/renderer/OptionControl.tsx @@ -57,12 +57,26 @@ export default class OptionControl extends React.Component< constructor(props: OptionControlProps) { super(props); + let source: 'custom' | 'api' | 'apicenter' = 'custom'; + + if (props.data.source) { + const api = props.data.source; + const url = + typeof api === 'string' + ? api + : typeof api === 'object' + ? api.url || '' + : ''; + + source = !url.indexOf('api://') ? 'apicenter' : 'api'; + } + this.state = { options: this.transformOptions(props), api: props.data.source, labelField: props.data.labelField, valueField: props.data.valueField, - source: props.data.source ? 'api' : 'custom' + source }; } @@ -494,7 +508,6 @@ export default class OptionControl extends React.Component< }, { type: 'input-text', - name: 'label', placeholder: '请输入显示文本', label: '文本', mode: 'horizontal', @@ -611,17 +624,23 @@ export default class OptionControl extends React.Component< clearable={false} onChange={(value: string) => this.handleEditLabel(index, value)} /> - {render('dropdown', { - type: 'dropdown-button', - className: 'ae-OptionControlItem-dropdown', - btnClassName: 'px-2', - icon: 'fa fa-ellipsis-h', - hideCaret: true, - closeOnClick: true, - align: 'right', - menuClassName: 'ae-OptionControlItem-ulmenu', - buttons: operationBtn - })} + {render( + 'dropdown', + { + type: 'dropdown-button', + className: 'ae-OptionControlItem-dropdown', + btnClassName: 'px-2', + icon: 'fa fa-ellipsis-h', + hideCaret: true, + closeOnClick: true, + align: 'right', + menuClassName: 'ae-OptionControlItem-ulmenu', + buttons: operationBtn + }, + { + popOverContainer: null // amis 渲染挂载节点会使用 this.target + } + )}
{editDom} diff --git a/packages/amis-editor/src/renderer/StatusControl.tsx b/packages/amis-editor/src/renderer/StatusControl.tsx index 13ec35ab1..53ecd2536 100644 --- a/packages/amis-editor/src/renderer/StatusControl.tsx +++ b/packages/amis-editor/src/renderer/StatusControl.tsx @@ -23,7 +23,6 @@ export interface StatusControlProps extends FormControlProps { messages?: Pick; } - type StatusFormData = { statusType: number; expression: string; @@ -52,11 +51,11 @@ export class StatusControl extends React.Component< const {data: ctx = {}, expressionName, name, trueValue} = this.props; const formData: StatusFormData = { statusType: 1, - expression: '', + expression: '' }; - if (ctx[expressionName] || ctx[expressionName]=== "") { - formData.statusType = 2; - formData.expression = ctx[expressionName]; + if (ctx[expressionName] || ctx[expressionName] === '') { + formData.statusType = 2; + formData.expression = ctx[expressionName]; } return { checked: @@ -76,21 +75,17 @@ export class StatusControl extends React.Component< handleSwitch(value: boolean) { const {trueValue, falseValue} = this.props; this.setState({checked: value == trueValue ? true : false}, () => { - const {onBulkChange, expressionName, name} = this.props; - onBulkChange && - onBulkChange({ - [name]: value == trueValue ? trueValue : falseValue, - [expressionName]: undefined, - }); + onBulkChange && + onBulkChange({ + [name]: value == trueValue ? trueValue : falseValue, + [expressionName]: undefined + }); }); - } @autobind - handleFormSubmit( - values: StatusFormData - ) { + handleFormSubmit(values: StatusFormData) { const {onBulkChange, name, expressionName} = this.props; const data: Record = { [name]: undefined, @@ -110,7 +105,6 @@ export class StatusControl extends React.Component< onBulkChange && onBulkChange(data); } - render() { const {className, data: ctx = {}, trueValue, falseValue, env} = this.props; const {checked} = this.state; @@ -191,7 +185,7 @@ export class StatusControl extends React.Component< label: '表达式', placeholder: `请输入${label}条件`, visibleOn: 'this.statusType === 2' - }, + } ] }, { diff --git a/packages/amis-editor/src/renderer/TimelineItemControl.tsx b/packages/amis-editor/src/renderer/TimelineItemControl.tsx index 2f51cb0b3..93cbc3e5c 100644 --- a/packages/amis-editor/src/renderer/TimelineItemControl.tsx +++ b/packages/amis-editor/src/renderer/TimelineItemControl.tsx @@ -77,6 +77,9 @@ export default class TimelineItemControl extends React.Component< data.items = items.map(item => ({...item})); } if (source === 'api') { + const {items, api} = this.state; + data.items = items.map(item => ({...item})); + data.source = api; } onBulkChange && onBulkChange(data); } @@ -396,6 +399,7 @@ export default class TimelineItemControl extends React.Component< renderOption(props: TimelineItem & {index: number}) { const {time, title, index} = props; + const delDisabled = !(this.state.items.length > 2); return (
  • @@ -421,60 +425,66 @@ export default class TimelineItemControl extends React.Component< } )} */} - {amisRender({ - type: 'dropdown-button', - className: 'ae-TimelineItemControlItem-dropdown', - btnClassName: 'px-2', - icon: 'fa fa-ellipsis-h', - hideCaret: true, - closeOnClick: true, - align: 'right', - menuClassName: 'ae-TimelineItemControlItem-ulmenu', - buttons: [ - { - type: 'action', - className: 'ae-TimelineItemControlItem-action', - label: '编辑', - actionType: 'dialog', - dialog: { - title: '节点配置', - headerClassName: 'font-bold', - closeOnEsc: true, - closeOnOutside: false, - showCloseButton: true, - body: [ - { - type: 'form', - wrapWithPanel: false, - wrapperComponent: 'div', - resetAfterSubmit: true, - autoFocus: true, - preventEnterSubmit: true, - horizontal: { - justify: true, - left: 3, - right: 9 - }, - body: this.buildAddOrEditSchema(props), - onSubmit: (e: any) => this.toggleEdit(e, index) - } - ] + {amisRender( + { + type: 'dropdown-button', + className: 'ae-TimelineItemControlItem-dropdown', + btnClassName: 'px-2', + icon: 'fa fa-ellipsis-h', + hideCaret: true, + closeOnClick: true, + align: 'right', + menuClassName: 'ae-TimelineItemControlItem-ulmenu', + buttons: [ + { + type: 'action', + className: 'ae-TimelineItemControlItem-action', + label: '编辑', + actionType: 'dialog', + dialog: { + title: '节点配置', + headerClassName: 'font-bold', + closeOnEsc: true, + closeOnOutside: false, + showCloseButton: true, + body: [ + { + type: 'form', + wrapWithPanel: false, + wrapperComponent: 'div', + resetAfterSubmit: true, + autoFocus: true, + preventEnterSubmit: true, + horizontal: { + justify: true, + left: 3, + right: 9 + }, + body: this.buildAddOrEditSchema(props), + onSubmit: (e: any) => this.toggleEdit(e, index) + } + ] + } + }, + { + type: 'button', + className: 'ae-TimelineItemControlItem-action', + label: '复制', + onClick: () => this.toggleCopy(index) + }, + { + type: 'button', + className: 'ae-TimelineItemControlItem-action', + label: '删除', + disabled: delDisabled, + onClick: () => this.toggleDelete(index) } - }, - { - type: 'button', - className: 'ae-TimelineItemControlItem-action', - label: '复制', - onClick: () => this.toggleCopy(index) - }, - { - type: 'button', - className: 'ae-TimelineItemControlItem-action', - label: '删除', - onClick: () => this.toggleDelete(index) - } - ] - })} + ] + }, + { + popOverContainer: null // amis 渲染挂载节点会使用 this.target + } + )}
    ) { const renderInput = ( name: string, placeholder: string, - required: boolean = true + required: boolean = true, + unique: boolean = false ) => { return { type: 'input-text', name, placeholder: placeholder, - required + required, + unique }; }; @@ -412,17 +414,24 @@ export default class TransferTableOption extends React.Component< this.handleChange(args[2].options, 'options'), body: [ { - name: 'options', - type: 'combo', - multiple: true, - draggable: true, - addButtonText: '新增', - value: options, - items: [ - ...columns.map((item: Option) => - renderInput(item.name, item.label ?? '') - ), - renderInput('value', '值', true) + type: 'form', + wrapWithPanel: false, + mode: 'normal', + body: [ + { + name: 'options', + type: 'combo', + multiple: true, + draggable: true, + addButtonText: '新增', + value: options, + items: [ + ...columns.map((item: Option) => + renderInput(item.name, item.label ?? '', false) + ), + renderInput('value', '值', true, true) + ] + } ] } ] @@ -437,6 +446,20 @@ export default class TransferTableOption extends React.Component< const {data} = this.props; const {onBulkChange, onValueChange} = this.props; data[type] = value; + if (type === 'columns') { + const keys = value.map(item => item.name); + data.options = (data.options ?? []).map((item: Option) => { + return { + ...keys.reduce( + (pv, cv) => { + pv[cv] = item[cv]; + return pv; + }, + {value: item.value} + ) + }; + }); + } onValueChange && onValueChange(type, data, onBulkChange); } diff --git a/packages/amis-editor/src/renderer/TreeOptionControl.tsx b/packages/amis-editor/src/renderer/TreeOptionControl.tsx index 0c4fddaf6..13cc62ccc 100644 --- a/packages/amis-editor/src/renderer/TreeOptionControl.tsx +++ b/packages/amis-editor/src/renderer/TreeOptionControl.tsx @@ -347,35 +347,41 @@ export default class TreeOptionControl extends React.Component< }} />
    - {render('dropdown', { - type: 'dropdown-button', - className: 'ae-TreeOptionControlItem-dropdown fa-sm', - btnClassName: 'px-2', - icon: 'add', - hideCaret: true, - closeOnClick: true, - trigger: 'hover', - align: 'right', - menuClassName: 'ae-TreeOptionControlItem-ulmenu', - buttons: [ - { - type: 'button', - className: 'ae-OptionControlItem-action', - label: '添加选项', - onClick: () => { - this.addOption(path); + {render( + 'dropdown', + { + type: 'dropdown-button', + className: 'ae-TreeOptionControlItem-dropdown fa-sm', + btnClassName: 'px-2', + icon: 'add', + hideCaret: true, + closeOnClick: true, + trigger: 'hover', + align: 'right', + menuClassName: 'ae-TreeOptionControlItem-ulmenu', + buttons: [ + { + type: 'button', + className: 'ae-OptionControlItem-action', + label: '添加选项', + onClick: () => { + this.addOption(path); + } + }, + { + type: 'button', + className: 'ae-OptionControlItem-action', + label: '添加子选项', + onClick: () => { + this.addChildOption(path); + } } - }, - { - type: 'button', - className: 'ae-OptionControlItem-action', - label: '添加子选项', - onClick: () => { - this.addChildOption(path); - } - } - ] - })} + ] + }, + { + popOverContainer: null // amis 渲染挂载节点会使用 this.target + } + )}
    ); } -} \ No newline at end of file +} diff --git a/packages/amis-editor/src/renderer/event-control/actions.tsx b/packages/amis-editor/src/renderer/event-control/actions.tsx index 8c80c504d..8dd0e7b09 100644 --- a/packages/amis-editor/src/renderer/event-control/actions.tsx +++ b/packages/amis-editor/src/renderer/event-control/actions.tsx @@ -13,9 +13,12 @@ import { SHOW_SELECT_PROP, renderCmptActionSelect, renderCmptSelect, - SUPPORT_DISABLED_CMPTS + SUPPORT_DISABLED_CMPTS, + SUPPORT_STATIC_FORMITEM_CMPTS } from './helper'; import {BaseLabelMark} from '../../component/BaseControl'; +import {i18n as _i18n} from 'i18n-runtime'; + const MSG_TYPES: {[key: string]: string} = { info: '提示', warning: '警告', @@ -37,7 +40,8 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { descDetail: (info: any) => { return (
    - 跳转至{info?.args?.url} + 跳转至 + {info?.args?.url || '-'}
    ); }, @@ -66,6 +70,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { label: '页面参数', multiple: true, mode: 'horizontal', + size: 'lg', items: [ { name: 'key', @@ -103,13 +108,13 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { actionLabel: '打开页面', actionType: 'link', description: '打开指定页面', - innerArgs: ['link', 'params'], + innerArgs: ['link', 'params', 'pageName', '__pageInputSchema'], descDetail: (info: any) => { return (
    打开 - {info?.args?.pageName} + {info?.args?.pageName || '-'} 页面
    @@ -181,7 +186,10 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { required: true, pipeIn: defaultValue({ title: '弹框标题', - body: '

    对,你刚刚点击了

    ' + body: '

    对,你刚刚点击了

    ', + showCloseButton: true, + showErrorMsg: true, + showLoading: true }), asFormItem: true, visibleOn: 'data.groupType === "dialog"', @@ -199,7 +207,8 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { } block > - 去配置 + {/* 翻译未生效,临时方案 */} + {_i18n('a532be3ad5f3fda70d228b8542e81835')} ) }, @@ -227,7 +236,8 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { } block > - 去配置 + {/* 翻译未生效,临时方案 */} + {_i18n('a532be3ad5f3fda70d228b8542e81835')} ) } @@ -292,7 +302,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { return (
    {MSG_TYPES[info?.args?.msgType] || ''}消息: - {info?.args?.msg} + {info?.args?.msg || '-'}
    ); }, @@ -421,10 +431,10 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    发送 - {apiInfo?.method} + {apiInfo?.method || '-'} 请求: - {apiInfo?.url} + {apiInfo?.url || '-'}
    ); }, @@ -552,7 +562,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    显示 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 组件
    @@ -566,7 +576,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    隐藏 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 组件
    @@ -576,7 +586,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { ], supportComponents: '*', schema: [ - ...renderCmptSelect('选择组件', true), + ...renderCmptSelect('目标组件', true), { type: 'radios', label: '显示/隐藏', @@ -611,7 +621,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    启用 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 组件
    @@ -625,7 +635,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    禁用 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 组件
    @@ -639,7 +649,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { ...SUPPORT_DISABLED_CMPTS ], schema: [ - ...renderCmptSelect('选择组件', true), + ...renderCmptSelect('目标组件', true), { type: 'radios', label: '启用/禁用', @@ -662,6 +672,63 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { } ] }, + { + actionLabel: '组件展示态', + actionType: 'staticStatus', + description: '控制所选的组件的输入态/静态', + actions: [ + { + actionType: 'static', + descDetail: (info: any) => { + return ( +
    + + {info?.rendererLabel} + + 组件切换为静态 +
    + ); + } + }, + { + actionType: 'nonstatic', + descDetail: (info: any) => { + return ( +
    + + {info?.rendererLabel} + + 组件切换为输入态 +
    + ); + } + } + ], + supportComponents: ['form', ...SUPPORT_STATIC_FORMITEM_CMPTS], + schema: [ + ...renderCmptSelect('选择组件', true), + { + type: 'radios', + label: '组件状态', + name: 'groupType', + mode: 'horizontal', + inputClassName: 'event-action-radio', + value: 'nonstatic', + required: true, + pipeIn: defaultValue('nonstatic'), + options: [ + { + label: '表单输入', + value: 'nonstatic' + }, + { + label: '表单静态', + value: 'static' + } + ] + } + ] + }, { actionLabel: '刷新组件', actionType: 'reload', @@ -671,19 +738,177 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    刷新 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 组件
    ); }, supportComponents: 'byComponent', - schema: renderCmptSelect('选择组件', true) + schema: [ + ...renderCmptSelect( + '目标组件', + true, + (value: string, oldVal: any, data: any, form: any) => { + form.setValueByName('args.resetPage', true); + form.setValueByName('__addParam', true); + form.setValueByName('__customData', false); + form.setValueByName('__containerType', 'all'); + form.setValueByName('__reloadParam', []); + } + ), + { + type: 'switch', + name: '__resetPage', + label: '重置页码', + labelRemark: { + className: 'm-l-xs', + icon: 'fa fa-question-circle', + rootClose: true, + content: '选择“是”时,将重新请求第一页数据。', + placement: 'top' + }, + onText: '是', + offText: '否', + mode: 'horizontal', + pipeIn: defaultValue(true), + visibleOn: `data.actionType === "reload" && data.__rendererName === "crud"` + }, + { + type: 'switch', + name: '__addParam', + label: '追加数据', + labelRemark: { + className: 'm-l-xs', + icon: 'fa fa-question-circle', + rootClose: true, + content: `当选择“是”,且目标组件是增删改查组件时,数据接口请求时将带上这些数据,其他类型的目标组件只有在数据接口是post请求时才会带上这些数据。`, + placement: 'top' + }, + onText: '是', + offText: '否', + mode: 'horizontal', + pipeIn: defaultValue(true), + visibleOn: `data.actionType === "reload" && ${IS_DATA_CONTAINER}` + }, + { + type: 'switch', + name: '__customData', + label: '自定义数据', + labelRemark: { + className: 'm-l-xs', + icon: 'fa fa-question-circle', + rootClose: true, + content: `数据默认为源组件所在数据域,开启“自定义”可以定制所需数据`, + placement: 'top' + }, + onText: '是', + offText: '否', + mode: 'horizontal', + pipeIn: defaultValue(true), + visibleOn: `data.__addParam && data.actionType === "reload" && ${IS_DATA_CONTAINER}`, + onChange: (value: string, oldVal: any, data: any, form: any) => { + form.setValueByName('__containerType', 'all'); + } + }, + { + type: 'radios', + name: '__containerType', + mode: 'horizontal', + label: '', + pipeIn: defaultValue('all'), + visibleOn: `data.__addParam && data.__customData && data.actionType === "reload" && ${IS_DATA_CONTAINER}`, + options: [ + { + label: '直接赋值', + value: 'all' + }, + { + label: '成员赋值', + value: 'appoint' + } + ], + onChange: (value: string, oldVal: any, data: any, form: any) => { + form.setValueByName('__reloadParams', []); + form.setValueByName('__valueInput', undefined); + } + }, + { + name: '__valueInput', + type: 'input-formula', + variables: '${variables}', + evalMode: false, + required: true, + variableMode: 'tabs', + inputMode: 'input-group', + label: '', + size: 'lg', + mode: 'horizontal', + visibleOn: `data.__addParam && data.__customData && data.__containerType === "all" && data.actionType === "reload" && ${IS_DATA_CONTAINER}` + }, + { + type: 'combo', + name: '__reloadParams', + label: '', + multiple: true, + removable: true, + addable: true, + strictMode: false, + canAccessSuperData: true, + size: 'lg', + mode: 'horizontal', + items: [ + { + name: 'key', + type: 'input-text', + placeholder: '参数名', + labelField: 'label', + valueField: 'value', + required: true + }, + { + name: 'val', + type: 'input-formula', + placeholder: '参数值', + variables: '${variables}', + evalMode: false, + variableMode: 'tabs', + inputMode: 'input-group' + } + ], + visibleOn: `data.__addParam && data.__customData && data.__containerType === "appoint" && data.actionType === "reload" && ${IS_DATA_CONTAINER}` + }, + { + type: 'radios', + name: 'dataMergeMode', + mode: 'horizontal', + label: '追加方式', + labelRemark: { + className: 'm-l-xs', + icon: 'fa fa-question-circle', + rootClose: true, + content: `选择“合并”时,会将数据合并到目标组件的数据域。
    选择“覆盖”时,数据会直接覆盖目标组件的数据域。`, + placement: 'top' + }, + pipeIn: defaultValue('merge'), + visibleOn: `data.__addParam && data.actionType === "reload" && ${IS_DATA_CONTAINER}`, + options: [ + { + label: '合并', + value: 'merge' + }, + { + label: '覆盖', + value: 'override' + } + ] + } + ] }, { - actionLabel: '设置组件数据', + actionLabel: '组件数据', actionType: 'setValue', - description: '设置数据容器或表单项的数据', + description: '更新目标组件的数据域或目标表单项的数据值', innerArgs: [ 'value', 'index', @@ -696,7 +921,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    设置 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 的数据 {/* 值为 @@ -710,25 +935,32 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { }, supportComponents: 'byComponent', schema: [ - ...renderCmptActionSelect('选择组件', true), + ...renderCmptActionSelect( + '目标组件', + true, + (value: string, oldVal: any, data: any, form: any) => { + form.setValueByName('args.__containerType', 'all'); + form.setValueByName('args.__comboType', 'all'); + } + ), getArgsWrapper({ type: 'wrapper', className: 'p-none', body: [ { type: 'radios', - required: true, name: '__containerType', mode: 'horizontal', - label: '赋值方式', - visibleOn: `data.__rendererName && ${IS_DATA_CONTAINER}`, + label: '数据设置', + pipeIn: defaultValue('all'), + visibleOn: `${IS_DATA_CONTAINER}`, options: [ { - label: '数据域赋值', + label: '直接赋值', value: 'all' }, { - label: '数据域成员赋值', + label: '成员赋值', value: 'appoint' } ], @@ -744,12 +976,12 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { }, { type: 'radios', - required: true, name: '__comboType', inputClassName: 'event-action-radio', mode: 'horizontal', - label: '赋值方式', - visibleOn: `data.__rendererName && __rendererName === 'combo'`, + label: '数据设置', + pipeIn: defaultValue('all'), + visibleOn: `data.__rendererName === 'combo'`, options: [ { label: '全量', @@ -777,37 +1009,31 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { name: 'index', mode: 'horizontal', label: '输入序号', + size: 'lg', placeholder: '请输入待更新序号', - visibleOn: `data.__comboType && __comboType === 'appoint' && data.__rendererName && data.__rendererName === 'combo'` + visibleOn: `data.__comboType === 'appoint' && data.__rendererName === 'combo'` }, { type: 'combo', name: 'value', - label: '字段赋值', + label: '', multiple: true, removable: true, required: true, addable: true, strictMode: false, canAccessSuperData: true, + size: 'lg', mode: 'horizontal', items: [ { name: 'key', - type: 'select', + type: 'input-text', placeholder: '变量名', source: '${__setValueDs}', labelField: 'label', valueField: 'value', - required: true, - visibleOn: `data.__rendererName && ${SHOW_SELECT_PROP}` - }, - { - name: 'key', - type: 'input-text', - placeholder: '变量名', - required: true, - visibleOn: `data.__rendererName && !${SHOW_SELECT_PROP} && __comboType === 'appoint'` + required: true }, { name: 'val', @@ -819,12 +1045,12 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { inputMode: 'input-group' } ], - visibleOn: `data.__rendererName && ${IS_DATA_CONTAINER} && data.__containerType && data.__containerType === 'appoint' || (data.__comboType && __comboType === 'appoint')` + visibleOn: `${IS_DATA_CONTAINER} && data.__containerType === 'appoint' || data.__comboType === 'appoint'` }, { type: 'combo', name: 'value', - label: '字段赋值', + label: '', multiple: true, removable: true, required: true, @@ -832,6 +1058,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { strictMode: false, canAccessSuperData: true, mode: 'horizontal', + size: 'lg', items: [ { type: 'combo', @@ -845,6 +1072,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { strictMode: false, canAccessSuperData: true, className: 'm-l', + size: 'lg', mode: 'horizontal', items: [ { @@ -867,7 +1095,7 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { ] } ], - visibleOn: `data.__rendererName && __rendererName === 'combo' && data.__comboType && __comboType === 'all'` + visibleOn: `data.__rendererName === 'combo' && data.__comboType === 'all'` }, { name: '__valueInput', @@ -876,10 +1104,23 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { evalMode: false, variableMode: 'tabs', inputMode: 'input-group', - label: '赋值', + label: '', size: 'lg', mode: 'horizontal', - visibleOn: `data.__rendererName && !${IS_DATA_CONTAINER} && !${SHOW_SELECT_PROP} && __rendererName !== 'combo' || (${IS_DATA_CONTAINER} && data.__containerType && data.__containerType === 'all')`, + visibleOn: `(${IS_DATA_CONTAINER} || ${SHOW_SELECT_PROP}) && data.__containerType === 'all'`, + required: true + }, + { + name: '__valueInput', + type: 'input-formula', + variables: '${variables}', + evalMode: false, + variableMode: 'tabs', + inputMode: 'input-group', + label: '数据设置', + size: 'lg', + mode: 'horizontal', + visibleOn: `data.__rendererName && !${IS_DATA_CONTAINER} && data.__rendererName !== 'combo'`, required: true } ] @@ -895,14 +1136,14 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    提交 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 的数据
    ); }, supportComponents: 'form', - schema: renderCmptSelect('选择组件', true) + schema: renderCmptSelect('目标组件', true) }, { actionLabel: '清空表单', @@ -913,14 +1154,14 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    清空 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 的数据
    ); }, supportComponents: 'form', - schema: renderCmptSelect('选择组件', true) + schema: renderCmptSelect('目标组件', true) }, { actionLabel: '重置表单', @@ -931,14 +1172,14 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    重置 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 的数据
    ); }, supportComponents: 'form', - schema: renderCmptSelect('选择组件', true) + schema: renderCmptSelect('目标组件', true) }, { actionLabel: '校验表单', @@ -949,21 +1190,21 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => {
    校验 - {info?.rendererLabel} + {info?.rendererLabel || '-'} 的数据
    ); }, supportComponents: 'form', - schema: renderCmptSelect('选择组件', true) + schema: renderCmptSelect('目标组件', true) }, { actionLabel: '组件特性动作', actionType: 'component', description: '触发所选组件的特性动作', supportComponents: '*', - schema: renderCmptActionSelect('选择组件', true) + schema: renderCmptActionSelect('目标组件', true) } ] }, @@ -980,7 +1221,9 @@ const ACTION_TYPE_TREE = (manager: any): RendererPluginAction[] => { return (
    复制内容: - {info?.args?.content} + + {info?.args?.content || '-'} +
    ); }, diff --git a/packages/amis-editor/src/renderer/event-control/comp-action-select.tsx b/packages/amis-editor/src/renderer/event-control/comp-action-select.tsx index 0e0c748e8..a362a56a9 100644 --- a/packages/amis-editor/src/renderer/event-control/comp-action-select.tsx +++ b/packages/amis-editor/src/renderer/event-control/comp-action-select.tsx @@ -65,4 +65,4 @@ export default class CmptActionSelect extends React.Component { /> ); } -} \ No newline at end of file +} diff --git a/packages/amis-editor/src/renderer/event-control/helper.tsx b/packages/amis-editor/src/renderer/event-control/helper.tsx index ede4f51fb..86a91eb14 100644 --- a/packages/amis-editor/src/renderer/event-control/helper.tsx +++ b/packages/amis-editor/src/renderer/event-control/helper.tsx @@ -12,18 +12,19 @@ import { RendererPluginEvent, SubRendererPluginAction } from 'amis-editor-core'; -import {ActionConfig, ContextVariables} from './types'; +import {ActionConfig, ComponentInfo, ContextVariables} from './types'; import { DataSchema, filterTree, findTree, mapTree, - normalizeApi + normalizeApi, + PlainObject } from 'amis-core'; import CmptActionSelect from './comp-action-select'; import {Button} from 'amis'; import ACTION_TYPE_TREE from './actions'; -import {stores} from 'amis-core/lib/factory'; +import without from 'lodash/without'; // 数据容器范围 export const DATA_CONTAINER = [ @@ -32,6 +33,7 @@ export const DATA_CONTAINER = [ 'drawer', 'wizard', 'service', + 'crud', 'page', 'app', 'chart' @@ -43,12 +45,12 @@ export const SELECT_PROPS_CONTAINER = ['form']; // 是否数据容器 export const IS_DATA_CONTAINER = `${JSON.stringify( DATA_CONTAINER -)}.includes(__rendererName)`; +)}.includes(data.__rendererName)`; // 是否下拉展示可赋值属性 export const SHOW_SELECT_PROP = `${JSON.stringify( SELECT_PROPS_CONTAINER -)}.includes(__rendererName)`; +)}.includes(data.__rendererName)`; // 表单项组件 export const FORMITEM_CMPTS = [ @@ -116,6 +118,29 @@ export const FORMITEM_CMPTS = [ 'uuid' ]; +export const SUPPORT_STATIC_FORMITEM_CMPTS = without( + FORMITEM_CMPTS, + ...[ + 'button-toolbar', + 'condition-builder', + 'diff-editor', + 'editor', + 'formula', + 'hidden', + 'icon-picker', + 'input-excel', + 'input-file', + 'input-formula', + 'input-image', + 'input-repeat', + 'input-rich-text', + 'input-sub-form', + 'input-table', + 'picker', + 'uuid' + ] +); + export const SUPPORT_DISABLED_CMPTS = [ 'button-group', 'action', @@ -211,7 +236,7 @@ export const COMMON_ACTION_SCHEMA_MAP: { inputMode: 'input-group' } ], - visibleOn: `data.__rendererName && ${IS_DATA_CONTAINER}` + visibleOn: `${IS_DATA_CONTAINER}` }, { type: 'combo', @@ -255,7 +280,7 @@ export const COMMON_ACTION_SCHEMA_MAP: { ] } ], - visibleOn: `data.__rendererName && __rendererName === 'combo'` + visibleOn: `data.__rendererName === 'combo'` }, { name: '__valueInput', @@ -267,7 +292,7 @@ export const COMMON_ACTION_SCHEMA_MAP: { label: '变量赋值', size: 'lg', mode: 'horizontal', - visibleOn: `data.__rendererName && !${IS_DATA_CONTAINER} && __rendererName !== 'combo'`, + visibleOn: `!${IS_DATA_CONTAINER} && data.__rendererName !== 'combo'`, required: true } ] @@ -437,6 +462,11 @@ export const getEventLabel = (events: RendererPluginEvent[], name: string) => export const getEventDesc = (events: RendererPluginEvent[], name: string) => events.find(item => item.eventName === name)?.description; +export const getEventStrongDesc = ( + events: RendererPluginEvent[], + name: string +) => events.find(item => item.eventName === name)?.strongDesc; + // 判断插件动作中是否存在指定动作 export const hasActionType = ( actionType: string, @@ -456,14 +486,21 @@ export const getPropOfAcion = ( propName: string, actionTree: RendererPluginAction[], pluginActions: PluginActions, - commonActions?: {[propName: string]: RendererPluginAction} + commonActions?: {[propName: string]: RendererPluginAction}, + allComponents?: ComponentInfo[] ): any => { let prop: any = null; if (action.componentId) { // 优先从组件特性动作中找 - pluginActions[action.__rendererName]?.find( - (item: RendererPluginAction) => item.actionType === action.actionType - )?.[propName as keyof RendererPluginAction]; + const node = findTree( + allComponents ?? [], + item => item.value === action.componentId + ); + prop = + node && + pluginActions[node.type]?.find( + (item: RendererPluginAction) => item.actionType === action.actionType + )?.[propName as keyof RendererPluginAction]; } if (!prop) { @@ -506,7 +543,7 @@ export const renderCmptSelect = ( { type: 'tree-select', name: 'componentId', - label: componentLabel, + label: componentLabel || '选择组件', showIcon: false, searchable: true, required, @@ -535,7 +572,7 @@ export const renderCmptActionSelect = ( ) => { return [ ...renderCmptSelect( - '选择组件', + componentLabel || '选择组件', true, async (value: string, oldVal: any, data: any, form: any) => { // 获取组件上下文. @@ -566,6 +603,7 @@ export const renderCmptActionSelect = ( form.setValueByName('args.__comboType', undefined); form.setValueByName('args.__valueInput', undefined); form.setValueByName('args.__containerType', undefined); + if (SELECT_PROPS_CONTAINER.includes(rendererType)) { form.setValueByName( '__setValueDs', @@ -739,7 +777,10 @@ export const getOldActionSchema = ( name: 'dialog', pipeIn: defaultValue({ title: '弹框标题', - body: '

    对,你刚刚点击了

    ' + body: '

    对,你刚刚点击了

    ', + showCloseButton: true, + showErrorMsg: true, + showLoading: true }), asFormItem: true, children: ({value, onChange, data}: any) => @@ -949,6 +990,31 @@ export const getOldActionSchema = ( }; }; +/** + * 对象转Combo组件对象数组 + * @param obj + * @returns + */ +const objectToComboArray = (obj: PlainObject) => + Object.entries(obj).map(([key, val]) => ({ + key, + val + })); + +/** + * Combo组件对象数组转对象 + * @param arr + * @returns + */ +const comboArrayToObject = (arr: any[]) => { + let obj: PlainObject = {}; + arr?.forEach(item => { + obj[item.key] = item.val; + }); + + return obj; +}; + /** * 获取事件动作面板所需属性配置 */ @@ -1068,30 +1134,30 @@ export const getEventControlConfig = ( ) => { let config = {...action}; - if (['setValue', 'url'].includes(action.actionType) && action.args) { - const prop = action.actionType === 'setValue' ? 'value' : 'params'; + if (['link', 'url'].includes(action.actionType) && action.args?.params) { + config.args = { + ...config.args, + params: objectToComboArray(action.args?.params) + }; + } + + if (['setValue'].includes(action.actionType) && action.args?.value) { !config.args && (config.args = {}); - if (Array.isArray(action.args[prop])) { - config.args[prop] = action.args[prop].reduce( + if (Array.isArray(action.args?.value)) { + config.args.value = action.args?.value.reduce( (arr: any, valueItem: any, index: number) => { if (!arr[index]) { arr[index] = {}; } - arr[index].item = Object.entries(valueItem).map(([key, val]) => ({ - key, - val - })); + arr[index].item = objectToComboArray(valueItem); return arr; }, [] ); // 目前只有给combo赋值会是数组,所以认为是全量的赋值方式 config.args['__comboType'] = 'all'; - } else if (typeof action.args[prop] === 'object') { - config.args[prop] = Object.keys(action.args[prop]).map(key => ({ - key, - val: action.args?.[prop][key] - })); + } else if (typeof action.args?.value === 'object') { + config.args.value = objectToComboArray(action.args?.value); config.args['__containerType'] = 'appoint'; // 如果有index,认为是给指定序号的combo赋值,所以认为是指定序号的赋值方式 if (action.args.index !== undefined) { @@ -1099,19 +1165,21 @@ export const getEventControlConfig = ( } } else if ( action.actionType === 'setValue' && - typeof action.args[prop] === 'string' + typeof action.args?.value === 'string' ) { config.args['__containerType'] = 'all'; config.args['__valueInput'] = config.args['value']; delete config.args?.value; } } + if ( action.actionType === 'ajax' && typeof action?.args?.api === 'string' ) { action.args.api = normalizeApi(action?.args?.api); } + // 获取动作专有配置参数 const innerArgs: any = getPropOfAcion( action, @@ -1120,6 +1188,43 @@ export const getEventControlConfig = ( manager.pluginActions, commonActions ); + + // 处理刷新组件动作的追加参数 + if (config.actionType === 'reload') { + config.__resetPage = config.args?.resetPage; + config.__addParam = config.data === undefined || !!config.data; + config.__customData = !!config.data; + + if ( + (config.data && typeof config.data === 'object') || + (config.args && + !Object.keys(config.args).length && + config.data === undefined) + ) { + config.__customData = true; + config.__containerType = 'appoint'; + config.dataMergeMode = 'override'; + } + + if (config.__addParam && config.__customData && config.data) { + if (typeof config.data === 'string') { + config.__containerType = 'all'; + config.__valueInput = config.data; + } else { + config.__containerType = 'appoint'; + config.__reloadParams = objectToComboArray(config.data); + } + } else if ( + config.args && + !Object.keys(config.args).length && + config.data === undefined + ) { + config.__reloadParams = objectToComboArray(config.args); + } + } + + delete config.data; + // 还原args为可视化配置结构(args + addOnArgs) if (config.args) { if (innerArgs) { @@ -1172,7 +1277,7 @@ export const getEventControlConfig = ( ? [ ...variables.eventVariables, { - label: `数据来源变量`, + label: '数据来源变量', children: datasource }, ...variables.rawVariables @@ -1211,17 +1316,50 @@ export const getEventControlConfig = ( }); delete action.addOnArgs; } + + // 刷新组件时,处理是否追加事件变量 + if (config.actionType === 'reload') { + action.data = null; + action.dataMergeMode = undefined; + + action.args = + action.__rendererName === 'crud' + ? { + ...action.args, + resetPage: config.__resetPage ?? true + } + : undefined; + + if (config.__addParam) { + action.dataMergeMode = config.dataMergeMode || 'merge'; + action.data = undefined; + if (config.__customData) { + action.data = + config.__containerType === 'all' + ? config.__valueInput + : comboArrayToObject(config.__reloadParams || []); + } + } + } + // 转换下格式 - if (['setValue', 'url'].includes(action.actionType)) { - const propName = action.actionType === 'setValue' ? 'value' : 'params'; - if ( - action.actionType === 'setValue' && - config.args?.__valueInput !== undefined - ) { + if (['link', 'url'].includes(action.actionType)) { + const params = config.args?.params; + if (params && params.length) { + action.args = { + ...action.args, + params: comboArrayToObject(params) + }; + } + } + + // 转换下格式 + if (action.actionType === 'setValue') { + if (config.args?.__valueInput !== undefined) { action.args = { value: config.args?.__valueInput }; - } else if (Array.isArray(config.args?.[propName])) { + } else if (Array.isArray(config.args?.value)) { action.args = action.args ?? {}; if ( action.__rendererName === 'combo' && @@ -1229,7 +1367,7 @@ export const getEventControlConfig = ( ) { // combo特殊处理 let tempArr: any = []; - config.args?.[propName].forEach((valueItem: any, index: number) => { + config.args?.value.forEach((valueItem: any, index: number) => { valueItem.item.forEach((item: any) => { if (!tempArr[index]) { tempArr[index] = {}; @@ -1239,16 +1377,12 @@ export const getEventControlConfig = ( }); action.args = { ...action.args, - [propName]: tempArr + value: tempArr }; } else { - let tmpObj: any = {}; - config.args?.[propName].forEach((item: any) => { - tmpObj[item.key] = item.val; - }); action.args = { ...action.args, - [propName]: tmpObj + value: comboArrayToObject(config.args?.value!) }; } } @@ -1256,11 +1390,6 @@ export const getEventControlConfig = ( delete action.config; - // 去掉空参 - if (action.args && !Object.keys(action.args).length) { - delete action.args; - } - return action; } }; diff --git a/packages/amis-editor/src/renderer/event-control/index.tsx b/packages/amis-editor/src/renderer/event-control/index.tsx index 2800915ed..1367c0204 100644 --- a/packages/amis-editor/src/renderer/event-control/index.tsx +++ b/packages/amis-editor/src/renderer/event-control/index.tsx @@ -11,6 +11,7 @@ import { findSubActionNode, getActionType, getEventDesc, + getEventStrongDesc, getEventLabel, getPropOfAcion, SELECT_PROPS_CONTAINER @@ -29,6 +30,7 @@ import { SubRendererPluginAction } from 'amis-editor-core'; export * from './helper'; +import {i18n as _i18n} from 'i18n-runtime'; interface EventControlProps extends FormControlProps { actions: PluginActions; // 组件的动作列表 @@ -414,7 +416,8 @@ export class EventControl extends React.Component< > ) { const {events, onEvent} = this.state; - const {actionTree, pluginActions, commonActions} = this.props; + const {actionTree, pluginActions, commonActions, allComponents} = + this.props; // 收集当前事件已有ajax动作的请求返回结果作为事件变量 let oldActions = onEvent[activeData.actionData!.eventKey].actions; if (activeData.type === 'update') { @@ -430,14 +433,16 @@ export class EventControl extends React.Component< 'actionLabel', actionTree, pluginActions, - commonActions + commonActions, + allComponents ); const dataSchemaJson = getPropOfAcion( item, 'outputVarDataSchema', actionTree, pluginActions, - commonActions + commonActions, + allComponents ); const dataSchema = new DataSchema(dataSchemaJson || []); return { @@ -511,20 +516,23 @@ export class EventControl extends React.Component< item => item.value === action.componentId ); + // 获取组件数据动作所需上下文 let setValueDs: any = null; - if (actionConfig?.actionType === 'setValue') { - const rendererType = node?.type; - const rendererName = node?.label; - // todo:这里会闪一下,需要从amis查下问题 - if (SELECT_PROPS_CONTAINER.includes(rendererType || '')) { - const curVariable = rawVariables.find( - item => item.label === `${rendererName}变量` - ); - setValueDs = curVariable?.children?.filter( - (item: ContextVariables) => item.value !== '$$id' - ); - } + if ( + actionConfig?.actionType === 'setValue' && + node?.id && + SELECT_PROPS_CONTAINER.includes(node?.type || '') + ) { + const targetDataSchema: any = await getContextSchemas?.(node.id, true); + const targetDataSchemaIns = new DataSchema(targetDataSchema || []); + const targetVariables = + targetDataSchemaIns?.getDataPropsAsOptions() || []; + + setValueDs = targetVariables?.filter( + (item: ContextVariables) => item.value !== '$$id' + ); } + data.actionData = { eventKey: data.actionData!.eventKey, actionIndex: data.actionData!.actionIndex, @@ -570,14 +578,16 @@ export class EventControl extends React.Component< actions: pluginActions, actionTree, commonActions, - getComponents + getComponents, + allComponents } = this.props; const desc = getPropOfAcion( action, 'descDetail', actionTree, pluginActions, - commonActions + commonActions, + allComponents ); let info = {...action}; // 根据子动作类型获取动作树节点的配置 @@ -613,8 +623,9 @@ export class EventControl extends React.Component< } else if (type === 'update') { this.updateAction?.(config.eventKey, config.actionIndex, action); } - this.setState({actionData: undefined}); + this.setState({showAcionDialog: false}); + this.setState({actionData: undefined}); } @autobind @@ -628,6 +639,7 @@ export class EventControl extends React.Component< actions: pluginActions, commonActions, getComponents, + allComponents, render } = this.props; const { @@ -650,27 +662,33 @@ export class EventControl extends React.Component< 'no-bd-btm': !eventKeys.length })} > - {render('dropdown', { - type: 'dropdown-button', - level: 'enhance', - label: '添加事件', - disabled: false, - className: 'block w-full add-event-dropdown', - closeOnClick: true, - buttons: events.map(item => ({ - type: 'button', - disabledTip: '您已添加该事件', - tooltipPlacement: 'left', - disabled: Object.keys(onEvent).includes(item.eventName), - actionType: '', - label: item.eventLabel, - onClick: this.addEvent.bind( - this, - item, - Object.keys(onEvent).includes(item.eventName) - ) - })) - })} + {render( + 'dropdown', + { + type: 'dropdown-button', + level: 'enhance', + label: '添加事件', + disabled: false, + className: 'block w-full add-event-dropdown', + closeOnClick: true, + buttons: events.map(item => ({ + type: 'button', + disabledTip: '您已添加该事件', + tooltipPlacement: 'left', + disabled: Object.keys(onEvent).includes(item.eventName), + actionType: '', + label: item.eventLabel, + onClick: this.addEvent.bind( + this, + item, + Object.keys(onEvent).includes(item.eventName) + ) + })) + }, + { + popOverContainer: null // amis 渲染挂载节点会使用 this.target + } + )}
      (
      - {getEventDesc(events, eventKey) || eventKey} + {getEventDesc(events, eventKey) || + getEventStrongDesc(events, eventKey) || + eventKey}
      ) }} @@ -732,6 +753,17 @@ export class EventControl extends React.Component<
    + {getEventStrongDesc(events, eventKey) + ? render('alert', { + type: 'alert', + body: + '温馨提示:' + getEventStrongDesc(events, eventKey), + level: 'info', + showCloseButton: true, + showIcon: true, + className: 'event-item-desc' + }) + : null} {enventSnapshot[eventKey].actions.length && eventPanelActive[eventKey] ? (
      @@ -756,7 +788,8 @@ export class EventControl extends React.Component< 'actionLabel', actionTree, pluginActions, - commonActions + commonActions, + allComponents ) || action.actionType} @@ -807,7 +840,8 @@ export class EventControl extends React.Component< }) ) : (
      - 快去添加事件,让你的产品动起来吧 + {/* 翻译未生效,临时方案 */} + {_i18n('4db5110d41293fef57f5a1f364187896')}
      )}
    diff --git a/packages/amis-editor/src/renderer/event-control/types.ts b/packages/amis-editor/src/renderer/event-control/types.ts index e6611a8cf..d34b30e38 100644 --- a/packages/amis-editor/src/renderer/event-control/types.ts +++ b/packages/amis-editor/src/renderer/event-control/types.ts @@ -21,6 +21,7 @@ export interface ComponentInfo { disabled?: boolean; actions?: RendererPluginAction[]; // 动作集 children?: ComponentInfo[]; + id: string; } export interface ContextVariables { diff --git a/packages/amis-editor/src/renderer/style-control/Border.tsx b/packages/amis-editor/src/renderer/style-control/Border.tsx index 80a888ed6..593b55144 100644 --- a/packages/amis-editor/src/renderer/style-control/Border.tsx +++ b/packages/amis-editor/src/renderer/style-control/Border.tsx @@ -237,7 +237,8 @@ function BoxBorder({ placeholder: '边框颜色', clearable: true, value: value[getKey('border', 'color')], - inputClassName: 'ae-border-colorpicker' + inputClassName: 'ae-border-colorpicker', + label: false, }, { onChange: changeItem('border', 'color') diff --git a/packages/amis-editor/src/tpl/api.tsx b/packages/amis-editor/src/tpl/api.tsx index 4e94c070e..312396eea 100644 --- a/packages/amis-editor/src/tpl/api.tsx +++ b/packages/amis-editor/src/tpl/api.tsx @@ -34,7 +34,7 @@ setSchemaTpl('api', (patch: any = {}) => { placement: 'left' } : undefined, - option: `高级配置`, + option: '高级配置', name: name || 'api', mode: 'inline', className: 'w-full m-b-sm', @@ -428,7 +428,7 @@ setSchemaTpl('apiControl', (patch: any = {}) => { return { type: 'ae-apiControl', label, - name, + name: name || 'api', description, labelRemark: sampleBuilder ? { diff --git a/packages/amis-editor/src/tpl/common.tsx b/packages/amis-editor/src/tpl/common.tsx index ca685f00f..4f268c1a0 100644 --- a/packages/amis-editor/src/tpl/common.tsx +++ b/packages/amis-editor/src/tpl/common.tsx @@ -82,13 +82,7 @@ setSchemaTpl( }) => ({ label: '布局', name: 'mode', - type: 'button-group-select', - option: '继承', - horizontal: { - left: 2, - justify: true - }, - // className: 'w-full', + type: 'select', pipeIn: defaultValue(''), options: [ { @@ -216,7 +210,7 @@ setSchemaTpl( type: 'tabs', tabsMode: 'line', // tiled className: 'editor-prop-config-tabs', - linksClassName: 'editor-prop-config-tabs-links', + linksClassName: 'editor-prop-config-tabs-links aa', contentClassName: 'no-border editor-prop-config-tabs-cont hoverShowScrollBar', tabs: config @@ -519,9 +513,8 @@ setSchemaTpl('expression', { setSchemaTpl('icon', { label: '图标', - type: 'icon-picker', + type: 'icon-select', name: 'icon', - className: 'fix-icon-picker-overflow', placeholder: '点击选择图标', clearable: true, description: '' @@ -596,12 +589,17 @@ setSchemaTpl('className', (schema: any) => { */ setSchemaTpl('combo-container', (config: SchemaObject) => { if (isObject(config)) { - const itemsWrapperClassName = - ['input-kv', 'combo'].includes((config as any).type) && - 'ae-Combo-items ' + ((config as any).itemsWrapperClassName ?? ''); + let itemsWrapperClassName; + let itemClassName; + if (['input-kv', 'combo'].includes((config as any).type)) { + itemsWrapperClassName = + 'ae-Combo-items ' + ((config as any).itemsWrapperClassName ?? ''); + itemClassName = 'ae-Combo-item ' + ((config as any).itemClassName ?? ''); + } return { ...(config as any), - ...(itemsWrapperClassName ? {itemsWrapperClassName} : {}) + ...(itemsWrapperClassName ? {itemsWrapperClassName} : {}), + ...(itemClassName ? {itemClassName} : {}) }; } return config; @@ -612,12 +610,20 @@ setSchemaTpl('combo-container', (config: SchemaObject) => { */ setSchemaTpl( 'status', - (config: {isFormItem?: boolean; readonly?: boolean; disabled?: boolean}) => { + (config: { + isFormItem?: boolean; + readonly?: boolean; + disabled?: boolean; + unsupportStatic?: boolean; + }) => { return { title: '状态', body: [ getSchemaTpl('newVisible'), getSchemaTpl('hidden'), + !config?.unsupportStatic && config?.isFormItem + ? getSchemaTpl('static') + : null, config?.readonly ? getSchemaTpl('readonly') : null, config?.disabled || config?.isFormItem ? getSchemaTpl('disabled') @@ -690,6 +696,15 @@ setSchemaTpl('visible', { expressionName: 'visibleOn' }); + +setSchemaTpl('static', { + type: 'ae-StatusControl', + label: '静态展示', + mode: 'normal', + name: 'static', + expressionName: 'staticOn' +}); + // 新版配置面板兼容 [可见] 状态 setSchemaTpl('newVisible', { type: 'ae-StatusControl', @@ -1041,42 +1056,49 @@ setSchemaTpl('app-page', { }); setSchemaTpl('app-page-args', { - type: 'ae-DataMappingControl', + type: 'combo', name: 'params', label: '页面参数', - schema: {type: 'object', properties: {}}, - mode: 'horizontal' + multiple: true, + removable: true, + addable: true, + strictMode: false, + canAccessSuperData: true, + size: 'lg', + mode: 'horizontal', + items: [ + { + name: 'key', + type: 'input-text', + placeholder: '参数名', + source: '${__pageInputSchema}', + labelField: 'label', + valueField: 'value', + required: true + }, + { + name: 'val', + type: 'input-formula', + placeholder: '参数值', + variables: '${variables}', + evalMode: false, + variableMode: 'tabs', + inputMode: 'input-group' + } + ] }); setSchemaTpl( 'iconLink', (schema: {name: 'icon' | 'rightIcon'; visibleOn: boolean}) => { const {name, visibleOn} = schema; - return { + return getSchemaTpl('icon', { name: name, visibleOn, label: '图标', - type: 'icon-picker', - className: 'fix-icon-picker-overflow', placeholder: '点击选择图标', clearable: true, description: '' - }; + }); } -); - -setSchemaTpl( - 'iconLink', - (schema: {name: 'icon' | 'rightIcon'; visibleOn: boolean}) => { - const {name, visibleOn} = schema; - return { - name: name, - visibleOn, - label: '图标', - type: 'icon-picker', - placeholder: '点击选择图标', - clearable: true, - description: '' - }; - } -); +); \ No newline at end of file diff --git a/packages/amis-editor/src/tpl/horizontal.tsx b/packages/amis-editor/src/tpl/horizontal.tsx index 1583be9cc..a9d5913c6 100644 --- a/packages/amis-editor/src/tpl/horizontal.tsx +++ b/packages/amis-editor/src/tpl/horizontal.tsx @@ -63,7 +63,7 @@ setSchemaTpl( (config: {visibleOn: string; [propName: string]: any}) => { return [ { - type: 'button-group-select', + type: 'select', label: '标题宽度', name: 'horizontal', options: [ diff --git a/packages/amis-editor/src/tpl/options.tsx b/packages/amis-editor/src/tpl/options.tsx index 4cd7aae5b..cf2932759 100644 --- a/packages/amis-editor/src/tpl/options.tsx +++ b/packages/amis-editor/src/tpl/options.tsx @@ -213,6 +213,7 @@ setSchemaTpl('addApi', () => { return getSchemaTpl('apiControl', { label: '新增接口', name: 'addApi', + mode: 'row', visibleOn: 'data.creatable' }); }); @@ -238,6 +239,7 @@ setSchemaTpl('editApi', () => getSchemaTpl('apiControl', { label: '编辑接口', name: 'editApi', + mode: 'row', visibleOn: 'data.editable' }) ); @@ -256,6 +258,7 @@ setSchemaTpl('deleteApi', () => getSchemaTpl('apiControl', { label: '删除接口', name: 'deleteApi', + mode: 'row', visibleOn: 'data.removable' }) ); diff --git a/packages/amis-editor/src/tpl/style.tsx b/packages/amis-editor/src/tpl/style.tsx index 64dbea514..42b0f7a1a 100644 --- a/packages/amis-editor/src/tpl/style.tsx +++ b/packages/amis-editor/src/tpl/style.tsx @@ -18,8 +18,16 @@ setSchemaTpl('style:formItem', ({renderer, schema}: any) => { setSchemaTpl( 'style:classNames', - (config: {schema: SchemaCollection; isFormItem: boolean}) => { - const {isFormItem = true, schema = []} = config || {}; + (config: { + schema: SchemaCollection; + isFormItem: boolean; + unsupportStatic?: boolean; + }) => { + const { + isFormItem = true, + unsupportStatic = false, + schema = [] + } = config || {}; return { title: 'CSS 类名', @@ -35,7 +43,13 @@ setSchemaTpl( getSchemaTpl('className', { label: '控件', name: 'inputClassName' - }) + }), + ...unsupportStatic ? [] : [ + getSchemaTpl('className', { + label: '表单项静态', + name: 'staticClassName' + }) + ] ] : [ getSchemaTpl('className', { diff --git a/packages/amis-editor/src/tpl/validations.tsx b/packages/amis-editor/src/tpl/validations.tsx index f4a7f048d..a24de4246 100644 --- a/packages/amis-editor/src/tpl/validations.tsx +++ b/packages/amis-editor/src/tpl/validations.tsx @@ -521,6 +521,7 @@ setSchemaTpl('submitOnChange', { setSchemaTpl('validateOnChange', { type: 'select', name: 'validateOnChange', + overlayPlacement: 'top', label: '校验触发', options: [ { diff --git a/packages/amis-editor/tsconfig.json b/packages/amis-editor/tsconfig.json index c4fc36ae9..276f20046 100644 --- a/packages/amis-editor/tsconfig.json +++ b/packages/amis-editor/tsconfig.json @@ -9,6 +9,6 @@ "../../node_modules/@types" ] }, - "include": ["src/**/*", "../amis-editor-core/src/builder"], + "include": ["src/**/*"], "references": [] }