amis 1.9.1-beta.12 → 1.9.1-beta.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. package/README.md +1 -1
  2. package/lib/components/Select.js +2 -2
  3. package/lib/components/Select.js.map +2 -2
  4. package/lib/components/formula/Editor.d.ts +44 -40
  5. package/lib/components/formula/Editor.js +16 -5
  6. package/lib/components/formula/Editor.js.map +2 -2
  7. package/lib/components/formula/Picker.d.ts +88 -41
  8. package/lib/components/formula/Picker.js +50 -24
  9. package/lib/components/formula/Picker.js.map +2 -2
  10. package/lib/components/table/HeadCellFilter.js +4 -1
  11. package/lib/components/table/HeadCellFilter.js.map +2 -2
  12. package/lib/components/table/HeadCellSort.js +30 -24
  13. package/lib/components/table/HeadCellSort.js.map +2 -2
  14. package/lib/components/table/index.d.ts +6 -3
  15. package/lib/components/table/index.js +72 -86
  16. package/lib/components/table/index.js.map +2 -2
  17. package/lib/index.js +1 -1
  18. package/lib/locale/zh-CN.js +1 -1
  19. package/lib/locale/zh-CN.js.map +2 -2
  20. package/lib/renderers/Action.d.ts +21 -4
  21. package/lib/renderers/Action.js +44 -20
  22. package/lib/renderers/Action.js.map +2 -2
  23. package/lib/renderers/Breadcrumb.js +2 -2
  24. package/lib/renderers/Breadcrumb.js.map +2 -2
  25. package/lib/renderers/CRUD.js +3 -0
  26. package/lib/renderers/CRUD.js.map +2 -2
  27. package/lib/renderers/Form/InputFormula.d.ts +6 -2
  28. package/lib/renderers/Form/InputFormula.js +4 -3
  29. package/lib/renderers/Form/InputFormula.js.map +2 -2
  30. package/lib/renderers/Form/InputTree.d.ts +4 -0
  31. package/lib/renderers/Form/InputTree.js +2 -2
  32. package/lib/renderers/Form/InputTree.js.map +2 -2
  33. package/lib/renderers/Form/Picker.d.ts +1 -1
  34. package/lib/renderers/Form/Picker.js +38 -23
  35. package/lib/renderers/Form/Picker.js.map +2 -2
  36. package/lib/renderers/Form/wrapControl.js +10 -10
  37. package/lib/renderers/Form/wrapControl.js.map +2 -2
  38. package/lib/renderers/Service.js +0 -1
  39. package/lib/renderers/Service.js.map +2 -2
  40. package/lib/renderers/Steps.d.ts +2 -2
  41. package/lib/renderers/Steps.js +1 -1
  42. package/lib/renderers/Steps.js.map +2 -2
  43. package/lib/renderers/Table/index.js +2 -1
  44. package/lib/renderers/Table/index.js.map +2 -2
  45. package/lib/renderers/Table-v2/HeadCellSearchDropdown.d.ts +1 -1
  46. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +38 -24
  47. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js.map +2 -2
  48. package/lib/renderers/Table-v2/index.d.ts +10 -4
  49. package/lib/renderers/Table-v2/index.js +109 -58
  50. package/lib/renderers/Table-v2/index.js.map +2 -2
  51. package/lib/renderers/Tabs.d.ts +6 -2
  52. package/lib/renderers/Tabs.js +21 -0
  53. package/lib/renderers/Tabs.js.map +2 -2
  54. package/lib/store/table-v2.d.ts +210 -4
  55. package/lib/store/table-v2.js +82 -5
  56. package/lib/store/table-v2.js.map +2 -2
  57. package/lib/themes/ang-ie11.css +59 -17
  58. package/lib/themes/ang.css +54 -12
  59. package/lib/themes/ang.css.map +1 -1
  60. package/lib/themes/antd-ie11.css +59 -17
  61. package/lib/themes/antd.css +54 -12
  62. package/lib/themes/antd.css.map +1 -1
  63. package/lib/themes/cxd-ie11.css +210 -168
  64. package/lib/themes/cxd.css +55 -13
  65. package/lib/themes/cxd.css.map +1 -1
  66. package/lib/themes/dark-ie11.css +59 -17
  67. package/lib/themes/dark.css +54 -12
  68. package/lib/themes/dark.css.map +1 -1
  69. package/lib/themes/default-ie11.css +210 -168
  70. package/lib/themes/default.css +55 -13
  71. package/lib/themes/default.css.map +1 -1
  72. package/lib/types.d.ts +1 -1
  73. package/lib/types.js.map +1 -1
  74. package/lib/utils/formula.js +4 -3
  75. package/lib/utils/formula.js.map +2 -2
  76. package/package.json +2 -2
  77. package/schema.json +22 -14
  78. package/scss/components/_formula.scss +45 -4
  79. package/scss/components/_modal.scss +1 -1
  80. package/scss/components/form/_checks.scss +47 -44
  81. package/scss/components/form/_icon-picker.scss +10 -6
  82. package/scss/components/form/_select.scss +3 -2
  83. package/scss/components/form/_switch.scss +1 -0
  84. package/scss/components/form/_text.scss +2 -0
  85. package/scss/themes/_cxd-variables.scss +1 -1
  86. package/sdk/ang-ie11.css +66 -17
  87. package/sdk/ang.css +61 -12
  88. package/sdk/antd-ie11.css +66 -17
  89. package/sdk/antd.css +61 -12
  90. package/sdk/barcode.js +51 -51
  91. package/sdk/charts.js +14 -14
  92. package/sdk/codemirror.js +7 -7
  93. package/sdk/color-picker.js +65 -65
  94. package/sdk/cropperjs.js +2 -2
  95. package/sdk/cxd-ie11.css +217 -168
  96. package/sdk/cxd.css +62 -13
  97. package/sdk/dark-ie11.css +66 -17
  98. package/sdk/dark.css +61 -12
  99. package/sdk/exceljs.js +1 -1
  100. package/sdk/markdown.js +69 -69
  101. package/sdk/papaparse.js +1 -1
  102. package/sdk/renderers/Form/CityDB.js +1 -1
  103. package/sdk/rest.js +16 -16
  104. package/sdk/rich-text.js +62 -62
  105. package/sdk/sdk-ie11.css +217 -168
  106. package/sdk/sdk.css +62 -13
  107. package/sdk/sdk.js +1342 -1338
  108. package/sdk/thirds/hls.js/hls.js +1 -1
  109. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  110. package/sdk/tinymce.js +57 -57
  111. package/src/components/Select.tsx +3 -6
  112. package/src/components/formula/Editor.tsx +51 -23
  113. package/src/components/formula/Picker.tsx +68 -12
  114. package/src/components/table/HeadCellFilter.tsx +4 -1
  115. package/src/components/table/HeadCellSort.tsx +1 -1
  116. package/src/components/table/index.tsx +66 -90
  117. package/src/locale/zh-CN.ts +1 -1
  118. package/src/renderers/Action.tsx +64 -19
  119. package/src/renderers/Breadcrumb.tsx +11 -12
  120. package/src/renderers/CRUD.tsx +2 -0
  121. package/src/renderers/Form/InputFormula.tsx +11 -3
  122. package/src/renderers/Form/InputTree.tsx +7 -0
  123. package/src/renderers/Form/Picker.tsx +11 -1
  124. package/src/renderers/Form/wrapControl.tsx +10 -10
  125. package/src/renderers/Service.tsx +0 -1
  126. package/src/renderers/Steps.tsx +5 -5
  127. package/src/renderers/Table/index.tsx +9 -7
  128. package/src/renderers/Table-v2/HeadCellSearchDropdown.tsx +14 -9
  129. package/src/renderers/Table-v2/index.tsx +130 -58
  130. package/src/renderers/Tabs.tsx +33 -3
  131. package/src/store/table-v2.ts +104 -7
  132. package/src/types.ts +2 -1
  133. package/src/utils/formula.ts +5 -3
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/InputFormula.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {parse, Evaluator} from 'amis-formula';\nimport FormItem, {FormBaseControl, FormControlProps} from './Item';\nimport FormulaPicker from '../../components/formula/Picker';\nimport {autobind} from '../../utils/helper';\n\nimport type {FuncGroup, VariableItem} from '../../components/formula/Editor';\nimport type {SchemaIcon} from '../../Schema';\nimport {\n isPureVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\n\n/**\n * InputFormula 公式编辑器\n * 文档:https://baidu.gitee.io/amis/zh-CN/components/form/input-formula\n */\nexport interface InputFormulaControlSchema extends FormBaseControl {\n type: 'input-formula';\n\n /**\n * evalMode 即直接就是表达式,否则\n * 需要 ${这里面才是表达式}\n * 默认为 true\n */\n evalMode?: boolean;\n\n /**\n * 用于提示的变量集合,默认为空\n */\n variables: Array<VariableItem>;\n\n /**\n * 变量展现模式,可选值:'tabs' | 'tree'\n */\n variableMode?: 'tabs' | 'tree';\n\n /**\n * 函数集合,默认不需要传,即 amis-formula 里面那个函数\n * 如果有扩充,则需要传。\n */\n functions: Array<FuncGroup>;\n\n /**\n * 编辑器标题\n */\n title?: string;\n\n /**\n * 顶部标题,默认为表达式\n */\n header: string;\n\n /**\n * 控件模式\n */\n inputMode?: 'button' | 'input-button';\n\n /**\n * 外层input是否允许输入,否需要点击fx在弹窗中输入\n */\n allowInput?: boolean;\n\n /**\n * 按钮图标\n */\n icon?: SchemaIcon;\n\n /**\n * 按钮Label,inputMode为button时生效\n */\n btnLabel?: string;\n\n /**\n * 按钮样式\n */\n level?:\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'link'\n | 'primary'\n | 'dark'\n | 'light';\n\n /**\n * 按钮大小\n */\n btnSize?: 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 输入框占位符\n */\n placeholder?: string;\n\n /**\n * 变量面板CSS样式类名\n */\n variableClassName?: string;\n\n /**\n * 函数面板CSS样式类名\n */\n functionClassName?: string;\n}\n\nexport interface InputFormulaProps\n extends FormControlProps,\n Omit<\n InputFormulaControlSchema,\n 'options' | 'inputClassName' | 'className' | 'descriptionClassName'\n > {}\n\n@FormItem({\n type: 'input-formula'\n})\nexport class InputFormulaRenderer extends React.Component<InputFormulaProps> {\n static defaultProps: Pick<\n InputFormulaControlSchema,\n 'inputMode' | 'borderMode' | 'evalMode'\n > = {\n inputMode: 'input-button',\n borderMode: 'full',\n evalMode: true\n };\n\n ref: any;\n\n @autobind\n formulaRef(ref: any) {\n if (ref) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n this.ref = ref;\n } else {\n this.ref = undefined;\n }\n }\n\n validate() {\n const {translate: __, value} = this.props;\n\n if (this.ref?.validate) {\n const res = this.ref.validate(value);\n if (res !== true) {\n return __('FormulaEditor.invalidData', {err: res});\n }\n }\n }\n\n render() {\n let {\n selectedOptions,\n disabled,\n onChange,\n evalMode,\n variableMode,\n header,\n label,\n value,\n clearable,\n className,\n classPrefix: ns,\n classnames: cx,\n allowInput = true,\n borderMode,\n placeholder,\n inputMode,\n btnLabel,\n level,\n btnSize,\n icon,\n title,\n variableClassName,\n functionClassName,\n data,\n onPickerOpen\n } = this.props;\n let {variables, functions} = this.props;\n\n if (isPureVariable(variables)) {\n // 如果 variables 是 ${xxx} 这种形式,将其处理成实际的值\n variables = resolveVariableAndFilter(variables, this.props.data, '| raw');\n }\n\n if (isPureVariable(functions)) {\n // 如果 functions 是 ${xxx} 这种形式,将其处理成实际的值\n functions = resolveVariableAndFilter(functions, this.props.data, '| raw');\n }\n\n return (\n <FormulaPicker\n ref={this.formulaRef}\n className={className}\n value={value}\n disabled={disabled}\n allowInput={allowInput}\n onChange={onChange}\n evalMode={evalMode}\n variables={variables}\n variableMode={variableMode}\n functions={functions}\n header={header || label || ''}\n borderMode={borderMode}\n placeholder={placeholder}\n mode={inputMode}\n btnLabel={btnLabel}\n level={level}\n btnSize={btnSize}\n icon={icon}\n title={title}\n clearable={clearable}\n variableClassName={variableClassName}\n functionClassName={functionClassName}\n data={data}\n onPickerOpen={onPickerOpen}\n />\n );\n }\n}\n"
11
+ "import React from 'react';\nimport {parse, Evaluator} from 'amis-formula';\nimport FormItem, {FormBaseControl, FormControlProps} from './Item';\nimport FormulaPicker from '../../components/formula/Picker';\nimport {autobind} from '../../utils/helper';\n\nimport type {FuncGroup, VariableItem} from '../../components/formula/Editor';\nimport type {SchemaIcon} from '../../Schema';\nimport {\n isPureVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\n\n/**\n * InputFormula 公式编辑器\n * 文档:https://baidu.gitee.io/amis/zh-CN/components/form/input-formula\n */\nexport interface InputFormulaControlSchema extends FormBaseControl {\n type: 'input-formula';\n\n /**\n * evalMode 即直接就是表达式,否则\n * 需要 ${这里面才是表达式}\n * 默认为 true\n */\n evalMode?: boolean;\n\n /**\n * 用于提示的变量集合,默认为空\n */\n variables: Array<VariableItem>;\n\n /**\n * 变量展现模式,可选值:'tabs' | 'tree'\n */\n variableMode?: 'tabs' | 'tree';\n\n /**\n * 函数集合,默认不需要传,即 amis-formula 里面那个函数\n * 如果有扩充,则需要传。\n */\n functions: Array<FuncGroup>;\n\n /**\n * 编辑器标题\n */\n title?: string;\n\n /**\n * 顶部标题,默认为表达式\n */\n header: string;\n\n /**\n * 控件模式\n */\n inputMode?: 'button' | 'input-button' | 'input-group';\n\n /**\n * 外层input是否允许输入,否需要点击fx在弹窗中输入\n */\n allowInput?: boolean;\n\n /**\n * 按钮图标\n */\n icon?: SchemaIcon;\n\n /**\n * 按钮Label,inputMode为button时生效\n */\n btnLabel?: string;\n\n /**\n * 按钮样式\n */\n level?:\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'link'\n | 'primary'\n | 'dark'\n | 'light';\n\n /**\n * 按钮大小\n */\n btnSize?: 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 只展示变量,不需要其他面板\n */\n onlyVariable?: boolean;\n\n /**\n * 输入框占位符\n */\n placeholder?: string;\n\n /**\n * 变量面板CSS样式类名\n */\n variableClassName?: string;\n\n /**\n * 函数面板CSS样式类名\n */\n functionClassName?: string;\n}\n\nexport interface InputFormulaProps\n extends FormControlProps,\n Omit<\n InputFormulaControlSchema,\n 'options' | 'inputClassName' | 'className' | 'descriptionClassName'\n > {}\n\n@FormItem({\n type: 'input-formula'\n})\nexport class InputFormulaRenderer extends React.Component<InputFormulaProps> {\n static defaultProps: Pick<\n InputFormulaControlSchema,\n 'inputMode' | 'borderMode' | 'evalMode' | 'onlyVariable'\n > = {\n inputMode: 'input-button',\n borderMode: 'full',\n evalMode: true,\n onlyVariable: false\n };\n\n ref: any;\n\n @autobind\n formulaRef(ref: any) {\n if (ref) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n this.ref = ref;\n } else {\n this.ref = undefined;\n }\n }\n\n validate() {\n const {translate: __, value} = this.props;\n\n if (this.ref?.validate) {\n const res = this.ref.validate(value);\n if (res !== true) {\n return __('FormulaEditor.invalidData', {err: res});\n }\n }\n }\n\n render() {\n let {\n selectedOptions,\n disabled,\n onChange,\n evalMode,\n variableMode,\n onlyVariable,\n header,\n label,\n value,\n clearable,\n className,\n classPrefix: ns,\n classnames: cx,\n allowInput = true,\n borderMode,\n placeholder,\n inputMode,\n btnLabel,\n level,\n btnSize,\n icon,\n title,\n variableClassName,\n functionClassName,\n data,\n onPickerOpen\n } = this.props;\n let {variables, functions} = this.props;\n\n if (isPureVariable(variables)) {\n // 如果 variables 是 ${xxx} 这种形式,将其处理成实际的值\n variables = resolveVariableAndFilter(variables, this.props.data, '| raw');\n }\n\n if (isPureVariable(functions)) {\n // 如果 functions 是 ${xxx} 这种形式,将其处理成实际的值\n functions = resolveVariableAndFilter(functions, this.props.data, '| raw');\n }\n\n return (\n <FormulaPicker\n ref={this.formulaRef}\n className={className}\n value={value}\n disabled={disabled}\n allowInput={allowInput}\n onChange={onChange}\n evalMode={evalMode}\n variables={variables}\n variableMode={variableMode}\n onlyVariable={onlyVariable}\n functions={functions}\n header={header || label || ''}\n borderMode={borderMode}\n placeholder={placeholder}\n mode={inputMode}\n btnLabel={btnLabel}\n level={level}\n btnSize={btnSize}\n icon={icon}\n title={title}\n clearable={clearable}\n variableClassName={variableClassName}\n functionClassName={functionClassName}\n data={data}\n onPickerOpen={onPickerOpen}\n />\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -44,6 +44,10 @@ export interface TreeControlSchema extends FormOptionsControl {
44
44
  * 选父级的时候,是否只把子节点的值包含在内
45
45
  */
46
46
  onlyChildren?: boolean;
47
+ /**
48
+ * 单选时,只运行选择叶子节点
49
+ */
50
+ onlyLeaf?: boolean;
47
51
  /**
48
52
  * 顶级节点是否可以创建子节点
49
53
  */
@@ -59,10 +59,10 @@ var TreeControl = /** @class */ (function (_super) {
59
59
  this.treeRef = ref;
60
60
  };
61
61
  TreeControl.prototype.render = function () {
62
- var _a = this.props, className = _a.className, treeContainerClassName = _a.treeContainerClassName, ns = _a.classPrefix, value = _a.value, enableNodePath = _a.enableNodePath, _b = _a.pathSeparator, pathSeparator = _b === void 0 ? '/' : _b, disabled = _a.disabled, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, placeholder = _a.placeholder, options = _a.options, multiple = _a.multiple, valueField = _a.valueField, initiallyOpen = _a.initiallyOpen, unfoldedLevel = _a.unfoldedLevel, withChildren = _a.withChildren, onlyChildren = _a.onlyChildren, loading = _a.loading, hideRoot = _a.hideRoot, rootLabel = _a.rootLabel, autoCheckChildren = _a.autoCheckChildren, cascade = _a.cascade, rootValue = _a.rootValue, showIcon = _a.showIcon, showRadio = _a.showRadio, showOutline = _a.showOutline, onAdd = _a.onAdd, creatable = _a.creatable, createTip = _a.createTip, addControls = _a.addControls, onEdit = _a.onEdit, editable = _a.editable, editTip = _a.editTip, editControls = _a.editControls, removable = _a.removable, removeTip = _a.removeTip, onDelete = _a.onDelete, rootCreatable = _a.rootCreatable, rootCreateTip = _a.rootCreateTip, labelField = _a.labelField, iconField = _a.iconField, nodePath = _a.nodePath, deferLoad = _a.deferLoad, expandTreeOptions = _a.expandTreeOptions, __ = _a.translate;
62
+ var _a = this.props, className = _a.className, treeContainerClassName = _a.treeContainerClassName, ns = _a.classPrefix, value = _a.value, enableNodePath = _a.enableNodePath, _b = _a.pathSeparator, pathSeparator = _b === void 0 ? '/' : _b, disabled = _a.disabled, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, placeholder = _a.placeholder, options = _a.options, multiple = _a.multiple, valueField = _a.valueField, initiallyOpen = _a.initiallyOpen, unfoldedLevel = _a.unfoldedLevel, withChildren = _a.withChildren, onlyChildren = _a.onlyChildren, onlyLeaf = _a.onlyLeaf, loading = _a.loading, hideRoot = _a.hideRoot, rootLabel = _a.rootLabel, autoCheckChildren = _a.autoCheckChildren, cascade = _a.cascade, rootValue = _a.rootValue, showIcon = _a.showIcon, showRadio = _a.showRadio, showOutline = _a.showOutline, onAdd = _a.onAdd, creatable = _a.creatable, createTip = _a.createTip, addControls = _a.addControls, onEdit = _a.onEdit, editable = _a.editable, editTip = _a.editTip, editControls = _a.editControls, removable = _a.removable, removeTip = _a.removeTip, onDelete = _a.onDelete, rootCreatable = _a.rootCreatable, rootCreateTip = _a.rootCreateTip, labelField = _a.labelField, iconField = _a.iconField, nodePath = _a.nodePath, deferLoad = _a.deferLoad, expandTreeOptions = _a.expandTreeOptions, __ = _a.translate;
63
63
  return (react_1.default.createElement("div", { className: (0, classnames_1.default)("".concat(ns, "TreeControl"), className, treeContainerClassName) },
64
64
  react_1.default.createElement(components_1.Spinner, { size: "sm", key: "info", show: loading }),
65
- loading ? null : (react_1.default.createElement(Tree_1.default, { classPrefix: ns, onRef: this.domRef, labelField: labelField, valueField: valueField, iconField: iconField, disabled: disabled, onChange: this.handleChange, joinValues: joinValues, extractValue: extractValue, delimiter: delimiter, placeholder: __(placeholder), options: options, multiple: multiple, initiallyOpen: initiallyOpen, unfoldedLevel: unfoldedLevel, withChildren: withChildren, onlyChildren: onlyChildren, hideRoot: hideRoot, rootLabel: __(rootLabel), rootValue: rootValue, showIcon: showIcon, showRadio: showRadio, showOutline: showOutline, autoCheckChildren: autoCheckChildren, cascade: cascade, foldedField: "collapsed", value: value || '', nodePath: nodePath, enableNodePath: enableNodePath, pathSeparator: pathSeparator, selfDisabledAffectChildren: false, onAdd: onAdd, creatable: creatable, createTip: createTip, rootCreatable: rootCreatable, rootCreateTip: rootCreateTip, onEdit: onEdit, editable: editable, editTip: editTip, removable: removable, removeTip: removeTip, onDelete: onDelete, bultinCUD: !addControls && !editControls, onDeferLoad: deferLoad, onExpandTree: expandTreeOptions }))));
65
+ loading ? null : (react_1.default.createElement(Tree_1.default, { classPrefix: ns, onRef: this.domRef, labelField: labelField, valueField: valueField, iconField: iconField, disabled: disabled, onChange: this.handleChange, joinValues: joinValues, extractValue: extractValue, delimiter: delimiter, placeholder: __(placeholder), options: options, multiple: multiple, initiallyOpen: initiallyOpen, unfoldedLevel: unfoldedLevel, withChildren: withChildren, onlyChildren: onlyChildren, onlyLeaf: onlyLeaf, hideRoot: hideRoot, rootLabel: __(rootLabel), rootValue: rootValue, showIcon: showIcon, showRadio: showRadio, showOutline: showOutline, autoCheckChildren: autoCheckChildren, cascade: cascade, foldedField: "collapsed", value: value || '', nodePath: nodePath, enableNodePath: enableNodePath, pathSeparator: pathSeparator, selfDisabledAffectChildren: false, onAdd: onAdd, creatable: creatable, createTip: createTip, rootCreatable: rootCreatable, rootCreateTip: rootCreateTip, onEdit: onEdit, editable: editable, editTip: editTip, removable: removable, removeTip: removeTip, onDelete: onDelete, bultinCUD: !addControls && !editControls, onDeferLoad: deferLoad, onExpandTree: expandTreeOptions }))));
66
66
  };
67
67
  TreeControl.defaultProps = {
68
68
  placeholder: 'loading',
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/InputTree.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport cx from 'classnames';\nimport TreeSelector from '../../components/Tree';\nimport {\n FormOptionsControl,\n OptionsControl,\n OptionsControlProps\n} from './Options';\nimport {Spinner} from '../../components';\nimport {SchemaApi} from '../../Schema';\nimport {autobind, createObject} from '../../utils/helper';\nimport {Action} from '../../types';\n\n/**\n * Tree 下拉选择框。\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tree\n */\nexport interface TreeControlSchema extends FormOptionsControl {\n type: 'input-tree';\n\n /**\n * 是否隐藏顶级\n */\n hideRoot?: boolean;\n\n /**\n * 顶级选项的名称\n */\n rootLabel?: string;\n\n /**\n * 顶级选项的值\n */\n rootValue?: any;\n\n /**\n * 显示图标\n */\n showIcon?: boolean;\n\n /**\n * ui级联关系,true代表级联选中,false代表不级联,默认为true\n */\n autoCheckChildren?: boolean;\n\n /**\n * 该属性代表数据级联关系,autoCheckChildren为true时生效,默认为false,具体数据级联关系如下:\n * 1.casacde为false,ui行为为级联选中子节点,子节点禁用;值只包含父节点的值\n * 2.cascade为false,withChildren为true,ui行为为级联选中子节点,子节点禁用;值包含父子节点的值\n * 3.cascade为true,ui行为级联选中子节点,子节点可反选,值包含父子节点的值,此时withChildren属性失效\n * 4.cascade不论为true还是false,onlyChildren为true,ui行为级联选中子节点,子节点可反选,值只包含子节点的值\n */\n cascade?: boolean;\n\n /**\n * 选父级的时候是否把子节点的值也包含在内。\n */\n withChildren?: boolean;\n\n /**\n * 选父级的时候,是否只把子节点的值包含在内\n */\n onlyChildren?: boolean;\n\n /**\n * 顶级节点是否可以创建子节点\n */\n rootCreatable?: boolean;\n\n /**\n * 是否开启节点路径模式\n */\n enableNodePath?: boolean;\n\n /**\n * 开启节点路径模式后,节点路径的分隔符\n */\n pathSeparator?: string;\n\n /**\n * 是否显示展开线\n */\n showOutline?: boolean;\n\n deferApi?: SchemaApi;\n}\n\nexport interface TreeProps\n extends OptionsControlProps,\n Omit<\n TreeControlSchema,\n | 'type'\n | 'options'\n | 'className'\n | 'inputClassName'\n | 'descriptionClassName'\n > {\n enableNodePath?: boolean;\n pathSeparator?: string;\n}\n\nexport default class TreeControl extends React.Component<TreeProps> {\n static defaultProps: Partial<TreeProps> = {\n placeholder: 'loading',\n multiple: false,\n rootLabel: 'Tree.root',\n rootValue: '',\n showIcon: true,\n enableNodePath: false,\n pathSeparator: '/'\n };\n treeRef: any;\n\n reload() {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n\n doAction(action: Action, data: any, throwErrors: boolean) {\n const actionType = action?.actionType as string;\n const {resetValue, onChange} = this.props;\n\n if (actionType === 'clear') {\n onChange?.('');\n } else if (actionType === 'reset') {\n onChange?.(resetValue ?? '');\n } else if (action.actionType === 'expand') {\n this.treeRef.syncUnFolded(this.props, action.args?.openLevel);\n } else if (action.actionType === 'collapse') {\n this.treeRef.syncUnFolded(this.props, 1);\n }\n }\n\n @autobind\n async handleChange(value: any) {\n const {onChange, dispatchEvent, data} = this.props;\n\n const rendererEvent = await dispatchEvent(\n 'change',\n createObject(data, {\n value\n })\n );\n\n if (rendererEvent?.prevented) {\n return;\n }\n\n onChange && onChange(value);\n }\n\n @autobind\n domRef(ref: any) {\n this.treeRef = ref;\n }\n\n render() {\n const {\n className,\n treeContainerClassName,\n classPrefix: ns,\n value,\n enableNodePath,\n pathSeparator = '/',\n disabled,\n joinValues,\n extractValue,\n delimiter,\n placeholder,\n options,\n multiple,\n valueField,\n initiallyOpen,\n unfoldedLevel,\n withChildren,\n onlyChildren,\n loading,\n hideRoot,\n rootLabel,\n autoCheckChildren,\n cascade,\n rootValue,\n showIcon,\n showRadio,\n showOutline,\n onAdd,\n creatable,\n createTip,\n addControls,\n onEdit,\n editable,\n editTip,\n editControls,\n removable,\n removeTip,\n onDelete,\n rootCreatable,\n rootCreateTip,\n labelField,\n iconField,\n nodePath,\n deferLoad,\n expandTreeOptions,\n translate: __\n } = this.props;\n\n return (\n <div\n className={cx(`${ns}TreeControl`, className, treeContainerClassName)}\n >\n <Spinner size=\"sm\" key=\"info\" show={loading} />\n {loading ? null : (\n <TreeSelector\n classPrefix={ns}\n onRef={this.domRef}\n labelField={labelField}\n valueField={valueField}\n iconField={iconField}\n disabled={disabled}\n onChange={this.handleChange}\n joinValues={joinValues}\n extractValue={extractValue}\n delimiter={delimiter}\n placeholder={__(placeholder)}\n options={options}\n multiple={multiple}\n initiallyOpen={initiallyOpen}\n unfoldedLevel={unfoldedLevel}\n withChildren={withChildren}\n onlyChildren={onlyChildren}\n hideRoot={hideRoot}\n rootLabel={__(rootLabel)}\n rootValue={rootValue}\n showIcon={showIcon}\n showRadio={showRadio}\n showOutline={showOutline}\n autoCheckChildren={autoCheckChildren}\n cascade={cascade}\n foldedField=\"collapsed\"\n value={value || ''}\n nodePath={nodePath}\n enableNodePath={enableNodePath}\n pathSeparator={pathSeparator}\n selfDisabledAffectChildren={false}\n onAdd={onAdd}\n creatable={creatable}\n createTip={createTip}\n rootCreatable={rootCreatable}\n rootCreateTip={rootCreateTip}\n onEdit={onEdit}\n editable={editable}\n editTip={editTip}\n removable={removable}\n removeTip={removeTip}\n onDelete={onDelete}\n bultinCUD={!addControls && !editControls}\n onDeferLoad={deferLoad}\n onExpandTree={expandTreeOptions}\n />\n )}\n </div>\n );\n }\n}\n\n@OptionsControl({\n type: 'input-tree'\n})\nexport class TreeControlRenderer extends TreeControl {}\n"
11
+ "import React from 'react';\nimport cx from 'classnames';\nimport TreeSelector from '../../components/Tree';\nimport {\n FormOptionsControl,\n OptionsControl,\n OptionsControlProps\n} from './Options';\nimport {Spinner} from '../../components';\nimport {SchemaApi} from '../../Schema';\nimport {autobind, createObject} from '../../utils/helper';\nimport {Action} from '../../types';\n\n/**\n * Tree 下拉选择框。\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tree\n */\nexport interface TreeControlSchema extends FormOptionsControl {\n type: 'input-tree';\n\n /**\n * 是否隐藏顶级\n */\n hideRoot?: boolean;\n\n /**\n * 顶级选项的名称\n */\n rootLabel?: string;\n\n /**\n * 顶级选项的值\n */\n rootValue?: any;\n\n /**\n * 显示图标\n */\n showIcon?: boolean;\n\n /**\n * ui级联关系,true代表级联选中,false代表不级联,默认为true\n */\n autoCheckChildren?: boolean;\n\n /**\n * 该属性代表数据级联关系,autoCheckChildren为true时生效,默认为false,具体数据级联关系如下:\n * 1.casacde为false,ui行为为级联选中子节点,子节点禁用;值只包含父节点的值\n * 2.cascade为false,withChildren为true,ui行为为级联选中子节点,子节点禁用;值包含父子节点的值\n * 3.cascade为true,ui行为级联选中子节点,子节点可反选,值包含父子节点的值,此时withChildren属性失效\n * 4.cascade不论为true还是false,onlyChildren为true,ui行为级联选中子节点,子节点可反选,值只包含子节点的值\n */\n cascade?: boolean;\n\n /**\n * 选父级的时候是否把子节点的值也包含在内。\n */\n withChildren?: boolean;\n\n /**\n * 选父级的时候,是否只把子节点的值包含在内\n */\n onlyChildren?: boolean;\n\n /**\n * 单选时,只运行选择叶子节点\n */\n onlyLeaf?: boolean;\n\n /**\n * 顶级节点是否可以创建子节点\n */\n rootCreatable?: boolean;\n\n /**\n * 是否开启节点路径模式\n */\n enableNodePath?: boolean;\n\n /**\n * 开启节点路径模式后,节点路径的分隔符\n */\n pathSeparator?: string;\n\n /**\n * 是否显示展开线\n */\n showOutline?: boolean;\n\n deferApi?: SchemaApi;\n}\n\nexport interface TreeProps\n extends OptionsControlProps,\n Omit<\n TreeControlSchema,\n | 'type'\n | 'options'\n | 'className'\n | 'inputClassName'\n | 'descriptionClassName'\n > {\n enableNodePath?: boolean;\n pathSeparator?: string;\n}\n\nexport default class TreeControl extends React.Component<TreeProps> {\n static defaultProps: Partial<TreeProps> = {\n placeholder: 'loading',\n multiple: false,\n rootLabel: 'Tree.root',\n rootValue: '',\n showIcon: true,\n enableNodePath: false,\n pathSeparator: '/'\n };\n treeRef: any;\n\n reload() {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n\n doAction(action: Action, data: any, throwErrors: boolean) {\n const actionType = action?.actionType as string;\n const {resetValue, onChange} = this.props;\n\n if (actionType === 'clear') {\n onChange?.('');\n } else if (actionType === 'reset') {\n onChange?.(resetValue ?? '');\n } else if (action.actionType === 'expand') {\n this.treeRef.syncUnFolded(this.props, action.args?.openLevel);\n } else if (action.actionType === 'collapse') {\n this.treeRef.syncUnFolded(this.props, 1);\n }\n }\n\n @autobind\n async handleChange(value: any) {\n const {onChange, dispatchEvent, data} = this.props;\n\n const rendererEvent = await dispatchEvent(\n 'change',\n createObject(data, {\n value\n })\n );\n\n if (rendererEvent?.prevented) {\n return;\n }\n\n onChange && onChange(value);\n }\n\n @autobind\n domRef(ref: any) {\n this.treeRef = ref;\n }\n\n render() {\n const {\n className,\n treeContainerClassName,\n classPrefix: ns,\n value,\n enableNodePath,\n pathSeparator = '/',\n disabled,\n joinValues,\n extractValue,\n delimiter,\n placeholder,\n options,\n multiple,\n valueField,\n initiallyOpen,\n unfoldedLevel,\n withChildren,\n onlyChildren,\n onlyLeaf,\n loading,\n hideRoot,\n rootLabel,\n autoCheckChildren,\n cascade,\n rootValue,\n showIcon,\n showRadio,\n showOutline,\n onAdd,\n creatable,\n createTip,\n addControls,\n onEdit,\n editable,\n editTip,\n editControls,\n removable,\n removeTip,\n onDelete,\n rootCreatable,\n rootCreateTip,\n labelField,\n iconField,\n nodePath,\n deferLoad,\n expandTreeOptions,\n translate: __\n } = this.props;\n\n return (\n <div\n className={cx(`${ns}TreeControl`, className, treeContainerClassName)}\n >\n <Spinner size=\"sm\" key=\"info\" show={loading} />\n {loading ? null : (\n <TreeSelector\n classPrefix={ns}\n onRef={this.domRef}\n labelField={labelField}\n valueField={valueField}\n iconField={iconField}\n disabled={disabled}\n onChange={this.handleChange}\n joinValues={joinValues}\n extractValue={extractValue}\n delimiter={delimiter}\n placeholder={__(placeholder)}\n options={options}\n multiple={multiple}\n initiallyOpen={initiallyOpen}\n unfoldedLevel={unfoldedLevel}\n withChildren={withChildren}\n onlyChildren={onlyChildren}\n onlyLeaf={onlyLeaf}\n hideRoot={hideRoot}\n rootLabel={__(rootLabel)}\n rootValue={rootValue}\n showIcon={showIcon}\n showRadio={showRadio}\n showOutline={showOutline}\n autoCheckChildren={autoCheckChildren}\n cascade={cascade}\n foldedField=\"collapsed\"\n value={value || ''}\n nodePath={nodePath}\n enableNodePath={enableNodePath}\n pathSeparator={pathSeparator}\n selfDisabledAffectChildren={false}\n onAdd={onAdd}\n creatable={creatable}\n createTip={createTip}\n rootCreatable={rootCreatable}\n rootCreateTip={rootCreateTip}\n onEdit={onEdit}\n editable={editable}\n editTip={editTip}\n removable={removable}\n removeTip={removeTip}\n onDelete={onDelete}\n bultinCUD={!addControls && !editControls}\n onDeferLoad={deferLoad}\n onExpandTree={expandTreeOptions}\n />\n )}\n </div>\n );\n }\n}\n\n@OptionsControl({\n type: 'input-tree'\n})\nexport class TreeControlRenderer extends TreeControl {}\n"
12
12
  ]
13
13
  }
@@ -71,7 +71,7 @@ export default class PickerControl extends React.PureComponent<PickerProps, any>
71
71
  open(): void;
72
72
  close(): void;
73
73
  handleModalConfirm(values: Array<any>, action: Action, ctx: any, components: Array<any>): void;
74
- handleChange(items: Array<any>): void;
74
+ handleChange(items: Array<any>): Promise<void>;
75
75
  removeItem(index: number): void;
76
76
  handleKeyDown(e: React.KeyboardEvent): void;
77
77
  handleFocus(): void;
@@ -108,29 +108,44 @@ var PickerControl = /** @class */ (function (_super) {
108
108
  this.close();
109
109
  };
110
110
  PickerControl.prototype.handleChange = function (items) {
111
- var _a = this.props, joinValues = _a.joinValues, valueField = _a.valueField, delimiter = _a.delimiter, extractValue = _a.extractValue, multiple = _a.multiple, options = _a.options, setOptions = _a.setOptions, onChange = _a.onChange;
112
- var value = items;
113
- if (joinValues) {
114
- value = items
115
- .map(function (item) { return item[valueField || 'value']; })
116
- .join(delimiter || ',');
117
- }
118
- else if (extractValue) {
119
- value = multiple
120
- ? items.map(function (item) { return item[valueField || 'value']; })
121
- : (items[0] && items[0][valueField || 'value']) || '';
122
- }
123
- else {
124
- value = multiple ? items : items[0];
125
- }
126
- var additionalOptions = [];
127
- items.forEach(function (item) {
128
- if (!(0, find_1.default)(options, function (option) { return item[valueField || 'value'] == option[valueField || 'value']; })) {
129
- additionalOptions.push(item);
130
- }
111
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
112
+ var _a, joinValues, valueField, delimiter, extractValue, multiple, options, data, dispatchEvent, setOptions, onChange, value, additionalOptions, rendererEvent;
113
+ return (0, tslib_1.__generator)(this, function (_b) {
114
+ switch (_b.label) {
115
+ case 0:
116
+ _a = this.props, joinValues = _a.joinValues, valueField = _a.valueField, delimiter = _a.delimiter, extractValue = _a.extractValue, multiple = _a.multiple, options = _a.options, data = _a.data, dispatchEvent = _a.dispatchEvent, setOptions = _a.setOptions, onChange = _a.onChange;
117
+ value = items;
118
+ if (joinValues) {
119
+ value = items
120
+ .map(function (item) { return item[valueField || 'value']; })
121
+ .join(delimiter || ',');
122
+ }
123
+ else if (extractValue) {
124
+ value = multiple
125
+ ? items.map(function (item) { return item[valueField || 'value']; })
126
+ : (items[0] && items[0][valueField || 'value']) || '';
127
+ }
128
+ else {
129
+ value = multiple ? items : items[0];
130
+ }
131
+ additionalOptions = [];
132
+ items.forEach(function (item) {
133
+ if (!(0, find_1.default)(options, function (option) { return item[valueField || 'value'] == option[valueField || 'value']; })) {
134
+ additionalOptions.push(item);
135
+ }
136
+ });
137
+ additionalOptions.length && setOptions(options.concat(additionalOptions));
138
+ return [4 /*yield*/, dispatchEvent('change', (0, helper_1.createObject)(data, { value: value, option: items[0] }))];
139
+ case 1:
140
+ rendererEvent = _b.sent();
141
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
142
+ return [2 /*return*/];
143
+ }
144
+ onChange(value);
145
+ return [2 /*return*/];
146
+ }
147
+ });
131
148
  });
132
- additionalOptions.length && setOptions(options.concat(additionalOptions));
133
- onChange(value);
134
149
  };
135
150
  PickerControl.prototype.removeItem = function (index) {
136
151
  var _a = this.props, selectedOptions = _a.selectedOptions, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, valueField = _a.valueField, onChange = _a.onChange, multiple = _a.multiple;
@@ -292,7 +307,7 @@ var PickerControl = /** @class */ (function (_super) {
292
307
  helper_1.autobind,
293
308
  (0, tslib_1.__metadata)("design:type", Function),
294
309
  (0, tslib_1.__metadata)("design:paramtypes", [typeof (_d = typeof Array !== "undefined" && Array) === "function" ? _d : Object]),
295
- (0, tslib_1.__metadata)("design:returntype", void 0)
310
+ (0, tslib_1.__metadata)("design:returntype", Promise)
296
311
  ], PickerControl.prototype, "handleChange", null);
297
312
  (0, tslib_1.__decorate)([
298
313
  helper_1.autobind,
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/Picker.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {\n OptionsControl,\n OptionsControlProps,\n Option,\n FormOptionsControl\n} from './Options';\nimport cx from 'classnames';\nimport Button from '../../components/Button';\nimport {SchemaNode, Schema, Action, PlainObject} from '../../types';\nimport find from 'lodash/find';\nimport {\n anyChanged,\n autobind,\n getVariable,\n noop,\n createObject,\n isObjectShallowModified\n} from '../../utils/helper';\nimport findIndex from 'lodash/findIndex';\nimport Html from '../../components/Html';\nimport {filter} from '../../utils/tpl';\nimport {Icon} from '../../components/icons';\nimport {isEmpty} from '../../utils/helper';\nimport {\n dataMapping,\n isPureVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\nimport {SchemaCollection, SchemaTpl} from '../../Schema';\nimport {CRUDSchema} from '../CRUD';\nimport {isApiOutdated, isEffectiveApi} from '../../utils/api';\n\n/**\n * Picker\n * 文档:https://baidu.gitee.io/amis/docs/components/form/picker\n */\nexport interface PickerControlSchema extends FormOptionsControl {\n type: 'picker';\n\n /**\n * 可用来生成选中的值的描述文字\n */\n labelTpl?: SchemaTpl;\n\n /**\n * 建议用 labelTpl\n * 选中一个字段名用来作为值的描述文字\n */\n labelField?: string;\n\n /**\n * 选一个可以用来作为值的字段。\n */\n valueField?: string;\n\n /**\n * 弹窗选择框详情。\n */\n pickerSchema?: any; // Omit<CRUDSchema, 'type'>;\n\n /**\n * 弹窗模式,dialog 或者 drawer\n */\n modalMode?: 'dialog' | 'drawer';\n\n /**\n * 内嵌模式,也就是说不弹框了。\n */\n embed?: boolean;\n}\n\nexport interface PickerProps extends OptionsControlProps {\n modalMode: 'dialog' | 'drawer';\n pickerSchema: PlainObject;\n labelField: string;\n}\n\nexport interface PickerState {\n isOpened: boolean;\n isFocused: boolean;\n schema: SchemaNode;\n}\n\nexport default class PickerControl extends React.PureComponent<\n PickerProps,\n any\n> {\n static propsList: Array<string> = [\n 'modalMode',\n 'pickerSchema',\n 'labelField',\n 'onChange',\n 'options',\n 'value',\n 'inline',\n 'multiple',\n 'embed',\n 'resetValue',\n 'placeholder',\n 'onQuery' // 防止 Form 的 onQuery 事件透传下去,不然会导致 table 先后触发 Form 和 Crud 的 onQuery\n ];\n static defaultProps: Partial<PickerProps> = {\n modalMode: 'dialog',\n multiple: false,\n placeholder: 'Picker.placeholder',\n labelField: 'label',\n valueField: 'value',\n pickerSchema: {\n mode: 'list',\n listItem: {\n title: '${label|raw}'\n }\n },\n embed: false\n };\n\n state: PickerState = {\n isOpened: false,\n schema: this.buildSchema(this.props),\n isFocused: false\n };\n\n input: React.RefObject<HTMLInputElement> = React.createRef();\n\n componentDidMount() {\n this.fetchOptions();\n }\n\n componentDidUpdate(prevProps: PickerProps) {\n const props = this.props;\n\n if (anyChanged(['pickerSchema', 'multiple', 'source'], prevProps, props)) {\n this.setState({\n schema: this.buildSchema(props)\n });\n } else if (\n JSON.stringify(props.value) !== JSON.stringify(prevProps.value)\n ) {\n this.fetchOptions();\n } else if (\n isApiOutdated(prevProps.source, props.source, prevProps.data, props.data)\n ) {\n this.fetchOptions();\n }\n }\n\n fetchOptions() {\n const {value, formItem, valueField, labelField, source, data} = this.props;\n let selectedOptions: any;\n\n if (\n !source ||\n !formItem ||\n (valueField || 'value') === (labelField || 'label') ||\n ((selectedOptions = formItem.getSelectedOptions(value)) &&\n (!selectedOptions.length ||\n selectedOptions[0][valueField || 'value'] !==\n selectedOptions[0][labelField || 'label']))\n ) {\n return;\n }\n\n const ctx = createObject(data, {\n value: value,\n op: 'loadOptions'\n });\n\n if (isPureVariable(source)) {\n formItem.setOptions(resolveVariableAndFilter(source, data, '| raw'));\n } else if (isEffectiveApi(source, ctx)) {\n formItem.loadOptions(source, ctx, {\n autoAppend: true\n });\n }\n }\n\n buildSchema(props: PickerProps) {\n const isScopeData = isPureVariable(props.source);\n\n return {\n checkOnItemClick: true,\n ...props.pickerSchema,\n labelTpl: props.pickerSchema?.labelTpl ?? props.labelTpl,\n type: 'crud',\n pickerMode: true,\n syncLocation: false,\n api: isScopeData ? null : props.source,\n source: isScopeData ? props.source : null,\n keepItemSelectionOnPageChange: true,\n valueField: props.valueField,\n labelField: props.labelField,\n\n // 不支持批量操作,会乱套\n bulkActions: props.multiple\n ? (props.pickerSchema as Schema).bulkActions\n : []\n };\n }\n\n crud: any;\n\n @autobind\n crudRef(ref: any) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n this.crud = ref;\n }\n\n reload() {\n if (this.crud) {\n this.crud.search();\n } else {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n }\n\n @autobind\n open() {\n this.setState({\n isOpened: true\n });\n }\n\n @autobind\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n @autobind\n handleModalConfirm(\n values: Array<any>,\n action: Action,\n ctx: any,\n components: Array<any>\n ) {\n const idx = findIndex(\n components,\n (item: any) => item.props.type === 'crud'\n );\n this.handleChange(values[idx].items);\n this.close();\n }\n\n @autobind\n handleChange(items: Array<any>) {\n const {\n joinValues,\n valueField,\n delimiter,\n extractValue,\n multiple,\n options,\n setOptions,\n onChange\n } = this.props;\n\n let value: any = items;\n\n if (joinValues) {\n value = items\n .map((item: any) => item[valueField || 'value'])\n .join(delimiter || ',');\n } else if (extractValue) {\n value = multiple\n ? items.map((item: any) => item[valueField || 'value'])\n : (items[0] && items[0][valueField || 'value']) || '';\n } else {\n value = multiple ? items : items[0];\n }\n\n let additionalOptions: Array<any> = [];\n items.forEach(item => {\n if (\n !find(\n options,\n option => item[valueField || 'value'] == option[valueField || 'value']\n )\n ) {\n additionalOptions.push(item);\n }\n });\n\n additionalOptions.length && setOptions(options.concat(additionalOptions));\n onChange(value);\n }\n\n removeItem(index: number) {\n const {\n selectedOptions,\n joinValues,\n extractValue,\n delimiter,\n valueField,\n onChange,\n multiple\n } = this.props;\n const items = selectedOptions.concat();\n items.splice(index, 1);\n\n let value: any = items;\n\n if (joinValues) {\n value = items\n .map((item: any) => item[valueField || 'value'])\n .join(delimiter || ',');\n } else if (extractValue) {\n value = multiple\n ? items.map((item: any) => item[valueField || 'value'])\n : (items[0] && items[0][valueField || 'value']) || '';\n } else {\n value = multiple ? items : items[0];\n }\n\n onChange(value);\n }\n\n @autobind\n handleKeyDown(e: React.KeyboardEvent) {\n const selectedOptions = this.props.selectedOptions;\n\n if (e.key === ' ') {\n this.open();\n e.preventDefault();\n } else if (selectedOptions.length && e.key == 'Backspace') {\n this.removeItem(selectedOptions.length - 1);\n }\n }\n\n @autobind\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n @autobind\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n @autobind\n handleClick() {\n this.input.current && this.input.current.focus();\n }\n\n @autobind\n clearValue() {\n const {onChange, resetValue} = this.props;\n\n onChange(resetValue !== void 0 ? resetValue : '');\n }\n\n renderValues() {\n const {\n classPrefix: ns,\n selectedOptions,\n labelField,\n labelTpl,\n translate: __,\n disabled\n } = this.props;\n\n return (\n <div className={`${ns}Picker-values`}>\n {selectedOptions.map((item, index) => (\n <div\n key={index}\n className={cx(`${ns}Picker-value`, {\n 'is-disabled': disabled\n })}\n >\n <span\n data-tooltip={__('delete')}\n data-position=\"bottom\"\n className={`${ns}Picker-valueIcon`}\n onClick={this.removeItem.bind(this, index)}\n >\n ×\n </span>\n <span className={`${ns}Picker-valueLabel`}>\n {labelTpl ? (\n <Html html={filter(labelTpl, item)} />\n ) : (\n `${\n getVariable(item, labelField || 'label') ||\n getVariable(item, 'id')\n }`\n )}\n </span>\n </div>\n ))}\n </div>\n );\n }\n\n @autobind\n renderBody({popOverContainer}: any = {}) {\n const {\n render,\n selectedOptions,\n options,\n multiple,\n valueField,\n embed,\n source\n } = this.props;\n\n return render('modal-body', this.state.schema, {\n value: selectedOptions,\n valueField,\n primaryField: valueField,\n options: source ? [] : options,\n multiple,\n onSelect: embed ? this.handleChange : undefined,\n ref: this.crudRef,\n popOverContainer\n }) as JSX.Element;\n }\n\n render() {\n const {\n className,\n classnames: cx,\n disabled,\n render,\n modalMode,\n source,\n size,\n env,\n clearable,\n multiple,\n placeholder,\n embed,\n value,\n selectedOptions,\n translate: __,\n popOverContainer\n } = this.props;\n return (\n <div className={cx(`PickerControl`, className)}>\n {embed ? (\n <div className={cx('Picker')}>\n {this.renderBody({popOverContainer})}\n </div>\n ) : (\n <div\n className={cx(`Picker`, {\n 'Picker--single': !multiple,\n 'Picker--multi': multiple,\n 'is-focused': this.state.isFocused,\n 'is-disabled': disabled\n })}\n >\n <div onClick={this.handleClick} className={cx('Picker-input')}>\n {!selectedOptions.length && placeholder ? (\n <div className={cx('Picker-placeholder')}>\n {__(placeholder)}\n </div>\n ) : null}\n\n <div className={cx('Picker-valueWrap')}>\n {this.renderValues()}\n\n <input\n onChange={noop}\n value={''}\n ref={this.input}\n onKeyDown={this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </div>\n\n {clearable && !disabled && selectedOptions.length ? (\n <a onClick={this.clearValue} className={cx('Picker-clear')}>\n <Icon icon=\"input-clear\" className=\"icon\" />\n </a>\n ) : null}\n\n <span onClick={this.open} className={cx('Picker-btn')}>\n <Icon icon=\"window-restore\" className=\"icon\" />\n </span>\n </div>\n\n {render(\n 'modal',\n {\n title: __('Select.placeholder'),\n size: size,\n type: modalMode,\n body: {\n children: this.renderBody\n }\n },\n {\n key: 'modal',\n lazyRender: !!source,\n onConfirm: this.handleModalConfirm,\n onClose: this.close,\n show: this.state.isOpened\n }\n )}\n </div>\n )}\n </div>\n );\n }\n}\n\n@OptionsControl({\n type: 'picker',\n autoLoadOptionsFromSource: false,\n sizeMutable: false\n})\nexport class PickerControlRenderer extends PickerControl {}\n"
11
+ "import React from 'react';\nimport {\n OptionsControl,\n OptionsControlProps,\n Option,\n FormOptionsControl\n} from './Options';\nimport cx from 'classnames';\nimport Button from '../../components/Button';\nimport {SchemaNode, Schema, Action, PlainObject} from '../../types';\nimport find from 'lodash/find';\nimport {\n anyChanged,\n autobind,\n getVariable,\n noop,\n createObject,\n isObjectShallowModified\n} from '../../utils/helper';\nimport findIndex from 'lodash/findIndex';\nimport Html from '../../components/Html';\nimport {filter} from '../../utils/tpl';\nimport {Icon} from '../../components/icons';\nimport {isEmpty} from '../../utils/helper';\nimport {\n dataMapping,\n isPureVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\nimport {SchemaCollection, SchemaTpl} from '../../Schema';\nimport {CRUDSchema} from '../CRUD';\nimport {isApiOutdated, isEffectiveApi} from '../../utils/api';\n\n/**\n * Picker\n * 文档:https://baidu.gitee.io/amis/docs/components/form/picker\n */\nexport interface PickerControlSchema extends FormOptionsControl {\n type: 'picker';\n\n /**\n * 可用来生成选中的值的描述文字\n */\n labelTpl?: SchemaTpl;\n\n /**\n * 建议用 labelTpl\n * 选中一个字段名用来作为值的描述文字\n */\n labelField?: string;\n\n /**\n * 选一个可以用来作为值的字段。\n */\n valueField?: string;\n\n /**\n * 弹窗选择框详情。\n */\n pickerSchema?: any; // Omit<CRUDSchema, 'type'>;\n\n /**\n * 弹窗模式,dialog 或者 drawer\n */\n modalMode?: 'dialog' | 'drawer';\n\n /**\n * 内嵌模式,也就是说不弹框了。\n */\n embed?: boolean;\n}\n\nexport interface PickerProps extends OptionsControlProps {\n modalMode: 'dialog' | 'drawer';\n pickerSchema: PlainObject;\n labelField: string;\n}\n\nexport interface PickerState {\n isOpened: boolean;\n isFocused: boolean;\n schema: SchemaNode;\n}\n\nexport default class PickerControl extends React.PureComponent<\n PickerProps,\n any\n> {\n static propsList: Array<string> = [\n 'modalMode',\n 'pickerSchema',\n 'labelField',\n 'onChange',\n 'options',\n 'value',\n 'inline',\n 'multiple',\n 'embed',\n 'resetValue',\n 'placeholder',\n 'onQuery' // 防止 Form 的 onQuery 事件透传下去,不然会导致 table 先后触发 Form 和 Crud 的 onQuery\n ];\n static defaultProps: Partial<PickerProps> = {\n modalMode: 'dialog',\n multiple: false,\n placeholder: 'Picker.placeholder',\n labelField: 'label',\n valueField: 'value',\n pickerSchema: {\n mode: 'list',\n listItem: {\n title: '${label|raw}'\n }\n },\n embed: false\n };\n\n state: PickerState = {\n isOpened: false,\n schema: this.buildSchema(this.props),\n isFocused: false\n };\n\n input: React.RefObject<HTMLInputElement> = React.createRef();\n\n componentDidMount() {\n this.fetchOptions();\n }\n\n componentDidUpdate(prevProps: PickerProps) {\n const props = this.props;\n\n if (anyChanged(['pickerSchema', 'multiple', 'source'], prevProps, props)) {\n this.setState({\n schema: this.buildSchema(props)\n });\n } else if (\n JSON.stringify(props.value) !== JSON.stringify(prevProps.value)\n ) {\n this.fetchOptions();\n } else if (\n isApiOutdated(prevProps.source, props.source, prevProps.data, props.data)\n ) {\n this.fetchOptions();\n }\n }\n\n fetchOptions() {\n const {value, formItem, valueField, labelField, source, data} = this.props;\n let selectedOptions: any;\n\n if (\n !source ||\n !formItem ||\n (valueField || 'value') === (labelField || 'label') ||\n ((selectedOptions = formItem.getSelectedOptions(value)) &&\n (!selectedOptions.length ||\n selectedOptions[0][valueField || 'value'] !==\n selectedOptions[0][labelField || 'label']))\n ) {\n return;\n }\n\n const ctx = createObject(data, {\n value: value,\n op: 'loadOptions'\n });\n\n if (isPureVariable(source)) {\n formItem.setOptions(resolveVariableAndFilter(source, data, '| raw'));\n } else if (isEffectiveApi(source, ctx)) {\n formItem.loadOptions(source, ctx, {\n autoAppend: true\n });\n }\n }\n\n buildSchema(props: PickerProps) {\n const isScopeData = isPureVariable(props.source);\n\n return {\n checkOnItemClick: true,\n ...props.pickerSchema,\n labelTpl: props.pickerSchema?.labelTpl ?? props.labelTpl,\n type: 'crud',\n pickerMode: true,\n syncLocation: false,\n api: isScopeData ? null : props.source,\n source: isScopeData ? props.source : null,\n keepItemSelectionOnPageChange: true,\n valueField: props.valueField,\n labelField: props.labelField,\n\n // 不支持批量操作,会乱套\n bulkActions: props.multiple\n ? (props.pickerSchema as Schema).bulkActions\n : []\n };\n }\n\n crud: any;\n\n @autobind\n crudRef(ref: any) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n this.crud = ref;\n }\n\n reload() {\n if (this.crud) {\n this.crud.search();\n } else {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n }\n\n @autobind\n open() {\n this.setState({\n isOpened: true\n });\n }\n\n @autobind\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n @autobind\n handleModalConfirm(\n values: Array<any>,\n action: Action,\n ctx: any,\n components: Array<any>\n ) {\n const idx = findIndex(\n components,\n (item: any) => item.props.type === 'crud'\n );\n this.handleChange(values[idx].items);\n this.close();\n }\n\n @autobind\n async handleChange(items: Array<any>) {\n const {\n joinValues,\n valueField,\n delimiter,\n extractValue,\n multiple,\n options,\n data,\n dispatchEvent,\n setOptions,\n onChange\n } = this.props;\n\n let value: any = items;\n\n if (joinValues) {\n value = items\n .map((item: any) => item[valueField || 'value'])\n .join(delimiter || ',');\n } else if (extractValue) {\n value = multiple\n ? items.map((item: any) => item[valueField || 'value'])\n : (items[0] && items[0][valueField || 'value']) || '';\n } else {\n value = multiple ? items : items[0];\n }\n\n let additionalOptions: Array<any> = [];\n items.forEach(item => {\n if (\n !find(\n options,\n option => item[valueField || 'value'] == option[valueField || 'value']\n )\n ) {\n additionalOptions.push(item);\n }\n });\n\n additionalOptions.length && setOptions(options.concat(additionalOptions));\n const rendererEvent = await dispatchEvent(\n 'change',\n createObject(data, {value, option: items[0]})\n );\n if (rendererEvent?.prevented) {\n return;\n }\n\n onChange(value);\n }\n\n removeItem(index: number) {\n const {\n selectedOptions,\n joinValues,\n extractValue,\n delimiter,\n valueField,\n onChange,\n multiple\n } = this.props;\n const items = selectedOptions.concat();\n items.splice(index, 1);\n\n let value: any = items;\n\n if (joinValues) {\n value = items\n .map((item: any) => item[valueField || 'value'])\n .join(delimiter || ',');\n } else if (extractValue) {\n value = multiple\n ? items.map((item: any) => item[valueField || 'value'])\n : (items[0] && items[0][valueField || 'value']) || '';\n } else {\n value = multiple ? items : items[0];\n }\n\n onChange(value);\n }\n\n @autobind\n handleKeyDown(e: React.KeyboardEvent) {\n const selectedOptions = this.props.selectedOptions;\n\n if (e.key === ' ') {\n this.open();\n e.preventDefault();\n } else if (selectedOptions.length && e.key == 'Backspace') {\n this.removeItem(selectedOptions.length - 1);\n }\n }\n\n @autobind\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n @autobind\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n @autobind\n handleClick() {\n this.input.current && this.input.current.focus();\n }\n\n @autobind\n clearValue() {\n const {onChange, resetValue} = this.props;\n\n onChange(resetValue !== void 0 ? resetValue : '');\n }\n\n renderValues() {\n const {\n classPrefix: ns,\n selectedOptions,\n labelField,\n labelTpl,\n translate: __,\n disabled\n } = this.props;\n\n return (\n <div className={`${ns}Picker-values`}>\n {selectedOptions.map((item, index) => (\n <div\n key={index}\n className={cx(`${ns}Picker-value`, {\n 'is-disabled': disabled\n })}\n >\n <span\n data-tooltip={__('delete')}\n data-position=\"bottom\"\n className={`${ns}Picker-valueIcon`}\n onClick={this.removeItem.bind(this, index)}\n >\n ×\n </span>\n <span className={`${ns}Picker-valueLabel`}>\n {labelTpl ? (\n <Html html={filter(labelTpl, item)} />\n ) : (\n `${\n getVariable(item, labelField || 'label') ||\n getVariable(item, 'id')\n }`\n )}\n </span>\n </div>\n ))}\n </div>\n );\n }\n\n @autobind\n renderBody({popOverContainer}: any = {}) {\n const {\n render,\n selectedOptions,\n options,\n multiple,\n valueField,\n embed,\n source\n } = this.props;\n\n return render('modal-body', this.state.schema, {\n value: selectedOptions,\n valueField,\n primaryField: valueField,\n options: source ? [] : options,\n multiple,\n onSelect: embed ? this.handleChange : undefined,\n ref: this.crudRef,\n popOverContainer\n }) as JSX.Element;\n }\n\n render() {\n const {\n className,\n classnames: cx,\n disabled,\n render,\n modalMode,\n source,\n size,\n env,\n clearable,\n multiple,\n placeholder,\n embed,\n value,\n selectedOptions,\n translate: __,\n popOverContainer\n } = this.props;\n return (\n <div className={cx(`PickerControl`, className)}>\n {embed ? (\n <div className={cx('Picker')}>\n {this.renderBody({popOverContainer})}\n </div>\n ) : (\n <div\n className={cx(`Picker`, {\n 'Picker--single': !multiple,\n 'Picker--multi': multiple,\n 'is-focused': this.state.isFocused,\n 'is-disabled': disabled\n })}\n >\n <div onClick={this.handleClick} className={cx('Picker-input')}>\n {!selectedOptions.length && placeholder ? (\n <div className={cx('Picker-placeholder')}>\n {__(placeholder)}\n </div>\n ) : null}\n\n <div className={cx('Picker-valueWrap')}>\n {this.renderValues()}\n\n <input\n onChange={noop}\n value={''}\n ref={this.input}\n onKeyDown={this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </div>\n\n {clearable && !disabled && selectedOptions.length ? (\n <a onClick={this.clearValue} className={cx('Picker-clear')}>\n <Icon icon=\"input-clear\" className=\"icon\" />\n </a>\n ) : null}\n\n <span onClick={this.open} className={cx('Picker-btn')}>\n <Icon icon=\"window-restore\" className=\"icon\" />\n </span>\n </div>\n\n {render(\n 'modal',\n {\n title: __('Select.placeholder'),\n size: size,\n type: modalMode,\n body: {\n children: this.renderBody\n }\n },\n {\n key: 'modal',\n lazyRender: !!source,\n onConfirm: this.handleModalConfirm,\n onClose: this.close,\n show: this.state.isOpened\n }\n )}\n </div>\n )}\n </div>\n );\n }\n}\n\n@OptionsControl({\n type: 'picker',\n autoLoadOptionsFromSource: false,\n sizeMutable: false\n})\nexport class PickerControlRenderer extends PickerControl {}\n"
12
12
  ]
13
13
  }
@@ -181,7 +181,7 @@ function wrapControl(ComposedComponent) {
181
181
  // 此处需要同时考虑 defaultValue 和 value
182
182
  if (model && typeof props.value !== 'undefined') {
183
183
  // 渲染器中的 value 优先
184
- if (props.value !== prevProps.value && props.value !== model.tmpValue) {
184
+ if (!(0, isEqual_1.default)(props.value, prevProps.value) && !(0, isEqual_1.default)(props.value, model.tmpValue)) {
185
185
  // 外部直接传入的 value 无需执行运算器
186
186
  model.changeTmpValue(props.value);
187
187
  }
@@ -190,12 +190,12 @@ function wrapControl(ComposedComponent) {
190
190
  typeof props.defaultValue !== 'undefined' &&
191
191
  (0, formula_1.isExpression)(props.defaultValue)) {
192
192
  // 渲染器中的 defaultValue 优先(备注: SchemaRenderer中会将 value 改成 defaultValue)
193
- if (props.defaultValue !== prevProps.defaultValue ||
193
+ if (!(0, isEqual_1.default)(props.defaultValue, prevProps.defaultValue) ||
194
194
  (!(0, isEqual_1.default)(props.data, prevProps.data) &&
195
195
  (0, formula_1.isNeedFormula)(props.defaultValue, props.data, prevProps.data))) {
196
196
  var curResult = formula_1.FormulaExec['formula'](props.defaultValue, props.data);
197
197
  var prevResult = formula_1.FormulaExec['formula'](prevProps.defaultValue, prevProps.data);
198
- if (curResult !== prevResult && curResult !== model.tmpValue) {
198
+ if (!(0, isEqual_1.default)(curResult, prevResult) && !(0, isEqual_1.default)(curResult, model.tmpValue)) {
199
199
  // 识别上下文变动、自身数值变动、公式运算结果变动
200
200
  model.changeTmpValue(curResult);
201
201
  if (props.onChange) {
@@ -207,25 +207,25 @@ function wrapControl(ComposedComponent) {
207
207
  else if (model) {
208
208
  var valueByName = (0, helper_1.getVariable)(props.data, model.name);
209
209
  if (valueByName !== undefined &&
210
- props.defaultValue === prevProps.defaultValue) {
210
+ (0, isEqual_1.default)(props.defaultValue, prevProps.defaultValue)) {
211
211
  // value 非公式表达式时,name 值优先,若 defaultValue 主动变动时,则使用 defaultValue
212
212
  if (
213
213
  // 然后才是查看关联的 name 属性值是否变化
214
- props.data !== prevProps.data &&
215
- (!model.emitedValue || model.emitedValue === model.tmpValue)) {
214
+ !(0, isEqual_1.default)(props.data, prevProps.data) &&
215
+ (!model.emitedValue || (0, isEqual_1.default)(model.emitedValue, model.tmpValue))) {
216
216
  model.changeEmitedValue(undefined);
217
217
  var prevValueByName = (0, helper_1.getVariable)(props.data, model.name);
218
- if ((valueByName !== prevValueByName ||
218
+ if ((!(0, isEqual_1.default)(valueByName, prevValueByName) ||
219
219
  (0, helper_1.getVariable)(props.data, model.name, false) !==
220
220
  (0, helper_1.getVariable)(prevProps.data, model.name, false)) &&
221
- valueByName !== model.tmpValue) {
221
+ !(0, isEqual_1.default)(valueByName, model.tmpValue)) {
222
222
  model.changeTmpValue(valueByName);
223
223
  }
224
224
  }
225
225
  }
226
226
  else if (typeof props.defaultValue !== 'undefined' &&
227
- props.defaultValue !== prevProps.defaultValue &&
228
- props.defaultValue !== model.tmpValue) {
227
+ !(0, isEqual_1.default)(props.defaultValue, prevProps.defaultValue) &&
228
+ !(0, isEqual_1.default)(props.defaultValue, model.tmpValue)) {
229
229
  // 组件默认值非公式
230
230
  var curValue = (0, formula_1.replaceExpression)(props.defaultValue);
231
231
  model.changeTmpValue(curValue);