amis 2.0.0 → 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.d.ts +8 -0
- package/esm/renderers/App.js +30 -14
- 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 +7 -1
- package/esm/renderers/Calendar.js +1 -1
- package/esm/renderers/Card.d.ts +7 -2
- package/esm/renderers/Card.js +11 -7
- 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 +22 -9
- 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.d.ts +1 -1
- package/esm/renderers/Form/ChainedSelect.js +13 -8
- package/esm/renderers/Form/ChartRadios.js +1 -1
- package/esm/renderers/Form/Checkbox.js +3 -3
- package/esm/renderers/Form/Checkboxes.d.ts +1 -2
- package/esm/renderers/Form/Checkboxes.js +6 -5
- package/esm/renderers/Form/Combo.d.ts +2 -0
- package/esm/renderers/Form/Combo.js +35 -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.d.ts +1 -0
- package/esm/renderers/Form/InputExcel.js +6 -1
- package/esm/renderers/Form/InputFile.js +9 -8
- 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 +62 -9
- package/esm/renderers/Form/InputTag.d.ts +1 -0
- package/esm/renderers/Form/InputTag.js +23 -6
- package/esm/renderers/Form/InputText.d.ts +8 -0
- package/esm/renderers/Form/InputText.js +15 -10
- 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.d.ts +5 -0
- package/esm/renderers/Form/Select.js +5 -4
- 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.d.ts +8 -6
- package/esm/renderers/Log.js +64 -33
- 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 +5 -0
- package/esm/renderers/Table/index.js +172 -72
- 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 +3 -3
- 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 +4 -2
- package/esm/renderers/Wrapper.js +1 -1
- package/esm/schemaExtend.js +74 -2
- 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.d.ts +8 -0
- package/lib/renderers/App.js +30 -14
- 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 +7 -1
- package/lib/renderers/Calendar.js +1 -1
- package/lib/renderers/Card.d.ts +7 -2
- package/lib/renderers/Card.js +12 -7
- 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 +20 -7
- 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.d.ts +1 -1
- package/lib/renderers/Form/ChainedSelect.js +13 -8
- package/lib/renderers/Form/ChartRadios.js +1 -1
- package/lib/renderers/Form/Checkbox.js +3 -3
- package/lib/renderers/Form/Checkboxes.d.ts +1 -2
- package/lib/renderers/Form/Checkboxes.js +6 -4
- package/lib/renderers/Form/Combo.d.ts +2 -0
- package/lib/renderers/Form/Combo.js +35 -1
- package/lib/renderers/Form/ConditionBuilder.js +1 -1
- package/lib/renderers/Form/Control.js +1 -1
- package/lib/renderers/Form/DiffEditor.d.ts +16 -16
- package/lib/renderers/Form/DiffEditor.js +1 -1
- package/lib/renderers/Form/Editor.d.ts +1 -1
- 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.d.ts +1 -0
- package/lib/renderers/Form/InputExcel.js +6 -1
- package/lib/renderers/Form/InputFile.js +8 -7
- 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 +64 -7
- package/lib/renderers/Form/InputTag.d.ts +1 -0
- package/lib/renderers/Form/InputTag.js +23 -6
- package/lib/renderers/Form/InputText.d.ts +8 -0
- package/lib/renderers/Form/InputText.js +15 -10
- 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.d.ts +5 -0
- package/lib/renderers/Form/Select.js +5 -4
- 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.d.ts +8 -6
- package/lib/renderers/Log.js +63 -32
- 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 +5 -0
- package/lib/renderers/Table/index.js +172 -72
- 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 +3 -3
- 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 +4 -2
- package/lib/renderers/Wrapper.js +1 -1
- package/lib/schemaExtend.js +77 -1
- package/lib/themes/ang-ie11.css +1106 -501
- package/lib/themes/ang.css +1111 -441
- package/lib/themes/antd-ie11.css +1103 -498
- package/lib/themes/antd.css +1111 -441
- package/lib/themes/cxd-ie11.css +1141 -540
- package/lib/themes/cxd.css +1135 -468
- package/lib/themes/dark-ie11.css +1110 -505
- package/lib/themes/dark.css +1116 -443
- package/lib/themes/default-ie11.css +1141 -540
- package/lib/themes/default.css +1135 -468
- package/lib/types.d.ts +1 -1
- package/package.json +26 -10
- package/schema.json +145 -55
- package/sdk/ang-ie11.css +862 -221
- package/sdk/ang.css +887 -181
- package/sdk/antd-ie11.css +859 -218
- package/sdk/antd.css +884 -178
- package/sdk/barcode.js +50 -50
- package/sdk/charts.js +16 -16
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +898 -262
- package/sdk/cxd.css +879 -177
- package/sdk/dark-ie11.css +890 -249
- package/sdk/dark.css +891 -182
- package/sdk/exceljs.js +1 -1
- package/sdk/locale/de-DE.js +6 -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 +898 -262
- package/sdk/sdk.css +879 -177
- 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,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,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -13,14 +13,22 @@ var amisCore = require('amis-core');
|
|
13
13
|
var amisUi = require('amis-ui');
|
14
14
|
var omit = require('lodash/omit');
|
15
15
|
var findIndex = require('lodash/findIndex');
|
16
|
+
var cloneDeep = require('lodash/cloneDeep');
|
17
|
+
var isEqual = require('lodash/isEqual');
|
18
|
+
var inRange = require('lodash/inRange');
|
16
19
|
var find = require('lodash/find');
|
20
|
+
var moment = require('moment');
|
17
21
|
|
18
22
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
19
23
|
|
20
24
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
21
25
|
var omit__default = /*#__PURE__*/_interopDefaultLegacy(omit);
|
22
26
|
var findIndex__default = /*#__PURE__*/_interopDefaultLegacy(findIndex);
|
27
|
+
var cloneDeep__default = /*#__PURE__*/_interopDefaultLegacy(cloneDeep);
|
28
|
+
var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
|
29
|
+
var inRange__default = /*#__PURE__*/_interopDefaultLegacy(inRange);
|
23
30
|
var find__default = /*#__PURE__*/_interopDefaultLegacy(find);
|
31
|
+
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
24
32
|
|
25
33
|
var FormTable = /** @class */ (function (_super) {
|
26
34
|
tslib.__extends(FormTable, _super);
|
@@ -226,7 +234,7 @@ var FormTable = /** @class */ (function (_super) {
|
|
226
234
|
};
|
227
235
|
FormTable.prototype.addItem = function (index) {
|
228
236
|
var _this = this;
|
229
|
-
var _a = this.props, needConfirm = _a.needConfirm, scaffold = _a.scaffold, columns = _a.columns;
|
237
|
+
var _a = this.props, needConfirm = _a.needConfirm, scaffold = _a.scaffold, columns = _a.columns, data = _a.data;
|
230
238
|
var items = this.state.items.concat();
|
231
239
|
var value = {
|
232
240
|
__isPlaceholder: true
|
@@ -235,7 +243,22 @@ var FormTable = /** @class */ (function (_super) {
|
|
235
243
|
columns.forEach(function (column) {
|
236
244
|
if (typeof column.value !== 'undefined' &&
|
237
245
|
typeof column.name === 'string') {
|
238
|
-
|
246
|
+
if ('type' in column &&
|
247
|
+
(column.type === 'input-date' ||
|
248
|
+
column.type === 'input-datetime' ||
|
249
|
+
column.type === 'input-time' ||
|
250
|
+
column.type === 'input-month' ||
|
251
|
+
column.type === 'input-quarter' ||
|
252
|
+
column.type === 'input-year')) {
|
253
|
+
var date = amisCore.filterDate(column.value, data, column.format || 'X');
|
254
|
+
amisCore.setVariable(value, column.name, (column.utc ? moment__default["default"].utc(date) : date).format(column.format || 'X'));
|
255
|
+
}
|
256
|
+
else {
|
257
|
+
/** 如果value值设置为表达式,则忽略 */
|
258
|
+
if (!amisCore.isExpression(column.value)) {
|
259
|
+
amisCore.setVariable(value, column.name, column.value);
|
260
|
+
}
|
261
|
+
}
|
239
262
|
}
|
240
263
|
});
|
241
264
|
}
|
@@ -569,6 +592,29 @@ var FormTable = /** @class */ (function (_super) {
|
|
569
592
|
FormTable.prototype.handlePageChange = function (page) {
|
570
593
|
this.setState({ page: page });
|
571
594
|
};
|
595
|
+
/**
|
596
|
+
* Table Row中数据更新到InputTable中
|
597
|
+
* 解决columns形如[{name: 'a'}, {name: 'c', value: '${a}'}]时,使用默认值的列数据无法更新到数据域的问题
|
598
|
+
*
|
599
|
+
* @param data 行数据
|
600
|
+
* @param rowIndex 行索引值
|
601
|
+
*/
|
602
|
+
FormTable.prototype.handlePristineChange = function (data, rowIndex) {
|
603
|
+
var _this = this;
|
604
|
+
this.setState(function (prevState) {
|
605
|
+
var items = cloneDeep__default["default"](prevState.items);
|
606
|
+
var index = Number(rowIndex);
|
607
|
+
if (Number.isInteger(index) &&
|
608
|
+
inRange__default["default"](index, 0, items.length) &&
|
609
|
+
!isEqual__default["default"](items[index], data)) {
|
610
|
+
items.splice(index, 1, data);
|
611
|
+
return { items: items };
|
612
|
+
}
|
613
|
+
return null;
|
614
|
+
}, function () {
|
615
|
+
_this.emitValue();
|
616
|
+
});
|
617
|
+
};
|
572
618
|
FormTable.prototype.removeEntry = function (entry) {
|
573
619
|
if (this.entries.has(entry)) {
|
574
620
|
this.entries.delete(entry);
|
@@ -582,7 +628,8 @@ var FormTable = /** @class */ (function (_super) {
|
|
582
628
|
};
|
583
629
|
FormTable.prototype.render = function () {
|
584
630
|
var _this = this;
|
585
|
-
var _a
|
631
|
+
var _a, _b;
|
632
|
+
var _c = this.props, className = _c.className; _c.value; var showAddBtn = _c.showAddBtn, disabled = _c.disabled, render = _c.render, placeholder = _c.placeholder, draggable = _c.draggable, addable = _c.addable, columnsTogglable = _c.columnsTogglable, combineNum = _c.combineNum, combineFromIndex = _c.combineFromIndex, __ = _c.translate, canAccessSuperData = _c.canAccessSuperData, expandConfig = _c.expandConfig, affixRow = _c.affixRow, prefixRow = _c.prefixRow, formInited = _c.formInited, perPage = _c.perPage, cx = _c.classnames, rowClassName = _c.rowClassName, rowClassNameExpr = _c.rowClassNameExpr, _d = _c.affixHeader, affixHeader = _d === void 0 ? false : _d, _e = _c.autoFillHeight, autoFillHeight = _e === void 0 ? false : _e, tableContentClassName = _c.tableContentClassName;
|
586
633
|
if (formInited === false) {
|
587
634
|
return null;
|
588
635
|
}
|
@@ -602,9 +649,12 @@ var FormTable = /** @class */ (function (_super) {
|
|
602
649
|
type: 'table',
|
603
650
|
placeholder: __(placeholder),
|
604
651
|
columns: this.state.columns,
|
605
|
-
affixHeader:
|
652
|
+
affixHeader: affixHeader,
|
606
653
|
prefixRow: prefixRow,
|
607
|
-
affixRow: affixRow
|
654
|
+
affixRow: affixRow,
|
655
|
+
affixOffsetTop: (_b = (_a = this.props.affixOffsetTop) !== null && _a !== void 0 ? _a : this.props.env.affixOffsetTop) !== null && _b !== void 0 ? _b : 0,
|
656
|
+
autoFillHeight: autoFillHeight,
|
657
|
+
tableContentClassName: tableContentClassName
|
608
658
|
}, {
|
609
659
|
value: undefined,
|
610
660
|
saveImmediately: true,
|
@@ -624,7 +674,8 @@ var FormTable = /** @class */ (function (_super) {
|
|
624
674
|
reUseRow: false,
|
625
675
|
offset: offset,
|
626
676
|
rowClassName: rowClassName,
|
627
|
-
rowClassNameExpr: rowClassNameExpr
|
677
|
+
rowClassNameExpr: rowClassNameExpr,
|
678
|
+
onPristineChange: this.handlePristineChange
|
628
679
|
}),
|
629
680
|
(addable && showAddBtn !== false) || showPager ? (React__default["default"].createElement("div", { className: cx('InputTable-toolbar') },
|
630
681
|
addable && showAddBtn !== false ? (React__default["default"].createElement(amisUi.Button, { disabled: disabled, size: "sm", onClick: function () { return _this.addItem(_this.state.items.length); } },
|
@@ -670,6 +721,12 @@ var FormTable = /** @class */ (function (_super) {
|
|
670
721
|
'canAccessSuperData',
|
671
722
|
'formStore'
|
672
723
|
];
|
724
|
+
tslib.__decorate([
|
725
|
+
amisCore.autobind,
|
726
|
+
tslib.__metadata("design:type", Function),
|
727
|
+
tslib.__metadata("design:paramtypes", [Object, String]),
|
728
|
+
tslib.__metadata("design:returntype", void 0)
|
729
|
+
], FormTable.prototype, "handlePristineChange", null);
|
673
730
|
return FormTable;
|
674
731
|
}(React__default["default"].Component));
|
675
732
|
/** @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.
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -140,6 +140,9 @@ var TagControl = /** @class */ (function (_super) {
|
|
140
140
|
return tslib.__generator(this, function (_b) {
|
141
141
|
switch (_b.label) {
|
142
142
|
case 0:
|
143
|
+
if (this.isReachMax()) {
|
144
|
+
return [2 /*return*/];
|
145
|
+
}
|
143
146
|
_a = this.props, selectedOptions = _a.selectedOptions, onChange = _a.onChange;
|
144
147
|
newValue = selectedOptions.concat();
|
145
148
|
if (find__default["default"](newValue, function (item) { return item.value == option.value; })) {
|
@@ -297,7 +300,7 @@ var TagControl = /** @class */ (function (_super) {
|
|
297
300
|
});
|
298
301
|
};
|
299
302
|
TagControl.prototype.handleOptionChange = function (option) {
|
300
|
-
if (this.state.inputValue || !option) {
|
303
|
+
if (this.isReachMax() || this.state.inputValue || !option) {
|
301
304
|
return;
|
302
305
|
}
|
303
306
|
this.addItem(option);
|
@@ -312,6 +315,10 @@ var TagControl = /** @class */ (function (_super) {
|
|
312
315
|
var reload = this.props.reloadOptions;
|
313
316
|
reload === null || reload === void 0 ? void 0 : reload();
|
314
317
|
};
|
318
|
+
TagControl.prototype.isReachMax = function () {
|
319
|
+
var _a = this.props, max = _a.max, selectedOptions = _a.selectedOptions;
|
320
|
+
return max != null && isInteger__default["default"](max) && selectedOptions.length >= max;
|
321
|
+
};
|
315
322
|
TagControl.prototype.render = function () {
|
316
323
|
var _this = this;
|
317
324
|
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;
|
@@ -321,19 +328,20 @@ var TagControl = /** @class */ (function (_super) {
|
|
321
328
|
(item.value !== undefined && !~selectedOptions.indexOf(item));
|
322
329
|
}, 0, true)
|
323
330
|
: [];
|
331
|
+
var reachMax = this.isReachMax();
|
324
332
|
return (React__default["default"].createElement(Downshift__default["default"], { selectedItem: selectedOptions, isOpen: this.state.isFocused, inputValue: this.state.inputValue, onChange: this.handleOptionChange, itemToString: this.renderItem }, function (_a) {
|
325
333
|
var isOpen = _a.isOpen, highlightedIndex = _a.highlightedIndex, getItemProps = _a.getItemProps, getInputProps = _a.getInputProps;
|
326
334
|
return (React__default["default"].createElement("div", { className: cx(className, "TagControl") },
|
327
335
|
React__default["default"].createElement(amisUi.ResultBox, tslib.__assign({}, getInputProps({
|
328
336
|
name: name,
|
329
337
|
ref: _this.input,
|
330
|
-
placeholder: __(placeholder
|
338
|
+
placeholder: __(placeholder !== null && placeholder !== void 0 ? placeholder : 'Tag.placeholder'),
|
331
339
|
value: _this.state.inputValue,
|
332
340
|
onKeyDown: _this.handleKeyDown,
|
333
341
|
onFocus: _this.handleFocus,
|
334
342
|
onBlur: _this.handleBlur,
|
335
343
|
disabled: disabled
|
336
|
-
}), { 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__default["default"].createElement(amisUi.Spinner, { size: "sm" }) : undefined),
|
344
|
+
}), { 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__default["default"].createElement(amisUi.Spinner, { size: "sm" }) : undefined),
|
337
345
|
dropdown !== false ? (React__default["default"].createElement(amisCore.Overlay, { container: popOverContainer || _this.getParent, target: _this.getTarget, placement: 'auto', show: isOpen && !!finnalOptions.length },
|
338
346
|
React__default["default"].createElement(amisCore.PopOver, { overlay: true, className: cx('TagControl-popover'), onHide: _this.close },
|
339
347
|
React__default["default"].createElement(amisUi.ListMenu, { options: finnalOptions, itemRender: _this.renderItem, highlightIndex: highlightedIndex, getItemProps: function (_a) {
|
@@ -341,14 +349,17 @@ var TagControl = /** @class */ (function (_super) {
|
|
341
349
|
return (tslib.__assign({}, getItemProps({
|
342
350
|
index: index,
|
343
351
|
item: item,
|
344
|
-
disabled: item.disabled
|
352
|
+
disabled: reachMax || item.disabled,
|
353
|
+
className: cx('ListMenu-item', {
|
354
|
+
'is-disabled': reachMax
|
355
|
+
}),
|
345
356
|
})));
|
346
357
|
} })))) : (
|
347
358
|
// 保留原来的展现方式,不推荐
|
348
359
|
React__default["default"].createElement("div", { className: cx('TagControl-sug') },
|
349
360
|
optionsTip ? (React__default["default"].createElement("div", { className: cx('TagControl-sugTip') }, __(optionsTip))) : null,
|
350
361
|
options.map(function (item, index) { return (React__default["default"].createElement("div", { className: cx('TagControl-sugItem', {
|
351
|
-
'is-disabled': item.disabled || disabled
|
362
|
+
'is-disabled': item.disabled || disabled || reachMax
|
352
363
|
}), key: index, onClick: _this.addItem.bind(_this, item) }, item.label)); })))));
|
353
364
|
}));
|
354
365
|
};
|
@@ -433,6 +444,12 @@ var TagControl = /** @class */ (function (_super) {
|
|
433
444
|
tslib.__metadata("design:paramtypes", []),
|
434
445
|
tslib.__metadata("design:returntype", void 0)
|
435
446
|
], TagControl.prototype, "getParent", null);
|
447
|
+
tslib.__decorate([
|
448
|
+
amisCore.autobind,
|
449
|
+
tslib.__metadata("design:type", Function),
|
450
|
+
tslib.__metadata("design:paramtypes", []),
|
451
|
+
tslib.__metadata("design:returntype", void 0)
|
452
|
+
], TagControl.prototype, "isReachMax", null);
|
436
453
|
return TagControl;
|
437
454
|
}(React__default["default"].PureComponent));
|
438
455
|
/** @class */ ((function (_super) {
|
@@ -56,6 +56,10 @@ export interface TextControlSchema extends FormOptionsSchema {
|
|
56
56
|
/** 用户输入的字符自动转大写 */
|
57
57
|
upperCase?: boolean;
|
58
58
|
};
|
59
|
+
/** control节点的CSS类名 */
|
60
|
+
inputControlClassName?: string;
|
61
|
+
/** 原生input标签的CSS类名 */
|
62
|
+
nativeInputClassName?: string;
|
59
63
|
}
|
60
64
|
export declare type InputTextRendererEvent = 'blur' | 'focus' | 'click' | 'change' | 'enter';
|
61
65
|
export interface TextProps extends OptionsControlProps {
|
@@ -77,6 +81,10 @@ export interface TextProps extends OptionsControlProps {
|
|
77
81
|
lowerCase?: boolean;
|
78
82
|
upperCase?: boolean;
|
79
83
|
};
|
84
|
+
/** control节点的CSS类名 */
|
85
|
+
inputControlClassName?: string;
|
86
|
+
/** 原生input标签的CSS类名 */
|
87
|
+
nativeInputClassName?: string;
|
80
88
|
}
|
81
89
|
export interface TextState {
|
82
90
|
isOpen?: boolean;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -90,6 +90,10 @@ var TextControl = /** @class */ (function (_super) {
|
|
90
90
|
: this.valueToString(props.value)
|
91
91
|
});
|
92
92
|
}
|
93
|
+
if (prevProps.revealPassword !== props.revealPassword) {
|
94
|
+
/** 隐藏按钮的同时将密码设置为隐藏态 */
|
95
|
+
!props.revealPassword && this.setState({ revealPassword: false });
|
96
|
+
}
|
93
97
|
};
|
94
98
|
TextControl.prototype.componentWillUnmount = function () {
|
95
99
|
this.unHook && this.unHook();
|
@@ -143,7 +147,8 @@ var TextControl = /** @class */ (function (_super) {
|
|
143
147
|
onChange(this.normalizeValue(newValue));
|
144
148
|
};
|
145
149
|
TextControl.prototype.handleClick = function () {
|
146
|
-
|
150
|
+
// 已经 focus 的就不重复执行,否则总重新定位光标
|
151
|
+
this.state.isFocused || this.focus();
|
147
152
|
this.setState({
|
148
153
|
isOpen: true
|
149
154
|
});
|
@@ -382,7 +387,7 @@ var TextControl = /** @class */ (function (_super) {
|
|
382
387
|
TextControl.prototype.renderSugestMode = function () {
|
383
388
|
var _this = this;
|
384
389
|
var _a;
|
385
|
-
var _b = this.props, className = _b.className, inputOnly = _b.inputOnly, value = _b.value, placeholder = _b.placeholder, cx = _b.classnames, disabled = _b.disabled, readOnly = _b.readOnly, name = _b.name, loading = _b.loading, clearable = _b.clearable, options = _b.options, selectedOptions = _b.selectedOptions, autoComplete = _b.autoComplete, labelField = _b.labelField, valueField = _b.valueField, multiple = _b.multiple, creatable = _b.creatable, borderMode = _b.borderMode, showCounter = _b.showCounter, maxLength = _b.maxLength, __ = _b.translate;
|
390
|
+
var _b = this.props, className = _b.className, inputControlClassName = _b.inputControlClassName, nativeInputClassName = _b.nativeInputClassName, inputOnly = _b.inputOnly, value = _b.value, placeholder = _b.placeholder, cx = _b.classnames, disabled = _b.disabled, readOnly = _b.readOnly, name = _b.name, loading = _b.loading, clearable = _b.clearable, options = _b.options, selectedOptions = _b.selectedOptions, autoComplete = _b.autoComplete, labelField = _b.labelField, valueField = _b.valueField, multiple = _b.multiple, creatable = _b.creatable, borderMode = _b.borderMode, showCounter = _b.showCounter, maxLength = _b.maxLength, __ = _b.translate;
|
386
391
|
var type = (_a = this.props.type) === null || _a === void 0 ? void 0 : _a.replace(/^(?:native|input)\-/, '');
|
387
392
|
return (React__default["default"].createElement(Downshift__default["default"], { isOpen: this.state.isOpen && !disabled && !readOnly, inputValue: this.state.inputValue, onChange: this.handleChange, onStateChange: this.handleStateChange, selectedItem: selectedOptions.map(function (item) { return item[valueField || 'value']; }) }, function (_a) {
|
388
393
|
var _b, _c;
|
@@ -407,7 +412,7 @@ var TextControl = /** @class */ (function (_super) {
|
|
407
412
|
_b.isNew = true,
|
408
413
|
_b));
|
409
414
|
}
|
410
|
-
return (React__default["default"].createElement("div", { className: cx("TextControl-input TextControl-input--withAC", inputOnly ? className : '', (_c = {
|
415
|
+
return (React__default["default"].createElement("div", { className: cx("TextControl-input TextControl-input--withAC", inputControlClassName, inputOnly ? className : '', (_c = {
|
411
416
|
'is-opened': isOpen,
|
412
417
|
'TextControl-input--multiple': multiple
|
413
418
|
},
|
@@ -433,7 +438,7 @@ var TextControl = /** @class */ (function (_super) {
|
|
433
438
|
onBlur: _this.handleBlur,
|
434
439
|
onChange: _this.handleInputChange,
|
435
440
|
onKeyDown: _this.handleKeyDown
|
436
|
-
}), { autoComplete: "off", size: 10 }))),
|
441
|
+
}), { autoComplete: "off", size: 10, className: cx(nativeInputClassName) }))),
|
437
442
|
clearable && !disabled && !readOnly && value ? (React__default["default"].createElement("a", { onClick: _this.clearValue, className: cx('TextControl-clear') },
|
438
443
|
React__default["default"].createElement(amisUi.Icon, { icon: "input-clear", className: "icon" }))) : null,
|
439
444
|
showCounter ? (React__default["default"].createElement("span", { className: cx('TextControl-counter') }, "".concat((_d = _this.valueToString(value)) === null || _d === void 0 ? void 0 : _d.length).concat(typeof maxLength === 'number' && maxLength
|
@@ -464,15 +469,15 @@ var TextControl = /** @class */ (function (_super) {
|
|
464
469
|
TextControl.prototype.renderNormal = function () {
|
465
470
|
var _a;
|
466
471
|
var _b, _c;
|
467
|
-
var _d = this.props, ns = _d.classPrefix, cx = _d.classnames, className = _d.className, inputOnly = _d.inputOnly, value = _d.value, placeholder = _d.placeholder; _d.onChange; var disabled = _d.disabled, readOnly = _d.readOnly, max = _d.max, min = _d.min, step = _d.step, clearable = _d.clearable, _e = _d.revealPassword, revealPassword = _e === void 0 ? true : _e, name = _d.name, borderMode = _d.borderMode, prefix = _d.prefix, suffix = _d.suffix, data = _d.data, showCounter = _d.showCounter, maxLength = _d.maxLength;
|
472
|
+
var _d = this.props, ns = _d.classPrefix, cx = _d.classnames, className = _d.className, inputControlClassName = _d.inputControlClassName, nativeInputClassName = _d.nativeInputClassName, inputOnly = _d.inputOnly, value = _d.value, placeholder = _d.placeholder; _d.onChange; var disabled = _d.disabled, readOnly = _d.readOnly, max = _d.max, min = _d.min, step = _d.step, clearable = _d.clearable, _e = _d.revealPassword, revealPassword = _e === void 0 ? true : _e, name = _d.name, borderMode = _d.borderMode, prefix = _d.prefix, suffix = _d.suffix, data = _d.data, showCounter = _d.showCounter, maxLength = _d.maxLength;
|
468
473
|
var type = (_b = this.props.type) === null || _b === void 0 ? void 0 : _b.replace(/^(?:native|input)\-/, '');
|
469
474
|
return (React__default["default"].createElement("div", { className: cx('TextControl-input', (_a = {},
|
470
475
|
_a["TextControl-input--border".concat(amisCore.ucFirst(borderMode))] = borderMode,
|
471
|
-
_a), inputOnly ? className : '') },
|
476
|
+
_a), inputControlClassName, inputOnly ? className : '') },
|
472
477
|
prefix ? (React__default["default"].createElement("span", { className: cx('TextControl-inputPrefix') }, amisCore.filter(prefix, data))) : null,
|
473
|
-
React__default["default"].createElement(amisUi.Input, { name: name, placeholder: placeholder, ref: this.inputRef, disabled: disabled, readOnly: readOnly, type: this.state.revealPassword ? 'text' : type, onFocus: this.handleFocus, onBlur: this.handleBlur, max: max, min: min, autoComplete: "off", size: 10, step: step, onChange: this.handleNormalInputChange, value: this.valueToString(value), className: cx(
|
474
|
-
|
475
|
-
|
478
|
+
React__default["default"].createElement(amisUi.Input, { name: name, placeholder: placeholder, ref: this.inputRef, disabled: disabled, readOnly: readOnly, type: this.state.revealPassword ? 'text' : type, onFocus: this.handleFocus, onBlur: this.handleBlur, max: max, min: min, autoComplete: "off", size: 10, step: step, onChange: this.handleNormalInputChange, value: this.valueToString(value), className: cx(nativeInputClassName, {
|
479
|
+
'TextControl-input-password': type === 'password' && revealPassword
|
480
|
+
}) }),
|
476
481
|
clearable && !disabled && !readOnly && value ? (React__default["default"].createElement("a", { onClick: this.clearValue, className: "".concat(ns, "TextControl-clear") },
|
477
482
|
React__default["default"].createElement(amisUi.Icon, { icon: "input-clear", className: "icon" }))) : null,
|
478
483
|
type === 'password' && revealPassword && !disabled ? (React__default["default"].createElement("a", { onClick: this.toggleRevealPassword, className: "".concat(ns, "TextControl-revealPassword") }, this.state.revealPassword ? (React__default["default"].createElement(amisUi.Icon, { icon: "view", className: "icon" })) : (React__default["default"].createElement(amisUi.Icon, { icon: "invisible", className: "icon" })))) : null,
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -141,7 +141,7 @@ var NestedSelectControl = /** @class */ (function (_super) {
|
|
141
141
|
}) }, text || label.slice(current, pointer)));
|
142
142
|
})
|
143
143
|
: label,
|
144
|
-
!isEnd && '
|
144
|
+
!isEnd && ' / '));
|
145
145
|
})
|
146
146
|
: option[labelField || 'label']));
|
147
147
|
};
|
@@ -560,7 +560,7 @@ var NestedSelectControl = /** @class */ (function (_super) {
|
|
560
560
|
var _b = this.props, className = _b.className, disabled = _b.disabled, cx = _b.classnames, multiple = _b.multiple, placeholder = _b.placeholder, __ = _b.translate, inline = _b.inline, searchable = _b.searchable; _b.autoComplete; var selectedOptions = _b.selectedOptions, clearable = _b.clearable, loading = _b.loading, borderMode = _b.borderMode, useMobileUI = _b.useMobileUI, env = _b.env;
|
561
561
|
var mobileUI = useMobileUI && amisCore.isMobile();
|
562
562
|
return (React__default["default"].createElement("div", { className: cx('NestedSelectControl', className) },
|
563
|
-
React__default["default"].createElement(amisUi.ResultBox, { useMobileUI: useMobileUI, disabled: disabled, ref: this.domRef, placeholder: __(placeholder !== null && placeholder !== void 0 ? placeholder : 'placeholder.empty'), className: cx("NestedSelect", (_a = {
|
563
|
+
React__default["default"].createElement(amisUi.ResultBox, { useMobileUI: useMobileUI, disabled: disabled, ref: this.domRef, placeholder: __(placeholder !== null && placeholder !== void 0 ? placeholder : 'placeholder.empty'), inputPlaceholder: '', className: cx("NestedSelect", (_a = {
|
564
564
|
'NestedSelect--inline': inline,
|
565
565
|
'NestedSelect--single': !multiple,
|
566
566
|
'NestedSelect--multi': multiple,
|
@@ -573,7 +573,7 @@ var NestedSelectControl = /** @class */ (function (_super) {
|
|
573
573
|
? selectedOptions
|
574
574
|
: selectedOptions.length
|
575
575
|
? selectedOptions[0]
|
576
|
-
: '', onResultClick: this.handleOutClick, value: this.state.inputValue, onChange: this.handleInputChange, onResultChange: this.handleResultChange, onClear: this.handleResultClear, itemRender: this.renderValue, onKeyPress: this.handleKeyPress, onFocus: this.onFocus, onBlur: this.onBlur, onKeyDown: this.handleInputKeyDown, clearable: clearable, hasDropDownArrow: true, allowInput: searchable
|
576
|
+
: '', onResultClick: this.handleOutClick, value: this.state.inputValue, onChange: this.handleInputChange, onResultChange: this.handleResultChange, onClear: this.handleResultClear, itemRender: this.renderValue, onKeyPress: this.handleKeyPress, onFocus: this.onFocus, onBlur: this.onBlur, onKeyDown: this.handleInputKeyDown, clearable: clearable, hasDropDownArrow: true, allowInput: searchable }, loading ? React__default["default"].createElement(amisUi.Spinner, { size: "sm" }) : undefined),
|
577
577
|
mobileUI ? (React__default["default"].createElement(amisUi.PopUp, { className: cx("NestedSelect-popup"), container: env && env.getModalContainer ? env.getModalContainer : undefined, isShow: this.state.isOpened, onHide: this.close, showConfirm: false, showClose: false },
|
578
578
|
React__default["default"].createElement(amisUi.Cascader, tslib.__assign({ onClose: this.close }, this.props, { onChange: this.handleResultChange, options: this.props.options.slice(), value: selectedOptions })))) : this.state.isOpened ? (this.renderOuter()) : null));
|
579
579
|
};
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -197,6 +197,7 @@ var PickerControl = /** @class */ (function (_super) {
|
|
197
197
|
};
|
198
198
|
PickerControl.prototype.handleClick = function () {
|
199
199
|
this.input.current && this.input.current.focus();
|
200
|
+
this.open();
|
200
201
|
};
|
201
202
|
PickerControl.prototype.clearValue = function () {
|
202
203
|
var _a = this.props, onChange = _a.onChange, resetValue = _a.resetValue;
|
@@ -208,7 +209,10 @@ var PickerControl = /** @class */ (function (_super) {
|
|
208
209
|
return (React__default["default"].createElement("div", { className: "".concat(ns, "Picker-values") }, selectedOptions.map(function (item, index) { return (React__default["default"].createElement("div", { key: index, className: cx__default["default"]("".concat(ns, "Picker-value"), {
|
209
210
|
'is-disabled': disabled
|
210
211
|
}) },
|
211
|
-
React__default["default"].createElement("span", { "data-tooltip": __('delete'), "data-position": "bottom", className: "".concat(ns, "Picker-valueIcon"), onClick:
|
212
|
+
React__default["default"].createElement("span", { "data-tooltip": __('delete'), "data-position": "bottom", className: "".concat(ns, "Picker-valueIcon"), onClick: function (e) {
|
213
|
+
e.stopPropagation();
|
214
|
+
_this.removeItem(index);
|
215
|
+
} }, "\u00D7"),
|
212
216
|
React__default["default"].createElement("span", { className: "".concat(ns, "Picker-valueLabel") }, labelTpl ? (React__default["default"].createElement(amisUi.Html, { html: amisCore.filter(labelTpl, item) })) : ("".concat(amisCore.getVariable(item, labelField || 'label') ||
|
213
217
|
amisCore.getVariable(item, 'id')))))); })));
|
214
218
|
};
|
@@ -20,6 +20,10 @@ export interface SelectControlSchema extends FormOptionsSchema {
|
|
20
20
|
* 可以自定义菜单展示。
|
21
21
|
*/
|
22
22
|
menuTpl?: string;
|
23
|
+
/**
|
24
|
+
* 当在value值未匹配到当前options中的选项时,是否value值对应文本飘红显示
|
25
|
+
*/
|
26
|
+
showInvalidMatch: boolean;
|
23
27
|
/**
|
24
28
|
* 边框模式,全边框,还是半边框,或者没边框。
|
25
29
|
*/
|
@@ -96,6 +100,7 @@ export interface SelectControlSchema extends FormOptionsSchema {
|
|
96
100
|
export interface SelectProps extends OptionsControlProps {
|
97
101
|
autoComplete?: Api;
|
98
102
|
searchable?: boolean;
|
103
|
+
showInvalidMatch?: boolean;
|
99
104
|
defaultOpen?: boolean;
|
100
105
|
useMobileUI?: boolean;
|
101
106
|
maxTagCount?: number;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* amis v2.
|
2
|
+
* amis v2.1.0
|
3
3
|
* Copyright 2018-2022 baidu
|
4
4
|
*/
|
5
5
|
|
@@ -228,7 +228,7 @@ var SelectControl = /** @class */ (function (_super) {
|
|
228
228
|
};
|
229
229
|
SelectControl.prototype.render = function () {
|
230
230
|
var _this = this;
|
231
|
-
var _a = this.props, autoComplete = _a.autoComplete, searchable = _a.searchable, options = _a.options, className = _a.className, loading = _a.loading; _a.value; var selectedOptions = _a.selectedOptions, multi = _a.multi, multiple = _a.multiple, placeholder = _a.placeholder; _a.id; var classPrefix = _a.classPrefix; _a.classnames; var creatable = _a.creatable; _a.inline; var noResultsText = _a.noResultsText, render = _a.render, menuTpl = _a.menuTpl, borderMode = _a.borderMode, selectMode = _a.selectMode, env = _a.env, useMobileUI = _a.useMobileUI, rest = tslib.__rest(_a, ["autoComplete", "searchable", "options", "className", "loading", "value", "selectedOptions", "multi", "multiple", "placeholder", "id", "classPrefix", "classnames", "creatable", "inline", "noResultsText", "render", "menuTpl", "borderMode", "selectMode", "env", "useMobileUI"]);
|
231
|
+
var _a = this.props, autoComplete = _a.autoComplete, searchable = _a.searchable, showInvalidMatch = _a.showInvalidMatch, options = _a.options, className = _a.className, loading = _a.loading; _a.value; var selectedOptions = _a.selectedOptions, multi = _a.multi, multiple = _a.multiple, placeholder = _a.placeholder; _a.id; var classPrefix = _a.classPrefix; _a.classnames; var creatable = _a.creatable; _a.inline; var noResultsText = _a.noResultsText, render = _a.render, menuTpl = _a.menuTpl, borderMode = _a.borderMode, selectMode = _a.selectMode, env = _a.env, useMobileUI = _a.useMobileUI, rest = tslib.__rest(_a, ["autoComplete", "searchable", "showInvalidMatch", "options", "className", "loading", "value", "selectedOptions", "multi", "multiple", "placeholder", "id", "classPrefix", "classnames", "creatable", "inline", "noResultsText", "render", "menuTpl", "borderMode", "selectMode", "env", "useMobileUI"]);
|
232
232
|
if (noResultsText) {
|
233
233
|
noResultsText = render('noResultText', noResultsText);
|
234
234
|
}
|
@@ -237,12 +237,13 @@ var SelectControl = /** @class */ (function (_super) {
|
|
237
237
|
? env.getModalContainer
|
238
238
|
: mobileUI
|
239
239
|
? undefined
|
240
|
-
: rest.popOverContainer, borderMode: borderMode, placeholder: placeholder, multiple: multiple || multi, ref: this.inputRef, value: selectedOptions, options: options, loadOptions: amisCore.isEffectiveApi(autoComplete) ? this.lazyloadRemote : undefined, creatable: creatable, searchable: searchable || !!autoComplete, onChange: this.changeValue, onBlur: function (e) { return _this.dispatchEvent('blur', e); }, onFocus: function (e) { return _this.dispatchEvent('focus', e); }, onAdd: function () { return _this.dispatchEvent('add'); }, onEdit: function (item) { return _this.dispatchEvent('edit', item); }, onDelete: function (item) { return _this.dispatchEvent('delete', item); }, loading: loading, noResultsText: noResultsText, renderMenu: menuTpl ? this.renderMenu : undefined })))));
|
240
|
+
: rest.popOverContainer, borderMode: borderMode, placeholder: placeholder, multiple: multiple || multi, ref: this.inputRef, value: selectedOptions, options: options, loadOptions: amisCore.isEffectiveApi(autoComplete) ? this.lazyloadRemote : undefined, showInvalidMatch: showInvalidMatch, creatable: creatable, searchable: searchable || !!autoComplete, onChange: this.changeValue, onBlur: function (e) { return _this.dispatchEvent('blur', e); }, onFocus: function (e) { return _this.dispatchEvent('focus', e); }, onAdd: function () { return _this.dispatchEvent('add'); }, onEdit: function (item) { return _this.dispatchEvent('edit', item); }, onDelete: function (item) { return _this.dispatchEvent('delete', item); }, loading: loading, noResultsText: noResultsText, renderMenu: menuTpl ? this.renderMenu : undefined })))));
|
241
241
|
};
|
242
242
|
SelectControl.defaultProps = {
|
243
243
|
clearable: false,
|
244
244
|
searchable: false,
|
245
|
-
multiple: false
|
245
|
+
multiple: false,
|
246
|
+
showInvalidMatch: false
|
246
247
|
};
|
247
248
|
tslib.__decorate([
|
248
249
|
amisCore.autobind,
|