### @beisen-phoenix/unmodeled-layer

使用 rc-trigger 来实现弹框可见性的控制, 包括动画，定位等信息， 封装 rc-trigger，实现自适应位置

#### API 属性如下:

| 成员               |                                说明                                |                          类型                           | 默认值     |
| ------------------ | :----------------------------------------------------------------: | :-----------------------------------------------------: | ---------- |
| visible            |                              是否显示                              |                         boolean                         | -          |
| size               |       尺寸大小: small(170px) large(340px) auto(与父级自适应)       |                         string                          | -          |
| width              |                    自定义大小，优先级低于 size                     |                         number                          | -          |
| autoSize           |                       是否监听弹层的大小变化                       |                         Boolean                         | true       |
| childMargin        |                           子组件的外边距                           |                         string                          | 0px        |
| trigger            |                    触发展示的行为: hover click                     |                 Array<'hover' 'click'>                  | [ 'hover'] |
| footer             |                             自定义按钮                             |                         object                          | -          |
| autoAdjust         |                         是否自适应调整位置                         |                         Boolean                         | true       |
| content            |                              弹窗内容                              |                        ReactNode                        | -          |
| stretch            |                              弹层拉伸                              | string（'width'、 'minWidth'、 'height'、 'minHeight'） | -          |
| onVisibleChange    |               弹层显示状态改变时调用, 参数为 visible               |                    Function(visible)                    | -          |
| onOk               |                       默认确定按钮的回调函数                       |                        Function                         | -          |
| extraCls           |                            自定义 class                            |                         string                          | ""         |
| blockContainer     | 外层容器的显示类型（true 是 block 类型，false 则是 inline-block）  |                         Boolean                         | false      |
| placement          | 弹层的显示位置(可选值：topLeft, topRight, bottomRight, bottomLeft) |                         string                          | bottomLeft |
| builtinPlacements  |             弹层的可定义偏移位置(具体可参考 dom-align)             |                         object                          | --         |
| getPopupContainer  |                           弹层挂载的容器                           |                        Function                         | -          |
| destroyPopupOnHide |                       隐藏的时候是否销毁节点                       |                         boolean                         | false      |

#### builtinPlacements 取值举例

```
{
  topLeft: {
    points: ['bl', 'tl'],
  },
  topRight: {
    points: ['br', 'tr'],
  },
  bottomRight: {
    points: ['tr', 'br'],
  },
  bottomLeft: {
    points: ['tl', 'bl'],
    offset: [-11, -15]
  },
}
```

#### 代码示例

```
let footer = [{
  text: '按钮1',
  onClick: ()=> console.log("按钮1")
}, {
  text: '按钮2',
  onClick: ()=> console.log("按钮2")
}]
<UnmodeledLayer
  visible={visible}
  size = 'small'
  footer={footer}
  trigger={['hover', 'click']}
  content={content}
  onOk={this.handleOk}
  onVisibleChange={this.onVisibleChange}
  >
  <Button>打开</Button>
</UnmodeledLayer>
```
