amis 1.3.4 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/lib/RootRenderer.js +4 -1
- package/lib/RootRenderer.js.map +2 -2
- package/lib/components/Badge.d.ts +13 -1
- package/lib/components/Badge.js +16 -2
- package/lib/components/Badge.js.map +2 -2
- package/lib/components/Checkbox.d.ts +1 -1
- package/lib/components/Checkbox.js +1 -1
- package/lib/components/Checkbox.js.map +2 -2
- package/lib/components/Drawer.js +1 -1
- package/lib/components/Drawer.js.map +2 -2
- package/lib/components/Modal.js +1 -1
- package/lib/components/Modal.js.map +2 -2
- package/lib/components/RichText.d.ts +0 -3
- package/lib/components/RichText.js +1 -22
- package/lib/components/RichText.js.map +2 -2
- package/lib/components/Select.d.ts +7 -0
- package/lib/components/Select.js.map +2 -2
- package/lib/components/Steps.d.ts +3 -3
- package/lib/components/Steps.js.map +1 -1
- package/lib/components/WithRemoteConfig.d.ts +8 -0
- package/lib/components/WithRemoteConfig.js +28 -2
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/components/condition-builder/Field.js +0 -1
- package/lib/components/condition-builder/Field.js.map +2 -2
- package/lib/components/condition-builder/Value.js +2 -1
- package/lib/components/condition-builder/Value.js.map +2 -2
- package/lib/components/condition-builder/types.d.ts +5 -0
- package/lib/components/condition-builder/types.js.map +1 -1
- package/lib/env.d.ts +1 -1
- package/lib/env.js.map +1 -1
- package/lib/factory.d.ts +6 -2
- package/lib/factory.js +9 -4
- package/lib/factory.js.map +2 -2
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +1 -0
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +2 -1
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +2 -1
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.d.ts +6 -0
- package/lib/renderers/Action.js +9 -1
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/CRUD.d.ts +2 -2
- package/lib/renderers/CRUD.js +13 -21
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Card.js +11 -11
- package/lib/renderers/Card.js.map +2 -2
- package/lib/renderers/Collapse.d.ts +1 -1
- package/lib/renderers/Collapse.js +5 -1
- package/lib/renderers/Collapse.js.map +2 -2
- package/lib/renderers/Copyable.js +30 -28
- package/lib/renderers/Copyable.js.map +2 -2
- package/lib/renderers/Dialog.d.ts +0 -252
- package/lib/renderers/Dialog.js +3 -2
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/Drawer.js +2 -1
- package/lib/renderers/Drawer.js.map +2 -2
- package/lib/renderers/DropDownButton.d.ts +4 -0
- package/lib/renderers/DropDownButton.js +2 -2
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Form/ButtonGroupSelect.js +3 -0
- package/lib/renderers/Form/ButtonGroupSelect.js.map +2 -2
- package/lib/renderers/Form/Combo.d.ts +2 -0
- package/lib/renderers/Form/Combo.js +16 -1
- package/lib/renderers/Form/Combo.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.d.ts +0 -2
- package/lib/renderers/Form/Editor.d.ts +0 -2
- package/lib/renderers/Form/Editor.js +1 -1
- package/lib/renderers/Form/Editor.js.map +2 -2
- package/lib/renderers/Form/InputExcel.d.ts +5 -0
- package/lib/renderers/Form/InputExcel.js +24 -3
- package/lib/renderers/Form/InputExcel.js.map +2 -2
- package/lib/renderers/Form/InputImage.d.ts +8 -0
- package/lib/renderers/Form/InputImage.js +2 -1
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/InputNumber.d.ts +19 -5
- package/lib/renderers/Form/InputNumber.js +69 -7
- package/lib/renderers/Form/InputNumber.js.map +2 -2
- package/lib/renderers/Form/InputRange.js +7 -2
- package/lib/renderers/Form/InputRange.js.map +2 -2
- package/lib/renderers/Form/InputTable.d.ts +23 -5
- package/lib/renderers/Form/InputTable.js +32 -3
- package/lib/renderers/Form/InputTable.js.map +2 -2
- package/lib/renderers/Form/NestedSelect.js +2 -3
- package/lib/renderers/Form/NestedSelect.js.map +2 -2
- package/lib/renderers/Form/Options.js +3 -1
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/index.js +0 -10
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.js +3 -3
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/Json.js +5 -1
- package/lib/renderers/Json.js.map +2 -2
- package/lib/renderers/List.d.ts +5 -0
- package/lib/renderers/List.js +20 -14
- package/lib/renderers/List.js.map +2 -2
- package/lib/renderers/Page.d.ts +6 -0
- package/lib/renderers/Page.js +10 -2
- package/lib/renderers/Page.js.map +2 -2
- package/lib/renderers/Service.d.ts +10 -1
- package/lib/renderers/Service.js +85 -3
- package/lib/renderers/Service.js.map +2 -2
- package/lib/renderers/Steps.d.ts +4 -4
- package/lib/renderers/Steps.js +5 -2
- package/lib/renderers/Steps.js.map +2 -2
- package/lib/renderers/Table/TableBody.d.ts +5 -3
- package/lib/renderers/Table/TableBody.js +17 -11
- package/lib/renderers/Table/TableBody.js.map +2 -2
- package/lib/renderers/Table/TableCell.js +6 -2
- package/lib/renderers/Table/TableCell.js.map +2 -2
- package/lib/renderers/Table/TableContent.d.ts +3 -1
- package/lib/renderers/Table/TableContent.js +6 -2
- package/lib/renderers/Table/TableContent.js.map +2 -2
- package/lib/renderers/Table/TableRow.d.ts +1 -1
- package/lib/renderers/Table/TableRow.js +14 -13
- package/lib/renderers/Table/TableRow.js.map +2 -2
- package/lib/renderers/Table/index.d.ts +28 -3
- package/lib/renderers/Table/index.js +97 -54
- package/lib/renderers/Table/index.js.map +2 -2
- package/lib/schemaExtend.d.ts +1 -0
- package/lib/schemaExtend.js +59 -0
- package/lib/schemaExtend.js.map +13 -0
- package/lib/store/app.d.ts +0 -1
- package/lib/store/combo.d.ts +0 -2
- package/lib/store/crud.d.ts +3 -3
- package/lib/store/crud.js +41 -36
- package/lib/store/crud.js.map +2 -2
- package/lib/store/form.d.ts +0 -1
- package/lib/store/formItem.js +10 -6
- package/lib/store/formItem.js.map +2 -2
- package/lib/store/modal.d.ts +1 -1
- package/lib/store/modal.js +4 -0
- package/lib/store/modal.js.map +2 -2
- package/lib/store/root.d.ts +0 -1
- package/lib/store/service.d.ts +0 -1
- package/lib/store/service.js +0 -13
- package/lib/store/service.js.map +2 -2
- package/lib/store/table.d.ts +1 -2
- package/lib/store/table.js +44 -3
- package/lib/store/table.js.map +2 -2
- package/lib/themes/ang-ie11.css +278 -17
- package/lib/themes/ang.css +278 -17
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +278 -17
- package/lib/themes/antd.css +278 -17
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +278 -17
- package/lib/themes/cxd.css +278 -17
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +278 -17
- package/lib/themes/dark.css +278 -17
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +278 -17
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/api.js +12 -0
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/attachmentAdpator.d.ts +7 -0
- package/lib/utils/attachmentAdpator.js +82 -0
- package/lib/utils/attachmentAdpator.js.map +13 -0
- package/lib/utils/helper.d.ts +2 -0
- package/lib/utils/helper.js +14 -1
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/resize-sensor.js +6 -0
- package/lib/utils/resize-sensor.js.map +2 -2
- package/lib/utils/tpl-builtin.d.ts +1 -0
- package/lib/utils/tpl-builtin.js +24 -8
- package/lib/utils/tpl-builtin.js.map +2 -2
- package/lib/utils/validations.js +62 -5
- package/lib/utils/validations.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +369 -164
- package/scss/_properties.scss +6 -0
- package/scss/components/_badge.scss +15 -1
- package/scss/components/_list.scss +8 -0
- package/scss/components/_markdown.scss +266 -0
- package/scss/components/_spinner.scss +6 -2
- package/scss/components/_table.scss +4 -0
- package/scss/components/form/_form.scss +3 -17
- package/scss/components/form/_group.scss +4 -0
- package/scss/components/form/_nested-select.scss +4 -0
- package/scss/components/form/_number.scss +12 -1
- package/scss/themes/_common.scss +1 -0
- package/sdk/ang-ie11.css +324 -20
- package/sdk/ang.css +330 -20
- package/sdk/antd-ie11.css +324 -20
- package/sdk/antd.css +330 -20
- package/sdk/charts.js +15 -15
- package/sdk/color-picker.js +65 -69
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +324 -20
- package/sdk/cxd.css +330 -20
- package/sdk/dark-ie11.css +324 -20
- package/sdk/dark.css +330 -20
- package/sdk/exceljs.js +1 -1
- package/sdk/locale/de-DE.js +1 -0
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +27 -23
- package/sdk/rich-text.js +63 -63
- package/sdk/sdk-ie11.css +324 -20
- package/sdk/sdk.css +330 -20
- package/sdk/sdk.js +1146 -1138
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/RootRenderer.tsx +8 -3
- package/src/components/Badge.tsx +41 -6
- package/src/components/Checkbox.tsx +5 -2
- package/src/components/Drawer.tsx +3 -2
- package/src/components/Modal.tsx +3 -2
- package/src/components/RichText.tsx +2 -27
- package/src/components/Select.tsx +1 -0
- package/src/components/Steps.tsx +3 -3
- package/src/components/WithRemoteConfig.tsx +37 -2
- package/src/components/condition-builder/Field.tsx +1 -2
- package/src/components/condition-builder/Value.tsx +3 -0
- package/src/components/condition-builder/types.ts +6 -0
- package/src/env.tsx +1 -1
- package/src/factory.tsx +14 -4
- package/src/index.tsx +2 -0
- package/src/locale/de-DE.ts +1 -0
- package/src/locale/en-US.ts +2 -1
- package/src/locale/zh-CN.ts +2 -1
- package/src/renderers/Action.tsx +19 -1
- package/src/renderers/CRUD.tsx +15 -34
- package/src/renderers/Card.tsx +21 -15
- package/src/renderers/Collapse.tsx +5 -1
- package/src/renderers/Copyable.tsx +46 -44
- package/src/renderers/Dialog.tsx +3 -2
- package/src/renderers/Drawer.tsx +2 -1
- package/src/renderers/DropDownButton.tsx +8 -0
- package/src/renderers/Form/ButtonGroupSelect.tsx +3 -0
- package/src/renderers/Form/Combo.tsx +7 -0
- package/src/renderers/Form/Editor.tsx +19 -20
- package/src/renderers/Form/InputExcel.tsx +28 -3
- package/src/renderers/Form/InputImage.tsx +23 -8
- package/src/renderers/Form/InputNumber.tsx +113 -18
- package/src/renderers/Form/InputRange.tsx +5 -2
- package/src/renderers/Form/InputTable.tsx +88 -9
- package/src/renderers/Form/NestedSelect.tsx +1 -1
- package/src/renderers/Form/Options.tsx +3 -1
- package/src/renderers/Form/index.tsx +0 -15
- package/src/renderers/Form/wrapControl.tsx +2 -2
- package/src/renderers/Json.tsx +10 -1
- package/src/renderers/List.tsx +32 -19
- package/src/renderers/Page.tsx +19 -0
- package/src/renderers/Service.tsx +101 -3
- package/src/renderers/Steps.tsx +12 -9
- package/src/renderers/Table/TableBody.tsx +29 -10
- package/src/renderers/Table/TableCell.tsx +15 -1
- package/src/renderers/Table/TableContent.tsx +7 -1
- package/src/renderers/Table/TableRow.tsx +18 -17
- package/src/renderers/Table/index.tsx +117 -28
- package/src/schemaExtend.ts +66 -0
- package/src/store/crud.ts +34 -38
- package/src/store/formItem.ts +10 -6
- package/src/store/modal.ts +4 -0
- package/src/store/service.ts +0 -19
- package/src/store/table.ts +48 -0
- package/src/utils/api.ts +11 -0
- package/src/utils/attachmentAdpator.ts +90 -0
- package/src/utils/helper.ts +15 -0
- package/src/utils/resize-sensor.ts +7 -0
- package/src/utils/tpl-builtin.ts +36 -17
- package/src/utils/validations.ts +80 -12
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/InputNumber.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,6DAA0B;AAC1B,+BAAmE;AACnE,uEAA4B;AAC5B,uCAAuC;AACvC,0FAAuD;
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React from 'react';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport cx from 'classnames';\nimport {filter} from '../../utils/tpl';\nimport NumberInput from '../../components/NumberInput';\nimport {FormOptionsControl} from './Options';\n
|
11
|
+
"import React from 'react';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport cx from 'classnames';\nimport {filter} from '../../utils/tpl';\nimport NumberInput from '../../components/NumberInput';\nimport {FormOptionsControl} from './Options';\nimport Select, {normalizeOptions, Option} from '../../components/Select';\nimport {PlainObject} from '../../types';\n/**\n * 数字输入框\n * 文档:https://baidu.gitee.io/amis/docs/components/form/number\n */\nexport interface NumberControlSchema extends FormBaseControl {\n type: 'input-number';\n\n /**\n * 最大值\n */\n max?: number;\n\n /**\n * 最小值\n */\n min?: number;\n\n /**\n * 步长\n */\n step?: number;\n\n /**\n * 精度\n */\n precision?: number;\n\n /**\n * 默认当然是\n */\n showSteps?: boolean;\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n /**\n * 前缀\n */\n prefix?: string;\n /**\n * 后缀\n */\n suffix?: string;\n\n /**\n * 单位列表\n */\n unitOptions?: string | Array<Option> | string[] | PlainObject;\n\n /**\n * 是否千分分隔\n */\n kilobitSeparator?: boolean;\n /**\n * 只读\n */\n readOnly?: boolean;\n}\n\nexport interface NumberProps extends FormControlProps {\n placeholder?: string;\n max?: number | string;\n min?: number | string;\n step?: number;\n precision?: number;\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n /**\n * 前缀\n */\n prefix?: string;\n /**\n * 后缀\n */\n suffix?: string;\n /**\n * 是否千分分隔\n */\n kilobitSeparator?: boolean;\n /**\n * 只读\n */\n readOnly?: boolean;\n}\n\ninterface NumberState {\n // 数字单位,将会影响输出\n unit?: string;\n unitOptions?: Option[];\n}\n\nexport default class NumberControl extends React.Component<\n NumberProps,\n NumberState\n> {\n static defaultProps: Partial<NumberProps> = {\n step: 1,\n resetValue: ''\n };\n\n constructor(props: NumberProps) {\n super(props);\n this.handleChange = this.handleChange.bind(this);\n this.handleChangeUnit = this.handleChangeUnit.bind(this);\n const unit = this.getUnit();\n const unitOptions = normalizeOptions(props.unitOptions);\n this.state = {unit, unitOptions};\n }\n\n // 解析出单位\n getUnit() {\n const props = this.props;\n if (props.unitOptions && props.unitOptions.length) {\n const optionValues = normalizeOptions(props.unitOptions).map(\n option => option.value\n );\n // 如果有值就解析出来作为单位\n if (props.value && typeof props.value === 'string') {\n let unit = optionValues[0];\n // 先找长的字符,这样如果有 ab 和 b 两种后缀相同的也能识别\n optionValues.sort((a, b) => b.length - a.length);\n for (const optionValue of optionValues) {\n if (props.value.endsWith(optionValue)) {\n unit = optionValue;\n break;\n }\n }\n return unit;\n } else {\n // 没有值就使用第一个单位\n return optionValues[0];\n }\n }\n return undefined;\n }\n\n handleChange(inputValue: any) {\n const {classPrefix: ns, onChange, resetValue, unitOptions} = this.props;\n\n if (inputValue && typeof inputValue !== 'number') {\n return;\n }\n\n if (inputValue !== null && unitOptions && this.state.unit) {\n inputValue = inputValue + this.state.unit;\n }\n\n onChange(inputValue === null ? resetValue ?? null : inputValue);\n }\n\n filterNum(value: number | string | undefined) {\n if (typeof value !== 'number') {\n value = filter(value, this.props.data);\n value = /^[-]?\\d+/.test(value) ? +value : undefined;\n }\n return value;\n }\n\n // 单位选项的变更\n handleChangeUnit(option: Option) {\n let value = this.props.value;\n const prevUnitValue = this.state.unit;\n this.setState({unit: option.value}, () => {\n if (value) {\n value = value.replace(prevUnitValue, '');\n this.props.onChange(value + this.state.unit);\n }\n });\n }\n\n componentDidUpdate(prevProps: NumberProps) {\n if (this.props.value !== prevProps.value) {\n const unit = this.getUnit();\n this.setState({unit: unit});\n }\n if (this.props.unitOptions !== prevProps.unitOptions) {\n this.setState({unitOptions: normalizeOptions(this.props.unitOptions)});\n }\n }\n\n render(): JSX.Element {\n const {\n className,\n classPrefix: ns,\n value,\n step,\n precision,\n max,\n min,\n disabled,\n placeholder,\n showSteps,\n borderMode,\n suffix,\n prefix,\n kilobitSeparator,\n unitOptions,\n readOnly\n } = this.props;\n\n let precisionProps: any = {};\n\n const finalPrecision = this.filterNum(precision);\n if (typeof finalPrecision === 'number') {\n precisionProps.precision = finalPrecision;\n }\n\n const unit = this.state?.unit;\n // 数据格式化\n const formatter = (value: string | number) => {\n // 增加千分分隔\n if (kilobitSeparator && value) {\n value = (value + '').replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n }\n return (prefix ? prefix : '') + value + (suffix ? suffix : '');\n };\n // 将数字还原\n const parser = (value: string) => {\n if (value) {\n prefix && (value = value.replace(prefix, ''));\n suffix && (value = value.replace(suffix, ''));\n kilobitSeparator && (value = value.replace(/,/g, ''));\n }\n return value;\n };\n\n const finalValue =\n unit && value && typeof value === 'string'\n ? value.replace(unit, '')\n : value;\n\n return (\n <div\n className={cx(\n `${ns}NumberControl`,\n {\n [`${ns}NumberControl--withUnit`]: unitOptions\n },\n className\n )}\n >\n <NumberInput\n value={finalValue}\n step={step}\n max={this.filterNum(max)}\n min={this.filterNum(min)}\n formatter={formatter}\n parser={parser}\n onChange={this.handleChange}\n disabled={disabled}\n placeholder={placeholder}\n precision={finalPrecision}\n showSteps={showSteps}\n borderMode={borderMode}\n readOnly={readOnly}\n />\n {unitOptions ? (\n <Select\n value={unit}\n clearable={false}\n options={this.state.unitOptions || []}\n onChange={this.handleChangeUnit}\n />\n ) : null}\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-number'\n})\nexport class NumberControlRenderer extends NumberControl {\n static defaultProps: Partial<FormControlProps> = {\n validations: 'isNumeric',\n ...NumberControl.defaultProps\n };\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -9,6 +9,7 @@ var isEqual_1 = (0, tslib_1.__importDefault)(require("lodash/isEqual"));
|
|
9
9
|
var Item_1 = require("./Item");
|
10
10
|
var Range_1 = (0, tslib_1.__importDefault)(require("../../components/Range"));
|
11
11
|
var icons_1 = require("../../components/icons");
|
12
|
+
var tpl_builtin_1 = require("../../utils/tpl-builtin");
|
12
13
|
function formatValue(value, props) {
|
13
14
|
if (props.multiple) {
|
14
15
|
if (typeof value === 'string') {
|
@@ -100,7 +101,7 @@ var RangeControl = /** @class */ (function (_super) {
|
|
100
101
|
};
|
101
102
|
RangeControl.prototype.handleChange = function (value) {
|
102
103
|
this.setState({
|
103
|
-
value: value,
|
104
|
+
value: (0, tpl_builtin_1.stripNumber)(value),
|
104
105
|
minValue: value.min,
|
105
106
|
maxValue: value.max
|
106
107
|
});
|
@@ -141,16 +142,20 @@ var RangeControl = /** @class */ (function (_super) {
|
|
141
142
|
max: value.max
|
142
143
|
};
|
143
144
|
}
|
145
|
+
else {
|
146
|
+
endValue = (0, tpl_builtin_1.stripNumber)(value);
|
147
|
+
}
|
144
148
|
var onChange = this.props.onChange;
|
145
149
|
this.setState({
|
146
150
|
value: value
|
147
151
|
}, function () { return onChange(endValue); });
|
148
152
|
};
|
149
153
|
RangeControl.prototype.getStepPrecision = function () {
|
154
|
+
var _a;
|
150
155
|
var step = this.props.step;
|
151
156
|
return typeof step !== 'number' || step >= 1 || step < 0
|
152
157
|
? 0
|
153
|
-
: step.toString().split('.')[1].length;
|
158
|
+
: (_a = step.toString().split('.')[1]) === null || _a === void 0 ? void 0 : _a.length;
|
154
159
|
};
|
155
160
|
RangeControl.prototype.getValue = function (value, type) {
|
156
161
|
var _a = this.props, max = _a.max, min = _a.min, step = _a.step;
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/InputRange.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 isNumber from 'lodash/isNumber';\nimport isObject from 'lodash/isObject';\nimport isEqual from 'lodash/isEqual';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\n\nimport InputRange from '../../components/Range';\nimport {Icon} from '../../components/icons';\nimport {FormOptionsControl} from './Options';\n\n/**\n * Range\n * 文档:https://baidu.gitee.io/amis/docs/components/form/range\n */\nexport interface RangeControlSchema extends FormBaseControl {\n type: 'input-range';\n\n /**\n * 最大值\n */\n max?: number;\n\n /**\n * 最小值\n */\n min?: number;\n\n /**\n * 步长\n */\n step?: number;\n\n /**\n * 单位\n */\n unit?: string;\n}\n\nexport interface RangeProps extends FormControlProps {\n max?: number;\n min?: number;\n step?: number;\n unit?: string;\n clearable?: boolean;\n name?: string;\n showInput?: boolean;\n className?: string;\n value: any;\n onChange: (value: any) => void;\n multiple?: boolean;\n joinValues?: boolean;\n delimiter?: string;\n}\n\nexport interface DefaultProps {\n max: number;\n min: number;\n step: number;\n unit: string;\n clearable: boolean;\n disabled: boolean;\n showInput: boolean;\n multiple: boolean;\n joinValues: boolean;\n delimiter: string;\n}\n\nexport function formatValue(\n value: string | number | {min: number; max: number},\n props: Partial<RangeProps>\n) {\n if (props.multiple) {\n if (typeof value === 'string') {\n const [minValue, maxValue] = value\n .split(props.delimiter || ',')\n .map(v => Number(v));\n return {\n min:\n (props.min && minValue < props.min && props.min) ||\n minValue ||\n props.min,\n max:\n (props.max && maxValue > props.max && props.max) ||\n maxValue ||\n props.max\n };\n } else if (typeof value === 'object') {\n return {\n min:\n (props.min && value.min < props.min && props.min) ||\n value.min ||\n props.min,\n max:\n (props.max && value.max > props.max && props.max) ||\n value.max ||\n props.max\n };\n }\n }\n return value ?? props.min;\n}\n\ntype PropsWithDefaults = RangeProps & DefaultProps;\n\nexport interface RangeState {\n value:\n | {\n min?: number;\n max?: number;\n }\n | number\n | string\n | undefined;\n minValue?: any;\n maxValue?: any;\n}\n\nexport default class RangeControl extends React.PureComponent<\n RangeProps,\n RangeState\n> {\n midLabel?: HTMLSpanElement;\n\n static defaultProps: DefaultProps = {\n max: 100,\n min: 0,\n step: 1,\n unit: '',\n clearable: true,\n disabled: false,\n showInput: false,\n multiple: false,\n joinValues: true,\n delimiter: ','\n };\n\n constructor(props: RangeProps) {\n super(props);\n const {value: propsValue, multiple, delimiter, min, max} = this.props;\n const value = formatValue(propsValue, {\n multiple,\n delimiter,\n min,\n max\n });\n\n this.state = {\n value: value,\n minValue: isObject(value) ? value.min : min,\n maxValue: isObject(value) ? value.max : max\n };\n this.handleChange = this.handleChange.bind(this);\n this.handleEnd = this.handleEnd.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.midLabelRef = this.midLabelRef.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleMinInputBlur = this.handleMinInputBlur.bind(this);\n this.handleMaxInputBlur = this.handleMaxInputBlur.bind(this);\n this.handleMinInputChange = this.handleMinInputChange.bind(this);\n this.handleMaxInputChange = this.handleMaxInputChange.bind(this);\n }\n\n componentDidMount() {\n this.updateStyle();\n }\n\n componentDidUpdate(prevProps: RangeProps) {\n const {value} = prevProps;\n const {value: nextPropsValue, multiple, delimiter, min, max} = this.props;\n if (value !== nextPropsValue) {\n const value = formatValue(nextPropsValue, {\n multiple,\n delimiter,\n min,\n max\n });\n\n this.setState({\n value: value,\n minValue: isObject(value) ? value.min : min,\n maxValue: isObject(value) ? value.max : max\n });\n }\n\n if (prevProps.showInput !== this.props.showInput) {\n this.updateStyle();\n }\n }\n\n updateStyle() {\n const {showInput, classPrefix: ns, max, min} = this.props;\n\n let offsetWidth = (this.midLabel as HTMLSpanElement).offsetWidth;\n const midValue = parseFloat(\n ((max! + min! - 0.000001) / 2).toFixed(this.getStepPrecision())\n );\n\n let left = `${100 * ((midValue - min!) / (max! - min!))}%`;\n (this.midLabel as HTMLSpanElement).style.left = left;\n }\n\n midLabelRef(ref: any) {\n this.midLabel = ref;\n }\n\n handleChange(value: any) {\n this.setState({\n value: value,\n minValue: value.min,\n maxValue: value.max\n });\n }\n\n clearValue() {\n const {multiple, joinValues, delimiter, min, max, onChange} = this.props;\n if (multiple) {\n this.setState(\n {\n value: {\n min: min,\n max: max\n },\n minValue: min,\n maxValue: max\n },\n () =>\n onChange(\n joinValues\n ? [min, max].join(delimiter || ',')\n : {\n min: min,\n max: max\n }\n )\n );\n } else {\n this.setState(\n {\n value: min\n },\n () => onChange(min)\n );\n }\n }\n\n handleEnd(value: any) {\n const {multiple, joinValues, delimiter} = this.props;\n let endValue = value;\n if (multiple) {\n endValue = joinValues\n ? [value.min, value.max].join(delimiter || ',')\n : {\n min: value.min,\n max: value.max\n };\n }\n const {onChange} = this.props;\n this.setState(\n {\n value\n },\n () => onChange(endValue)\n );\n }\n\n getStepPrecision() {\n const {step} = this.props;\n\n return typeof step !== 'number' || step >= 1 || step < 0\n ? 0\n : step.toString().split('.')[1].length;\n }\n\n getValue(value: any, type?: string) {\n const {max, min, step} = this.props as PropsWithDefaults;\n const {value: stateValue} = this.state;\n\n if (\n value === '' ||\n value === '-' ||\n new RegExp('^[-]?\\\\d+[.]{1}[0]{0,' + this.getStepPrecision() + '}$').test(\n value\n )\n ) {\n return value;\n }\n\n value = Math.round(parseFloat(value) / step) * step;\n value =\n step < 1 ? parseFloat(value.toFixed(this.getStepPrecision())) : ~~value;\n\n switch (type) {\n case 'min': {\n if (isObject(stateValue) && isNumber(stateValue.max)) {\n if (value >= stateValue.max && min <= stateValue.max - step) {\n return stateValue.max - step;\n }\n if (value < stateValue.max - step) {\n return value;\n }\n }\n return min;\n }\n case 'max':\n return isObject(stateValue) && isNumber(stateValue.min)\n ? (value > max && max) ||\n (value <= stateValue.min && stateValue.min + step) ||\n value\n : max;\n default:\n return (value < min && min) || (value > max && max) || value;\n }\n }\n\n handleInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n const value = this.getValue(evt.target.value);\n this.setState(\n {\n value\n },\n () => this.props.onChange(value)\n );\n }\n\n handleMinInputBlur(evt: React.ChangeEvent<HTMLInputElement>) {\n const {joinValues, delimiter} = this.props;\n const minValue = this.getValue(evt.target.value, 'min');\n const {value} = this.state;\n isObject(value)\n ? this.setState(\n {\n value: {\n min: minValue,\n max: value.max\n },\n minValue: minValue\n },\n () =>\n this.props.onChange(\n joinValues\n ? [minValue, value.max].join(delimiter || ',')\n : {\n min: minValue,\n max: value.max\n }\n )\n )\n : null;\n }\n\n handleMaxInputBlur(evt: React.ChangeEvent<HTMLInputElement>) {\n const {joinValues, delimiter} = this.props;\n const maxValue = this.getValue(evt.target.value, 'max');\n const {value} = this.state;\n\n if (isObject(value)) {\n this.setState(\n {\n value: {\n min: value.min,\n max: maxValue\n },\n maxValue: maxValue\n },\n () =>\n this.props.onChange(\n joinValues\n ? [value.min, maxValue].join(delimiter || ',')\n : {\n min: value.min,\n max: maxValue\n }\n )\n );\n }\n }\n\n handleMinInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n this.setState({\n minValue: evt.target.value\n });\n }\n\n handleMaxInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n this.setState({\n maxValue: evt.target.value\n });\n }\n\n render() {\n const {\n max,\n min,\n step,\n unit,\n clearable,\n name,\n disabled,\n className,\n showInput,\n multiple,\n classnames: cx,\n classPrefix: ns\n } = this.props as PropsWithDefaults;\n const midValue = ((max + min - 0.000001) / 2).toFixed(\n this.getStepPrecision()\n );\n\n return (\n <div\n className={cx(\n 'RangeControl',\n {\n 'RangeControl--withInput': showInput,\n 'RangeControl--clearable': clearable,\n 'is-multiple': multiple\n },\n className\n )}\n >\n <InputRange\n classPrefix={ns}\n value={this.state.value}\n disabled={disabled}\n onChange={this.handleChange}\n onChangeComplete={this.handleEnd}\n max={max}\n min={min}\n step={step}\n formatLabel={(value: any) => value + unit}\n multiple={multiple}\n />\n\n <span\n className={cx('InputRange-label InputRange-label--mid')}\n ref={this.midLabelRef}\n >\n <span className={cx('InputRange-labelContainer')}>\n {midValue}\n {unit}\n </span>\n </span>\n\n {showInput ? (\n multiple && isObject(this.state.value) ? (\n <div className={cx('InputRange-input is-multiple')}>\n <input\n className={this.state.value.min !== min ? 'is-active' : ''}\n type=\"text\"\n name={name}\n value={this.state.minValue}\n disabled={disabled}\n onChange={this.handleMinInputChange}\n onBlur={this.handleMinInputBlur}\n />\n <span className={cx('InputRange-input-separator')}> - </span>\n <input\n className={this.state.value.max !== max ? 'is-active' : ''}\n type=\"text\"\n name={name}\n value={this.state.maxValue}\n disabled={disabled}\n onChange={this.handleMaxInputChange}\n onBlur={this.handleMaxInputBlur}\n />\n </div>\n ) : (\n <div className={cx('InputRange-input')}>\n <input\n className={this.state.value !== min ? 'is-active' : ''}\n type=\"text\"\n name={name}\n value={!isObject(this.state.value) ? this.state.value : 0}\n disabled={disabled}\n onChange={this.handleInputChange}\n />\n </div>\n )\n ) : null}\n\n {clearable && !disabled && showInput ? (\n <a\n onClick={() => this.clearValue()}\n className={cx('InputRange-clear', {\n 'is-active': multiple\n ? isEqual(this.state.value, {min: min, max: max})\n : this.state.value !== min\n })}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-range'\n})\nexport class RangeControlRenderer extends RangeControl {}\n"
|
11
|
+
"import React from 'react';\nimport isNumber from 'lodash/isNumber';\nimport isObject from 'lodash/isObject';\nimport isEqual from 'lodash/isEqual';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\n\nimport InputRange from '../../components/Range';\nimport {Icon} from '../../components/icons';\nimport {FormOptionsControl} from './Options';\nimport {stripNumber} from '../../utils/tpl-builtin';\n\n/**\n * Range\n * 文档:https://baidu.gitee.io/amis/docs/components/form/range\n */\nexport interface RangeControlSchema extends FormBaseControl {\n type: 'input-range';\n\n /**\n * 最大值\n */\n max?: number;\n\n /**\n * 最小值\n */\n min?: number;\n\n /**\n * 步长\n */\n step?: number;\n\n /**\n * 单位\n */\n unit?: string;\n}\n\nexport interface RangeProps extends FormControlProps {\n max?: number;\n min?: number;\n step?: number;\n unit?: string;\n clearable?: boolean;\n name?: string;\n showInput?: boolean;\n className?: string;\n value: any;\n onChange: (value: any) => void;\n multiple?: boolean;\n joinValues?: boolean;\n delimiter?: string;\n}\n\nexport interface DefaultProps {\n max: number;\n min: number;\n step: number;\n unit: string;\n clearable: boolean;\n disabled: boolean;\n showInput: boolean;\n multiple: boolean;\n joinValues: boolean;\n delimiter: string;\n}\n\nexport function formatValue(\n value: string | number | {min: number; max: number},\n props: Partial<RangeProps>\n) {\n if (props.multiple) {\n if (typeof value === 'string') {\n const [minValue, maxValue] = value\n .split(props.delimiter || ',')\n .map(v => Number(v));\n return {\n min:\n (props.min && minValue < props.min && props.min) ||\n minValue ||\n props.min,\n max:\n (props.max && maxValue > props.max && props.max) ||\n maxValue ||\n props.max\n };\n } else if (typeof value === 'object') {\n return {\n min:\n (props.min && value.min < props.min && props.min) ||\n value.min ||\n props.min,\n max:\n (props.max && value.max > props.max && props.max) ||\n value.max ||\n props.max\n };\n }\n }\n return value ?? props.min;\n}\n\ntype PropsWithDefaults = RangeProps & DefaultProps;\n\nexport interface RangeState {\n value:\n | {\n min?: number;\n max?: number;\n }\n | number\n | string\n | undefined;\n minValue?: any;\n maxValue?: any;\n}\n\nexport default class RangeControl extends React.PureComponent<\n RangeProps,\n RangeState\n> {\n midLabel?: HTMLSpanElement;\n\n static defaultProps: DefaultProps = {\n max: 100,\n min: 0,\n step: 1,\n unit: '',\n clearable: true,\n disabled: false,\n showInput: false,\n multiple: false,\n joinValues: true,\n delimiter: ','\n };\n\n constructor(props: RangeProps) {\n super(props);\n const {value: propsValue, multiple, delimiter, min, max} = this.props;\n const value = formatValue(propsValue, {\n multiple,\n delimiter,\n min,\n max\n });\n\n this.state = {\n value: value,\n minValue: isObject(value) ? value.min : min,\n maxValue: isObject(value) ? value.max : max\n };\n this.handleChange = this.handleChange.bind(this);\n this.handleEnd = this.handleEnd.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.midLabelRef = this.midLabelRef.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleMinInputBlur = this.handleMinInputBlur.bind(this);\n this.handleMaxInputBlur = this.handleMaxInputBlur.bind(this);\n this.handleMinInputChange = this.handleMinInputChange.bind(this);\n this.handleMaxInputChange = this.handleMaxInputChange.bind(this);\n }\n\n componentDidMount() {\n this.updateStyle();\n }\n\n componentDidUpdate(prevProps: RangeProps) {\n const {value} = prevProps;\n const {value: nextPropsValue, multiple, delimiter, min, max} = this.props;\n if (value !== nextPropsValue) {\n const value = formatValue(nextPropsValue, {\n multiple,\n delimiter,\n min,\n max\n });\n\n this.setState({\n value: value,\n minValue: isObject(value) ? value.min : min,\n maxValue: isObject(value) ? value.max : max\n });\n }\n\n if (prevProps.showInput !== this.props.showInput) {\n this.updateStyle();\n }\n }\n\n updateStyle() {\n const {showInput, classPrefix: ns, max, min} = this.props;\n\n let offsetWidth = (this.midLabel as HTMLSpanElement).offsetWidth;\n const midValue = parseFloat(\n ((max! + min! - 0.000001) / 2).toFixed(this.getStepPrecision())\n );\n\n let left = `${100 * ((midValue - min!) / (max! - min!))}%`;\n (this.midLabel as HTMLSpanElement).style.left = left;\n }\n\n midLabelRef(ref: any) {\n this.midLabel = ref;\n }\n\n handleChange(value: any) {\n this.setState({\n value: stripNumber(value),\n minValue: value.min,\n maxValue: value.max\n });\n }\n\n clearValue() {\n const {multiple, joinValues, delimiter, min, max, onChange} = this.props;\n if (multiple) {\n this.setState(\n {\n value: {\n min: min,\n max: max\n },\n minValue: min,\n maxValue: max\n },\n () =>\n onChange(\n joinValues\n ? [min, max].join(delimiter || ',')\n : {\n min: min,\n max: max\n }\n )\n );\n } else {\n this.setState(\n {\n value: min\n },\n () => onChange(min)\n );\n }\n }\n\n handleEnd(value: any) {\n const {multiple, joinValues, delimiter} = this.props;\n let endValue = value;\n if (multiple) {\n endValue = joinValues\n ? [value.min, value.max].join(delimiter || ',')\n : {\n min: value.min,\n max: value.max\n };\n } else {\n endValue = stripNumber(value);\n }\n const {onChange} = this.props;\n this.setState(\n {\n value\n },\n () => onChange(endValue)\n );\n }\n\n getStepPrecision() {\n const {step} = this.props;\n\n return typeof step !== 'number' || step >= 1 || step < 0\n ? 0\n : step.toString().split('.')[1]?.length;\n }\n\n getValue(value: any, type?: string) {\n const {max, min, step} = this.props as PropsWithDefaults;\n const {value: stateValue} = this.state;\n\n if (\n value === '' ||\n value === '-' ||\n new RegExp('^[-]?\\\\d+[.]{1}[0]{0,' + this.getStepPrecision() + '}$').test(\n value\n )\n ) {\n return value;\n }\n\n value = Math.round(parseFloat(value) / step) * step;\n value =\n step < 1 ? parseFloat(value.toFixed(this.getStepPrecision())) : ~~value;\n\n switch (type) {\n case 'min': {\n if (isObject(stateValue) && isNumber(stateValue.max)) {\n if (value >= stateValue.max && min <= stateValue.max - step) {\n return stateValue.max - step;\n }\n if (value < stateValue.max - step) {\n return value;\n }\n }\n return min;\n }\n case 'max':\n return isObject(stateValue) && isNumber(stateValue.min)\n ? (value > max && max) ||\n (value <= stateValue.min && stateValue.min + step) ||\n value\n : max;\n default:\n return (value < min && min) || (value > max && max) || value;\n }\n }\n\n handleInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n const value = this.getValue(evt.target.value);\n this.setState(\n {\n value\n },\n () => this.props.onChange(value)\n );\n }\n\n handleMinInputBlur(evt: React.ChangeEvent<HTMLInputElement>) {\n const {joinValues, delimiter} = this.props;\n const minValue = this.getValue(evt.target.value, 'min');\n const {value} = this.state;\n isObject(value)\n ? this.setState(\n {\n value: {\n min: minValue,\n max: value.max\n },\n minValue: minValue\n },\n () =>\n this.props.onChange(\n joinValues\n ? [minValue, value.max].join(delimiter || ',')\n : {\n min: minValue,\n max: value.max\n }\n )\n )\n : null;\n }\n\n handleMaxInputBlur(evt: React.ChangeEvent<HTMLInputElement>) {\n const {joinValues, delimiter} = this.props;\n const maxValue = this.getValue(evt.target.value, 'max');\n const {value} = this.state;\n\n if (isObject(value)) {\n this.setState(\n {\n value: {\n min: value.min,\n max: maxValue\n },\n maxValue: maxValue\n },\n () =>\n this.props.onChange(\n joinValues\n ? [value.min, maxValue].join(delimiter || ',')\n : {\n min: value.min,\n max: maxValue\n }\n )\n );\n }\n }\n\n handleMinInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n this.setState({\n minValue: evt.target.value\n });\n }\n\n handleMaxInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n this.setState({\n maxValue: evt.target.value\n });\n }\n\n render() {\n const {\n max,\n min,\n step,\n unit,\n clearable,\n name,\n disabled,\n className,\n showInput,\n multiple,\n classnames: cx,\n classPrefix: ns\n } = this.props as PropsWithDefaults;\n const midValue = ((max + min - 0.000001) / 2).toFixed(\n this.getStepPrecision()\n );\n\n return (\n <div\n className={cx(\n 'RangeControl',\n {\n 'RangeControl--withInput': showInput,\n 'RangeControl--clearable': clearable,\n 'is-multiple': multiple\n },\n className\n )}\n >\n <InputRange\n classPrefix={ns}\n value={this.state.value}\n disabled={disabled}\n onChange={this.handleChange}\n onChangeComplete={this.handleEnd}\n max={max}\n min={min}\n step={step}\n formatLabel={(value: any) => value + unit}\n multiple={multiple}\n />\n\n <span\n className={cx('InputRange-label InputRange-label--mid')}\n ref={this.midLabelRef}\n >\n <span className={cx('InputRange-labelContainer')}>\n {midValue}\n {unit}\n </span>\n </span>\n\n {showInput ? (\n multiple && isObject(this.state.value) ? (\n <div className={cx('InputRange-input is-multiple')}>\n <input\n className={this.state.value.min !== min ? 'is-active' : ''}\n type=\"text\"\n name={name}\n value={this.state.minValue}\n disabled={disabled}\n onChange={this.handleMinInputChange}\n onBlur={this.handleMinInputBlur}\n />\n <span className={cx('InputRange-input-separator')}> - </span>\n <input\n className={this.state.value.max !== max ? 'is-active' : ''}\n type=\"text\"\n name={name}\n value={this.state.maxValue}\n disabled={disabled}\n onChange={this.handleMaxInputChange}\n onBlur={this.handleMaxInputBlur}\n />\n </div>\n ) : (\n <div className={cx('InputRange-input')}>\n <input\n className={this.state.value !== min ? 'is-active' : ''}\n type=\"text\"\n name={name}\n value={!isObject(this.state.value) ? this.state.value : 0}\n disabled={disabled}\n onChange={this.handleInputChange}\n />\n </div>\n )\n ) : null}\n\n {clearable && !disabled && showInput ? (\n <a\n onClick={() => this.clearValue()}\n className={cx('InputRange-clear', {\n 'is-active': multiple\n ? isEqual(this.state.value, {min: min, max: max})\n : this.state.value !== min\n })}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-range'\n})\nexport class RangeControlRenderer extends RangeControl {}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -10,6 +10,22 @@ export interface TableControlSchema extends FormBaseControl, Omit<TableSchema, '
|
|
10
10
|
* 可新增
|
11
11
|
*/
|
12
12
|
addable?: boolean;
|
13
|
+
/**
|
14
|
+
* 可复制新增
|
15
|
+
*/
|
16
|
+
copyable?: boolean;
|
17
|
+
/**
|
18
|
+
* 复制按钮文字
|
19
|
+
*/
|
20
|
+
copyBtnLabel?: string;
|
21
|
+
/**
|
22
|
+
* 复制按钮图标
|
23
|
+
*/
|
24
|
+
copyBtnIcon?: string;
|
25
|
+
/**
|
26
|
+
* 是否显示复制按钮
|
27
|
+
*/
|
28
|
+
copyAddBtn?: boolean;
|
13
29
|
/**
|
14
30
|
* 是否可以拖拽排序
|
15
31
|
*/
|
@@ -19,11 +35,11 @@ export interface TableControlSchema extends FormBaseControl, Omit<TableSchema, '
|
|
19
35
|
*/
|
20
36
|
addApi?: SchemaApi;
|
21
37
|
/**
|
22
|
-
*
|
38
|
+
* 新增按钮文字
|
23
39
|
*/
|
24
40
|
addBtnLabel?: string;
|
25
41
|
/**
|
26
|
-
*
|
42
|
+
* 新增按钮图标
|
27
43
|
*/
|
28
44
|
addBtnIcon?: string;
|
29
45
|
/**
|
@@ -45,11 +61,11 @@ export interface TableControlSchema extends FormBaseControl, Omit<TableSchema, '
|
|
45
61
|
/**
|
46
62
|
* 更新按钮名称
|
47
63
|
*/
|
48
|
-
|
64
|
+
editBtnLabel?: string;
|
49
65
|
/**
|
50
66
|
* 更新按钮图标
|
51
67
|
*/
|
52
|
-
|
68
|
+
editBtnIcon?: string;
|
53
69
|
/**
|
54
70
|
* 确认按钮文字
|
55
71
|
*/
|
@@ -122,7 +138,8 @@ export default class FormTable extends React.Component<TableProps, TableState> {
|
|
122
138
|
placeholder: string;
|
123
139
|
scaffold: {};
|
124
140
|
addBtnIcon: string;
|
125
|
-
|
141
|
+
copyBtnIcon: string;
|
142
|
+
editBtnIcon: string;
|
126
143
|
deleteBtnIcon: string;
|
127
144
|
confirmBtnIcon: string;
|
128
145
|
cancelBtnIcon: string;
|
@@ -141,6 +158,7 @@ export default class FormTable extends React.Component<TableProps, TableState> {
|
|
141
158
|
validate(): Promise<string | void>;
|
142
159
|
emitValue(): void;
|
143
160
|
doAction(action: Action, ctx: RendererData, ...rest: Array<any>): Promise<any>;
|
161
|
+
copyItem(index: number): void;
|
144
162
|
addItem(index: number): void;
|
145
163
|
startEdit(index: number, isCreate?: boolean): void;
|
146
164
|
confirmEdit(): Promise<void>;
|
@@ -199,6 +199,23 @@ var FormTable = /** @class */ (function (_super) {
|
|
199
199
|
});
|
200
200
|
});
|
201
201
|
};
|
202
|
+
FormTable.prototype.copyItem = function (index) {
|
203
|
+
var _this = this;
|
204
|
+
var needConfirm = this.props.needConfirm;
|
205
|
+
var items = this.state.items.concat();
|
206
|
+
items.splice(index + 1, 0, items[index]);
|
207
|
+
index = Math.min(index + 1, items.length - 1);
|
208
|
+
this.setState({
|
209
|
+
items: items
|
210
|
+
}, function () {
|
211
|
+
if (needConfirm === false) {
|
212
|
+
_this.emitValue();
|
213
|
+
}
|
214
|
+
else {
|
215
|
+
_this.startEdit(index, true);
|
216
|
+
}
|
217
|
+
});
|
218
|
+
};
|
202
219
|
FormTable.prototype.addItem = function (index) {
|
203
220
|
var _this = this;
|
204
221
|
var _a = this.props, needConfirm = _a.needConfirm, scaffold = _a.scaffold, columns = _a.columns;
|
@@ -383,6 +400,16 @@ var FormTable = /** @class */ (function (_super) {
|
|
383
400
|
}
|
384
401
|
});
|
385
402
|
}
|
403
|
+
if (props.copyable && props.showCopyBtn !== false) {
|
404
|
+
btns.push({
|
405
|
+
children: function (_a) {
|
406
|
+
var key = _a.key, rowIndex = _a.rowIndex, offset = _a.offset;
|
407
|
+
return ~_this.state.editIndex && needConfirm !== false ? null : (react_1.default.createElement(Button_1.default, { classPrefix: ns, size: "sm", key: key, level: "link", tooltip: __('Table.copyRow'), tooltipContainer: env && env.getModalContainer ? env.getModalContainer : undefined, onClick: _this.copyItem.bind(_this, rowIndex + offset, undefined) },
|
408
|
+
props.copyBtnLabel ? react_1.default.createElement("span", null, props.copyBtnLabel) : null,
|
409
|
+
props.copyBtnIcon ? (react_1.default.createElement(icons_1.Icon, { icon: props.copyBtnIcon, className: "icon" })) : null));
|
410
|
+
}
|
411
|
+
});
|
412
|
+
}
|
386
413
|
if (props.needConfirm === false) {
|
387
414
|
columns = columns.map(function (column) {
|
388
415
|
var quickEdit = column.quickEdit;
|
@@ -407,8 +434,8 @@ var FormTable = /** @class */ (function (_super) {
|
|
407
434
|
return ~_this.state.editIndex || (data && data.__isPlaceholder) ? null : (react_1.default.createElement(Button_1.default, { classPrefix: ns, size: "sm", key: key, level: "link", tooltip: __('Table.editRow'), tooltipContainer: env && env.getModalContainer
|
408
435
|
? env.getModalContainer
|
409
436
|
: undefined, onClick: function () { return _this.startEdit(rowIndex + offset); } },
|
410
|
-
props.updateBtnLabel ? (react_1.default.createElement("span", null, props.updateBtnLabel)) : null,
|
411
|
-
props.updateBtnIcon ? (react_1.default.createElement(icons_1.Icon, { icon: props.updateBtnIcon, className: "icon" })) : null));
|
437
|
+
props.updateBtnLabel || props.editBtnLabel ? (react_1.default.createElement("span", null, props.updateBtnLabel || props.editBtnLabel)) : null,
|
438
|
+
typeof props.updateBtnIcon !== 'undefined' ? (props.updateBtnIcon ? (react_1.default.createElement(icons_1.Icon, { icon: props.updateBtnIcon, className: "icon" })) : null) : props.editBtnIcon ? (react_1.default.createElement(icons_1.Icon, { icon: props.editBtnIcon, className: "icon" })) : null));
|
412
439
|
}
|
413
440
|
});
|
414
441
|
btns.push({
|
@@ -608,7 +635,8 @@ var FormTable = /** @class */ (function (_super) {
|
|
608
635
|
placeholder: '空',
|
609
636
|
scaffold: {},
|
610
637
|
addBtnIcon: 'plus',
|
611
|
-
|
638
|
+
copyBtnIcon: 'copy',
|
639
|
+
editBtnIcon: 'pencil',
|
612
640
|
deleteBtnIcon: 'minus',
|
613
641
|
confirmBtnIcon: 'check',
|
614
642
|
cancelBtnIcon: 'close',
|
@@ -623,6 +651,7 @@ var FormTable = /** @class */ (function (_super) {
|
|
623
651
|
'showAddBtn',
|
624
652
|
'addable',
|
625
653
|
'removable',
|
654
|
+
'copyable',
|
626
655
|
'editable',
|
627
656
|
'addApi',
|
628
657
|
'updateApi',
|