amis 1.3.2 → 1.3.3

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 (62) hide show
  1. package/lib/compat.js +3 -1
  2. package/lib/compat.js.map +2 -2
  3. package/lib/components/Overlay.js +6 -3
  4. package/lib/components/Overlay.js.map +2 -2
  5. package/lib/components/Transfer.js +3 -2
  6. package/lib/components/Transfer.js.map +2 -2
  7. package/lib/index.js +1 -1
  8. package/lib/renderers/Carousel.js +5 -2
  9. package/lib/renderers/Carousel.js.map +2 -2
  10. package/lib/renderers/Form/Transfer.d.ts +4 -0
  11. package/lib/renderers/Form/Transfer.js +2 -2
  12. package/lib/renderers/Form/Transfer.js.map +2 -2
  13. package/lib/renderers/Image.d.ts +12 -0
  14. package/lib/renderers/Image.js +9 -4
  15. package/lib/renderers/Image.js.map +2 -2
  16. package/lib/themes/ang-ie11.css +19 -16
  17. package/lib/themes/ang.css +19 -16
  18. package/lib/themes/ang.css.map +1 -1
  19. package/lib/themes/antd-ie11.css +19 -16
  20. package/lib/themes/antd.css +19 -16
  21. package/lib/themes/antd.css.map +1 -1
  22. package/lib/themes/cxd-ie11.css +19 -16
  23. package/lib/themes/cxd.css +19 -16
  24. package/lib/themes/cxd.css.map +1 -1
  25. package/lib/themes/dark-ie11.css +19 -16
  26. package/lib/themes/dark.css +19 -16
  27. package/lib/themes/dark.css.map +1 -1
  28. package/lib/themes/default.css +19 -16
  29. package/lib/themes/default.css.map +1 -1
  30. package/package.json +1 -1
  31. package/schema.json +31 -14
  32. package/scss/components/_carousel.scss +23 -21
  33. package/scss/components/_images.scss +0 -1
  34. package/sdk/ang-ie11.css +20 -17
  35. package/sdk/ang.css +20 -17
  36. package/sdk/antd-ie11.css +20 -17
  37. package/sdk/antd.css +20 -17
  38. package/sdk/charts.js +13 -13
  39. package/sdk/color-picker.js +65 -65
  40. package/sdk/cropperjs.js +2 -2
  41. package/sdk/cxd-ie11.css +20 -17
  42. package/sdk/cxd.css +20 -17
  43. package/sdk/dark-ie11.css +20 -17
  44. package/sdk/dark.css +20 -17
  45. package/sdk/exceljs.js +1 -1
  46. package/sdk/markdown.js +69 -69
  47. package/sdk/papaparse.js +1 -1
  48. package/sdk/renderers/Form/CityDB.js +1 -1
  49. package/sdk/rest.js +25 -25
  50. package/sdk/rich-text.js +63 -63
  51. package/sdk/sdk-ie11.css +20 -17
  52. package/sdk/sdk.css +20 -17
  53. package/sdk/sdk.js +1115 -1113
  54. package/sdk/thirds/hls.js/hls.js +1 -1
  55. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  56. package/sdk/tinymce.js +57 -57
  57. package/src/compat.ts +5 -1
  58. package/src/components/Overlay.tsx +9 -6
  59. package/src/components/Transfer.tsx +3 -1
  60. package/src/renderers/Carousel.tsx +13 -1
  61. package/src/renderers/Form/Transfer.tsx +7 -0
  62. package/src/renderers/Image.tsx +38 -1
package/src/compat.ts CHANGED
@@ -531,7 +531,11 @@ addSchemaFilter(function (schema: Schema, renderer: any, props: any) {
531
531
  };
532
532
  }
533
533
 
534
- if (schema?.controls && schema.type !== 'audio') {
534
+ if (
535
+ schema?.controls &&
536
+ schema.type !== 'audio' &&
537
+ schema.type !== 'carousel'
538
+ ) {
535
539
  schema = {
536
540
  ...schema,
537
541
  [schema.type === 'combo' ? `items` : 'body']: (Array.isArray(
@@ -290,12 +290,15 @@ export default class Overlay extends React.Component<
290
290
 
291
291
  // This goes after everything else because it adds a wrapping div.
292
292
  if (rootClose) {
293
- child = (
294
- <RootClose onRootClose={props.onHide}>
295
- {(ref: any) => {
296
- return <div ref={ref}>{child}</div>;
297
- }}
298
- </RootClose>
293
+ return (
294
+ // @ts-ignore
295
+ <Portal container={container}>
296
+ <RootClose onRootClose={props.onHide}>
297
+ {(ref: any) => {
298
+ return <div ref={ref}>{child}</div>;
299
+ }}
300
+ </RootClose>
301
+ </Portal>
299
302
  );
300
303
  }
301
304
 
@@ -276,6 +276,7 @@ export class Transfer extends React.Component<TransferProps, TransferState> {
276
276
  selectMode,
277
277
  noResultsText,
278
278
  searchResultColumns,
279
+ columns,
279
280
  classnames: cx,
280
281
  value,
281
282
  disabled,
@@ -286,12 +287,13 @@ export class Transfer extends React.Component<TransferProps, TransferState> {
286
287
  } = this.props;
287
288
  const options = this.state.searchResult || [];
288
289
  const mode = searchResultMode || selectMode;
290
+ const resultColumns = searchResultColumns || columns;
289
291
 
290
292
  return mode === 'table' ? (
291
293
  <TableCheckboxes
292
294
  placeholder={noResultsText}
293
295
  className={cx('Transfer-checkboxes')}
294
- columns={searchResultColumns!}
296
+ columns={resultColumns!}
295
297
  options={options}
296
298
  value={value}
297
299
  disabled={disabled}
@@ -120,6 +120,9 @@ const defaultSchema = {
120
120
  <Image
121
121
  src={data.image}
122
122
  title={data.title}
123
+ href={data.href}
124
+ blank={data.blank}
125
+ htmlTarget={data.htmlTarget}
123
126
  imageCaption={data.description}
124
127
  thumbMode={data.thumbMode ?? thumbMode ?? 'contain'}
125
128
  imageMode="original"
@@ -413,7 +416,16 @@ export class Carousel extends React.Component<CarouselProps, CarouselState> {
413
416
  {body ? body : placeholder}
414
417
 
415
418
  {dots ? this.renderDots() : null}
416
- {arrows ? this.renderArrows() : null}
419
+ {arrows ? (
420
+ <div className={cx('Carousel-leftArrow')} onClick={this.prev}>
421
+ <Icon icon="left-arrow" className="icon" />
422
+ </div>
423
+ ) : null}
424
+ {arrows ? (
425
+ <div className={cx('Carousel-rightArrow')} onClick={this.next}>
426
+ <Icon icon="right-arrow" className="icon" />
427
+ </div>
428
+ ) : null}
417
429
  </div>
418
430
  );
419
431
  }
@@ -67,6 +67,11 @@ export interface TransferControlSchema extends FormOptionsControl {
67
67
  */
68
68
  columns?: Array<any>;
69
69
 
70
+ /**
71
+ * 当 searchResultMode 为 table 时定义表格列信息。
72
+ */
73
+ searchResultColumns?: Array<any>;
74
+
70
75
  /**
71
76
  * 可搜索?
72
77
  */
@@ -252,6 +257,7 @@ export class BaseTransferRenderer<
252
257
  loading,
253
258
  searchable,
254
259
  searchResultMode,
260
+ searchResultColumns,
255
261
  deferLoad,
256
262
  leftOptions,
257
263
  leftMode,
@@ -275,6 +281,7 @@ export class BaseTransferRenderer<
275
281
  showArrow={showArrow}
276
282
  selectMode={selectMode}
277
283
  searchResultMode={searchResultMode}
284
+ searchResultColumns={searchResultColumns}
278
285
  columns={columns}
279
286
  onSearch={searchable ? this.handleSearch : undefined}
280
287
  onDeferLoad={deferLoad}
@@ -104,6 +104,21 @@ export interface ImageSchema extends BaseSchema {
104
104
  * 预览图比率
105
105
  */
106
106
  thumbRatio?: '1:1' | '4:3' | '16:9';
107
+
108
+ /**
109
+ * 链接地址
110
+ */
111
+ href?: SchemaTpl;
112
+
113
+ /**
114
+ * 是否新窗口打开
115
+ */
116
+ blank?: boolean;
117
+
118
+ /**
119
+ * 链接的 target
120
+ */
121
+ htmlTarget?: string;
107
122
  }
108
123
 
109
124
  export interface ImageThumbProps
@@ -137,6 +152,9 @@ export class ImageThumb extends React.Component<ImageThumbProps> {
137
152
  alt,
138
153
  title,
139
154
  caption,
155
+ href,
156
+ blank = true,
157
+ htmlTarget,
140
158
  onLoad,
141
159
  enlargeAble,
142
160
  translate: __,
@@ -144,7 +162,7 @@ export class ImageThumb extends React.Component<ImageThumbProps> {
144
162
  imageMode
145
163
  } = this.props;
146
164
 
147
- return (
165
+ let image = (
148
166
  <div
149
167
  className={cx(
150
168
  'Image',
@@ -221,6 +239,21 @@ export class ImageThumb extends React.Component<ImageThumbProps> {
221
239
  ) : null}
222
240
  </div>
223
241
  );
242
+
243
+ if (href) {
244
+ image = (
245
+ <a
246
+ href={href}
247
+ target={htmlTarget || (blank ? '_blank' : '_self')}
248
+ className={cx('Link', className)}
249
+ title={title}
250
+ >
251
+ {image}
252
+ </a>
253
+ );
254
+ }
255
+
256
+ return image;
224
257
  }
225
258
  }
226
259
  const ThemedImageThumb = themeable(localeable(ImageThumb));
@@ -302,6 +335,7 @@ export class ImageField extends React.Component<ImageFieldProps, object> {
302
335
  width,
303
336
  classnames: cx,
304
337
  src,
338
+ href,
305
339
  thumbMode,
306
340
  thumbRatio,
307
341
  placeholder,
@@ -314,6 +348,8 @@ export class ImageField extends React.Component<ImageFieldProps, object> {
314
348
  let value =
315
349
  finnalSrc || getPropValue(this.props) || defaultImage || imagePlaceholder;
316
350
 
351
+ const finnalHref = href ? filter(href, data, '| raw') : '';
352
+
317
353
  return (
318
354
  <div
319
355
  className={cx(
@@ -331,6 +367,7 @@ export class ImageField extends React.Component<ImageFieldProps, object> {
331
367
  height={height}
332
368
  width={width}
333
369
  src={value}
370
+ href={finnalHref}
334
371
  title={filter(title, data)}
335
372
  caption={filter(imageCaption, data)}
336
373
  thumbMode={thumbMode}