From e2c02305a899c3691716cf74cd044f0d359e34fb Mon Sep 17 00:00:00 2001 From: Wendell Date: Thu, 1 Aug 2019 18:00:11 +0800 Subject: [PATCH] refactor: refactor tooltip components --- components/core/types/public-api.ts | 1 + components/core/types/template.ts | 14 + components/popconfirm/demo/basic.ts | 9 +- components/popconfirm/demo/custom-icon.ts | 2 +- components/popconfirm/demo/dynamic-trigger.ts | 2 +- components/popconfirm/demo/locale.ts | 2 +- components/popconfirm/demo/placement.ts | 48 +-- components/popconfirm/doc/index.en-US.md | 4 +- components/popconfirm/doc/index.zh-CN.md | 4 +- .../popconfirm/nz-popconfirm.component.html | 7 +- .../popconfirm/nz-popconfirm.component.ts | 22 +- .../popconfirm/nz-popconfirm.directive.ts | 77 ++-- components/popconfirm/nz-popconfirm.spec.ts | 8 +- .../popover/demo/arrow-point-at-center.ts | 4 +- components/popover/demo/basic.ts | 2 +- components/popover/demo/control.ts | 6 +- components/popover/demo/placement.ts | 114 +++++- components/popover/demo/template.ts | 2 +- components/popover/demo/triggerType.ts | 12 +- components/popover/doc/index.en-US.md | 7 +- components/popover/doc/index.zh-CN.md | 6 +- components/popover/nz-popover.component.html | 7 +- components/popover/nz-popover.component.ts | 23 +- components/popover/nz-popover.directive.ts | 17 +- components/tooltip/README.md | 37 ++ components/tooltip/base/index.ts | 9 + .../base/nz-tooltip-base-legacy.component.ts | 98 +++++ .../tooltip/base/nz-tooltip-base.component.ts | 122 +++++++ .../tooltip/base/nz-tooltip-base.directive.ts | 336 ++++++++++++++++++ components/tooltip/base/public-api.ts | 11 + .../tooltip/demo/arrow-point-at-center.ts | 6 +- components/tooltip/demo/basic.ts | 2 +- components/tooltip/demo/placement.ts | 24 +- components/tooltip/demo/template.ts | 2 +- components/tooltip/doc/index.en-US.md | 13 +- components/tooltip/doc/index.zh-CN.md | 13 +- components/tooltip/nz-tooltip.component.html | 7 +- components/tooltip/nz-tooltip.component.ts | 143 +------- components/tooltip/nz-tooltip.definitions.ts | 9 + components/tooltip/nz-tooltip.directive.ts | 214 ++--------- components/tooltip/nz-tooltip.module.ts | 2 +- components/tooltip/nz-tooltip.spec.ts | 17 +- components/tooltip/public-api.ts | 4 + tslint.json | 1 - 44 files changed, 982 insertions(+), 488 deletions(-) create mode 100644 components/core/types/template.ts create mode 100644 components/tooltip/README.md create mode 100644 components/tooltip/base/index.ts create mode 100644 components/tooltip/base/nz-tooltip-base-legacy.component.ts create mode 100644 components/tooltip/base/nz-tooltip-base.component.ts create mode 100644 components/tooltip/base/nz-tooltip-base.directive.ts create mode 100644 components/tooltip/base/public-api.ts create mode 100644 components/tooltip/nz-tooltip.definitions.ts diff --git a/components/core/types/public-api.ts b/components/core/types/public-api.ts index 1c23062721a..a2d370f75dc 100644 --- a/components/core/types/public-api.ts +++ b/components/core/types/public-api.ts @@ -12,3 +12,4 @@ export * from './drop-down-position'; export * from './indexable'; export * from './ng-class'; export * from './size'; +export * from './template'; diff --git a/components/core/types/template.ts b/components/core/types/template.ts new file mode 100644 index 00000000000..298a114ef30 --- /dev/null +++ b/components/core/types/template.ts @@ -0,0 +1,14 @@ +/** + * @license + * Copyright Alibaba.com All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE + */ + +import { TemplateRef } from '@angular/core'; + +/** + * A joined type of string and `TemplateRef`. + */ +export type NzTSType = string | TemplateRef; diff --git a/components/popconfirm/demo/basic.ts b/components/popconfirm/demo/basic.ts index f6cba0faadc..e0955a08200 100644 --- a/components/popconfirm/demo/basic.ts +++ b/components/popconfirm/demo/basic.ts @@ -1,10 +1,15 @@ import { Component } from '@angular/core'; -import { NzMessageService } from 'ng-zorro-antd'; +import { NzMessageService } from 'ng-zorro-antd/message'; @Component({ selector: 'nz-demo-popconfirm-basic', template: ` - Delete ` diff --git a/components/popconfirm/demo/custom-icon.ts b/components/popconfirm/demo/custom-icon.ts index 42b2b59178f..e737945d75c 100644 --- a/components/popconfirm/demo/custom-icon.ts +++ b/components/popconfirm/demo/custom-icon.ts @@ -3,7 +3,7 @@ import { Component } from '@angular/core'; @Component({ selector: 'nz-demo-popconfirm-custom-icon', template: ` - Delete + Delete diff --git a/components/popconfirm/demo/dynamic-trigger.ts b/components/popconfirm/demo/dynamic-trigger.ts index 314a142dfcb..705456fed94 100644 --- a/components/popconfirm/demo/dynamic-trigger.ts +++ b/components/popconfirm/demo/dynamic-trigger.ts @@ -6,7 +6,7 @@ import { NzMessageService } from 'ng-zorro-antd'; template: ` - `, diff --git a/components/popover/demo/basic.ts b/components/popover/demo/basic.ts index 527cc5b3264..8ff35840a20 100644 --- a/components/popover/demo/basic.ts +++ b/components/popover/demo/basic.ts @@ -3,7 +3,7 @@ import { Component } from '@angular/core'; @Component({ selector: 'nz-demo-popover-basic', template: ` - ` diff --git a/components/popover/demo/control.ts b/components/popover/demo/control.ts index 4fe7a19f46d..2977e9c71b5 100644 --- a/components/popover/demo/control.ts +++ b/components/popover/demo/control.ts @@ -7,11 +7,11 @@ import { Component } from '@angular/core'; nz-button nzType="primary" nz-popover - nzTitle="Title" + nzPopoverTitle="Title" [(nzVisible)]="visible" (nzVisibleChange)="change($event)" - nzTrigger="click" - [nzContent]="contentTemplate" + nzPopoverTrigger="click" + [nzPopoverContent]="contentTemplate" > Click me diff --git a/components/popover/demo/placement.ts b/components/popover/demo/placement.ts index c65bba2c466..6592f12fda8 100644 --- a/components/popover/demo/placement.ts +++ b/components/popover/demo/placement.ts @@ -4,24 +4,114 @@ import { Component } from '@angular/core'; selector: 'nz-demo-popover-placement', template: `
- - - + + +
- - - + + +
- - - + + +
- - - + + +
diff --git a/components/popover/demo/template.ts b/components/popover/demo/template.ts index a464487f3df..ee968a7a287 100644 --- a/components/popover/demo/template.ts +++ b/components/popover/demo/template.ts @@ -3,7 +3,7 @@ import { Component } from '@angular/core'; @Component({ selector: 'nz-demo-popover-template', template: ` - Title diff --git a/components/popover/demo/triggerType.ts b/components/popover/demo/triggerType.ts index d57b5db0a37..9eb68c86241 100644 --- a/components/popover/demo/triggerType.ts +++ b/components/popover/demo/triggerType.ts @@ -9,9 +9,15 @@ import { Component } from '@angular/core';

Content

- - - + + + `, styles: [ ` diff --git a/components/popover/doc/index.en-US.md b/components/popover/doc/index.en-US.md index b28e5abea08..cb61aa43ffb 100644 --- a/components/popover/doc/index.en-US.md +++ b/components/popover/doc/index.en-US.md @@ -26,8 +26,11 @@ import { NzPopoverModule } from 'ng-zorro-antd/popover'; | Param | Description | Type | Default value | | ----- | ----------- | ---- | ------------- | -| nzTitle | Title of the card | `string \| TemplateRef` | - | -| nzTemplate | Used to define the content | `string \| TemplateRef` | - | +| `[nzPopoverTitle]` | Title of the popover | `string \| TemplateRef` | - | +| `[nzPopoverContent]` | Content of the popover | `string \| TemplateRef` | - | +| `[nzPopoverTrigger]` | Popover trigger mode | `'click' \| 'focus' \| 'hover'` | `'hover'` | +| `[nzPopoverPlacement]` | The position of the popover relative to the target | `'top' \| 'left' \| 'right' \| 'bottom' \| 'topLeft' \| 'topRight' \| 'bottomLeft' \| 'bottomRight' \| 'leftTop' \| 'leftBottom' \| 'rightTop' \| 'rightBottom'` | `'top'` | + Consult [Tooltip's documentation](/components/tooltip/en#api) to find more APIs. diff --git a/components/popover/doc/index.zh-CN.md b/components/popover/doc/index.zh-CN.md index 499a1258a0d..990040096d0 100644 --- a/components/popover/doc/index.zh-CN.md +++ b/components/popover/doc/index.zh-CN.md @@ -27,8 +27,10 @@ import { NzPopoverModule } from 'ng-zorro-antd/popover'; | 参数 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | -| `[nzTitle]` | 卡片标题 | `string \| TemplateRef` | - | -| `[nzContent]` | 用于定义Content内容 | `string \| TemplateRef` | - | +| `[nzPopoverTitle]` | 标题 | `string \| TemplateRef` | - | +| `[nzPopoverContent]` | 用于定义内容 | `string \| TemplateRef` | - | +| `[nzPopoverTrigger]` | 触发行为 | `'click' \| 'focus' \| 'hover'` | `'hover'` | +| `[nzPopoverPlacement]` | 气泡框位置 | `'top' \| 'left' \| 'right' \| 'bottom' \| 'topLeft' \| 'topRight' \| 'bottomLeft' \| 'bottomRight' \| 'leftTop' \| 'leftBottom' \| 'rightTop' \| 'rightBottom'` | `'top'` | 更多属性请参考 [Tooltip](/components/tooltip/zh#api)。 diff --git a/components/popover/nz-popover.component.html b/components/popover/nz-popover.component.html index 8ca967d56ef..8364abfddfb 100644 --- a/components/popover/nz-popover.component.html +++ b/components/popover/nz-popover.component.html @@ -3,19 +3,18 @@ #overlay="cdkConnectedOverlay" cdkConnectedOverlay nzConnectedOverlay - [cdkConnectedOverlayOrigin]="overlayOrigin" + [cdkConnectedOverlayOrigin]="origin" [cdkConnectedOverlayHasBackdrop]="_hasBackdrop" (backdropClick)="hide()" (detach)="hide()" (positionChange)="onPositionChange($event)" [cdkConnectedOverlayPositions]="_positions" - [cdkConnectedOverlayOpen]="visible$ | async"> + [cdkConnectedOverlayOpen]="_visible">
+ [@zoomBigMotion]="'active'">