amis 1.4.2-beta.11 → 1.4.2-beta.12

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.
Files changed (73) hide show
  1. package/lib/components/PickerColumn.js +3 -3
  2. package/lib/components/PickerColumn.js.map +2 -2
  3. package/lib/components/Select.js +1 -1
  4. package/lib/components/Select.js.map +2 -2
  5. package/lib/components/Selection.js +1 -1
  6. package/lib/components/Selection.js.map +2 -2
  7. package/lib/index.js +1 -1
  8. package/lib/renderers/Form/Select.js +15 -1
  9. package/lib/renderers/Form/Select.js.map +2 -2
  10. package/lib/renderers/Form/Transfer.js +15 -1
  11. package/lib/renderers/Form/Transfer.js.map +2 -2
  12. package/lib/renderers/Form/TransferPicker.js +17 -3
  13. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  14. package/lib/renderers/Form/index.d.ts +5 -0
  15. package/lib/renderers/Form/index.js +4 -2
  16. package/lib/renderers/Form/index.js.map +2 -2
  17. package/lib/renderers/Table/index.js +1 -1
  18. package/lib/renderers/Table/index.js.map +2 -2
  19. package/lib/store/table.d.ts +1 -0
  20. package/lib/store/table.js +30 -7
  21. package/lib/store/table.js.map +2 -2
  22. package/lib/themes/ang-ie11.css +48 -0
  23. package/lib/themes/ang.css +48 -0
  24. package/lib/themes/ang.css.map +1 -1
  25. package/lib/themes/antd-ie11.css +48 -0
  26. package/lib/themes/antd.css +48 -0
  27. package/lib/themes/antd.css.map +1 -1
  28. package/lib/themes/cxd-ie11.css +48 -0
  29. package/lib/themes/cxd.css +48 -0
  30. package/lib/themes/cxd.css.map +1 -1
  31. package/lib/themes/dark-ie11.css +48 -0
  32. package/lib/themes/dark.css +48 -0
  33. package/lib/themes/dark.css.map +1 -1
  34. package/lib/themes/default.css +48 -0
  35. package/lib/themes/default.css.map +1 -1
  36. package/package.json +1 -1
  37. package/schema.json +19 -7
  38. package/scss/components/form/_form.scss +48 -0
  39. package/sdk/ang-ie11.css +49 -0
  40. package/sdk/ang.css +49 -0
  41. package/sdk/antd-ie11.css +49 -0
  42. package/sdk/antd.css +49 -0
  43. package/sdk/charts.js +13 -13
  44. package/sdk/color-picker.js +65 -65
  45. package/sdk/cropperjs.js +2 -2
  46. package/sdk/cxd-ie11.css +49 -0
  47. package/sdk/cxd.css +49 -0
  48. package/sdk/dark-ie11.css +49 -0
  49. package/sdk/dark.css +49 -0
  50. package/sdk/exceljs.js +1 -1
  51. package/sdk/iconfont.svg +2513 -0
  52. package/sdk/iconfont.ttf +0 -0
  53. package/sdk/iconfont.woff +0 -0
  54. package/sdk/markdown.js +69 -69
  55. package/sdk/papaparse.js +1 -1
  56. package/sdk/renderers/Form/CityDB.js +1 -1
  57. package/sdk/rest.js +18 -18
  58. package/sdk/rich-text.js +62 -62
  59. package/sdk/sdk-ie11.css +49 -0
  60. package/sdk/sdk.css +49 -0
  61. package/sdk/sdk.js +1210 -1210
  62. package/sdk/thirds/hls.js/hls.js +1 -1
  63. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  64. package/sdk/tinymce.js +57 -57
  65. package/src/components/PickerColumn.tsx +1 -1
  66. package/src/components/Select.tsx +1 -1
  67. package/src/components/Selection.tsx +1 -1
  68. package/src/renderers/Form/Select.tsx +18 -4
  69. package/src/renderers/Form/Transfer.tsx +16 -2
  70. package/src/renderers/Form/TransferPicker.tsx +19 -3
  71. package/src/renderers/Form/index.tsx +15 -1
  72. package/src/renderers/Table/index.tsx +1 -2
  73. package/src/store/table.ts +46 -9
@@ -20,7 +20,7 @@ import {range} from '../utils/helper';
20
20
  import {themeable, ThemeProps} from '../theme';
21
21
  import {localeable, LocaleProps} from '../locale';
22
22
  import useTouch from '../hooks/use-touch';
23
- import {Button} from '.';
23
+ import Button from './Button';
24
24
 
25
25
  export interface PickerColumnProps extends ThemeProps, LocaleProps {
26
26
  mobileClassName?: string;
@@ -770,7 +770,7 @@ export class Select extends React.Component<SelectProps, SelectState> {
770
770
  hideSelected,
771
771
  renderMenu,
772
772
  mobileClassName,
773
- useMobileUI = true
773
+ useMobileUI = false
774
774
  } = this.props;
775
775
  const {selection} = this.state;
776
776
 
@@ -42,7 +42,7 @@ export class BaseSelection<
42
42
  placeholder: 'placeholder.noOption',
43
43
  itemRender: (option: Option) => <span>{option.label}</span>,
44
44
  multiple: true,
45
- clearable: true
45
+ clearable: false
46
46
  };
47
47
 
48
48
  static value2array(
@@ -351,7 +351,6 @@ class TransferDropdownRenderer extends BaseTransferRenderer<TransferDropDownProp
351
351
  const {
352
352
  className,
353
353
  classnames: cx,
354
- options,
355
354
  selectedOptions,
356
355
  sortable,
357
356
  loading,
@@ -363,11 +362,26 @@ class TransferDropdownRenderer extends BaseTransferRenderer<TransferDropDownProp
363
362
  selectTitle,
364
363
  selectMode,
365
364
  multiple,
366
- leftMode,
367
- leftOptions,
368
- columns
365
+ columns,
366
+ leftMode
369
367
  } = this.props;
370
368
 
369
+ // 目前 LeftOptions 没有接口可以动态加载
370
+ // 为了方便可以快速实现动态化,让选项的第一个成员携带
371
+ // LeftOptions 信息
372
+ let {options, leftOptions, leftDefaultValue} = this.props;
373
+ if (
374
+ selectMode === 'associated' &&
375
+ options &&
376
+ options.length === 1 &&
377
+ options[0].leftOptions &&
378
+ Array.isArray(options[0].children)
379
+ ) {
380
+ leftOptions = options[0].leftOptions;
381
+ leftDefaultValue = options[0].leftDefaultValue ?? leftDefaultValue;
382
+ options = options[0].children;
383
+ }
384
+
371
385
  return (
372
386
  <>
373
387
  <TransferDropDown
@@ -249,7 +249,6 @@ export class BaseTransferRenderer<
249
249
  const {
250
250
  className,
251
251
  classnames: cx,
252
- options,
253
252
  selectedOptions,
254
253
  showArrow,
255
254
  sortable,
@@ -260,7 +259,6 @@ export class BaseTransferRenderer<
260
259
  searchResultMode,
261
260
  searchResultColumns,
262
261
  deferLoad,
263
- leftOptions,
264
262
  leftMode,
265
263
  rightMode,
266
264
  disabled,
@@ -270,6 +268,22 @@ export class BaseTransferRenderer<
270
268
  resultItemRender
271
269
  } = this.props;
272
270
 
271
+ // 目前 LeftOptions 没有接口可以动态加载
272
+ // 为了方便可以快速实现动态化,让选项的第一个成员携带
273
+ // LeftOptions 信息
274
+ let {options, leftOptions, leftDefaultValue} = this.props;
275
+ if (
276
+ selectMode === 'associated' &&
277
+ options &&
278
+ options.length === 1 &&
279
+ options[0].leftOptions &&
280
+ Array.isArray(options[0].children)
281
+ ) {
282
+ leftOptions = options[0].leftOptions;
283
+ leftDefaultValue = options[0].leftDefaultValue ?? leftDefaultValue;
284
+ options = options[0].children;
285
+ }
286
+
273
287
  return (
274
288
  <div className={cx('TransferControl', className)}>
275
289
  <Transfer
@@ -78,7 +78,6 @@ export class TransferPickerRenderer extends BaseTransferRenderer<TabsTransferPro
78
78
  const {
79
79
  className,
80
80
  classnames: cx,
81
- options,
82
81
  selectedOptions,
83
82
  sortable,
84
83
  loading,
@@ -92,12 +91,29 @@ export class TransferPickerRenderer extends BaseTransferRenderer<TabsTransferPro
92
91
  pickerSize,
93
92
  columns,
94
93
  leftMode,
95
- leftOptions
94
+ selectMode
96
95
  } = this.props;
97
96
 
97
+ // 目前 LeftOptions 没有接口可以动态加载
98
+ // 为了方便可以快速实现动态化,让选项的第一个成员携带
99
+ // LeftOptions 信息
100
+ let {options, leftOptions, leftDefaultValue} = this.props;
101
+ if (
102
+ selectMode === 'associated' &&
103
+ options &&
104
+ options.length === 1 &&
105
+ options[0].leftOptions &&
106
+ Array.isArray(options[0].children)
107
+ ) {
108
+ leftOptions = options[0].leftOptions;
109
+ leftDefaultValue = options[0].leftDefaultValue ?? leftDefaultValue;
110
+ options = options[0].children;
111
+ }
112
+
98
113
  return (
99
- <div className={cx('TabsTransferControl', className)}>
114
+ <div className={cx('TransferControl', className)}>
100
115
  <TransferPicker
116
+ selectMode={selectMode}
101
117
  value={selectedOptions}
102
118
  disabled={disabled}
103
119
  options={options}
@@ -202,6 +202,11 @@ export interface FormSchema extends BaseSchema {
202
202
  */
203
203
  mode?: 'normal' | 'inline' | 'horizontal';
204
204
 
205
+ /**
206
+ * 表单项显示为几列
207
+ */
208
+ columnCount?: number;
209
+
205
210
  /**
206
211
  * 如果是水平排版,这个属性可以细化水平排版的左右宽度占比。
207
212
  */
@@ -347,6 +352,7 @@ export default class Form extends React.Component<FormProps, object> {
347
352
  right: 10,
348
353
  offset: 2
349
354
  },
355
+ columnCount: 0,
350
356
  panelClassName: 'Panel--default',
351
357
  messages: {
352
358
  fetchFailed: 'fetchFailed',
@@ -367,6 +373,7 @@ export default class Form extends React.Component<FormProps, object> {
367
373
  'initFetch',
368
374
  'wrapWithPanel',
369
375
  'mode',
376
+ 'columnCount',
370
377
  'collapsable',
371
378
  'horizontal',
372
379
  'panelClassName',
@@ -1418,6 +1425,7 @@ export default class Form extends React.Component<FormProps, object> {
1418
1425
  debug,
1419
1426
  $path,
1420
1427
  store,
1428
+ columnCount,
1421
1429
  render
1422
1430
  } = this.props;
1423
1431
 
@@ -1429,7 +1437,13 @@ export default class Form extends React.Component<FormProps, object> {
1429
1437
 
1430
1438
  return (
1431
1439
  <WrapperComponent
1432
- className={cx(`Form`, `Form--${mode || 'normal'}`, className)}
1440
+ className={cx(
1441
+ `Form`,
1442
+ `Form--${mode || 'normal'}`,
1443
+ {'Form--column': columnCount},
1444
+ `Form--column-${columnCount}`,
1445
+ className
1446
+ )}
1433
1447
  onSubmit={this.handleFormSubmit}
1434
1448
  noValidate
1435
1449
  >
@@ -1441,7 +1441,7 @@ export default class Table extends React.Component<TableProps, object> {
1441
1441
  handleColumnToggle(columns: Array<IColumn>) {
1442
1442
  const {store} = this.props;
1443
1443
 
1444
- store.update({columns});
1444
+ store.updateColumns(columns);
1445
1445
  }
1446
1446
 
1447
1447
  renderAutoFilterForm(): React.ReactNode {
@@ -2155,7 +2155,6 @@ export default class Table extends React.Component<TableProps, object> {
2155
2155
  } = this.props;
2156
2156
  const __ = rest.translate;
2157
2157
  const env = rest.env;
2158
-
2159
2158
  const render = this.props.render;
2160
2159
 
2161
2160
  if (!store.columnsTogglable) {
@@ -523,15 +523,6 @@ export const TableStore = iRendererStore
523
523
  );
524
524
  }
525
525
 
526
- function getActivedSearchableColumns() {
527
- return self.columns.filter(
528
- column =>
529
- column.searchable &&
530
- isObject(column.searchable) &&
531
- column.enableSearch
532
- );
533
- }
534
-
535
526
  return {
536
527
  get columnsData() {
537
528
  return getColumnsExceptBuiltinTypes();
@@ -765,6 +756,51 @@ export const TableStore = iRendererStore
765
756
  }
766
757
  }
767
758
 
759
+ function updateColumns(columns: Array<SColumn>) {
760
+ if (columns && Array.isArray(columns)) {
761
+ columns = columns.filter(column => column).concat();
762
+
763
+ if (!columns.length) {
764
+ columns.push({
765
+ type: 'text',
766
+ label: '空'
767
+ });
768
+ }
769
+
770
+ columns.unshift({
771
+ type: '__expandme',
772
+ toggable: false,
773
+ className: 'Table-expandCell'
774
+ });
775
+
776
+ columns.unshift({
777
+ type: '__checkme',
778
+ fixed: 'left',
779
+ toggable: false,
780
+ className: 'Table-checkCell'
781
+ });
782
+
783
+ columns.unshift({
784
+ type: '__dragme',
785
+ toggable: false,
786
+ className: 'Table-dragCell'
787
+ });
788
+
789
+ columns = columns.map((item, index) => ({
790
+ ...item,
791
+ index,
792
+ rawIndex: index - 3,
793
+ type: item.type || 'plain',
794
+ pristine: item.pristine || item,
795
+ toggled: item.toggled !== false,
796
+ breakpoint: item.breakpoint,
797
+ isPrimary: index === 3
798
+ }));
799
+
800
+ self.columns.replace(columns as any);
801
+ }
802
+ }
803
+
768
804
  function combineCell(arr: Array<SRow>, keys: Array<string>): Array<SRow> {
769
805
  if (!keys.length || !arr.length) {
770
806
  return arr;
@@ -1228,6 +1264,7 @@ export const TableStore = iRendererStore
1228
1264
 
1229
1265
  return {
1230
1266
  update,
1267
+ updateColumns,
1231
1268
  initRows,
1232
1269
  updateSelected,
1233
1270
  toggleAll,