amis 1.8.0-beta.1 → 1.8.0-beta.5

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 (207) hide show
  1. package/lib/SchemaRenderer.js +19 -3
  2. package/lib/SchemaRenderer.js.map +2 -2
  3. package/lib/WithRootStore.d.ts +18 -0
  4. package/lib/WithStore.js +2 -1
  5. package/lib/WithStore.js.map +2 -2
  6. package/lib/actions/CmptAction.js +14 -3
  7. package/lib/actions/CmptAction.js.map +2 -2
  8. package/lib/components/AssociatedSelection.js +9 -2
  9. package/lib/components/AssociatedSelection.js.map +2 -2
  10. package/lib/components/BarCode.js +1 -1
  11. package/lib/components/BarCode.js.map +2 -2
  12. package/lib/components/Checkbox.d.ts +24 -23
  13. package/lib/components/Checkbox.js +6 -2
  14. package/lib/components/Checkbox.js.map +2 -2
  15. package/lib/components/DatePicker.js +16 -5
  16. package/lib/components/DatePicker.js.map +2 -2
  17. package/lib/components/DateRangePicker.d.ts +94 -84
  18. package/lib/components/DateRangePicker.js +259 -7
  19. package/lib/components/DateRangePicker.js.map +2 -2
  20. package/lib/components/MonthRangePicker.d.ts +84 -84
  21. package/lib/components/Radios.d.ts +22 -22
  22. package/lib/components/Radios.js +3 -5
  23. package/lib/components/Radios.js.map +2 -2
  24. package/lib/components/Range.d.ts +2 -2
  25. package/lib/components/Range.js +24 -11
  26. package/lib/components/Range.js.map +2 -2
  27. package/lib/components/Steps.d.ts +6 -0
  28. package/lib/components/Steps.js +13 -9
  29. package/lib/components/Steps.js.map +2 -2
  30. package/lib/components/calendar/Calendar.js +2 -14
  31. package/lib/components/calendar/Calendar.js.map +2 -2
  32. package/lib/components/calendar/YearsView.js +3 -3
  33. package/lib/components/calendar/YearsView.js.map +2 -2
  34. package/lib/factory.d.ts +4 -0
  35. package/lib/factory.js +9 -0
  36. package/lib/factory.js.map +2 -2
  37. package/lib/index.js +1 -1
  38. package/lib/locale/de-DE.js +13 -0
  39. package/lib/locale/de-DE.js.map +2 -2
  40. package/lib/locale/en-US.js +13 -0
  41. package/lib/locale/en-US.js.map +2 -2
  42. package/lib/locale/zh-CN.js +13 -0
  43. package/lib/locale/zh-CN.js.map +2 -2
  44. package/lib/renderers/Action.d.ts +2 -0
  45. package/lib/renderers/Action.js +23 -5
  46. package/lib/renderers/Action.js.map +2 -2
  47. package/lib/renderers/CRUD.d.ts +8 -0
  48. package/lib/renderers/CRUD.js +11 -4
  49. package/lib/renderers/CRUD.js.map +2 -2
  50. package/lib/renderers/Carousel.d.ts +1 -0
  51. package/lib/renderers/Carousel.js +13 -1
  52. package/lib/renderers/Carousel.js.map +2 -2
  53. package/lib/renderers/Form/Checkbox.d.ts +5 -2
  54. package/lib/renderers/Form/Checkbox.js +2 -2
  55. package/lib/renderers/Form/Checkbox.js.map +2 -2
  56. package/lib/renderers/Form/Checkboxes.d.ts +7 -2
  57. package/lib/renderers/Form/Checkboxes.js +101 -12
  58. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  59. package/lib/renderers/Form/Combo.js +3 -2
  60. package/lib/renderers/Form/Combo.js.map +2 -2
  61. package/lib/renderers/Form/InputCity.d.ts +3 -0
  62. package/lib/renderers/Form/InputCity.js +44 -2
  63. package/lib/renderers/Form/InputCity.js.map +2 -2
  64. package/lib/renderers/Form/InputDateRange.d.ts +5 -0
  65. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  66. package/lib/renderers/Form/InputFile.js +6 -3
  67. package/lib/renderers/Form/InputFile.js.map +2 -2
  68. package/lib/renderers/Form/InputImage.js +6 -3
  69. package/lib/renderers/Form/InputImage.js.map +2 -2
  70. package/lib/renderers/Form/InputRange.js +13 -14
  71. package/lib/renderers/Form/InputRange.js.map +2 -2
  72. package/lib/renderers/Form/Item.d.ts +11 -6
  73. package/lib/renderers/Form/Item.js +3 -1
  74. package/lib/renderers/Form/Item.js.map +2 -2
  75. package/lib/renderers/Form/index.d.ts +1 -0
  76. package/lib/renderers/Form/index.js +1 -1
  77. package/lib/renderers/Form/index.js.map +2 -2
  78. package/lib/renderers/Form/wrapControl.d.ts +9 -0
  79. package/lib/renderers/Form/wrapControl.js +1 -1
  80. package/lib/renderers/Form/wrapControl.js.map +2 -2
  81. package/lib/renderers/Nav.js +2 -2
  82. package/lib/renderers/Nav.js.map +2 -2
  83. package/lib/renderers/Steps.d.ts +8 -0
  84. package/lib/renderers/Steps.js +2 -2
  85. package/lib/renderers/Steps.js.map +2 -2
  86. package/lib/renderers/Table/index.d.ts +1 -0
  87. package/lib/renderers/Table/index.js +10 -5
  88. package/lib/renderers/Table/index.js.map +2 -2
  89. package/lib/renderers/Tabs.d.ts +4 -0
  90. package/lib/renderers/Tabs.js +22 -6
  91. package/lib/renderers/Tabs.js.map +2 -2
  92. package/lib/renderers/Wizard.d.ts +6 -3
  93. package/lib/renderers/Wizard.js +257 -152
  94. package/lib/renderers/Wizard.js.map +2 -2
  95. package/lib/store/crud.d.ts +1 -0
  96. package/lib/store/crud.js +33 -7
  97. package/lib/store/crud.js.map +2 -2
  98. package/lib/store/formItem.js +1 -1
  99. package/lib/store/formItem.js.map +2 -2
  100. package/lib/store/index.d.ts +5 -0
  101. package/lib/store/index.js +14 -0
  102. package/lib/store/index.js.map +2 -2
  103. package/lib/store/table.js +2 -2
  104. package/lib/store/table.js.map +2 -2
  105. package/lib/themes/ang-ie11.css +278 -17
  106. package/lib/themes/ang.css +286 -17
  107. package/lib/themes/ang.css.map +1 -1
  108. package/lib/themes/antd-ie11.css +278 -17
  109. package/lib/themes/antd.css +286 -17
  110. package/lib/themes/antd.css.map +1 -1
  111. package/lib/themes/cxd-ie11.css +278 -17
  112. package/lib/themes/cxd.css +286 -17
  113. package/lib/themes/cxd.css.map +1 -1
  114. package/lib/themes/dark-ie11.css +278 -17
  115. package/lib/themes/dark.css +286 -17
  116. package/lib/themes/dark.css.map +1 -1
  117. package/lib/themes/default-ie11.css +278 -17
  118. package/lib/themes/default.css +286 -17
  119. package/lib/themes/default.css.map +1 -1
  120. package/lib/types.d.ts +1 -1
  121. package/lib/types.js.map +1 -1
  122. package/lib/utils/columnsSplit.d.ts +1 -0
  123. package/lib/utils/columnsSplit.js +40 -0
  124. package/lib/utils/columnsSplit.js.map +13 -0
  125. package/lib/utils/debug.d.ts +1 -1
  126. package/lib/utils/debug.js +16 -22
  127. package/lib/utils/debug.js.map +2 -2
  128. package/package.json +1 -1
  129. package/schema.json +237 -29
  130. package/scss/_properties.scss +10 -1
  131. package/scss/components/_barcode.scss +1 -1
  132. package/scss/components/_carousel.scss +1 -0
  133. package/scss/components/_debug.scss +3 -3
  134. package/scss/components/_steps.scss +199 -8
  135. package/scss/components/form/_checks.scss +122 -1
  136. package/scss/components/form/_date.scss +2 -1
  137. package/scss/components/form/_editor.scss +2 -1
  138. package/scss/components/form/_form.scss +16 -0
  139. package/sdk/ang-ie11.css +335 -18
  140. package/sdk/ang.css +343 -18
  141. package/sdk/antd-ie11.css +335 -18
  142. package/sdk/antd.css +343 -18
  143. package/sdk/barcode.js +51 -51
  144. package/sdk/charts.js +14 -14
  145. package/sdk/codemirror.js +7 -7
  146. package/sdk/color-picker.js +65 -65
  147. package/sdk/cropperjs.js +2 -2
  148. package/sdk/cxd-ie11.css +335 -18
  149. package/sdk/cxd.css +343 -18
  150. package/sdk/dark-ie11.css +335 -18
  151. package/sdk/dark.css +343 -18
  152. package/sdk/exceljs.js +1 -1
  153. package/sdk/locale/de-DE.js +13 -0
  154. package/sdk/markdown.js +69 -69
  155. package/sdk/papaparse.js +1 -1
  156. package/sdk/renderers/Form/CityDB.js +1 -1
  157. package/sdk/rest.js +17 -17
  158. package/sdk/rich-text.js +62 -62
  159. package/sdk/sdk-ie11.css +335 -18
  160. package/sdk/sdk.css +343 -18
  161. package/sdk/sdk.js +1289 -1287
  162. package/sdk/thirds/hls.js/hls.js +1 -1
  163. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  164. package/sdk/tinymce.js +57 -57
  165. package/src/SchemaRenderer.tsx +32 -14
  166. package/src/WithStore.tsx +3 -1
  167. package/src/actions/CmptAction.ts +18 -0
  168. package/src/components/AssociatedSelection.tsx +9 -3
  169. package/src/components/BarCode.tsx +2 -2
  170. package/src/components/Checkbox.tsx +11 -5
  171. package/src/components/DatePicker.tsx +21 -4
  172. package/src/components/DateRangePicker.tsx +295 -6
  173. package/src/components/Radios.tsx +6 -17
  174. package/src/components/Range.tsx +26 -12
  175. package/src/components/Steps.tsx +28 -27
  176. package/src/components/calendar/Calendar.tsx +2 -15
  177. package/src/components/calendar/YearsView.tsx +3 -4
  178. package/src/factory.tsx +16 -0
  179. package/src/locale/de-DE.ts +13 -0
  180. package/src/locale/en-US.ts +13 -0
  181. package/src/locale/zh-CN.ts +13 -0
  182. package/src/renderers/Action.tsx +22 -1
  183. package/src/renderers/CRUD.tsx +22 -4
  184. package/src/renderers/Carousel.tsx +8 -0
  185. package/src/renderers/Form/Checkbox.tsx +11 -2
  186. package/src/renderers/Form/Checkboxes.tsx +106 -23
  187. package/src/renderers/Form/Combo.tsx +2 -3
  188. package/src/renderers/Form/InputCity.tsx +33 -4
  189. package/src/renderers/Form/InputDateRange.tsx +8 -1
  190. package/src/renderers/Form/InputFile.tsx +7 -3
  191. package/src/renderers/Form/InputImage.tsx +7 -3
  192. package/src/renderers/Form/InputRange.tsx +18 -16
  193. package/src/renderers/Form/Item.tsx +1 -0
  194. package/src/renderers/Form/index.tsx +2 -1
  195. package/src/renderers/Form/wrapControl.tsx +1 -1
  196. package/src/renderers/Nav.tsx +1 -1
  197. package/src/renderers/Steps.tsx +14 -0
  198. package/src/renderers/Table/index.tsx +15 -4
  199. package/src/renderers/Tabs.tsx +75 -28
  200. package/src/renderers/Wizard.tsx +154 -93
  201. package/src/store/crud.ts +40 -5
  202. package/src/store/formItem.ts +1 -2
  203. package/src/store/index.ts +20 -0
  204. package/src/store/table.ts +2 -2
  205. package/src/types.ts +3 -1
  206. package/src/utils/columnsSplit.tsx +57 -0
  207. package/src/utils/debug.tsx +17 -24
@@ -0,0 +1,57 @@
1
+ /**
2
+ * columnsCount 支持数字和数组两种格式
3
+ */
4
+ import React from 'react';
5
+ import chunk from 'lodash/chunk';
6
+
7
+ export function columnsSplit(
8
+ body: any[],
9
+ cx: any,
10
+ columnsCount?: number | number[]
11
+ ) {
12
+ if (Array.isArray(columnsCount) && columnsCount.length) {
13
+ let bodyIndex = 0;
14
+ const bodyList: JSX.Element[] = [];
15
+ const maxSize = Math.max(Math.round(12 / Math.max(...columnsCount)), 1);
16
+ let cellClassName = `Grid-col--sm${maxSize}`;
17
+ columnsCount.forEach((columnSize, groupIndex) => {
18
+ if (columnSize) {
19
+ bodyList.push(
20
+ <div className={cx('Grid')} key={groupIndex}>
21
+ {Array.from({length: columnSize}).map((_, index) => {
22
+ if (bodyIndex + index < body.length) {
23
+ // 避免溢出
24
+ return (
25
+ <div key={index} className={cx(cellClassName)}>
26
+ {body[bodyIndex + index]}
27
+ </div>
28
+ );
29
+ } else {
30
+ return null;
31
+ }
32
+ })}
33
+ </div>
34
+ );
35
+ bodyIndex = bodyIndex + columnSize;
36
+ }
37
+ });
38
+
39
+ body = bodyList;
40
+ } else if (typeof columnsCount === 'number' && columnsCount > 1) {
41
+ let weight = 12 / (columnsCount as number);
42
+ let cellClassName = `Grid-col--sm${
43
+ weight === Math.round(weight) ? weight : ''
44
+ }`;
45
+ body = chunk(body, columnsCount).map((group, groupIndex) => (
46
+ <div className={cx('Grid')} key={groupIndex}>
47
+ {Array.from({length: columnsCount as number}).map((_, index) => (
48
+ <div key={index} className={cx(cellClassName)}>
49
+ {group[index]}
50
+ </div>
51
+ ))}
52
+ </div>
53
+ ));
54
+ }
55
+
56
+ return body;
57
+ }
@@ -182,6 +182,7 @@ const AMISDebug = observer(({store}: {store: AMISDebugStore}) => {
182
182
  >
183
183
  <div
184
184
  className="AMISDebug-toggle"
185
+ title="open debug"
185
186
  onClick={() => {
186
187
  store.isExpanded = true;
187
188
  }}
@@ -284,24 +285,6 @@ const AMISDebug = observer(({store}: {store: AMISDebugStore}) => {
284
285
  );
285
286
  });
286
287
 
287
- export let enableAMISDebug = false;
288
-
289
- // 开启 debug 有两种方法,一个是设置 enableAMISDebug 全局变量,另一个是通过 amisDebug=1 query
290
- if (
291
- (window as any).enableAMISDebug ||
292
- location.search.indexOf('amisDebug=1') !== -1
293
- ) {
294
- enableAMISDebug = true;
295
- // 页面只有一个
296
- if (!(window as any).amisDebugElement) {
297
- const amisDebugElement = document.createElement('div');
298
- document.body.appendChild(amisDebugElement);
299
- const element = <AMISDebug store={store} />;
300
- render(element, amisDebugElement);
301
- (window as any).amisDebugElement = true;
302
- }
303
- }
304
-
305
288
  /**
306
289
  * 鼠标移动到某个组件的效果
307
290
  */
@@ -365,7 +348,20 @@ autorun(() => {
365
348
  }
366
349
  });
367
350
 
368
- if (enableAMISDebug) {
351
+ // 页面中只能有一个实例
352
+ let isEnabled = false;
353
+
354
+ export function enableDebug() {
355
+ if (isEnabled) {
356
+ return;
357
+ }
358
+ isEnabled = true;
359
+
360
+ const amisDebugElement = document.createElement('div');
361
+ document.body.appendChild(amisDebugElement);
362
+ const element = <AMISDebug store={store} />;
363
+ render(element, amisDebugElement);
364
+
369
365
  document.body.appendChild(amisHoverBox);
370
366
  document.body.appendChild(amisActiveBox);
371
367
  document.addEventListener('mousemove', handleMouseMove);
@@ -378,9 +374,6 @@ interface DebugWrapperProps {
378
374
 
379
375
  export class DebugWrapper extends Component<DebugWrapperProps> {
380
376
  componentDidMount() {
381
- if (!enableAMISDebug) {
382
- return;
383
- }
384
377
  const root = findDOMNode(this) as HTMLElement;
385
378
  if (!root) {
386
379
  return;
@@ -407,7 +400,7 @@ type Category = 'api' | 'event';
407
400
  * @param ext 扩展信息
408
401
  */
409
402
  export function debug(cat: Category, msg: string, ext?: object) {
410
- if (!enableAMISDebug) {
403
+ if (!isEnabled) {
411
404
  return;
412
405
  }
413
406
  const log = {
@@ -426,7 +419,7 @@ export function debug(cat: Category, msg: string, ext?: object) {
426
419
  * @param ext 扩展信息
427
420
  */
428
421
  export function warning(cat: Category, msg: string, ext?: object) {
429
- if (!enableAMISDebug) {
422
+ if (!isEnabled) {
430
423
  return;
431
424
  }
432
425
  store.logs.push({