amis 2.0.2 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/esm/Schema.d.ts +1 -1
- package/esm/compat.js +1 -1
- package/esm/index.js +1 -1
- package/esm/preset.js +1 -1
- package/esm/renderers/Action.js +8 -5
- package/esm/renderers/Alert.js +1 -1
- package/esm/renderers/AnchorNav.js +1 -1
- package/esm/renderers/App.js +1 -1
- package/esm/renderers/Audio.js +1 -1
- package/esm/renderers/Avatar.js +1 -1
- package/esm/renderers/BarCode.js +1 -1
- package/esm/renderers/Breadcrumb.js +1 -1
- package/esm/renderers/ButtonGroup.js +1 -1
- package/esm/renderers/CRUD.d.ts +1 -1
- package/esm/renderers/CRUD.js +13 -4
- package/esm/renderers/CRUD2.js +1 -1
- package/esm/renderers/Calendar.js +1 -1
- package/esm/renderers/Card.js +1 -1
- package/esm/renderers/Card2.js +1 -1
- package/esm/renderers/Cards.d.ts +1 -0
- package/esm/renderers/Cards.js +13 -8
- package/esm/renderers/Carousel.js +1 -1
- package/esm/renderers/Chart.js +2 -1
- package/esm/renderers/Code.js +1 -1
- package/esm/renderers/Collapse.js +1 -1
- package/esm/renderers/CollapseGroup.js +1 -1
- package/esm/renderers/Color.js +1 -1
- package/esm/renderers/Container.js +1 -1
- package/esm/renderers/Copyable.js +5 -4
- package/esm/renderers/Custom.js +1 -1
- package/esm/renderers/Date.js +1 -1
- package/esm/renderers/Dialog.d.ts +49 -43
- package/esm/renderers/Dialog.js +3 -3
- package/esm/renderers/Divider.js +1 -1
- package/esm/renderers/Drawer.js +1 -1
- package/esm/renderers/DropDownButton.d.ts +1 -1
- package/esm/renderers/DropDownButton.js +16 -5
- package/esm/renderers/Each.js +1 -1
- package/esm/renderers/Flex.js +1 -1
- package/esm/renderers/Form/ButtonGroupSelect.js +1 -1
- package/esm/renderers/Form/ButtonToolbar.js +1 -1
- package/esm/renderers/Form/ChainedSelect.js +1 -1
- package/esm/renderers/Form/ChartRadios.js +1 -1
- package/esm/renderers/Form/Checkbox.js +1 -1
- package/esm/renderers/Form/Checkboxes.d.ts +1 -2
- package/esm/renderers/Form/Checkboxes.js +4 -4
- package/esm/renderers/Form/Combo.js +1 -1
- package/esm/renderers/Form/ConditionBuilder.js +1 -1
- package/esm/renderers/Form/Control.js +1 -1
- package/esm/renderers/Form/DiffEditor.js +1 -1
- package/esm/renderers/Form/Editor.js +1 -1
- package/esm/renderers/Form/FieldSet.js +1 -1
- package/esm/renderers/Form/Formula.js +1 -1
- package/esm/renderers/Form/Group.js +4 -3
- package/esm/renderers/Form/Hidden.js +1 -1
- package/esm/renderers/Form/IconPicker.js +1 -1
- package/esm/renderers/Form/IconPickerIcons.js +1 -1
- package/esm/renderers/Form/InputArray.js +1 -1
- package/esm/renderers/Form/InputCity.js +1 -1
- package/esm/renderers/Form/InputColor.js +1 -1
- package/esm/renderers/Form/InputDate.js +1 -1
- package/esm/renderers/Form/InputDateRange.js +1 -1
- package/esm/renderers/Form/InputExcel.js +1 -1
- package/esm/renderers/Form/InputFile.js +4 -5
- package/esm/renderers/Form/InputFormula.js +1 -1
- package/esm/renderers/Form/InputGroup.js +1 -1
- package/esm/renderers/Form/InputImage.js +1 -1
- package/esm/renderers/Form/InputMonthRange.js +1 -1
- package/esm/renderers/Form/InputNumber.js +1 -1
- package/esm/renderers/Form/InputQuarterRange.js +1 -1
- package/esm/renderers/Form/InputRange.js +1 -1
- package/esm/renderers/Form/InputRating.js +1 -1
- package/esm/renderers/Form/InputRepeat.js +1 -1
- package/esm/renderers/Form/InputRichText.js +1 -1
- package/esm/renderers/Form/InputSubForm.js +1 -1
- package/esm/renderers/Form/InputTable.d.ts +9 -3
- package/esm/renderers/Form/InputTable.js +55 -6
- package/esm/renderers/Form/InputTag.d.ts +1 -0
- package/esm/renderers/Form/InputTag.js +23 -6
- package/esm/renderers/Form/InputText.d.ts +1 -1
- package/esm/renderers/Form/InputText.js +3 -2
- package/esm/renderers/Form/InputTree.js +1 -1
- package/esm/renderers/Form/InputYearRange.js +1 -1
- package/esm/renderers/Form/JSONSchema.js +1 -1
- package/esm/renderers/Form/JSONSchemaEditor.js +1 -1
- package/esm/renderers/Form/ListSelect.js +1 -1
- package/esm/renderers/Form/LocationPicker.js +1 -1
- package/esm/renderers/Form/MatrixCheckboxes.js +1 -1
- package/esm/renderers/Form/NestedSelect.js +4 -4
- package/esm/renderers/Form/Picker.js +6 -2
- package/esm/renderers/Form/Radios.js +1 -1
- package/esm/renderers/Form/Select.js +1 -1
- package/esm/renderers/Form/Static.js +1 -1
- package/esm/renderers/Form/Switch.js +1 -1
- package/esm/renderers/Form/TabsTransfer.js +1 -1
- package/esm/renderers/Form/TabsTransferPicker.js +1 -1
- package/esm/renderers/Form/Textarea.js +1 -1
- package/esm/renderers/Form/Transfer.js +1 -1
- package/esm/renderers/Form/TransferPicker.js +1 -1
- package/esm/renderers/Form/TreeSelect.js +6 -8
- package/esm/renderers/Form/UUID.js +1 -1
- package/esm/renderers/Form/UserSelect.js +1 -1
- package/esm/renderers/Grid.js +6 -3
- package/esm/renderers/Grid2D.js +1 -1
- package/esm/renderers/GridNav.js +1 -1
- package/esm/renderers/HBox.js +1 -1
- package/esm/renderers/IFrame.d.ts +4 -0
- package/esm/renderers/IFrame.js +3 -3
- package/esm/renderers/Icon.js +1 -1
- package/esm/renderers/Image.d.ts +20 -6
- package/esm/renderers/Image.js +3 -3
- package/esm/renderers/Images.js +1 -1
- package/esm/renderers/Json.js +1 -1
- package/esm/renderers/Link.js +1 -1
- package/esm/renderers/List.js +5 -4
- package/esm/renderers/Log.js +1 -1
- package/esm/renderers/Mapping.js +1 -1
- package/esm/renderers/Markdown.js +1 -1
- package/esm/renderers/Nav.js +1 -1
- package/esm/renderers/Operation.js +1 -1
- package/esm/renderers/Page.d.ts +1 -0
- package/esm/renderers/Page.js +7 -1
- package/esm/renderers/Pagination.d.ts +5 -0
- package/esm/renderers/Pagination.js +1 -1
- package/esm/renderers/PaginationWrapper.js +1 -1
- package/esm/renderers/Panel.js +1 -1
- package/esm/renderers/Plain.js +1 -1
- package/esm/renderers/PopOver.js +1 -1
- package/esm/renderers/Portlet.js +1 -1
- package/esm/renderers/Progress.js +1 -1
- package/esm/renderers/Property.js +5 -6
- package/esm/renderers/QRCode.js +1 -1
- package/esm/renderers/QuickEdit.js +1 -1
- package/esm/renderers/Remark.js +1 -1
- package/esm/renderers/SearchBox.js +1 -1
- package/esm/renderers/Service.js +2 -1
- package/esm/renderers/SparkLine.js +1 -1
- package/esm/renderers/Spinner.js +1 -1
- package/esm/renderers/Status.js +3 -3
- package/esm/renderers/Steps.d.ts +2 -1
- package/esm/renderers/Steps.js +12 -8
- package/esm/renderers/Table/ColumnToggler.js +1 -1
- package/esm/renderers/Table/HeadCellFilterDropdown.js +1 -1
- package/esm/renderers/Table/HeadCellSearchDropdown.js +2 -2
- package/esm/renderers/Table/ItemActionsWrapper.js +1 -1
- package/esm/renderers/Table/TableBody.js +1 -1
- package/esm/renderers/Table/TableCell.js +1 -1
- package/esm/renderers/Table/TableContent.js +9 -2
- package/esm/renderers/Table/TableRow.js +1 -1
- package/esm/renderers/Table/exportExcel.js +1 -1
- package/esm/renderers/Table/index.d.ts +3 -0
- package/esm/renderers/Table/index.js +102 -46
- package/esm/renderers/Table-v2/ColumnToggler.js +1 -1
- package/esm/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
- package/esm/renderers/Table-v2/TableCell.js +1 -1
- package/esm/renderers/Table-v2/index.js +1 -1
- package/esm/renderers/TableView.js +18 -14
- package/esm/renderers/Tabs.js +1 -1
- package/esm/renderers/Tag.js +1 -1
- package/esm/renderers/Tasks.js +1 -1
- package/esm/renderers/Timeline.js +1 -1
- package/esm/renderers/TooltipWrapper.js +1 -1
- package/esm/renderers/Tpl.js +1 -1
- package/esm/renderers/VBox.js +1 -1
- package/esm/renderers/Video.js +1 -1
- package/esm/renderers/WebComponent.js +1 -1
- package/esm/renderers/Wizard.js +1 -1
- package/esm/renderers/Wrapper.js +1 -1
- package/esm/schemaExtend.js +1 -1
- package/esm/types.d.ts +1 -1
- package/lib/Schema.d.ts +1 -1
- package/lib/compat.js +1 -1
- package/lib/index.js +1 -1
- package/lib/preset.js +1 -1
- package/lib/renderers/Action.js +8 -5
- package/lib/renderers/Alert.js +1 -1
- package/lib/renderers/AnchorNav.js +1 -1
- package/lib/renderers/App.js +1 -1
- package/lib/renderers/Audio.js +1 -1
- package/lib/renderers/Avatar.js +1 -1
- package/lib/renderers/BarCode.js +1 -1
- package/lib/renderers/Breadcrumb.js +1 -1
- package/lib/renderers/ButtonGroup.js +1 -1
- package/lib/renderers/CRUD.d.ts +2 -2
- package/lib/renderers/CRUD.js +13 -4
- package/lib/renderers/CRUD2.js +1 -1
- package/lib/renderers/Calendar.js +1 -1
- package/lib/renderers/Card.js +1 -1
- package/lib/renderers/Card2.js +1 -1
- package/lib/renderers/Cards.d.ts +1 -0
- package/lib/renderers/Cards.js +12 -7
- package/lib/renderers/Carousel.js +1 -1
- package/lib/renderers/Chart.js +2 -1
- package/lib/renderers/Code.js +1 -1
- package/lib/renderers/Collapse.js +1 -1
- package/lib/renderers/CollapseGroup.js +1 -1
- package/lib/renderers/Color.js +1 -1
- package/lib/renderers/Container.js +1 -1
- package/lib/renderers/Copyable.js +4 -3
- package/lib/renderers/Custom.js +1 -1
- package/lib/renderers/Date.js +1 -1
- package/lib/renderers/Dialog.d.ts +49 -43
- package/lib/renderers/Dialog.js +3 -3
- package/lib/renderers/Divider.js +1 -1
- package/lib/renderers/Drawer.js +1 -1
- package/lib/renderers/DropDownButton.d.ts +1 -1
- package/lib/renderers/DropDownButton.js +15 -4
- package/lib/renderers/Each.js +1 -1
- package/lib/renderers/Flex.js +1 -1
- package/lib/renderers/Form/ButtonGroupSelect.js +1 -1
- package/lib/renderers/Form/ButtonToolbar.js +1 -1
- package/lib/renderers/Form/ChainedSelect.js +1 -1
- package/lib/renderers/Form/ChartRadios.js +1 -1
- package/lib/renderers/Form/Checkbox.js +1 -1
- package/lib/renderers/Form/Checkboxes.d.ts +1 -2
- package/lib/renderers/Form/Checkboxes.js +4 -3
- package/lib/renderers/Form/Combo.js +1 -1
- package/lib/renderers/Form/ConditionBuilder.js +1 -1
- package/lib/renderers/Form/Control.js +1 -1
- package/lib/renderers/Form/DiffEditor.d.ts +18 -18
- package/lib/renderers/Form/DiffEditor.js +1 -1
- package/lib/renderers/Form/Editor.d.ts +3 -3
- package/lib/renderers/Form/Editor.js +1 -1
- package/lib/renderers/Form/FieldSet.js +1 -1
- package/lib/renderers/Form/Formula.js +1 -1
- package/lib/renderers/Form/Group.js +4 -3
- package/lib/renderers/Form/Hidden.js +1 -1
- package/lib/renderers/Form/IconPicker.js +1 -1
- package/lib/renderers/Form/IconPickerIcons.js +1 -1
- package/lib/renderers/Form/InputArray.js +1 -1
- package/lib/renderers/Form/InputCity.d.ts +40 -40
- package/lib/renderers/Form/InputCity.js +1 -1
- package/lib/renderers/Form/InputColor.d.ts +40 -40
- package/lib/renderers/Form/InputColor.js +1 -1
- package/lib/renderers/Form/InputDate.js +1 -1
- package/lib/renderers/Form/InputDateRange.js +1 -1
- package/lib/renderers/Form/InputExcel.js +1 -1
- package/lib/renderers/Form/InputFile.js +3 -4
- package/lib/renderers/Form/InputFormula.js +1 -1
- package/lib/renderers/Form/InputGroup.js +1 -1
- package/lib/renderers/Form/InputImage.js +1 -1
- package/lib/renderers/Form/InputMonthRange.js +1 -1
- package/lib/renderers/Form/InputNumber.js +1 -1
- package/lib/renderers/Form/InputQuarterRange.js +1 -1
- package/lib/renderers/Form/InputRange.js +1 -1
- package/lib/renderers/Form/InputRating.js +1 -1
- package/lib/renderers/Form/InputRepeat.js +1 -1
- package/lib/renderers/Form/InputRichText.js +1 -1
- package/lib/renderers/Form/InputSubForm.js +1 -1
- package/lib/renderers/Form/InputTable.d.ts +9 -3
- package/lib/renderers/Form/InputTable.js +57 -4
- package/lib/renderers/Form/InputTag.d.ts +1 -0
- package/lib/renderers/Form/InputTag.js +23 -6
- package/lib/renderers/Form/InputText.d.ts +1 -1
- package/lib/renderers/Form/InputText.js +3 -2
- package/lib/renderers/Form/InputTree.js +1 -1
- package/lib/renderers/Form/InputYearRange.js +1 -1
- package/lib/renderers/Form/JSONSchema.js +1 -1
- package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
- package/lib/renderers/Form/ListSelect.js +1 -1
- package/lib/renderers/Form/LocationPicker.js +1 -1
- package/lib/renderers/Form/MatrixCheckboxes.js +1 -1
- package/lib/renderers/Form/NestedSelect.js +4 -4
- package/lib/renderers/Form/Picker.js +6 -2
- package/lib/renderers/Form/Radios.js +1 -1
- package/lib/renderers/Form/Select.js +1 -1
- package/lib/renderers/Form/Static.js +1 -1
- package/lib/renderers/Form/Switch.js +1 -1
- package/lib/renderers/Form/TabsTransfer.js +1 -1
- package/lib/renderers/Form/TabsTransferPicker.js +1 -1
- package/lib/renderers/Form/Textarea.js +1 -1
- package/lib/renderers/Form/Transfer.js +1 -1
- package/lib/renderers/Form/TransferPicker.js +1 -1
- package/lib/renderers/Form/TreeSelect.js +6 -8
- package/lib/renderers/Form/UUID.js +1 -1
- package/lib/renderers/Form/UserSelect.js +1 -1
- package/lib/renderers/Grid.js +6 -3
- package/lib/renderers/Grid2D.js +1 -1
- package/lib/renderers/GridNav.js +1 -1
- package/lib/renderers/HBox.js +1 -1
- package/lib/renderers/IFrame.d.ts +4 -0
- package/lib/renderers/IFrame.js +3 -3
- package/lib/renderers/Icon.js +1 -1
- package/lib/renderers/Image.d.ts +20 -6
- package/lib/renderers/Image.js +3 -3
- package/lib/renderers/Images.js +1 -1
- package/lib/renderers/Json.js +1 -1
- package/lib/renderers/Link.js +1 -1
- package/lib/renderers/List.js +4 -3
- package/lib/renderers/Log.js +1 -1
- package/lib/renderers/Mapping.js +1 -1
- package/lib/renderers/Markdown.js +1 -1
- package/lib/renderers/Nav.d.ts +10 -10
- package/lib/renderers/Nav.js +1 -1
- package/lib/renderers/Operation.js +1 -1
- package/lib/renderers/Page.d.ts +1 -0
- package/lib/renderers/Page.js +7 -1
- package/lib/renderers/Pagination.d.ts +5 -0
- package/lib/renderers/Pagination.js +1 -1
- package/lib/renderers/PaginationWrapper.js +1 -1
- package/lib/renderers/Panel.js +1 -1
- package/lib/renderers/Plain.js +1 -1
- package/lib/renderers/PopOver.js +1 -1
- package/lib/renderers/Portlet.js +1 -1
- package/lib/renderers/Progress.js +1 -1
- package/lib/renderers/Property.js +4 -5
- package/lib/renderers/QRCode.js +1 -1
- package/lib/renderers/QuickEdit.js +1 -1
- package/lib/renderers/Remark.d.ts +1 -1
- package/lib/renderers/Remark.js +1 -1
- package/lib/renderers/SearchBox.js +1 -1
- package/lib/renderers/Service.js +2 -1
- package/lib/renderers/SparkLine.js +1 -1
- package/lib/renderers/Spinner.js +1 -1
- package/lib/renderers/Status.js +3 -3
- package/lib/renderers/Steps.d.ts +2 -1
- package/lib/renderers/Steps.js +11 -7
- package/lib/renderers/Table/ColumnToggler.js +1 -1
- package/lib/renderers/Table/HeadCellFilterDropdown.js +1 -1
- package/lib/renderers/Table/HeadCellSearchDropdown.js +2 -2
- package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
- package/lib/renderers/Table/TableBody.js +1 -1
- package/lib/renderers/Table/TableCell.js +1 -1
- package/lib/renderers/Table/TableContent.js +9 -2
- package/lib/renderers/Table/TableRow.js +1 -1
- package/lib/renderers/Table/exportExcel.js +1 -1
- package/lib/renderers/Table/index.d.ts +3 -0
- package/lib/renderers/Table/index.js +102 -46
- package/lib/renderers/Table-v2/ColumnToggler.js +1 -1
- package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
- package/lib/renderers/Table-v2/TableCell.js +1 -1
- package/lib/renderers/Table-v2/index.js +1 -1
- package/lib/renderers/TableView.js +17 -13
- package/lib/renderers/Tabs.js +1 -1
- package/lib/renderers/Tag.js +1 -1
- package/lib/renderers/Tasks.js +1 -1
- package/lib/renderers/Timeline.js +1 -1
- package/lib/renderers/TooltipWrapper.js +1 -1
- package/lib/renderers/Tpl.js +1 -1
- package/lib/renderers/VBox.js +1 -1
- package/lib/renderers/Video.js +1 -1
- package/lib/renderers/WebComponent.js +1 -1
- package/lib/renderers/Wizard.js +1 -1
- package/lib/renderers/Wrapper.js +1 -1
- package/lib/schemaExtend.js +1 -1
- package/lib/themes/ang-ie11.css +934 -468
- package/lib/themes/ang.css +936 -409
- package/lib/themes/antd-ie11.css +937 -471
- package/lib/themes/antd.css +936 -409
- package/lib/themes/cxd-ie11.css +970 -508
- package/lib/themes/cxd.css +947 -423
- package/lib/themes/dark-ie11.css +934 -468
- package/lib/themes/dark.css +936 -409
- package/lib/themes/default-ie11.css +970 -508
- package/lib/themes/default.css +947 -423
- package/lib/types.d.ts +1 -1
- package/package.json +10 -10
- package/schema.json +94 -34
- package/sdk/ang-ie11.css +674 -190
- package/sdk/ang.css +676 -131
- package/sdk/antd-ie11.css +671 -187
- package/sdk/antd.css +676 -131
- package/sdk/barcode.js +50 -50
- package/sdk/charts.js +17 -17
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +717 -238
- package/sdk/cxd.css +687 -146
- package/sdk/dark-ie11.css +674 -190
- package/sdk/dark.css +676 -131
- package/sdk/exceljs.js +1 -1
- package/sdk/locale/de-DE.js +5 -0
- package/sdk/markdown.js +68 -68
- package/sdk/papaparse.js +1 -1
- package/sdk/rest.js +24 -24
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +717 -238
- package/sdk/sdk.css +687 -146
- package/sdk/sdk.js +1411 -1389
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/thirds/tinymce/skins/ui/oxide/skin.css +358 -331
- package/sdk/tinymce.js +53 -63
@@ -1,6 +1,5 @@
|
|
1
1
|
import React from 'react';
|
2
|
-
import { OptionsControlProps, Option } from 'amis-core';
|
3
|
-
import { ActionObject, Api } from 'amis-core';
|
2
|
+
import type { ActionObject, Api, OptionsControlProps, Option } from 'amis-core';
|
4
3
|
import { FormOptionsSchema } from '../../Schema';
|
5
4
|
/**
|
6
5
|
* 复选框
|
@@ -1,11 +1,12 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.0
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
6
6
|
import { __extends, __decorate, __metadata } from 'tslib';
|
7
7
|
import React from 'react';
|
8
|
-
import
|
8
|
+
import inRange from 'lodash/inRange';
|
9
|
+
import { createObject, hasAbility, flattenTreeWithLeafNodes, columnsSplit, autobind, OptionsControl } from 'amis-core';
|
9
10
|
import { Checkbox, Icon } from 'amis-ui';
|
10
11
|
|
11
12
|
var CheckboxesControl = /** @class */ (function (_super) {
|
@@ -165,8 +166,7 @@ var CheckboxesControl = /** @class */ (function (_super) {
|
|
165
166
|
body = options.map(function (option, key) { return _this.renderItem(option, key); });
|
166
167
|
}
|
167
168
|
if (checkAll && body.length && optionType === 'default') {
|
168
|
-
body.unshift(React.createElement(Checkbox, { key: "checkall", className: itemClassName, onChange: onToggleAll, checked: !!selectedOptions.length, partial:
|
169
|
-
selectedOptions.length !== options.length), disabled: disabled, inline: inline, labelClassName: labelClassName }, __('Checkboxes.selectAll')));
|
169
|
+
body.unshift(React.createElement(Checkbox, { key: "checkall", className: itemClassName, onChange: onToggleAll, checked: !!selectedOptions.length, partial: inRange(selectedOptions.length, 0, flattenTreeWithLeafNodes(options).length), disabled: disabled, inline: inline, labelClassName: labelClassName }, __('Checkboxes.selectAll')));
|
170
170
|
}
|
171
171
|
body = columnsSplit(body, cx, columnsCount);
|
172
172
|
return (React.createElement("div", { className: cx("CheckboxesControl", className), ref: "checkboxRef" },
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.0
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -60,8 +60,9 @@ import { isVisible, makeHorizontalDeeper, getWidthRate, FormItemWrap, Renderer }
|
|
60
60
|
return null;
|
61
61
|
}
|
62
62
|
var controlMode = (control === null || control === void 0 ? void 0 : control.mode) || formMode;
|
63
|
-
if (controlMode === 'inline'
|
64
|
-
|
63
|
+
if (controlMode === 'inline'
|
64
|
+
// hidden 直接渲染,否则会有个空 Form-groupColumn 层
|
65
|
+
|| (control === null || control === void 0 ? void 0 : control.type) && ['formula', 'hidden'].includes(control.type)) {
|
65
66
|
return _this.renderControl(control, index, {
|
66
67
|
key: index,
|
67
68
|
className: cx(control.className, control.columnClassName)
|
@@ -1,11 +1,11 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.0
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
6
6
|
import { __extends, __assign, __awaiter, __generator, __decorate } from 'tslib';
|
7
7
|
import React from 'react';
|
8
|
-
import { guid, createObject, normalizeApi, buildApi, isEmpty, dataMapping, qsstringify, FormItem, isEffectiveApi, isApiOutdated } from 'amis-core';
|
8
|
+
import { guid, createObject, normalizeApi, buildApi, isEmpty, dataMapping, qsstringify, FormItem, isEffectiveApi, isApiOutdated, isApiOutdatedWithData } from 'amis-core';
|
9
9
|
import find from 'lodash/find';
|
10
10
|
import isPlainObject from 'lodash/isPlainObject';
|
11
11
|
import ImageControl from './InputImage.js';
|
@@ -495,7 +495,6 @@ var FileControl = /** @class */ (function (_super) {
|
|
495
495
|
return [2 /*return*/];
|
496
496
|
}
|
497
497
|
onChange((this.emitValue = value), undefined, changeImmediately);
|
498
|
-
console.log('onChange', changeImmediately);
|
499
498
|
this.syncAutoFill();
|
500
499
|
return [2 /*return*/];
|
501
500
|
}
|
@@ -928,8 +927,8 @@ var FileControlRenderer = /** @class */ (function (_super) {
|
|
928
927
|
sizeMutable: false,
|
929
928
|
renderDescription: false,
|
930
929
|
shouldComponentUpdate: function (props, prevProps) {
|
931
|
-
return !!isEffectiveApi(props.receiver, props.data) &&
|
932
|
-
|
930
|
+
return !!isEffectiveApi(props.receiver, props.data) && (isApiOutdated(props.receiver, prevProps.receiver, props.data, prevProps.data) ||
|
931
|
+
isApiOutdatedWithData(props.receiver, prevProps.receiver, props.data, prevProps.data));
|
933
932
|
}
|
934
933
|
})
|
935
934
|
], FileControlRenderer);
|
@@ -1,7 +1,5 @@
|
|
1
1
|
import React from 'react';
|
2
|
-
import { FormControlProps, FormBaseControl } from 'amis-core';
|
3
|
-
import { RendererData, ActionObject } from 'amis-core';
|
4
|
-
import { SimpleMap } from 'amis-core';
|
2
|
+
import { FormControlProps, FormBaseControl, SimpleMap, RendererData, ActionObject } from 'amis-core';
|
5
3
|
import { TableSchema } from '../Table';
|
6
4
|
import { SchemaApi } from '../../Schema';
|
7
5
|
export interface TableControlSchema extends FormBaseControl, Omit<TableSchema, 'type'> {
|
@@ -172,6 +170,14 @@ export default class FormTable extends React.Component<TableProps, TableState> {
|
|
172
170
|
handleTableSave(rows: Array<object> | object, diff: Array<object> | object, rowIndexes: Array<string> | string): void;
|
173
171
|
handleSaveTableOrder(moved: Array<object>, rows: Array<object>): void;
|
174
172
|
handlePageChange(page: number): void;
|
173
|
+
/**
|
174
|
+
* Table Row中数据更新到InputTable中
|
175
|
+
* 解决columns形如[{name: 'a'}, {name: 'c', value: '${a}'}]时,使用默认值的列数据无法更新到数据域的问题
|
176
|
+
*
|
177
|
+
* @param data 行数据
|
178
|
+
* @param rowIndex 行索引值
|
179
|
+
*/
|
180
|
+
handlePristineChange(data: Record<string, any>, rowIndex: string): void;
|
175
181
|
removeEntry(entry: any): void;
|
176
182
|
getEntryId(entry: any): string;
|
177
183
|
render(): JSX.Element | null;
|
@@ -1,15 +1,19 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.0
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
6
|
-
import { __extends, __assign, __awaiter, __generator, __decorate, __spreadArray } from 'tslib';
|
6
|
+
import { __extends, __assign, __awaiter, __generator, __decorate, __metadata, __spreadArray } from 'tslib';
|
7
7
|
import React from 'react';
|
8
|
-
import { SimpleMap, getVariable, dataMapping, isEffectiveApi, setVariable, createObject, filter, getTree, spliceTree, FormItem } from 'amis-core';
|
8
|
+
import { SimpleMap, getVariable, dataMapping, isEffectiveApi, filterDate, setVariable, isExpression, createObject, filter, getTree, spliceTree, autobind, FormItem } from 'amis-core';
|
9
9
|
import { Button, Icon } from 'amis-ui';
|
10
10
|
import omit from 'lodash/omit';
|
11
11
|
import findIndex from 'lodash/findIndex';
|
12
|
+
import cloneDeep from 'lodash/cloneDeep';
|
13
|
+
import isEqual from 'lodash/isEqual';
|
14
|
+
import inRange from 'lodash/inRange';
|
12
15
|
import find from 'lodash/find';
|
16
|
+
import moment from 'moment';
|
13
17
|
|
14
18
|
var FormTable = /** @class */ (function (_super) {
|
15
19
|
__extends(FormTable, _super);
|
@@ -215,7 +219,7 @@ var FormTable = /** @class */ (function (_super) {
|
|
215
219
|
};
|
216
220
|
FormTable.prototype.addItem = function (index) {
|
217
221
|
var _this = this;
|
218
|
-
var _a = this.props, needConfirm = _a.needConfirm, scaffold = _a.scaffold, columns = _a.columns;
|
222
|
+
var _a = this.props, needConfirm = _a.needConfirm, scaffold = _a.scaffold, columns = _a.columns, data = _a.data;
|
219
223
|
var items = this.state.items.concat();
|
220
224
|
var value = {
|
221
225
|
__isPlaceholder: true
|
@@ -224,7 +228,22 @@ var FormTable = /** @class */ (function (_super) {
|
|
224
228
|
columns.forEach(function (column) {
|
225
229
|
if (typeof column.value !== 'undefined' &&
|
226
230
|
typeof column.name === 'string') {
|
227
|
-
|
231
|
+
if ('type' in column &&
|
232
|
+
(column.type === 'input-date' ||
|
233
|
+
column.type === 'input-datetime' ||
|
234
|
+
column.type === 'input-time' ||
|
235
|
+
column.type === 'input-month' ||
|
236
|
+
column.type === 'input-quarter' ||
|
237
|
+
column.type === 'input-year')) {
|
238
|
+
var date = filterDate(column.value, data, column.format || 'X');
|
239
|
+
setVariable(value, column.name, (column.utc ? moment.utc(date) : date).format(column.format || 'X'));
|
240
|
+
}
|
241
|
+
else {
|
242
|
+
/** 如果value值设置为表达式,则忽略 */
|
243
|
+
if (!isExpression(column.value)) {
|
244
|
+
setVariable(value, column.name, column.value);
|
245
|
+
}
|
246
|
+
}
|
228
247
|
}
|
229
248
|
});
|
230
249
|
}
|
@@ -558,6 +577,29 @@ var FormTable = /** @class */ (function (_super) {
|
|
558
577
|
FormTable.prototype.handlePageChange = function (page) {
|
559
578
|
this.setState({ page: page });
|
560
579
|
};
|
580
|
+
/**
|
581
|
+
* Table Row中数据更新到InputTable中
|
582
|
+
* 解决columns形如[{name: 'a'}, {name: 'c', value: '${a}'}]时,使用默认值的列数据无法更新到数据域的问题
|
583
|
+
*
|
584
|
+
* @param data 行数据
|
585
|
+
* @param rowIndex 行索引值
|
586
|
+
*/
|
587
|
+
FormTable.prototype.handlePristineChange = function (data, rowIndex) {
|
588
|
+
var _this = this;
|
589
|
+
this.setState(function (prevState) {
|
590
|
+
var items = cloneDeep(prevState.items);
|
591
|
+
var index = Number(rowIndex);
|
592
|
+
if (Number.isInteger(index) &&
|
593
|
+
inRange(index, 0, items.length) &&
|
594
|
+
!isEqual(items[index], data)) {
|
595
|
+
items.splice(index, 1, data);
|
596
|
+
return { items: items };
|
597
|
+
}
|
598
|
+
return null;
|
599
|
+
}, function () {
|
600
|
+
_this.emitValue();
|
601
|
+
});
|
602
|
+
};
|
561
603
|
FormTable.prototype.removeEntry = function (entry) {
|
562
604
|
if (this.entries.has(entry)) {
|
563
605
|
this.entries.delete(entry);
|
@@ -617,7 +659,8 @@ var FormTable = /** @class */ (function (_super) {
|
|
617
659
|
reUseRow: false,
|
618
660
|
offset: offset,
|
619
661
|
rowClassName: rowClassName,
|
620
|
-
rowClassNameExpr: rowClassNameExpr
|
662
|
+
rowClassNameExpr: rowClassNameExpr,
|
663
|
+
onPristineChange: this.handlePristineChange
|
621
664
|
}),
|
622
665
|
(addable && showAddBtn !== false) || showPager ? (React.createElement("div", { className: cx('InputTable-toolbar') },
|
623
666
|
addable && showAddBtn !== false ? (React.createElement(Button, { disabled: disabled, size: "sm", onClick: function () { return _this.addItem(_this.state.items.length); } },
|
@@ -663,6 +706,12 @@ var FormTable = /** @class */ (function (_super) {
|
|
663
706
|
'canAccessSuperData',
|
664
707
|
'formStore'
|
665
708
|
];
|
709
|
+
__decorate([
|
710
|
+
autobind,
|
711
|
+
__metadata("design:type", Function),
|
712
|
+
__metadata("design:paramtypes", [Object, String]),
|
713
|
+
__metadata("design:returntype", void 0)
|
714
|
+
], FormTable.prototype, "handlePristineChange", null);
|
666
715
|
return FormTable;
|
667
716
|
}(React.Component));
|
668
717
|
/** @class */ ((function (_super) {
|
@@ -102,6 +102,7 @@ export default class TagControl extends React.PureComponent<TagProps, TagState>
|
|
102
102
|
getTarget(): any;
|
103
103
|
getParent(): any;
|
104
104
|
reload(): void;
|
105
|
+
isReachMax(): boolean;
|
105
106
|
render(): JSX.Element;
|
106
107
|
}
|
107
108
|
export declare class TagControlRenderer extends TagControl {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.0
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -128,6 +128,9 @@ var TagControl = /** @class */ (function (_super) {
|
|
128
128
|
return __generator(this, function (_b) {
|
129
129
|
switch (_b.label) {
|
130
130
|
case 0:
|
131
|
+
if (this.isReachMax()) {
|
132
|
+
return [2 /*return*/];
|
133
|
+
}
|
131
134
|
_a = this.props, selectedOptions = _a.selectedOptions, onChange = _a.onChange;
|
132
135
|
newValue = selectedOptions.concat();
|
133
136
|
if (find(newValue, function (item) { return item.value == option.value; })) {
|
@@ -285,7 +288,7 @@ var TagControl = /** @class */ (function (_super) {
|
|
285
288
|
});
|
286
289
|
};
|
287
290
|
TagControl.prototype.handleOptionChange = function (option) {
|
288
|
-
if (this.state.inputValue || !option) {
|
291
|
+
if (this.isReachMax() || this.state.inputValue || !option) {
|
289
292
|
return;
|
290
293
|
}
|
291
294
|
this.addItem(option);
|
@@ -300,6 +303,10 @@ var TagControl = /** @class */ (function (_super) {
|
|
300
303
|
var reload = this.props.reloadOptions;
|
301
304
|
reload === null || reload === void 0 ? void 0 : reload();
|
302
305
|
};
|
306
|
+
TagControl.prototype.isReachMax = function () {
|
307
|
+
var _a = this.props, max = _a.max, selectedOptions = _a.selectedOptions;
|
308
|
+
return max != null && isInteger(max) && selectedOptions.length >= max;
|
309
|
+
};
|
303
310
|
TagControl.prototype.render = function () {
|
304
311
|
var _this = this;
|
305
312
|
var _a = this.props, className = _a.className, cx = _a.classnames, disabled = _a.disabled, placeholder = _a.placeholder, name = _a.name, clearable = _a.clearable, selectedOptions = _a.selectedOptions, loading = _a.loading, popOverContainer = _a.popOverContainer, dropdown = _a.dropdown, options = _a.options, optionsTip = _a.optionsTip, maxTagCount = _a.maxTagCount, overflowTagPopover = _a.overflowTagPopover, __ = _a.translate;
|
@@ -309,19 +316,20 @@ var TagControl = /** @class */ (function (_super) {
|
|
309
316
|
(item.value !== undefined && !~selectedOptions.indexOf(item));
|
310
317
|
}, 0, true)
|
311
318
|
: [];
|
319
|
+
var reachMax = this.isReachMax();
|
312
320
|
return (React.createElement(Downshift, { selectedItem: selectedOptions, isOpen: this.state.isFocused, inputValue: this.state.inputValue, onChange: this.handleOptionChange, itemToString: this.renderItem }, function (_a) {
|
313
321
|
var isOpen = _a.isOpen, highlightedIndex = _a.highlightedIndex, getItemProps = _a.getItemProps, getInputProps = _a.getInputProps;
|
314
322
|
return (React.createElement("div", { className: cx(className, "TagControl") },
|
315
323
|
React.createElement(ResultBox, __assign({}, getInputProps({
|
316
324
|
name: name,
|
317
325
|
ref: _this.input,
|
318
|
-
placeholder: __(placeholder
|
326
|
+
placeholder: __(placeholder !== null && placeholder !== void 0 ? placeholder : 'Tag.placeholder'),
|
319
327
|
value: _this.state.inputValue,
|
320
328
|
onKeyDown: _this.handleKeyDown,
|
321
329
|
onFocus: _this.handleFocus,
|
322
330
|
onBlur: _this.handleBlur,
|
323
331
|
disabled: disabled
|
324
|
-
}), { onChange: _this.handleInputChange, className: cx('TagControl-input'), result: selectedOptions, onResultChange: _this.handleChange, itemRender: _this.renderItem, clearable: clearable, maxTagCount: maxTagCount, overflowTagPopover: overflowTagPopover, allowInput: true }), loading ? React.createElement(Spinner, { size: "sm" }) : undefined),
|
332
|
+
}), { inputPlaceholder: '', onChange: _this.handleInputChange, className: cx('TagControl-input'), result: selectedOptions, onResultChange: _this.handleChange, itemRender: _this.renderItem, clearable: clearable, maxTagCount: maxTagCount, overflowTagPopover: overflowTagPopover, allowInput: true }), loading ? React.createElement(Spinner, { size: "sm" }) : undefined),
|
325
333
|
dropdown !== false ? (React.createElement(Overlay, { container: popOverContainer || _this.getParent, target: _this.getTarget, placement: 'auto', show: isOpen && !!finnalOptions.length },
|
326
334
|
React.createElement(PopOver, { overlay: true, className: cx('TagControl-popover'), onHide: _this.close },
|
327
335
|
React.createElement(ListMenu, { options: finnalOptions, itemRender: _this.renderItem, highlightIndex: highlightedIndex, getItemProps: function (_a) {
|
@@ -329,14 +337,17 @@ var TagControl = /** @class */ (function (_super) {
|
|
329
337
|
return (__assign({}, getItemProps({
|
330
338
|
index: index,
|
331
339
|
item: item,
|
332
|
-
disabled: item.disabled
|
340
|
+
disabled: reachMax || item.disabled,
|
341
|
+
className: cx('ListMenu-item', {
|
342
|
+
'is-disabled': reachMax
|
343
|
+
}),
|
333
344
|
})));
|
334
345
|
} })))) : (
|
335
346
|
// 保留原来的展现方式,不推荐
|
336
347
|
React.createElement("div", { className: cx('TagControl-sug') },
|
337
348
|
optionsTip ? (React.createElement("div", { className: cx('TagControl-sugTip') }, __(optionsTip))) : null,
|
338
349
|
options.map(function (item, index) { return (React.createElement("div", { className: cx('TagControl-sugItem', {
|
339
|
-
'is-disabled': item.disabled || disabled
|
350
|
+
'is-disabled': item.disabled || disabled || reachMax
|
340
351
|
}), key: index, onClick: _this.addItem.bind(_this, item) }, item.label)); })))));
|
341
352
|
}));
|
342
353
|
};
|
@@ -421,6 +432,12 @@ var TagControl = /** @class */ (function (_super) {
|
|
421
432
|
__metadata("design:paramtypes", []),
|
422
433
|
__metadata("design:returntype", void 0)
|
423
434
|
], TagControl.prototype, "getParent", null);
|
435
|
+
__decorate([
|
436
|
+
autobind,
|
437
|
+
__metadata("design:type", Function),
|
438
|
+
__metadata("design:paramtypes", []),
|
439
|
+
__metadata("design:returntype", void 0)
|
440
|
+
], TagControl.prototype, "isReachMax", null);
|
424
441
|
return TagControl;
|
425
442
|
}(React.PureComponent));
|
426
443
|
/** @class */ ((function (_super) {
|
@@ -59,7 +59,7 @@ export interface TextControlSchema extends FormOptionsSchema {
|
|
59
59
|
/** control节点的CSS类名 */
|
60
60
|
inputControlClassName?: string;
|
61
61
|
/** 原生input标签的CSS类名 */
|
62
|
-
nativeInputClassName
|
62
|
+
nativeInputClassName?: string;
|
63
63
|
}
|
64
64
|
export declare type InputTextRendererEvent = 'blur' | 'focus' | 'click' | 'change' | 'enter';
|
65
65
|
export interface TextProps extends OptionsControlProps {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.0
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -136,7 +136,8 @@ var TextControl = /** @class */ (function (_super) {
|
|
136
136
|
onChange(this.normalizeValue(newValue));
|
137
137
|
};
|
138
138
|
TextControl.prototype.handleClick = function () {
|
139
|
-
|
139
|
+
// 已经 focus 的就不重复执行,否则总重新定位光标
|
140
|
+
this.state.isFocused || this.focus();
|
140
141
|
this.setState({
|
141
142
|
isOpen: true
|
142
143
|
});
|