ngx-tethys 17.0.18 → 17.0.19
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.
- package/CHANGELOG.md +9 -0
- package/dropdown/dropdown.directive.d.ts +3 -3
- package/esm2022/dropdown/dropdown.directive.mjs +3 -3
- package/esm2022/version.mjs +2 -2
- package/fesm2022/ngx-tethys-dropdown.mjs +2 -2
- package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
- package/fesm2022/ngx-tethys.mjs +1 -1
- package/fesm2022/ngx-tethys.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [17.0.19](https://github.com/atinc/ngx-tethys/compare/17.0.18...17.0.19) (2024-08-14)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **dropdown:** thyPopoverOptions support outsideClosable params ([#3144](https://github.com/atinc/ngx-tethys/issues/3144)) ([3fa855b](https://github.com/atinc/ngx-tethys/commit/3fa855b0c6417a7768aa37a5fa5b9c4f866380e3))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
5
14
|
## [17.0.18](https://github.com/atinc/ngx-tethys/compare/17.0.17...17.0.18) (2024-08-13)
|
|
6
15
|
|
|
7
16
|
|
|
@@ -50,10 +50,10 @@ export declare class ThyDropdownDirective extends ThyOverlayDirectiveBase implem
|
|
|
50
50
|
*/
|
|
51
51
|
thyActiveClass: string;
|
|
52
52
|
/**
|
|
53
|
-
* 弹出框的参数,底层使用 Popover 组件, 默认为`{ placement: "bottomLeft", insideClosable: true, minWidth: "240px" }`
|
|
54
|
-
* @default { placement: "bottomLeft", insideClosable: true, minWidth: "240px" }
|
|
53
|
+
* 弹出框的参数,底层使用 Popover 组件, 默认为`{ placement: "bottomLeft", insideClosable: true, minWidth: "240px", outsideClosable: true }`
|
|
54
|
+
* @default { placement: "bottomLeft", insideClosable: true, minWidth: "240px", outsideClosable: true }
|
|
55
55
|
*/
|
|
56
|
-
thyPopoverOptions: Pick<ThyPopoverConfig, 'placement' | 'height' | 'insideClosable' | 'minWidth'>;
|
|
56
|
+
thyPopoverOptions: Pick<ThyPopoverConfig, 'placement' | 'height' | 'insideClosable' | 'minWidth' | 'outsideClosable'>;
|
|
57
57
|
/**
|
|
58
58
|
* 弹出框的显示位置,会覆盖 thyPopoverOptions 中的 placement,`top` | `topLeft` | `topRight` | `bottom` | `bottomLeft` | `bottomRight` | `left` | `leftTop` | `leftBottom` | `right` | `rightTop` | `rightBottom`
|
|
59
59
|
* @default bottomLeft
|
|
@@ -90,7 +90,7 @@ export class ThyDropdownDirective extends ThyOverlayDirectiveBase {
|
|
|
90
90
|
throw new Error(`thyDropdownMenu is required`);
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
|
-
const { placement, height, insideClosable, minWidth } = Object.assign({ placement: 'bottomLeft', insideClosable: true }, this.thyPopoverOptions);
|
|
93
|
+
const { placement, height, insideClosable, outsideClosable, minWidth } = Object.assign({ placement: 'bottomLeft', insideClosable: true, outsideClosable: true }, this.thyPopoverOptions);
|
|
94
94
|
const config = {
|
|
95
95
|
origin: this.elementRef.nativeElement,
|
|
96
96
|
hasBackdrop: false,
|
|
@@ -99,7 +99,7 @@ export class ThyDropdownDirective extends ThyOverlayDirectiveBase {
|
|
|
99
99
|
panelClass: this.thyPanelClass,
|
|
100
100
|
placement: this.thyPlacement ? this.thyPlacement : placement,
|
|
101
101
|
height,
|
|
102
|
-
outsideClosable
|
|
102
|
+
outsideClosable,
|
|
103
103
|
insideClosable: helpers.isUndefined(this.thyMenuInsideClosable) ? insideClosable : this.thyMenuInsideClosable,
|
|
104
104
|
minWidth,
|
|
105
105
|
originActiveClass: this.thyActiveClass
|
|
@@ -184,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
184
184
|
}], thyActiveChange: [{
|
|
185
185
|
type: Output
|
|
186
186
|
}] } });
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Ryb3Bkb3duL2Ryb3Bkb3duLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEVBRU4sZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUE4Qix1QkFBdUIsRUFBbUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN2SCxPQUFPLEVBQUUsVUFBVSxFQUFtQyxNQUFNLG9CQUFvQixDQUFDO0FBRWpGLE9BQU8sRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFNckU7Ozs7R0FJRztBQVFILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx1QkFBdUI7SUFTN0Q7O09BRUc7SUFDSCxJQUFhLGVBQWUsQ0FBQyxJQUFxQjtRQUM5QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFhLFdBQVcsQ0FBQyxJQUFxQjtRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQWEsVUFBVSxDQUFDLEtBQWlDO1FBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBMEIsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7OztPQUdHO0lB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LEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQVVqQyxZQUFZO3NCQURmLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQVE1QixjQUFjO3NCQUF0QixLQUFLO2dCQU1HLGlCQUFpQjtzQkFBekIsS0FBSztnQkFNRyxZQUFZO3NCQUFwQixLQUFLO2dCQU11QyxxQkFBcUI7c0JBQWpFLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBTTlCLGFBQWE7c0JBQXpCLEtBQUs7Z0JBV0ksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENvbXBvbmVudFR5cGUsIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIG51bWJlckF0dHJpYnV0ZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmLCBUaHlPdmVybGF5RGlyZWN0aXZlQmFzZSwgVGh5T3ZlcmxheVRyaWdnZXIsIFRoeVBsYWNlbWVudCB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyLCBUaHlQb3BvdmVyQ29uZmlnLCBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IFNhZmVBbnkgfSBmcm9tICduZ3gtdGV0aHlzL3R5cGVzJztcbmltcG9ydCB7IGNvZXJjZUFycmF5LCBjb2VyY2VCb29sZWFuUHJvcGVydHksIGhlbHBlcnMsIGlzRnVuY3Rpb24sIGlzVGVtcGxhdGVSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi1tZW51LmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIFRoeURyb3Bkb3duVHJpZ2dlciA9ICdjbGljaycgfCAnaG92ZXInO1xuXG50eXBlIFRoeURyb3Bkb3duTWVudSA9IFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCB8IFRlbXBsYXRlUmVmPFNhZmVBbnk+IHwgQ29tcG9uZW50VHlwZTxTYWZlQW55PjtcblxuLyoqXG4gKiB0aHlEcm9wZG93biDop6blj5HkuIvmi4noj5zljZXmjIfku6RcbiAqIEBuYW1lIHRoeURyb3Bkb3duXG4gKiBAb3JkZXIgMTBcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGBbdGh5RHJvcGRvd25dYCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWRyb3Bkb3duJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUaHlEcm9wZG93bkRpcmVjdGl2ZSBleHRlbmRzIFRoeU92ZXJsYXlEaXJlY3RpdmVCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBtZW51ITogVGh5RHJvcGRvd25NZW51O1xuXG4gICAgcHJpdmF0ZSBwb3BvdmVyUmVmOiBUaHlQb3BvdmVyUmVmPHVua25vd24+O1xuXG4gICAgcHJpdmF0ZSBpbm5lclBhbmVsQ2xhc3NMaXN0OiBzdHJpbmdbXSA9IFsndGh5LWRyb3Bkb3duLXBhbmUnXTtcblxuICAgIHBvcG92ZXJPcGVuZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIERyb3Bkb3duIOS4i+aLieiPnOWNle+8jOaUr+aMgSB0aHktZHJvcGRvd24tbWVudSDnu4Tku7bjgIFUZW1wbGF0ZVJlZiDlkozoh6rlrprkuYnoj5zljZXnu4Tku7ZcbiAgICAgKi9cbiAgICBASW5wdXQoKSBzZXQgdGh5RHJvcGRvd25NZW51KG1lbnU6IFRoeURyb3Bkb3duTWVudSkge1xuICAgICAgICB0aGlzLm1lbnUgPSBtZW51O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERyb3Bkb3duIOS4i+aLieiPnOWNlee7hOS7tu+8jOWSjCB0aHlEcm9wZG93bk1lbnUg5Y+C5LiO55u45ZCM77yM5b+r5o235Lyg5LiL5ouJ6I+c5Y2V57uE5Lu25Y+C5pWwXG4gICAgICovXG4gICAgQElucHV0KCkgc2V0IHRoeURyb3Bkb3duKG1lbnU6IFRoeURyb3Bkb3duTWVudSkge1xuICAgICAgICB0aGlzLm1lbnUgPSBtZW51O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOS4i+aLieiPnOWNleinpuWPkeaWueW8j1xuICAgICAqIEB0eXBlICdob3ZlcicgfCAnZm9jdXMnIHwgJ2NsaWNrJyB8IHN0cmluZ1xuICAgICAqIEBkZWZhdWx0IGNsaWNrXG4gICAgICovXG4gICAgQElucHV0KCkgc2V0IHRoeVRyaWdnZXIodmFsdWU6IFRoeU92ZXJsYXlUcmlnZ2VyIHwgc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudHJpZ2dlciA9IHZhbHVlIGFzIFRoeU92ZXJsYXlUcmlnZ2VyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaJk+W8gOW7tui/n+avq+enklxuICAgICAqIEBkZWZhdWx0IDEwMFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pXG4gICAgc2V0IHRoeVNob3dEZWxheSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuc2hvd0RlbGF5ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5YWz6Zet5bu26L+f5q+r56eSXG4gICAgICogQGRlZmF1bHQgMTAwXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSlcbiAgICBzZXQgdGh5SGlkZURlbGF5KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5oaWRlRGVsYXkgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7roj5zljZXlkI7nmoTlvZPliY3op6blj5HlhYPntKDnmoTmv4DmtLvmoLflvI/nsbtcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlBY3RpdmVDbGFzczogc3RyaW5nID0gJ3RoeS1kcm9wZG93bi1vcmlnaW4tYWN0aXZlJztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhueahOWPguaVsO+8jOW6leWxguS9v+eUqCBQb3BvdmVyIOe7hOS7tiwg6buY6K6k5Li6YHsgcGxhY2VtZW50OiBcImJvdHRvbUxlZnRcIiwgaW5zaWRlQ2xvc2FibGU6IHRydWUsIG1pbldpZHRoOiBcIjI0MHB4XCIgfWBcbiAgICAgKiBAZGVmYXVsdCB7IHBsYWNlbWVudDogXCJib3R0b21MZWZ0XCIsIGluc2lkZUNsb3NhYmxlOiB0cnVlLCBtaW5XaWR0aDogXCIyNDBweFwiIH1cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQb3BvdmVyT3B0aW9uczogUGljazxUaHlQb3BvdmVyQ29uZmlnLCAncGxhY2VtZW50JyB8ICdoZWlnaHQnIHwgJ2luc2lkZUNsb3NhYmxlJyB8ICdtaW5XaWR0aCc+O1xuXG4gICAgLyoqXG4gICAgICog5by55Ye65qGG55qE5pi+56S65L2N572u77yM5Lya6KaG55uWIHRoeVBvcG92ZXJPcHRpb25zIOS4reeahCBwbGFjZW1lbnTvvIxgdG9wYCB8IGB0b3BMZWZ0YCB8IGB0b3BSaWdodGAgfCBgYm90dG9tYCB8IGBib3R0b21MZWZ0YCB8IGBib3R0b21SaWdodGAgfCBgbGVmdGAgfCBgbGVmdFRvcGAgfCBgbGVmdEJvdHRvbWAgfCBgcmlnaHRgIHwgYHJpZ2h0VG9wYCB8IGByaWdodEJvdHRvbWBcbiAgICAgKiBAZGVmYXVsdCBib3R0b21MZWZ0XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5UGxhY2VtZW50OiBUaHlQbGFjZW1lbnQ7XG5cbiAgICAvKipcbiAgICAgKiDngrnlh7sgZHJvcGRvd24tbWVudSDlhoXpg6jmmK/lkKblhbPpl63lvLnlh7rmoYbvvIzkvJropobnm5YgdGh5UG9wb3Zlck9wdGlvbnMg5Lit55qEIGluc2lkZUNsb3NhYmxlXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeU1lbnVJbnNpZGVDbG9zYWJsZTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhiBvdmVybGF5IHBhbmVsIOeahOexu+WQjVxuICAgICAqIEB0eXBlIHN0cmluZyB8IHN0cmluZ1tdXG4gICAgICovXG4gICAgQElucHV0KCkgc2V0IHRoeVBhbmVsQ2xhc3ModmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKSB7XG4gICAgICAgIHRoaXMuaW5uZXJQYW5lbENsYXNzTGlzdCA9IHRoaXMuaW5uZXJQYW5lbENsYXNzTGlzdC5jb25jYXQoY29lcmNlQXJyYXkodmFsdWUpKTtcbiAgICB9XG5cbiAgICBnZXQgdGh5UGFuZWxDbGFzcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5uZXJQYW5lbENsYXNzTGlzdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDoj5zljZUgQWN0aXZlIOS6i+S7tu+8jOaJk+W8gOiPnOWNlei/lOWbniB0cnVl77yM5YWz6Zet6L+U5ZueIGZhbHNlXG4gICAgICovXG4gICAgQE91dHB1dCgpIHRoeUFjdGl2ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHByaXZhdGUgcG9wb3ZlcjogVGh5UG9wb3ZlcixcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcGxhdGZvcm06IFBsYXRmb3JtLFxuICAgICAgICBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICAgICAgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICAgICkge1xuICAgICAgICBzdXBlcihlbGVtZW50UmVmLCBwbGF0Zm9ybSwgZm9jdXNNb25pdG9yLCBuZ1pvbmUsIHRydWUsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplKCk7XG4gICAgfVxuXG4gICAgY3JlYXRlT3ZlcmxheSgpOiBPdmVybGF5UmVmIHtcbiAgICAgICAgbGV0IGNvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmOiBDb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZjxTYWZlQW55PjtcbiAgICAgICAgaWYgKHRoaXMubWVudSAmJiB0aGlzLm1lbnUgaW5zdGFuY2VvZiBUaHlEcm9wZG93bk1lbnVDb21wb25lbnQpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmID0gdGhpcy5tZW51LnRlbXBsYXRlUmVmO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRnVuY3Rpb24odGhpcy5tZW51KSB8fCBpc1RlbXBsYXRlUmVmKHRoaXMubWVudSkpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmID0gdGhpcy5tZW51IGFzIENvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmPFNhZmVBbnk+O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpIHtcbiAgICAgICAgICAgIGlmICghY29tcG9uZW50VHlwZU9yVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHRoeURyb3Bkb3duTWVudSBpcyByZXF1aXJlZGApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBwbGFjZW1lbnQsIGhlaWdodCwgaW5zaWRlQ2xvc2FibGUsIG1pbldpZHRoIH0gPSBPYmplY3QuYXNzaWduKFxuICAgICAgICAgICAgeyBwbGFjZW1lbnQ6ICdib3R0b21MZWZ0JywgaW5zaWRlQ2xvc2FibGU6IHRydWUgfSxcbiAgICAgICAgICAgIHRoaXMudGh5UG9wb3Zlck9wdGlvbnNcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgY29uZmlnOiBUaHlQb3BvdmVyQ29uZmlnID0ge1xuICAgICAgICAgICAgb3JpZ2luOiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIG9mZnNldDogMCxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6IHRoaXMudGh5UGFuZWxDbGFzcyxcbiAgICAgICAgICAgIHBsYWNlbWVudDogdGhpcy50aHlQbGFjZW1lbnQgPyB0aGlzLnRoeVBsYWNlbWVudCA6IHBsYWNlbWVudCxcbiAgICAgICAgICAgIGhlaWdodCxcbiAgICAgICAgICAgIG91dHNpZGVDbG9zYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGluc2lkZUNsb3NhYmxlOiBoZWxwZXJzLmlzVW5kZWZpbmVkKHRoaXMudGh5TWVudUluc2lkZUNsb3NhYmxlKSA/IGluc2lkZUNsb3NhYmxlIDogdGhpcy50aHlNZW51SW5zaWRlQ2xvc2FibGUsXG4gICAgICAgICAgICBtaW5XaWR0aCxcbiAgICAgICAgICAgIG9yaWdpbkFjdGl2ZUNsYXNzOiB0aGlzLnRoeUFjdGl2ZUNsYXNzXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMucG9wb3ZlclJlZiA9IHRoaXMucG9wb3Zlci5vcGVuKGNvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmLCBjb25maWcpO1xuICAgICAgICB0aGlzLnBvcG92ZXJSZWYuYWZ0ZXJPcGVuZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy50aHlBY3RpdmVDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucG9wb3ZlclJlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJPcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMudGh5QWN0aXZlQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGhpcy5wb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKTtcbiAgICB9XG5cbiAgICBzaG93KGRlbGF5OiBudW1iZXIgPSB0aGlzLnNob3dEZWxheSkge1xuICAgICAgICBpZiAodGhpcy5oaWRlVGltZW91dElkKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5oaWRlVGltZW91dElkKTtcbiAgICAgICAgICAgIHRoaXMuaGlkZVRpbWVvdXRJZCA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCAodGhpcy5vdmVybGF5UmVmICYmIHRoaXMub3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnRyaWdnZXIgIT09ICdob3ZlcicpIHtcbiAgICAgICAgICAgIGRlbGF5ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2hvd1RpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuY3JlYXRlT3ZlcmxheSgpO1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gb3ZlcmxheVJlZjtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnNob3dUaW1lb3V0SWQgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSwgZGVsYXkpO1xuICAgIH1cblxuICAgIGhpZGUoZGVsYXk6IG51bWJlciA9IHRoaXMuaGlkZURlbGF5KSB7XG4gICAgICAgIGlmICh0aGlzLnNob3dUaW1lb3V0SWQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnNob3dUaW1lb3V0SWQpO1xuICAgICAgICAgICAgdGhpcy5zaG93VGltZW91dElkID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaGlkZVRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5oaWRlVGltZW91dElkID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0sIGRlbGF5KTtcbiAgICB9XG59XG4iXX0=
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Ryb3Bkb3duL2Ryb3Bkb3duLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEVBRU4sZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUE4Qix1QkFBdUIsRUFBbUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN2SCxPQUFPLEVBQUUsVUFBVSxFQUFtQyxNQUFNLG9CQUFvQixDQUFDO0FBRWpGLE9BQU8sRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFNckU7Ozs7R0FJRztBQVFILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx1QkFBdUI7SUFTN0Q7O09BRUc7SUFDSCxJQUFhLGVBQWUsQ0FBQyxJQUFxQjtRQUM5QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFhLFdBQVcsQ0FBQyxJQUFxQjtRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQWEsVUFBVSxDQUFDLEtBQWlDO1FBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBMEIsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDSSxZQUFZLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDSSxZQUFZLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBeUJEOzs7T0FHRztJQUNILElBQWEsYUFBYSxDQUFDLEtBQXdCO1FBQy9DLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNwQyxDQUFDO0lBT0QsWUFDWSxnQkFBa0MsRUFDbEMsT0FBbUIsRUFDM0IsVUFBc0IsRUFDdEIsUUFBa0IsRUFDbEIsWUFBMEIsRUFDMUIsTUFBYyxFQUNkLGlCQUFvQztRQUVwQyxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBUm5FLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQXZGdkIsd0JBQW1CLEdBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTlELGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBMkN0Qjs7V0FFRztRQUNNLG1CQUFjLEdBQVcsNEJBQTRCLENBQUM7UUFnQy9EOztXQUVHO1FBQ08sb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBWXhELENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxhQUFhO1FBQ1QsSUFBSSwwQkFBK0QsQ0FBQztRQUNwRSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSx3QkFBd0IsRUFBRSxDQUFDO1lBQzdELDBCQUEwQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3ZELENBQUM7YUFBTSxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzNELDBCQUEwQixHQUFHLElBQUksQ0FBQyxJQUEyQyxDQUFDO1FBQ2xGLENBQUM7UUFDRCxJQUFJLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztnQkFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1lBQ25ELENBQUM7UUFDTCxDQUFDO1FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUNsRixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLEVBQ3hFLElBQUksQ0FBQyxpQkFBaUIsQ0FDekIsQ0FBQztRQUNGLE1BQU0sTUFBTSxHQUFxQjtZQUM3QixNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhO1lBQ3JDLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdkMsTUFBTSxFQUFFLENBQUM7WUFDVCxVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDOUIsU0FBUyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDNUQsTUFBTTtZQUNOLGVBQWU7WUFDZixjQUFjLEVBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCO1lBQzdHLFFBQVE7WUFDUixpQkFBaUIsRUFBRSxJQUFJLENBQUMsY0FBYztTQUN6QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7WUFDM0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksQ0FBQyxRQUFnQixJQUFJLENBQUMsU0FBUztRQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzlCLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3RFLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQzNCLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2pDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztZQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQUksQ0FBQyxRQUFnQixJQUFJLENBQUMsU0FBUztRQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzlCLENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDakMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUIsQ0FBQztZQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQzFCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDZCxDQUFDOzhHQXZMUSxvQkFBb0I7a0dBQXBCLG9CQUFvQixvTUFvQ1QsZUFBZSxrREFTZixlQUFlLHFMQTBCZixxQkFBcUI7OzJGQXZFaEMsb0JBQW9CO2tCQVBoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLGNBQWM7cUJBQ3hCO29CQUNELFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs4T0FhZ0IsZUFBZTtzQkFBM0IsS0FBSztnQkFPTyxXQUFXO3NCQUF2QixLQUFLO2dCQVNPLFVBQVU7c0JBQXRCLEtBQUs7Z0JBU0YsWUFBWTtzQkFEZixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFVakMsWUFBWTtzQkFEZixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFRNUIsY0FBYztzQkFBdEIsS0FBSztnQkFNRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBTUcsWUFBWTtzQkFBcEIsS0FBSztnQkFNdUMscUJBQXFCO3NCQUFqRSxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQU05QixhQUFhO3NCQUF6QixLQUFLO2dCQVdJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBDb21wb25lbnRUeXBlLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUGxhdGZvcm0gfSBmcm9tICdAYW5ndWxhci9jZGsvcGxhdGZvcm0nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBudW1iZXJBdHRyaWJ1dGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZiwgVGh5T3ZlcmxheURpcmVjdGl2ZUJhc2UsIFRoeU92ZXJsYXlUcmlnZ2VyLCBUaHlQbGFjZW1lbnQgfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciwgVGh5UG9wb3ZlckNvbmZpZywgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBTYWZlQW55IH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5pbXBvcnQgeyBjb2VyY2VBcnJheSwgY29lcmNlQm9vbGVhblByb3BlcnR5LCBoZWxwZXJzLCBpc0Z1bmN0aW9uLCBpc1RlbXBsYXRlUmVmIH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcbmltcG9ydCB7IFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24tbWVudS5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBUaHlEcm9wZG93blRyaWdnZXIgPSAnY2xpY2snIHwgJ2hvdmVyJztcblxudHlwZSBUaHlEcm9wZG93bk1lbnUgPSBUaHlEcm9wZG93bk1lbnVDb21wb25lbnQgfCBUZW1wbGF0ZVJlZjxTYWZlQW55PiB8IENvbXBvbmVudFR5cGU8U2FmZUFueT47XG5cbi8qKlxuICogdGh5RHJvcGRvd24g6Kem5Y+R5LiL5ouJ6I+c5Y2V5oyH5LukXG4gKiBAbmFtZSB0aHlEcm9wZG93blxuICogQG9yZGVyIDEwXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW3RoeURyb3Bkb3duXWAsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoeS1kcm9wZG93bidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVGh5RHJvcGRvd25EaXJlY3RpdmUgZXh0ZW5kcyBUaHlPdmVybGF5RGlyZWN0aXZlQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgbWVudSE6IFRoeURyb3Bkb3duTWVudTtcblxuICAgIHByaXZhdGUgcG9wb3ZlclJlZjogVGh5UG9wb3ZlclJlZjx1bmtub3duPjtcblxuICAgIHByaXZhdGUgaW5uZXJQYW5lbENsYXNzTGlzdDogc3RyaW5nW10gPSBbJ3RoeS1kcm9wZG93bi1wYW5lJ107XG5cbiAgICBwb3BvdmVyT3BlbmVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBEcm9wZG93biDkuIvmi4noj5zljZXvvIzmlK/mjIEgdGh5LWRyb3Bkb3duLW1lbnUg57uE5Lu244CBVGVtcGxhdGVSZWYg5ZKM6Ieq5a6a5LmJ6I+c5Y2V57uE5Lu2XG4gICAgICovXG4gICAgQElucHV0KCkgc2V0IHRoeURyb3Bkb3duTWVudShtZW51OiBUaHlEcm9wZG93bk1lbnUpIHtcbiAgICAgICAgdGhpcy5tZW51ID0gbWVudTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEcm9wZG93biDkuIvmi4noj5zljZXnu4Tku7bvvIzlkowgdGh5RHJvcGRvd25NZW51IOWPguS4juebuOWQjO+8jOW/q+aNt+S8oOS4i+aLieiPnOWNlee7hOS7tuWPguaVsFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlEcm9wZG93bihtZW51OiBUaHlEcm9wZG93bk1lbnUpIHtcbiAgICAgICAgdGhpcy5tZW51ID0gbWVudTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDkuIvmi4noj5zljZXop6blj5HmlrnlvI9cbiAgICAgKiBAdHlwZSAnaG92ZXInIHwgJ2ZvY3VzJyB8ICdjbGljaycgfCBzdHJpbmdcbiAgICAgKiBAZGVmYXVsdCBjbGlja1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlUcmlnZ2VyKHZhbHVlOiBUaHlPdmVybGF5VHJpZ2dlciB8IHN0cmluZykge1xuICAgICAgICB0aGlzLnRyaWdnZXIgPSB2YWx1ZSBhcyBUaHlPdmVybGF5VHJpZ2dlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmiZPlvIDlu7bov5/mr6vnp5JcbiAgICAgKiBAZGVmYXVsdCAxMDBcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICAgIHNldCB0aHlTaG93RGVsYXkodmFsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLnNob3dEZWxheSA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWFs+mXreW7tui/n+avq+enklxuICAgICAqIEBkZWZhdWx0IDEwMFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pXG4gICAgc2V0IHRoeUhpZGVEZWxheSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuaGlkZURlbGF5ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5by55Ye66I+c5Y2V5ZCO55qE5b2T5YmN6Kem5Y+R5YWD57Sg55qE5r+A5rS75qC35byP57G7XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5QWN0aXZlQ2xhc3M6IHN0cmluZyA9ICd0aHktZHJvcGRvd24tb3JpZ2luLWFjdGl2ZSc7XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7rmoYbnmoTlj4LmlbDvvIzlupXlsYLkvb/nlKggUG9wb3ZlciDnu4Tku7YsIOm7mOiupOS4umB7IHBsYWNlbWVudDogXCJib3R0b21MZWZ0XCIsIGluc2lkZUNsb3NhYmxlOiB0cnVlLCBtaW5XaWR0aDogXCIyNDBweFwiLCBvdXRzaWRlQ2xvc2FibGU6IHRydWUgfWBcbiAgICAgKiBAZGVmYXVsdCB7IHBsYWNlbWVudDogXCJib3R0b21MZWZ0XCIsIGluc2lkZUNsb3NhYmxlOiB0cnVlLCBtaW5XaWR0aDogXCIyNDBweFwiLCBvdXRzaWRlQ2xvc2FibGU6IHRydWUgfVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVBvcG92ZXJPcHRpb25zOiBQaWNrPFRoeVBvcG92ZXJDb25maWcsICdwbGFjZW1lbnQnIHwgJ2hlaWdodCcgfCAnaW5zaWRlQ2xvc2FibGUnIHwgJ21pbldpZHRoJyB8ICdvdXRzaWRlQ2xvc2FibGUnPjtcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhueahOaYvuekuuS9jee9ru+8jOS8muimhuebliB0aHlQb3BvdmVyT3B0aW9ucyDkuK3nmoQgcGxhY2VtZW5077yMYHRvcGAgfCBgdG9wTGVmdGAgfCBgdG9wUmlnaHRgIHwgYGJvdHRvbWAgfCBgYm90dG9tTGVmdGAgfCBgYm90dG9tUmlnaHRgIHwgYGxlZnRgIHwgYGxlZnRUb3BgIHwgYGxlZnRCb3R0b21gIHwgYHJpZ2h0YCB8IGByaWdodFRvcGAgfCBgcmlnaHRCb3R0b21gXG4gICAgICogQGRlZmF1bHQgYm90dG9tTGVmdFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVBsYWNlbWVudDogVGh5UGxhY2VtZW50O1xuXG4gICAgLyoqXG4gICAgICog54K55Ye7IGRyb3Bkb3duLW1lbnUg5YaF6YOo5piv5ZCm5YWz6Zet5by55Ye65qGG77yM5Lya6KaG55uWIHRoeVBvcG92ZXJPcHRpb25zIOS4reeahCBpbnNpZGVDbG9zYWJsZVxuICAgICAqIEBkZWZhdWx0IHRydWVcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlNZW51SW5zaWRlQ2xvc2FibGU6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7rmoYYgb3ZlcmxheSBwYW5lbCDnmoTnsbvlkI1cbiAgICAgKiBAdHlwZSBzdHJpbmcgfCBzdHJpbmdbXVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlQYW5lbENsYXNzKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSkge1xuICAgICAgICB0aGlzLmlubmVyUGFuZWxDbGFzc0xpc3QgPSB0aGlzLmlubmVyUGFuZWxDbGFzc0xpc3QuY29uY2F0KGNvZXJjZUFycmF5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgZ2V0IHRoeVBhbmVsQ2xhc3MoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmlubmVyUGFuZWxDbGFzc0xpc3Q7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6I+c5Y2VIEFjdGl2ZSDkuovku7bvvIzmiZPlvIDoj5zljZXov5Tlm54gdHJ1Ze+8jOWFs+mXrei/lOWbniBmYWxzZVxuICAgICAqL1xuICAgIEBPdXRwdXQoKSB0aHlBY3RpdmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIHBvcG92ZXI6IFRoeVBvcG92ZXIsXG4gICAgICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHBsYXRmb3JtOiBQbGF0Zm9ybSxcbiAgICAgICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgICAgIG5nWm9uZTogTmdab25lLFxuICAgICAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZiwgcGxhdGZvcm0sIGZvY3VzTW9uaXRvciwgbmdab25lLCB0cnVlLCBjaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xuICAgIH1cblxuICAgIGNyZWF0ZU92ZXJsYXkoKTogT3ZlcmxheVJlZiB7XG4gICAgICAgIGxldCBjb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZjogQ29tcG9uZW50VHlwZU9yVGVtcGxhdGVSZWY8U2FmZUFueT47XG4gICAgICAgIGlmICh0aGlzLm1lbnUgJiYgdGhpcy5tZW51IGluc3RhbmNlb2YgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50KSB7XG4gICAgICAgICAgICBjb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZiA9IHRoaXMubWVudS50ZW1wbGF0ZVJlZjtcbiAgICAgICAgfSBlbHNlIGlmIChpc0Z1bmN0aW9uKHRoaXMubWVudSkgfHwgaXNUZW1wbGF0ZVJlZih0aGlzLm1lbnUpKSB7XG4gICAgICAgICAgICBjb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZiA9IHRoaXMubWVudSBhcyBDb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZjxTYWZlQW55PjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlKSB7XG4gICAgICAgICAgICBpZiAoIWNvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB0aHlEcm9wZG93bk1lbnUgaXMgcmVxdWlyZWRgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgcGxhY2VtZW50LCBoZWlnaHQsIGluc2lkZUNsb3NhYmxlLCBvdXRzaWRlQ2xvc2FibGUsIG1pbldpZHRoIH0gPSBPYmplY3QuYXNzaWduKFxuICAgICAgICAgICAgeyBwbGFjZW1lbnQ6ICdib3R0b21MZWZ0JywgaW5zaWRlQ2xvc2FibGU6IHRydWUsIG91dHNpZGVDbG9zYWJsZTogdHJ1ZSB9LFxuICAgICAgICAgICAgdGhpcy50aHlQb3BvdmVyT3B0aW9uc1xuICAgICAgICApO1xuICAgICAgICBjb25zdCBjb25maWc6IFRoeVBvcG92ZXJDb25maWcgPSB7XG4gICAgICAgICAgICBvcmlnaW46IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogdGhpcy50aHlQYW5lbENsYXNzLFxuICAgICAgICAgICAgcGxhY2VtZW50OiB0aGlzLnRoeVBsYWNlbWVudCA/IHRoaXMudGh5UGxhY2VtZW50IDogcGxhY2VtZW50LFxuICAgICAgICAgICAgaGVpZ2h0LFxuICAgICAgICAgICAgb3V0c2lkZUNsb3NhYmxlLFxuICAgICAgICAgICAgaW5zaWRlQ2xvc2FibGU6IGhlbHBlcnMuaXNVbmRlZmluZWQodGhpcy50aHlNZW51SW5zaWRlQ2xvc2FibGUpID8gaW5zaWRlQ2xvc2FibGUgOiB0aGlzLnRoeU1lbnVJbnNpZGVDbG9zYWJsZSxcbiAgICAgICAgICAgIG1pbldpZHRoLFxuICAgICAgICAgICAgb3JpZ2luQWN0aXZlQ2xhc3M6IHRoaXMudGh5QWN0aXZlQ2xhc3NcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5wb3BvdmVyUmVmID0gdGhpcy5wb3BvdmVyLm9wZW4oY29tcG9uZW50VHlwZU9yVGVtcGxhdGVSZWYsIGNvbmZpZyk7XG4gICAgICAgIHRoaXMucG9wb3ZlclJlZi5hZnRlck9wZW5lZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRoeUFjdGl2ZUNoYW5nZS5lbWl0KHRydWUpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZCA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy50aHlBY3RpdmVDaGFuZ2UuZW1pdChmYWxzZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpO1xuICAgIH1cblxuICAgIHNob3coZGVsYXk6IG51bWJlciA9IHRoaXMuc2hvd0RlbGF5KSB7XG4gICAgICAgIGlmICh0aGlzLmhpZGVUaW1lb3V0SWQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmhpZGVUaW1lb3V0SWQpO1xuICAgICAgICAgICAgdGhpcy5oaWRlVGltZW91dElkID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8ICh0aGlzLm92ZXJsYXlSZWYgJiYgdGhpcy5vdmVybGF5UmVmLmhhc0F0dGFjaGVkKCkpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudHJpZ2dlciAhPT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgZGVsYXkgPSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zaG93VGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy5jcmVhdGVPdmVybGF5KCk7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBvdmVybGF5UmVmO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyT3BlbmVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuc2hvd1RpbWVvdXRJZCA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9LCBkZWxheSk7XG4gICAgfVxuXG4gICAgaGlkZShkZWxheTogbnVtYmVyID0gdGhpcy5oaWRlRGVsYXkpIHtcbiAgICAgICAgaWYgKHRoaXMuc2hvd1RpbWVvdXRJZCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2hvd1RpbWVvdXRJZCk7XG4gICAgICAgICAgICB0aGlzLnNob3dUaW1lb3V0SWQgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5oaWRlVGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5wb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmhpZGVUaW1lb3V0SWQgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSwgZGVsYXkpO1xuICAgIH1cbn1cbiJdfQ==
|
package/esm2022/version.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Version } from '@angular/core';
|
|
2
|
-
export const VERSION = new Version('17.0.
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
export const VERSION = new Version('17.0.19');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmVyc2lvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IG5ldyBWZXJzaW9uKCcxNy4wLjE5Jyk7XG4iXX0=
|
|
@@ -240,7 +240,7 @@ class ThyDropdownDirective extends ThyOverlayDirectiveBase {
|
|
|
240
240
|
throw new Error(`thyDropdownMenu is required`);
|
|
241
241
|
}
|
|
242
242
|
}
|
|
243
|
-
const { placement, height, insideClosable, minWidth } = Object.assign({ placement: 'bottomLeft', insideClosable: true }, this.thyPopoverOptions);
|
|
243
|
+
const { placement, height, insideClosable, outsideClosable, minWidth } = Object.assign({ placement: 'bottomLeft', insideClosable: true, outsideClosable: true }, this.thyPopoverOptions);
|
|
244
244
|
const config = {
|
|
245
245
|
origin: this.elementRef.nativeElement,
|
|
246
246
|
hasBackdrop: false,
|
|
@@ -249,7 +249,7 @@ class ThyDropdownDirective extends ThyOverlayDirectiveBase {
|
|
|
249
249
|
panelClass: this.thyPanelClass,
|
|
250
250
|
placement: this.thyPlacement ? this.thyPlacement : placement,
|
|
251
251
|
height,
|
|
252
|
-
outsideClosable
|
|
252
|
+
outsideClosable,
|
|
253
253
|
insideClosable: helpers.isUndefined(this.thyMenuInsideClosable) ? insideClosable : this.thyMenuInsideClosable,
|
|
254
254
|
minWidth,
|
|
255
255
|
originActiveClass: this.thyActiveClass
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-dropdown.mjs","sources":["../../../src/dropdown/dropdown-menu.component.ts","../../../src/dropdown/dropdown.directive.ts","../../../src/dropdown/dropdown-menu-item.directive.ts","../../../src/dropdown/dropdown-submenu.component.ts","../../../src/dropdown/dropdown-active.directive.ts","../../../src/dropdown/module.ts","../../../src/dropdown/ngx-tethys-dropdown.ts"],"sourcesContent":["import { NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n HostBinding,\n Input,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { InputCssPixel } from 'ngx-tethys/core';\nimport { SafeAny } from 'ngx-tethys/types';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport type ThyDropdownMenuDividerType = 'default' | 'crossing' | '';\n\nexport const THY_DROPDOWN_DEFAULT_WIDTH = '240px';\n\n/**\n * @private\n */\n@Directive()\nexport class ThyDropdownAbstractMenu {\n @HostBinding('class.thy-dropdown-menu') addDropdownMenuClass = true;\n}\n\n/**\n * 下拉菜单组件\n * @name thy-dropdown-menu\n * @order 20\n */\n@Component({\n selector: 'thy-dropdown-menu',\n template: `\n <ng-container *ngIf=\"thyImmediateRender; then content\"> </ng-container>\n <ng-template #dropdownMenu>\n <div class=\"thy-dropdown-menu\" [style.width]=\"thyWidth\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n </ng-template>\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.thy-dropdown-menu]': 'thyImmediateRender',\n '[style.width]': \"thyImmediateRender ? thyWidth : ''\"\n },\n standalone: true,\n imports: [NgIf, NgTemplateOutlet]\n})\nexport class ThyDropdownMenuComponent {\n get template() {\n return this.templateRef;\n }\n\n @ViewChild('dropdownMenu', { static: true }) templateRef!: TemplateRef<SafeAny>;\n\n /**\n * 设置菜单宽度\n * @default 240px\n */\n @Input()\n @InputCssPixel()\n thyWidth: number | string = THY_DROPDOWN_DEFAULT_WIDTH;\n\n /**\n * 是否直接渲染 dropdown-menu 中的元素\n * @default false\n */\n @Input({ transform: coerceBooleanProperty }) thyImmediateRender = false;\n\n constructor() {}\n}\n\n/**\n * 下拉菜单分组\n * @name thy-dropdown-menu-group\n * @order 50\n */\n@Component({\n selector: 'thy-dropdown-menu-group',\n template: `\n <div class=\"dropdown-menu-group-title\">{{ title }}</div>\n <ng-content></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'dropdown-menu-group'\n },\n standalone: true\n})\nexport class ThyDropdownMenuGroup {\n title: string;\n\n /**\n * 分组标题\n */\n @Input()\n set thyTitle(value: string) {\n this.title = value;\n }\n\n constructor() {}\n}\n\n/**\n * 下拉菜单分割线\n * @name thy-dropdown-menu-divider\n */\n@Component({\n selector: 'thy-dropdown-menu-divider',\n template: ` <!-- <div class=\"dropdown-menu-divider-title\">{{ title }}</div> --> `,\n host: {\n class: 'dropdown-menu-divider'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyDropdownMenuDivider {\n constructor() {}\n}\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { ComponentType, OverlayRef } from '@angular/cdk/overlay';\nimport { Platform } from '@angular/cdk/platform';\nimport {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnInit,\n Output,\n TemplateRef,\n ViewContainerRef,\n numberAttribute\n} from '@angular/core';\nimport { ComponentTypeOrTemplateRef, ThyOverlayDirectiveBase, ThyOverlayTrigger, ThyPlacement } from 'ngx-tethys/core';\nimport { ThyPopover, ThyPopoverConfig, ThyPopoverRef } from 'ngx-tethys/popover';\nimport { SafeAny } from 'ngx-tethys/types';\nimport { coerceArray, coerceBooleanProperty, helpers, isFunction, isTemplateRef } from 'ngx-tethys/util';\nimport { ThyDropdownMenuComponent } from './dropdown-menu.component';\n\nexport type ThyDropdownTrigger = 'click' | 'hover';\n\ntype ThyDropdownMenu = ThyDropdownMenuComponent | TemplateRef<SafeAny> | ComponentType<SafeAny>;\n\n/**\n * thyDropdown 触发下拉菜单指令\n * @name thyDropdown\n * @order 10\n */\n@Directive({\n selector: `[thyDropdown]`,\n host: {\n class: 'thy-dropdown'\n },\n standalone: true\n})\nexport class ThyDropdownDirective extends ThyOverlayDirectiveBase implements OnInit {\n menu!: ThyDropdownMenu;\n\n private popoverRef: ThyPopoverRef<unknown>;\n\n private innerPanelClassList: string[] = ['thy-dropdown-pane'];\n\n popoverOpened = false;\n\n /**\n * Dropdown 下拉菜单,支持 thy-dropdown-menu 组件、TemplateRef 和自定义菜单组件\n */\n @Input() set thyDropdownMenu(menu: ThyDropdownMenu) {\n this.menu = menu;\n }\n\n /**\n * Dropdown 下拉菜单组件,和 thyDropdownMenu 参与相同,快捷传下拉菜单组件参数\n */\n @Input() set thyDropdown(menu: ThyDropdownMenu) {\n this.menu = menu;\n }\n\n /**\n * 下拉菜单触发方式\n * @type 'hover' | 'focus' | 'click' | string\n * @default click\n */\n @Input() set thyTrigger(value: ThyOverlayTrigger | string) {\n this.trigger = value as ThyOverlayTrigger;\n }\n\n /**\n * 打开延迟毫秒\n * @default 100\n */\n @Input({ transform: numberAttribute })\n set thyShowDelay(value: number) {\n this.showDelay = value;\n }\n\n /**\n * 关闭延迟毫秒\n * @default 100\n */\n @Input({ transform: numberAttribute })\n set thyHideDelay(value: number) {\n this.hideDelay = value;\n }\n\n /**\n * 弹出菜单后的当前触发元素的激活样式类\n */\n @Input() thyActiveClass: string = 'thy-dropdown-origin-active';\n\n /**\n * 弹出框的参数,底层使用 Popover 组件, 默认为`{ placement: \"bottomLeft\", insideClosable: true, minWidth: \"240px\" }`\n * @default { placement: \"bottomLeft\", insideClosable: true, minWidth: \"240px\" }\n */\n @Input() thyPopoverOptions: Pick<ThyPopoverConfig, 'placement' | 'height' | 'insideClosable' | 'minWidth'>;\n\n /**\n * 弹出框的显示位置,会覆盖 thyPopoverOptions 中的 placement,`top` | `topLeft` | `topRight` | `bottom` | `bottomLeft` | `bottomRight` | `left` | `leftTop` | `leftBottom` | `right` | `rightTop` | `rightBottom`\n * @default bottomLeft\n */\n @Input() thyPlacement: ThyPlacement;\n\n /**\n * 点击 dropdown-menu 内部是否关闭弹出框,会覆盖 thyPopoverOptions 中的 insideClosable\n * @default true\n */\n @Input({ transform: coerceBooleanProperty }) thyMenuInsideClosable: boolean;\n\n /**\n * 弹出框 overlay panel 的类名\n * @type string | string[]\n */\n @Input() set thyPanelClass(value: string | string[]) {\n this.innerPanelClassList = this.innerPanelClassList.concat(coerceArray(value));\n }\n\n get thyPanelClass() {\n return this.innerPanelClassList;\n }\n\n /**\n * 菜单 Active 事件,打开菜单返回 true,关闭返回 false\n */\n @Output() thyActiveChange = new EventEmitter<boolean>();\n\n constructor(\n private viewContainerRef: ViewContainerRef,\n private popover: ThyPopover,\n elementRef: ElementRef,\n platform: Platform,\n focusMonitor: FocusMonitor,\n ngZone: NgZone,\n changeDetectorRef: ChangeDetectorRef\n ) {\n super(elementRef, platform, focusMonitor, ngZone, true, changeDetectorRef);\n }\n\n ngOnInit() {\n this.initialize();\n }\n\n createOverlay(): OverlayRef {\n let componentTypeOrTemplateRef: ComponentTypeOrTemplateRef<SafeAny>;\n if (this.menu && this.menu instanceof ThyDropdownMenuComponent) {\n componentTypeOrTemplateRef = this.menu.templateRef;\n } else if (isFunction(this.menu) || isTemplateRef(this.menu)) {\n componentTypeOrTemplateRef = this.menu as ComponentTypeOrTemplateRef<SafeAny>;\n }\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (!componentTypeOrTemplateRef) {\n throw new Error(`thyDropdownMenu is required`);\n }\n }\n\n const { placement, height, insideClosable, minWidth } = Object.assign(\n { placement: 'bottomLeft', insideClosable: true },\n this.thyPopoverOptions\n );\n const config: ThyPopoverConfig = {\n origin: this.elementRef.nativeElement,\n hasBackdrop: false,\n viewContainerRef: this.viewContainerRef,\n offset: 0,\n panelClass: this.thyPanelClass,\n placement: this.thyPlacement ? this.thyPlacement : placement,\n height,\n outsideClosable: true,\n insideClosable: helpers.isUndefined(this.thyMenuInsideClosable) ? insideClosable : this.thyMenuInsideClosable,\n minWidth,\n originActiveClass: this.thyActiveClass\n };\n this.popoverRef = this.popover.open(componentTypeOrTemplateRef, config);\n this.popoverRef.afterOpened().subscribe(() => {\n this.thyActiveChange.emit(true);\n });\n this.popoverRef.afterClosed().subscribe(() => {\n this.popoverOpened = false;\n this.thyActiveChange.emit(false);\n });\n\n return this.popoverRef.getOverlayRef();\n }\n\n show(delay: number = this.showDelay) {\n if (this.hideTimeoutId) {\n clearTimeout(this.hideTimeoutId);\n this.hideTimeoutId = null;\n }\n\n if (this.disabled || (this.overlayRef && this.overlayRef.hasAttached())) {\n return;\n }\n if (this.trigger !== 'hover') {\n delay = 0;\n }\n\n this.showTimeoutId = setTimeout(() => {\n const overlayRef = this.createOverlay();\n this.overlayRef = overlayRef;\n this.popoverOpened = true;\n this.showTimeoutId = null;\n this.markForCheck();\n }, delay);\n }\n\n hide(delay: number = this.hideDelay) {\n if (this.showTimeoutId) {\n clearTimeout(this.showTimeoutId);\n this.showTimeoutId = null;\n }\n\n this.hideTimeoutId = setTimeout(() => {\n if (this.popoverRef) {\n this.popoverRef.close();\n }\n this.hideTimeoutId = null;\n this.markForCheck();\n }, delay);\n }\n}\n","import { Directive, HostBinding, Input, HostListener, ElementRef, OnInit } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, shareReplay } from 'rxjs/operators';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport type ThyDropdownMenuItemType = 'default' | 'danger' | 'success' | '';\n\n/**\n * 菜单项\n * @name thyDropdownMenuItem\n * @order 30\n */\n@Directive({\n selector: '[thyDropdownMenuItem]',\n standalone: true\n})\nexport class ThyDropdownMenuItemDirective implements OnInit {\n @HostBinding('class.dropdown-menu-item') className = true;\n\n @HostBinding('class.dropdown-menu-item--disabled') disabled = false;\n\n @HostBinding('class.dropdown-menu-item--danger') danger = false;\n\n @HostBinding('class.dropdown-menu-item--success') success = false;\n\n /**\n * 菜单项类型\n * @type 'default' | 'danger' | 'success' | ''\n * @default default\n */\n @Input()\n set thyType(value: ThyDropdownMenuItemType) {\n this[value] = true;\n }\n\n /**\n * 菜单项是否处于禁用状态\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyDisabled(value: boolean) {\n this.disabled = value;\n }\n\n @HostListener('click', ['$event'])\n onClick(event: Event): void {\n if (this.disabled) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n\n private hostRenderer = useHostRenderer();\n\n constructor(private elementRef: ElementRef<HTMLElement>) {}\n\n ngOnInit() {}\n\n updateClass(classes: string[]) {\n this.hostRenderer.updateClass(classes);\n }\n\n getElement() {\n return this.elementRef.nativeElement;\n }\n\n bindMouseenterEvent() {\n return fromEvent(this.elementRef.nativeElement, 'mouseenter').pipe(debounceTime(100), shareReplay());\n }\n}\n\n/**\n * 设置为菜单项图标\n * @name thyDropdownMenuItemIcon\n */\n@Directive({\n selector: '[thyDropdownMenuItemIcon]',\n standalone: true\n})\nexport class ThyDropdownMenuItemIconDirective {\n @HostBinding('class.icon') className = true;\n\n constructor() {}\n}\n\n/**\n * 设置为菜单项名称\n * @name thyDropdownMenuItemName\n */\n@Directive({\n selector: '[thyDropdownMenuItemName]',\n standalone: true\n})\nexport class ThyDropdownMenuItemNameDirective {\n @HostBinding('class.name') className = true;\n\n constructor() {}\n}\n\n/**\n * 设置为菜单项名称后的补充信息\n * @name thyDropdownMenuItemMeta\n */\n@Directive({\n selector: '[thyDropdownMenuItemMeta]',\n standalone: true\n})\nexport class ThyDropdownMenuItemMetaDirective {\n @HostBinding('class.meta') className = true;\n\n constructor() {}\n}\n\n/**\n * 设置为菜单项的描述\n * @name thyDropdownMenuItemDesc\n */\n@Directive({\n selector: '[thyDropdownMenuItemDesc]',\n standalone: true\n})\nexport class ThyDropdownMenuItemDescDirective {\n @HostBinding('class.desc') className = true;\n\n constructor() {}\n}\n\n/**\n * 菜单项的后置扩展图标,用于显示是否选中或者子菜单示意\n * @name thyDropdownMenuItemExtendIcon\n */\n@Directive({\n selector: '[thyDropdownMenuItemExtendIcon]',\n standalone: true\n})\nexport class ThyDropdownMenuItemExtendIconDirective {\n @HostBinding('class.extend-icon') className = true;\n\n constructor() {}\n}\n\n/**\n * 菜单项是否激活指令\n * @name thyDropdownMenuItemActive\n * @order 70\n */\n@Directive({\n selector: '[thyDropdownMenuItemActive]',\n standalone: true\n})\nexport class ThyDropdownMenuItemActiveDirective {\n /**\n * 是否激活\n * @type boolean | string\n * @default false\n */\n @HostBinding('class.active')\n @Input({ transform: coerceBooleanProperty })\n thyDropdownMenuItemActive: boolean;\n\n constructor() {}\n}\n","import { getElementOffset } from 'ngx-tethys/util';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, Input, OnInit, inject } from '@angular/core';\n\nimport { ThyDropdownMenuItemDirective } from './dropdown-menu-item.directive';\n\nexport type ThyDropdownSubmenuDirection = 'left' | 'right' | 'auto';\n\ntype InnerDropdownSubmenuDirection = ThyDropdownSubmenuDirection | 'leftBottom' | 'rightBottom';\n\nconst SUBMENU_CLASS_PREFIX = 'dropdown-submenu';\n\n/**\n * 下拉子菜单\n * @name thy-dropdown-submenu,[thyDropdownSubmenu]\n * @order 40\n */\n@Component({\n selector: '[thyDropdownSubmenu],thy-dropdown-submenu',\n template: '<ng-content></ng-content>',\n host: {\n class: 'dropdown-submenu'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyDropdownSubmenu implements OnInit {\n private readonly destroyRef = inject(DestroyRef);\n\n private direction: InnerDropdownSubmenuDirection = 'right';\n\n /**\n * 菜单方向\n * @type left | right | auto\n * @default right\n */\n @Input() set thyDirection(value: ThyDropdownSubmenuDirection) {\n this.direction = value;\n }\n\n constructor(private dropdownMenuItem: ThyDropdownMenuItemDirective, private elementRef: ElementRef<HTMLElement>) {}\n\n ngOnInit(): void {\n let direction = this.direction || 'right';\n this.updateClassByDirection(direction);\n this.dropdownMenuItem\n .bindMouseenterEvent()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => {\n if (this.direction === 'auto') {\n const element = this.dropdownMenuItem.getElement();\n const offset = getElementOffset(element);\n if (document.documentElement.clientWidth < offset.left + offset.width + offset.width) {\n direction = 'left';\n } else {\n direction = 'right';\n }\n this.updateClassByDirection(direction);\n }\n this.updateVerticalDirection(direction);\n });\n }\n\n private updateClassByDirection(direction: InnerDropdownSubmenuDirection) {\n this.dropdownMenuItem.updateClass([`${SUBMENU_CLASS_PREFIX}-${direction}`]);\n }\n\n private updateVerticalDirection(direction: InnerDropdownSubmenuDirection) {\n const submenuItems = this.elementRef.nativeElement.querySelectorAll('.dropdown-menu-item');\n if (submenuItems.length) {\n let submenuItemHeight = 0;\n submenuItems.forEach(item => (submenuItemHeight += item.clientHeight));\n if (\n document.documentElement.clientHeight - this.dropdownMenuItem.getElement().getBoundingClientRect().bottom <\n submenuItemHeight\n ) {\n direction = direction === 'left' ? 'leftBottom' : 'rightBottom';\n this.updateClassByDirection(direction);\n } else {\n this.updateClassByDirection(direction);\n }\n }\n }\n}\n","import { ContentChildren, Directive, ElementRef, Input, QueryList, Optional, AfterContentInit, OnInit } from '@angular/core';\nimport { coerceArray } from 'ngx-tethys/util';\nimport { mergeMap, startWith } from 'rxjs/operators';\nimport { ThyDropdownDirective } from './dropdown.directive';\nimport { useHostRenderer } from '@tethys/cdk/dom';\n\n/**\n * 跟踪 Dropdown 菜单是否被打开处于激活状态,允许指定一个或多个CSS类,以便在菜单打开状态时添加到元素中\n * @name thyDropdownActive\n * @order 60\n */\n@Directive({\n selector: '[thyDropdownActive]',\n standalone: true\n})\nexport class ThyDropdownActiveDirective implements OnInit, AfterContentInit {\n classes: string[];\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 设置 Active 样式类,可以是一个或多个CSS类\n * @type string[] | string\n */\n @Input()\n set thyDropdownActive(data: string[] | string) {\n this.classes = coerceArray(data).filter(c => !!c);\n }\n\n /**\n * @private\n */\n @ContentChildren(ThyDropdownDirective, { descendants: true }) triggers!: QueryList<ThyDropdownDirective>;\n\n constructor(private elementRef: ElementRef, @Optional() private trigger?: ThyDropdownDirective) {}\n\n ngOnInit(): void {}\n\n ngAfterContentInit(): void {\n this.triggers.changes\n .pipe(\n startWith(this.triggers.toArray()),\n mergeMap((triggers: ThyDropdownDirective[]) => {\n const result = triggers.map(item => {\n return item.thyActiveChange;\n });\n this.trigger && result.push(this.trigger.thyActiveChange);\n return result;\n }),\n mergeMap(result => {\n return result;\n })\n )\n .subscribe(active => {\n this.update(active);\n });\n }\n\n update(active: boolean) {\n this.classes.forEach(className => {\n if (active) {\n this.hostRenderer.addClass(className);\n } else {\n this.hostRenderer.removeClass(className);\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyPopoverModule } from 'ngx-tethys/popover';\nimport { ThyDropdownDirective } from './dropdown.directive';\nimport { ThyDropdownMenuComponent, ThyDropdownMenuDivider, ThyDropdownMenuGroup } from './dropdown-menu.component';\nimport {\n ThyDropdownMenuItemDirective,\n ThyDropdownMenuItemNameDirective,\n ThyDropdownMenuItemIconDirective,\n ThyDropdownMenuItemMetaDirective,\n ThyDropdownMenuItemDescDirective,\n ThyDropdownMenuItemExtendIconDirective,\n ThyDropdownMenuItemActiveDirective\n} from './dropdown-menu-item.directive';\nimport { ThyDropdownSubmenu } from './dropdown-submenu.component';\nimport { ThyDropdownActiveDirective } from './dropdown-active.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n ThyPopoverModule,\n ThyDropdownDirective,\n ThyDropdownActiveDirective,\n ThyDropdownMenuComponent,\n ThyDropdownSubmenu,\n ThyDropdownMenuGroup,\n ThyDropdownMenuDivider,\n ThyDropdownMenuItemDirective,\n ThyDropdownMenuItemNameDirective,\n ThyDropdownMenuItemIconDirective,\n ThyDropdownMenuItemMetaDirective,\n ThyDropdownMenuItemDescDirective,\n ThyDropdownMenuItemExtendIconDirective,\n ThyDropdownMenuItemActiveDirective\n ],\n exports: [\n ThyDropdownDirective,\n ThyDropdownActiveDirective,\n ThyDropdownMenuComponent,\n ThyDropdownSubmenu,\n ThyDropdownMenuGroup,\n ThyDropdownMenuDivider,\n ThyDropdownMenuItemDirective,\n ThyDropdownMenuItemNameDirective,\n ThyDropdownMenuItemIconDirective,\n ThyDropdownMenuItemMetaDirective,\n ThyDropdownMenuItemDescDirective,\n ThyDropdownMenuItemExtendIconDirective,\n ThyDropdownMenuItemActiveDirective\n ]\n})\nexport class ThyDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ThyDropdownMenuItemDirective","i1.ThyDropdownDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-tethys-dropdown.mjs","sources":["../../../src/dropdown/dropdown-menu.component.ts","../../../src/dropdown/dropdown.directive.ts","../../../src/dropdown/dropdown-menu-item.directive.ts","../../../src/dropdown/dropdown-submenu.component.ts","../../../src/dropdown/dropdown-active.directive.ts","../../../src/dropdown/module.ts","../../../src/dropdown/ngx-tethys-dropdown.ts"],"sourcesContent":["import { NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n HostBinding,\n Input,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { InputCssPixel } from 'ngx-tethys/core';\nimport { SafeAny } from 'ngx-tethys/types';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport type ThyDropdownMenuDividerType = 'default' | 'crossing' | '';\n\nexport const THY_DROPDOWN_DEFAULT_WIDTH = '240px';\n\n/**\n * @private\n */\n@Directive()\nexport class ThyDropdownAbstractMenu {\n @HostBinding('class.thy-dropdown-menu') addDropdownMenuClass = true;\n}\n\n/**\n * 下拉菜单组件\n * @name thy-dropdown-menu\n * @order 20\n */\n@Component({\n selector: 'thy-dropdown-menu',\n template: `\n <ng-container *ngIf=\"thyImmediateRender; then content\"> </ng-container>\n <ng-template #dropdownMenu>\n <div class=\"thy-dropdown-menu\" [style.width]=\"thyWidth\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n </ng-template>\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.thy-dropdown-menu]': 'thyImmediateRender',\n '[style.width]': \"thyImmediateRender ? thyWidth : ''\"\n },\n standalone: true,\n imports: [NgIf, NgTemplateOutlet]\n})\nexport class ThyDropdownMenuComponent {\n get template() {\n return this.templateRef;\n }\n\n @ViewChild('dropdownMenu', { static: true }) templateRef!: TemplateRef<SafeAny>;\n\n /**\n * 设置菜单宽度\n * @default 240px\n */\n @Input()\n @InputCssPixel()\n thyWidth: number | string = THY_DROPDOWN_DEFAULT_WIDTH;\n\n /**\n * 是否直接渲染 dropdown-menu 中的元素\n * @default false\n */\n @Input({ transform: coerceBooleanProperty }) thyImmediateRender = false;\n\n constructor() {}\n}\n\n/**\n * 下拉菜单分组\n * @name thy-dropdown-menu-group\n * @order 50\n */\n@Component({\n selector: 'thy-dropdown-menu-group',\n template: `\n <div class=\"dropdown-menu-group-title\">{{ title }}</div>\n <ng-content></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'dropdown-menu-group'\n },\n standalone: true\n})\nexport class ThyDropdownMenuGroup {\n title: string;\n\n /**\n * 分组标题\n */\n @Input()\n set thyTitle(value: string) {\n this.title = value;\n }\n\n constructor() {}\n}\n\n/**\n * 下拉菜单分割线\n * @name thy-dropdown-menu-divider\n */\n@Component({\n selector: 'thy-dropdown-menu-divider',\n template: ` <!-- <div class=\"dropdown-menu-divider-title\">{{ title }}</div> --> `,\n host: {\n class: 'dropdown-menu-divider'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyDropdownMenuDivider {\n constructor() {}\n}\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { ComponentType, OverlayRef } from '@angular/cdk/overlay';\nimport { Platform } from '@angular/cdk/platform';\nimport {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnInit,\n Output,\n TemplateRef,\n ViewContainerRef,\n numberAttribute\n} from '@angular/core';\nimport { ComponentTypeOrTemplateRef, ThyOverlayDirectiveBase, ThyOverlayTrigger, ThyPlacement } from 'ngx-tethys/core';\nimport { ThyPopover, ThyPopoverConfig, ThyPopoverRef } from 'ngx-tethys/popover';\nimport { SafeAny } from 'ngx-tethys/types';\nimport { coerceArray, coerceBooleanProperty, helpers, isFunction, isTemplateRef } from 'ngx-tethys/util';\nimport { ThyDropdownMenuComponent } from './dropdown-menu.component';\n\nexport type ThyDropdownTrigger = 'click' | 'hover';\n\ntype ThyDropdownMenu = ThyDropdownMenuComponent | TemplateRef<SafeAny> | ComponentType<SafeAny>;\n\n/**\n * thyDropdown 触发下拉菜单指令\n * @name thyDropdown\n * @order 10\n */\n@Directive({\n selector: `[thyDropdown]`,\n host: {\n class: 'thy-dropdown'\n },\n standalone: true\n})\nexport class ThyDropdownDirective extends ThyOverlayDirectiveBase implements OnInit {\n menu!: ThyDropdownMenu;\n\n private popoverRef: ThyPopoverRef<unknown>;\n\n private innerPanelClassList: string[] = ['thy-dropdown-pane'];\n\n popoverOpened = false;\n\n /**\n * Dropdown 下拉菜单,支持 thy-dropdown-menu 组件、TemplateRef 和自定义菜单组件\n */\n @Input() set thyDropdownMenu(menu: ThyDropdownMenu) {\n this.menu = menu;\n }\n\n /**\n * Dropdown 下拉菜单组件,和 thyDropdownMenu 参与相同,快捷传下拉菜单组件参数\n */\n @Input() set thyDropdown(menu: ThyDropdownMenu) {\n this.menu = menu;\n }\n\n /**\n * 下拉菜单触发方式\n * @type 'hover' | 'focus' | 'click' | string\n * @default click\n */\n @Input() set thyTrigger(value: ThyOverlayTrigger | string) {\n this.trigger = value as ThyOverlayTrigger;\n }\n\n /**\n * 打开延迟毫秒\n * @default 100\n */\n @Input({ transform: numberAttribute })\n set thyShowDelay(value: number) {\n this.showDelay = value;\n }\n\n /**\n * 关闭延迟毫秒\n * @default 100\n */\n @Input({ transform: numberAttribute })\n set thyHideDelay(value: number) {\n this.hideDelay = value;\n }\n\n /**\n * 弹出菜单后的当前触发元素的激活样式类\n */\n @Input() thyActiveClass: string = 'thy-dropdown-origin-active';\n\n /**\n * 弹出框的参数,底层使用 Popover 组件, 默认为`{ placement: \"bottomLeft\", insideClosable: true, minWidth: \"240px\", outsideClosable: true }`\n * @default { placement: \"bottomLeft\", insideClosable: true, minWidth: \"240px\", outsideClosable: true }\n */\n @Input() thyPopoverOptions: Pick<ThyPopoverConfig, 'placement' | 'height' | 'insideClosable' | 'minWidth' | 'outsideClosable'>;\n\n /**\n * 弹出框的显示位置,会覆盖 thyPopoverOptions 中的 placement,`top` | `topLeft` | `topRight` | `bottom` | `bottomLeft` | `bottomRight` | `left` | `leftTop` | `leftBottom` | `right` | `rightTop` | `rightBottom`\n * @default bottomLeft\n */\n @Input() thyPlacement: ThyPlacement;\n\n /**\n * 点击 dropdown-menu 内部是否关闭弹出框,会覆盖 thyPopoverOptions 中的 insideClosable\n * @default true\n */\n @Input({ transform: coerceBooleanProperty }) thyMenuInsideClosable: boolean;\n\n /**\n * 弹出框 overlay panel 的类名\n * @type string | string[]\n */\n @Input() set thyPanelClass(value: string | string[]) {\n this.innerPanelClassList = this.innerPanelClassList.concat(coerceArray(value));\n }\n\n get thyPanelClass() {\n return this.innerPanelClassList;\n }\n\n /**\n * 菜单 Active 事件,打开菜单返回 true,关闭返回 false\n */\n @Output() thyActiveChange = new EventEmitter<boolean>();\n\n constructor(\n private viewContainerRef: ViewContainerRef,\n private popover: ThyPopover,\n elementRef: ElementRef,\n platform: Platform,\n focusMonitor: FocusMonitor,\n ngZone: NgZone,\n changeDetectorRef: ChangeDetectorRef\n ) {\n super(elementRef, platform, focusMonitor, ngZone, true, changeDetectorRef);\n }\n\n ngOnInit() {\n this.initialize();\n }\n\n createOverlay(): OverlayRef {\n let componentTypeOrTemplateRef: ComponentTypeOrTemplateRef<SafeAny>;\n if (this.menu && this.menu instanceof ThyDropdownMenuComponent) {\n componentTypeOrTemplateRef = this.menu.templateRef;\n } else if (isFunction(this.menu) || isTemplateRef(this.menu)) {\n componentTypeOrTemplateRef = this.menu as ComponentTypeOrTemplateRef<SafeAny>;\n }\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (!componentTypeOrTemplateRef) {\n throw new Error(`thyDropdownMenu is required`);\n }\n }\n\n const { placement, height, insideClosable, outsideClosable, minWidth } = Object.assign(\n { placement: 'bottomLeft', insideClosable: true, outsideClosable: true },\n this.thyPopoverOptions\n );\n const config: ThyPopoverConfig = {\n origin: this.elementRef.nativeElement,\n hasBackdrop: false,\n viewContainerRef: this.viewContainerRef,\n offset: 0,\n panelClass: this.thyPanelClass,\n placement: this.thyPlacement ? this.thyPlacement : placement,\n height,\n outsideClosable,\n insideClosable: helpers.isUndefined(this.thyMenuInsideClosable) ? insideClosable : this.thyMenuInsideClosable,\n minWidth,\n originActiveClass: this.thyActiveClass\n };\n this.popoverRef = this.popover.open(componentTypeOrTemplateRef, config);\n this.popoverRef.afterOpened().subscribe(() => {\n this.thyActiveChange.emit(true);\n });\n this.popoverRef.afterClosed().subscribe(() => {\n this.popoverOpened = false;\n this.thyActiveChange.emit(false);\n });\n\n return this.popoverRef.getOverlayRef();\n }\n\n show(delay: number = this.showDelay) {\n if (this.hideTimeoutId) {\n clearTimeout(this.hideTimeoutId);\n this.hideTimeoutId = null;\n }\n\n if (this.disabled || (this.overlayRef && this.overlayRef.hasAttached())) {\n return;\n }\n if (this.trigger !== 'hover') {\n delay = 0;\n }\n\n this.showTimeoutId = setTimeout(() => {\n const overlayRef = this.createOverlay();\n this.overlayRef = overlayRef;\n this.popoverOpened = true;\n this.showTimeoutId = null;\n this.markForCheck();\n }, delay);\n }\n\n hide(delay: number = this.hideDelay) {\n if (this.showTimeoutId) {\n clearTimeout(this.showTimeoutId);\n this.showTimeoutId = null;\n }\n\n this.hideTimeoutId = setTimeout(() => {\n if (this.popoverRef) {\n this.popoverRef.close();\n }\n this.hideTimeoutId = null;\n this.markForCheck();\n }, delay);\n }\n}\n","import { Directive, HostBinding, Input, HostListener, ElementRef, OnInit } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, shareReplay } from 'rxjs/operators';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport type ThyDropdownMenuItemType = 'default' | 'danger' | 'success' | '';\n\n/**\n * 菜单项\n * @name thyDropdownMenuItem\n * @order 30\n */\n@Directive({\n selector: '[thyDropdownMenuItem]',\n standalone: true\n})\nexport class ThyDropdownMenuItemDirective implements OnInit {\n @HostBinding('class.dropdown-menu-item') className = true;\n\n @HostBinding('class.dropdown-menu-item--disabled') disabled = false;\n\n @HostBinding('class.dropdown-menu-item--danger') danger = false;\n\n @HostBinding('class.dropdown-menu-item--success') success = false;\n\n /**\n * 菜单项类型\n * @type 'default' | 'danger' | 'success' | ''\n * @default default\n */\n @Input()\n set thyType(value: ThyDropdownMenuItemType) {\n this[value] = true;\n }\n\n /**\n * 菜单项是否处于禁用状态\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyDisabled(value: boolean) {\n this.disabled = value;\n }\n\n @HostListener('click', ['$event'])\n onClick(event: Event): void {\n if (this.disabled) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n\n private hostRenderer = useHostRenderer();\n\n constructor(private elementRef: ElementRef<HTMLElement>) {}\n\n ngOnInit() {}\n\n updateClass(classes: string[]) {\n this.hostRenderer.updateClass(classes);\n }\n\n getElement() {\n return this.elementRef.nativeElement;\n }\n\n bindMouseenterEvent() {\n return fromEvent(this.elementRef.nativeElement, 'mouseenter').pipe(debounceTime(100), shareReplay());\n }\n}\n\n/**\n * 设置为菜单项图标\n * @name thyDropdownMenuItemIcon\n */\n@Directive({\n selector: '[thyDropdownMenuItemIcon]',\n standalone: true\n})\nexport class ThyDropdownMenuItemIconDirective {\n @HostBinding('class.icon') className = true;\n\n constructor() {}\n}\n\n/**\n * 设置为菜单项名称\n * @name thyDropdownMenuItemName\n */\n@Directive({\n selector: '[thyDropdownMenuItemName]',\n standalone: true\n})\nexport class ThyDropdownMenuItemNameDirective {\n @HostBinding('class.name') className = true;\n\n constructor() {}\n}\n\n/**\n * 设置为菜单项名称后的补充信息\n * @name thyDropdownMenuItemMeta\n */\n@Directive({\n selector: '[thyDropdownMenuItemMeta]',\n standalone: true\n})\nexport class ThyDropdownMenuItemMetaDirective {\n @HostBinding('class.meta') className = true;\n\n constructor() {}\n}\n\n/**\n * 设置为菜单项的描述\n * @name thyDropdownMenuItemDesc\n */\n@Directive({\n selector: '[thyDropdownMenuItemDesc]',\n standalone: true\n})\nexport class ThyDropdownMenuItemDescDirective {\n @HostBinding('class.desc') className = true;\n\n constructor() {}\n}\n\n/**\n * 菜单项的后置扩展图标,用于显示是否选中或者子菜单示意\n * @name thyDropdownMenuItemExtendIcon\n */\n@Directive({\n selector: '[thyDropdownMenuItemExtendIcon]',\n standalone: true\n})\nexport class ThyDropdownMenuItemExtendIconDirective {\n @HostBinding('class.extend-icon') className = true;\n\n constructor() {}\n}\n\n/**\n * 菜单项是否激活指令\n * @name thyDropdownMenuItemActive\n * @order 70\n */\n@Directive({\n selector: '[thyDropdownMenuItemActive]',\n standalone: true\n})\nexport class ThyDropdownMenuItemActiveDirective {\n /**\n * 是否激活\n * @type boolean | string\n * @default false\n */\n @HostBinding('class.active')\n @Input({ transform: coerceBooleanProperty })\n thyDropdownMenuItemActive: boolean;\n\n constructor() {}\n}\n","import { getElementOffset } from 'ngx-tethys/util';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, Input, OnInit, inject } from '@angular/core';\n\nimport { ThyDropdownMenuItemDirective } from './dropdown-menu-item.directive';\n\nexport type ThyDropdownSubmenuDirection = 'left' | 'right' | 'auto';\n\ntype InnerDropdownSubmenuDirection = ThyDropdownSubmenuDirection | 'leftBottom' | 'rightBottom';\n\nconst SUBMENU_CLASS_PREFIX = 'dropdown-submenu';\n\n/**\n * 下拉子菜单\n * @name thy-dropdown-submenu,[thyDropdownSubmenu]\n * @order 40\n */\n@Component({\n selector: '[thyDropdownSubmenu],thy-dropdown-submenu',\n template: '<ng-content></ng-content>',\n host: {\n class: 'dropdown-submenu'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyDropdownSubmenu implements OnInit {\n private readonly destroyRef = inject(DestroyRef);\n\n private direction: InnerDropdownSubmenuDirection = 'right';\n\n /**\n * 菜单方向\n * @type left | right | auto\n * @default right\n */\n @Input() set thyDirection(value: ThyDropdownSubmenuDirection) {\n this.direction = value;\n }\n\n constructor(private dropdownMenuItem: ThyDropdownMenuItemDirective, private elementRef: ElementRef<HTMLElement>) {}\n\n ngOnInit(): void {\n let direction = this.direction || 'right';\n this.updateClassByDirection(direction);\n this.dropdownMenuItem\n .bindMouseenterEvent()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => {\n if (this.direction === 'auto') {\n const element = this.dropdownMenuItem.getElement();\n const offset = getElementOffset(element);\n if (document.documentElement.clientWidth < offset.left + offset.width + offset.width) {\n direction = 'left';\n } else {\n direction = 'right';\n }\n this.updateClassByDirection(direction);\n }\n this.updateVerticalDirection(direction);\n });\n }\n\n private updateClassByDirection(direction: InnerDropdownSubmenuDirection) {\n this.dropdownMenuItem.updateClass([`${SUBMENU_CLASS_PREFIX}-${direction}`]);\n }\n\n private updateVerticalDirection(direction: InnerDropdownSubmenuDirection) {\n const submenuItems = this.elementRef.nativeElement.querySelectorAll('.dropdown-menu-item');\n if (submenuItems.length) {\n let submenuItemHeight = 0;\n submenuItems.forEach(item => (submenuItemHeight += item.clientHeight));\n if (\n document.documentElement.clientHeight - this.dropdownMenuItem.getElement().getBoundingClientRect().bottom <\n submenuItemHeight\n ) {\n direction = direction === 'left' ? 'leftBottom' : 'rightBottom';\n this.updateClassByDirection(direction);\n } else {\n this.updateClassByDirection(direction);\n }\n }\n }\n}\n","import { ContentChildren, Directive, ElementRef, Input, QueryList, Optional, AfterContentInit, OnInit } from '@angular/core';\nimport { coerceArray } from 'ngx-tethys/util';\nimport { mergeMap, startWith } from 'rxjs/operators';\nimport { ThyDropdownDirective } from './dropdown.directive';\nimport { useHostRenderer } from '@tethys/cdk/dom';\n\n/**\n * 跟踪 Dropdown 菜单是否被打开处于激活状态,允许指定一个或多个CSS类,以便在菜单打开状态时添加到元素中\n * @name thyDropdownActive\n * @order 60\n */\n@Directive({\n selector: '[thyDropdownActive]',\n standalone: true\n})\nexport class ThyDropdownActiveDirective implements OnInit, AfterContentInit {\n classes: string[];\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 设置 Active 样式类,可以是一个或多个CSS类\n * @type string[] | string\n */\n @Input()\n set thyDropdownActive(data: string[] | string) {\n this.classes = coerceArray(data).filter(c => !!c);\n }\n\n /**\n * @private\n */\n @ContentChildren(ThyDropdownDirective, { descendants: true }) triggers!: QueryList<ThyDropdownDirective>;\n\n constructor(private elementRef: ElementRef, @Optional() private trigger?: ThyDropdownDirective) {}\n\n ngOnInit(): void {}\n\n ngAfterContentInit(): void {\n this.triggers.changes\n .pipe(\n startWith(this.triggers.toArray()),\n mergeMap((triggers: ThyDropdownDirective[]) => {\n const result = triggers.map(item => {\n return item.thyActiveChange;\n });\n this.trigger && result.push(this.trigger.thyActiveChange);\n return result;\n }),\n mergeMap(result => {\n return result;\n })\n )\n .subscribe(active => {\n this.update(active);\n });\n }\n\n update(active: boolean) {\n this.classes.forEach(className => {\n if (active) {\n this.hostRenderer.addClass(className);\n } else {\n this.hostRenderer.removeClass(className);\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyPopoverModule } from 'ngx-tethys/popover';\nimport { ThyDropdownDirective } from './dropdown.directive';\nimport { ThyDropdownMenuComponent, ThyDropdownMenuDivider, ThyDropdownMenuGroup } from './dropdown-menu.component';\nimport {\n ThyDropdownMenuItemDirective,\n ThyDropdownMenuItemNameDirective,\n ThyDropdownMenuItemIconDirective,\n ThyDropdownMenuItemMetaDirective,\n ThyDropdownMenuItemDescDirective,\n ThyDropdownMenuItemExtendIconDirective,\n ThyDropdownMenuItemActiveDirective\n} from './dropdown-menu-item.directive';\nimport { ThyDropdownSubmenu } from './dropdown-submenu.component';\nimport { ThyDropdownActiveDirective } from './dropdown-active.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n ThyPopoverModule,\n ThyDropdownDirective,\n ThyDropdownActiveDirective,\n ThyDropdownMenuComponent,\n ThyDropdownSubmenu,\n ThyDropdownMenuGroup,\n ThyDropdownMenuDivider,\n ThyDropdownMenuItemDirective,\n ThyDropdownMenuItemNameDirective,\n ThyDropdownMenuItemIconDirective,\n ThyDropdownMenuItemMetaDirective,\n ThyDropdownMenuItemDescDirective,\n ThyDropdownMenuItemExtendIconDirective,\n ThyDropdownMenuItemActiveDirective\n ],\n exports: [\n ThyDropdownDirective,\n ThyDropdownActiveDirective,\n ThyDropdownMenuComponent,\n ThyDropdownSubmenu,\n ThyDropdownMenuGroup,\n ThyDropdownMenuDivider,\n ThyDropdownMenuItemDirective,\n ThyDropdownMenuItemNameDirective,\n ThyDropdownMenuItemIconDirective,\n ThyDropdownMenuItemMetaDirective,\n ThyDropdownMenuItemDescDirective,\n ThyDropdownMenuItemExtendIconDirective,\n ThyDropdownMenuItemActiveDirective\n ]\n})\nexport class ThyDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ThyDropdownMenuItemDirective","i1.ThyDropdownDirective"],"mappings":"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"}
|
package/fesm2022/ngx-tethys.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('17.0.
|
|
1
|
+
{"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('17.0.19');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;MAEa,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS;;ACF5C;;AAEG;;;;"}
|
package/package.json
CHANGED
package/schematics/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "17.0.
|
|
1
|
+
export declare const VERSION = "17.0.19";
|
package/schematics/version.js
CHANGED