ngx-tethys 21.0.7 → 21.0.9

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 (50) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/action/styles/action.scss +6 -1
  3. package/alert/styles/alert.scss +6 -1
  4. package/alert/styles/mixin.scss +2 -2
  5. package/button/styles/button-group.scss +6 -0
  6. package/cascader/styles/cascader.scss +2 -2
  7. package/cascader/styles/theme.scss +1 -1
  8. package/dropdown/styles/dropdown.scss +1 -1
  9. package/fesm2022/ngx-tethys-button.mjs +3 -2
  10. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  11. package/fesm2022/ngx-tethys-date-picker.mjs +6 -1
  12. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  13. package/fesm2022/ngx-tethys-layout.mjs +9 -5
  14. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  15. package/fesm2022/ngx-tethys-menu.mjs +35 -14
  16. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  17. package/fesm2022/ngx-tethys-shared.mjs +1 -1
  18. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  19. package/fesm2022/ngx-tethys-tag.mjs +20 -8
  20. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  21. package/fesm2022/ngx-tethys.mjs +1 -1
  22. package/fesm2022/ngx-tethys.mjs.map +1 -1
  23. package/menu/styles/menu.scss +2 -2
  24. package/nav/styles/icon-nav.scss +3 -3
  25. package/nav/styles/mixin.scss +9 -3
  26. package/package.json +1 -1
  27. package/schematics/version.d.ts +1 -1
  28. package/schematics/version.js +1 -1
  29. package/shared/option/styles/option.mixin.scss +4 -4
  30. package/shared/select/styles/select.mixin.scss +1 -1
  31. package/styles/themes/bright-purple.scss +1 -1
  32. package/styles/themes/bright-yellow.scss +1 -1
  33. package/styles/themes/brown-black.scss +1 -1
  34. package/styles/themes/olivine.scss +1 -1
  35. package/styles/themes/pink.scss +1 -1
  36. package/styles/themes/purple.scss +1 -1
  37. package/styles/themes/qq-blue.scss +1 -1
  38. package/styles/themes/sky-blue.scss +1 -1
  39. package/styles/themes/watermelon.scss +1 -1
  40. package/styles/variables.scss +24 -4
  41. package/tag/styles/mixin.scss +4 -1
  42. package/tag/styles/tag.scss +8 -1
  43. package/time-picker/styles/variables.scss +1 -1
  44. package/tree/styles/theme.scss +1 -1
  45. package/tree/styles/tree.scss +1 -1
  46. package/types/ngx-tethys-date-picker.d.ts +1 -0
  47. package/types/ngx-tethys-menu.d.ts +12 -9
  48. package/types/ngx-tethys-tag.d.ts +14 -5
  49. package/vote/styles/vote.scss +8 -8
  50. /package/tag/examples/{theme/theme.component.scss → appearance/appearance.component.scss} +0 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,28 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [21.0.9](github.com/atinc/ngx-tethys/compare/21.0.8...21.0.9) (2026-08-21)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **date-picker:** sync mustShowTime when show time picker in directive #TINFR-3806 ([#3843](/github.com/atinc/ngx-tethys/issues/3843)) ([5d8b7f7](github.com/atinc/ngx-tethys/commits/5d8b7f7ed1ecc3e53e037bc65a83eba3f2a3923c)), closes [#TINFR-3806](github.com/atinc/ngx-tethys/issues/TINFR-3806)
11
+ * **layout:** fix sidebar style error ([615e9e8](github.com/atinc/ngx-tethys/commits/615e9e8db7b4bd7684fd87e2991e21308ab974eb))
12
+
13
+
14
+ ### Features
15
+
16
+ * **tag:** add subtle to thyAppearance #TINFR-3835 ([#3850](/github.com/atinc/ngx-tethys/issues/3850)) ([83b5a0a](github.com/atinc/ngx-tethys/commits/83b5a0a12e7c5e6f810363237d5bf761fd05dca2)), closes [#TINFR-3835](github.com/atinc/ngx-tethys/issues/TINFR-3835)
17
+ * **tag:** add thyAppearance instead of thyTheme #TINFR-3826 ([#3846](/github.com/atinc/ngx-tethys/issues/3846)) ([f81aa8e](github.com/atinc/ngx-tethys/commits/f81aa8ed227b277ce610a018b7af659c55f2c9b2)), closes [#TINFR-3826](github.com/atinc/ngx-tethys/issues/TINFR-3826)
18
+
19
+ ## [21.0.8](github.com/atinc/ngx-tethys/compare/21.0.7...21.0.8) (2026-08-14)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * **button:** 修复button-group 样式 #TINFR-3823 ([#3844](/github.com/atinc/ngx-tethys/issues/3844)) ([c1eb10d](github.com/atinc/ngx-tethys/commits/c1eb10d01ca6b2c85494549f534b76ebcd87fd47)), closes [#TINFR-3823](github.com/atinc/ngx-tethys/issues/TINFR-3823)
25
+ * update ngAfterViewInit to afterNextRender support dynamic updated #TINFR-3818 ([#3841](/github.com/atinc/ngx-tethys/issues/3841)) ([9889022](github.com/atinc/ngx-tethys/commits/98890225cde6e772c65881e92a1da38c7dc4b4ef)), closes [#TINFR-3818](github.com/atinc/ngx-tethys/issues/TINFR-3818)
26
+
5
27
  ## [21.0.7](github.com/atinc/ngx-tethys/compare/21.0.6...21.0.7) (2026-08-04)
6
28
 
7
29
 
@@ -1,3 +1,4 @@
1
+ @use 'sass:map';
1
2
  @use '../../styles/mixins/hover.scss';
2
3
  @use '../../styles/bootstrap/functions-variables';
3
4
  @use '../../styles/variables.scss';
@@ -68,8 +69,12 @@
68
69
  @each $color, $value in functions-variables.$theme-colors {
69
70
  // 默认就是 Primary 无需设置样式,避免覆写 $action-hover-bg-color 颜色失效
70
71
  @if $color != 'primary' {
72
+ $subtle: map.get(variables.$theme-colors-subtle, $color);
73
+ @if not $subtle {
74
+ $subtle: rgba($value, 0.1);
75
+ }
71
76
  .action-#{$color} {
72
- @include action-mixin.action-variant(variables.$action-color, $value, rgba($value, 0.1));
77
+ @include action-mixin.action-variant(variables.$action-color, $value, $subtle);
73
78
  }
74
79
  }
75
80
  }
@@ -1,3 +1,4 @@
1
+ @use "sass:map";
1
2
  @use "../../styles/bootstrap/functions";
2
3
  @use "../../styles/bootstrap/functions-variables";
3
4
  @use "../../styles/bootstrap/mixins/border-radius";
@@ -101,7 +102,11 @@
101
102
 
102
103
  @each $color, $value in functions-variables.$theme-colors {
103
104
  .thy-alert-fill-#{$color} {
104
- @include mixin.thy-alert-variant(functions.theme-color($color));
105
+ $subtle: map.get(variables.$theme-colors-subtle, $color);
106
+ @if not $subtle {
107
+ $subtle: rgba($value, 0.1);
108
+ }
109
+ @include mixin.thy-alert-variant(functions.theme-color($color), $subtle);
105
110
  }
106
111
 
107
112
  .thy-alert-bordered-#{$color} {
@@ -10,9 +10,9 @@
10
10
  }
11
11
  }
12
12
 
13
- @mixin thy-alert-variant($color) {
13
+ @mixin thy-alert-variant($color, $subtle: rgba($color, 0.1)) {
14
14
  color: variables.$gray-700;
15
- @include gradients.gradient-bg(rgba($color, 0.1));
15
+ @include gradients.gradient-bg($subtle);
16
16
  border-color: $color;
17
17
  @include thy-alert-inner($color);
18
18
  }
@@ -153,10 +153,16 @@
153
153
 
154
154
  .btn-group-outline-#{$color} > .btn {
155
155
  @extend .btn-outline-#{$color};
156
+ &:hover {
157
+ @include shadow.box-shadow(none);
158
+ }
156
159
  }
157
160
  }
158
161
  .btn-group-outline-default > .btn {
159
162
  @extend .btn-outline-default;
163
+ &:hover {
164
+ @include shadow.box-shadow(none);
165
+ }
160
166
  }
161
167
 
162
168
  // The clickable button for toggling the menu
@@ -89,7 +89,7 @@ $cascader-menu-min-width: 122px;
89
89
  &-active:not(&-disabled) {
90
90
  &,
91
91
  &:hover {
92
- background: rgba(variables.$primary, 0.1);
92
+ background: variables.$primary-subtle;
93
93
  color: variables.$primary;
94
94
  }
95
95
  }
@@ -160,7 +160,7 @@ $cascader-menu-min-width: 122px;
160
160
  background-color: variables.$dropdown-menu-item-hover-bg;
161
161
  }
162
162
  &.active:not(.multiple) {
163
- background: rgba(variables.$primary, 0.1);
163
+ background: variables.$primary-subtle;
164
164
  color: variables.$primary;
165
165
  }
166
166
  // 覆盖 thyFlexibleText 默认样式使其垂直居中
@@ -14,7 +14,7 @@
14
14
  &-active:not(&-disabled) {
15
15
  &,
16
16
  &:hover {
17
- background: rgba($primary, .1);
17
+ background: $primary-subtle;
18
18
  color: $primary;
19
19
  }
20
20
 
@@ -41,7 +41,7 @@
41
41
  }
42
42
 
43
43
  &:not(.dropdown-menu-item--disabled).active {
44
- background-color: rgba(variables.$primary, 0.1);
44
+ background-color: variables.$primary-subtle;
45
45
  &:not(.dropdown-submenu) {
46
46
  color: variables.$dropdown-menu-item-hover-color;
47
47
  }
@@ -211,8 +211,9 @@ class ThyButton {
211
211
  setButtonText() {
212
212
  const text = this.thyLoading() ? this.thyLoadingText() : this._originalText;
213
213
  const spanElement = this.nativeElement.querySelector('span');
214
- if (spanElement && text) {
215
- this.renderer.setProperty(spanElement, 'innerText', text);
214
+ const textNode = spanElement?.firstChild;
215
+ if (spanElement && textNode && text) {
216
+ this.renderer.setValue(textNode, text);
216
217
  }
217
218
  }
218
219
  updateClasses() {
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-button.mjs","sources":["../../../src/button/button-group.component.ts","../../../src/button/button-icon.component.ts","../../../src/button/button-icon.component.html","../../../src/button/button.component.ts","../../../src/button/button.component.html","../../../src/button/button.module.ts","../../../src/button/ngx-tethys-button.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { Component, effect, HostBinding, input, Input, OnInit, ViewEncapsulation } from '@angular/core';\n\nexport type ButtonGroupSize = 'sm' | 'lg' | 'xs' | 'md';\n\nexport type ButtonGroupType = 'outline-primary' | 'outline-default';\n\nconst buttonGroupSizeMap = {\n sm: ['btn-group-sm'],\n md: ['btn-group-md'],\n lg: ['btn-group-lg'],\n xs: ['btn-group-xs']\n};\n\n/**\n * 按钮分组组件\n * @name thy-button-group\n * @order 30\n */\n@Component({\n selector: 'thy-button-group',\n template: '<ng-content></ng-content>',\n host: {\n class: 'btn-group',\n '[class.btn-group-clear-min-width]': 'thyClearMinWidth()'\n },\n encapsulation: ViewEncapsulation.None\n})\nexport class ThyButtonGroup {\n private hostRenderer = useHostRenderer();\n\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default md\n */\n readonly thySize = input<ButtonGroupSize>();\n\n /**\n * 类型\n * @type outline-default | outline-primary\n * @default outline-default\n */\n readonly thyType = input<ButtonGroupType>();\n\n /**\n * 是否需要最小宽度,默认按钮最小宽度为80px\n * @default false\n */\n readonly thyClearMinWidth = input(false, { transform: coerceBooleanProperty });\n\n constructor() {\n effect(() => {\n this.setClasses();\n });\n }\n\n private setClasses() {\n const type = this.thyType();\n const size = this.thySize();\n let classNames: string[] = [];\n if (type) {\n classNames.push(`btn-group-${type}`);\n }\n if (size && buttonGroupSizeMap[size]) {\n classNames = classNames.concat(...buttonGroupSizeMap[size]);\n }\n this.hostRenderer.updateClass(classNames);\n }\n}\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit, ViewEncapsulation, computed, effect, input } from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { coerceBooleanProperty, ThyBooleanInput } from 'ngx-tethys/util';\n\nexport type ThyButtonIconShape = '' | 'circle-dashed' | 'circle-solid' | 'circle-thick-dashed' | 'circle-thick-solid' | 'self-icon';\n\nconst sizeClassesMap: Record<string, string[]> = {\n lg: ['btn-icon-lg'],\n md: ['btn-icon-md'],\n sm: ['btn-icon-sm'],\n xs: ['btn-icon-xs']\n};\n\nconst shapeClassesMap = {\n 'circle-dashed': ['btn-icon-circle', 'circle-dashed'],\n 'circle-solid': ['btn-icon-circle', 'circle-solid'],\n 'circle-thick-dashed': ['btn-icon-circle', 'circle-dashed', 'border-thick'],\n 'circle-thick-solid': ['btn-icon-circle', 'circle-solid', 'border-thick'],\n 'self-icon': ['btn-icon-self-circle']\n};\n\nconst themeClassesMap: any = {\n 'danger-weak': ['btn-icon-danger-weak']\n};\n\n/**\n * 操作按钮图标,支持`thy-button-icon`组件和`thyButtonIcon`指令两种形式\n * @name thy-button-icon,[thy-button-icon],[thyButtonIcon]\n * @order 20\n */\n@Component({\n selector: 'thy-button-icon,[thy-button-icon],[thyButtonIcon]',\n templateUrl: './button-icon.component.html',\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'btn btn-icon',\n '[class.btn-icon-light]': 'thyLight()',\n '[class.btn-icon-active]': 'thyActive()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButtonIcon {\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default 36px\n */\n readonly thySize = input<string>();\n\n /**\n * 图标, 和`thyButtonIcon`相同,当使用`thy-button-icon`时,只能使用 thyIcon 设置图标\n */\n readonly thyIcon = input<string>();\n\n /**\n * 图标按钮的图标\n */\n readonly thyButtonIcon = input<string>();\n\n /**\n * 展示的形状,默认只显示字体图标图标,circle-dashed, circle-solid 展示成虚线,实线边框圆形图标, circle-thick-dashed, circle-thick-solid 边框加粗\n */\n readonly thyShape = input<ThyButtonIconShape>();\n\n /**\n * 亮色,颜色更浅,适合左侧导航顶部的按钮\n * @default false\n */\n readonly thyLight = input<boolean, ThyBooleanInput>(false, { transform: coerceBooleanProperty });\n\n /**\n * 设置为选中状态\n * @default false\n */\n readonly thyActive = input<boolean, ThyBooleanInput>(false, { transform: coerceBooleanProperty });\n\n /**\n * 按钮展示类型,默认图标移上去显示主色, danger-weak 鼠标移上去显示 danger 红色\n */\n readonly thyTheme = input<string>();\n\n readonly thyColor = input<string>();\n\n constructor() {\n effect(() => {\n this.setClasses();\n });\n }\n\n private hostRenderer = useHostRenderer();\n\n private icon = computed(() => {\n return this.thyButtonIcon() || this.thyIcon();\n });\n\n private isWtfIcon = computed(() => {\n const icon = this.icon();\n return icon && icon.includes('wtf');\n });\n\n protected svgIconName = computed(() => {\n if (!this.isWtfIcon()) {\n return this.icon();\n }\n return null;\n });\n\n protected iconClasses = computed<string[] | null>(() => {\n const icon = this.icon();\n if (this.isWtfIcon()) {\n const classes = icon!.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n return classes;\n }\n return null;\n });\n\n private setClasses() {\n const size = this.thySize();\n const shape = this.thyShape();\n const theme = this.thyTheme();\n const classes = size && sizeClassesMap[size] ? [...sizeClassesMap[size]] : [];\n if (shape && shapeClassesMap[shape]) {\n shapeClassesMap[shape].forEach((className: string) => {\n classes.push(className);\n });\n }\n if (theme && themeClassesMap[theme]) {\n themeClassesMap[theme].forEach((className: string) => {\n classes.push(className);\n });\n }\n this.hostRenderer.updateClass(classes);\n }\n}\n","@if (svgIconName()) {\n <thy-icon [thyIconName]=\"svgIconName()\" [style.color]=\"thyColor()\" [style.borderColor]=\"thyColor()\"></thy-icon>\n} @else {\n @if (iconClasses()) {\n <i [ngClass]=\"iconClasses()\" [style.color]=\"thyColor()\" [style.borderColor]=\"thyColor()\"></i>\n }\n}\n<ng-content></ng-content>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Renderer2,\n ViewEncapsulation,\n inject,\n input,\n computed,\n effect,\n afterNextRender\n} from '@angular/core';\n\nimport { assertIconOnly, coerceBooleanProperty, ThyBooleanInput } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgClass } from '@angular/common';\n\nexport type ThyButtonType =\n | 'primary'\n | 'secondary'\n | 'info'\n | 'outline-primary'\n | 'outline-default'\n | 'danger'\n | 'link'\n | 'link-secondary'\n | 'warning'\n | 'outline-warning'\n | 'success'\n | 'outline-success'\n | 'outline-info'\n | 'outline-danger'\n | 'link-danger-weak'\n | 'link-danger'\n | 'link-success';\n\nconst btnTypeClassesMap: Record<string, string[]> = {\n primary: ['btn-primary'],\n secondary: ['btn-primary', 'btn-md'],\n info: ['btn-info'],\n warning: ['btn-warning'],\n danger: ['btn-danger'],\n 'outline-primary': ['btn-outline-primary'],\n 'outline-default': ['btn-outline-default'],\n link: ['btn-link'], // 链接按钮\n 'link-info': ['btn-link', 'btn-link-info'], // 幽灵链接按钮\n 'link-secondary': ['btn-link', 'btn-link-primary-weak'], // 幽灵链接按钮\n 'link-danger-weak': ['btn-link', 'btn-link-danger-weak'], // 幽灵危险按钮\n 'link-danger': ['btn-link', 'btn-link-danger'], // 危险按钮\n 'link-success': ['btn-link', 'btn-link-success'] // 成功按钮\n};\n\nconst iconOnlyClass = 'thy-btn-icon-only';\n\n/**\n * 操作按钮,支持组件`thy-button`和`thyButton`指令两种形式\n * @name thy-button,[thy-button],[thyButton]\n * @order 10\n */\n@Component({\n selector: 'thy-button,[thy-button],[thyButton]',\n templateUrl: './button.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-btn btn',\n '[class.btn-block]': 'thyBlock()'\n },\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButton {\n private elementRef = inject(ElementRef);\n private renderer = inject(Renderer2);\n\n private _originalText?: string;\n\n private get nativeElement(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 按钮类型,支持添加前缀`outline-`实现线框按钮,支持添加前缀`link-`实现按钮链接\n * @type primary | info | warning | danger | success\n * @default primary\n */\n readonly thyButton = input<ThyButtonType>();\n\n /**\n * 和`thyButton`参数一样,一般使用`thyButton`,为了减少参数输入, 当通过`thy-button`使用时,只能使用该参数控制类型\n * @default primary\n */\n readonly thyType = input<ThyButtonType>();\n\n /**\n * 加载状态\n * @default false\n */\n readonly thyLoading = input<boolean, ThyBooleanInput>(false, {\n transform: value => {\n if (!this.thyLoading() && value) {\n const textElement = this.nativeElement?.querySelector('span');\n this._originalText = textElement ? textElement.innerText : '';\n }\n return coerceBooleanProperty(value);\n }\n });\n\n /**\n * 加载状态时显示的文案\n */\n readonly thyLoadingText = input<string>();\n\n /**\n * 按钮大小\n * @type xs | sm | md | default | lg\n * @default default\n */\n readonly thySize = input<string>();\n\n /**\n * 按钮中显示的图标,支持SVG图标名称,比如`angle-left`,也支持传之前的 wtf 字体,比如: wtf-plus\n */\n readonly thyIcon = input<string>();\n\n /**\n * 按钮整块展示\n * @default false\n */\n readonly thyBlock = input<boolean, ThyBooleanInput>(false, { transform: coerceBooleanProperty });\n\n private isWtfIcon = computed(() => {\n const icon = this.thyIcon();\n return icon && icon.includes('wtf');\n });\n\n protected svgIconName = computed(() => {\n if (!this.isWtfIcon()) {\n return this.thyIcon();\n }\n return null;\n });\n\n protected iconClass = computed<string[] | null>(() => {\n const icon = this.thyIcon();\n if (this.isWtfIcon()) {\n const classes = icon!.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n return classes;\n }\n return null;\n });\n\n private readonly buttonType = computed<ThyButtonType>(() => {\n return this.thyButton() || this.thyType() || 'primary';\n });\n\n protected isRadiusSquare = computed(() => {\n const type = this.buttonType();\n return !!type?.includes('-square');\n });\n\n protected type = computed(() => {\n const type = this.buttonType();\n if (this.isRadiusSquare()) {\n return type?.replace('-square', '');\n } else {\n return type;\n }\n });\n\n private setButtonText() {\n const text = this.thyLoading() ? this.thyLoadingText() : this._originalText;\n const spanElement = this.nativeElement.querySelector('span');\n if (spanElement && text) {\n this.renderer.setProperty(spanElement, 'innerText', text);\n }\n }\n\n private updateClasses() {\n const type = this.type();\n if (!type) {\n return;\n }\n\n let classNames: string[] = [];\n if (btnTypeClassesMap[type]) {\n classNames = [...btnTypeClassesMap[type]];\n } else {\n if (type) {\n classNames.push(`btn-${type}`);\n }\n }\n\n const size = this.thySize();\n if (size) {\n classNames.push(`btn-${size}`);\n }\n if (this.isRadiusSquare()) {\n classNames.push('btn-square');\n }\n const loading = this.thyLoading();\n if (loading) {\n classNames.push('loading');\n }\n this.hostRenderer.updateClass(classNames);\n }\n\n constructor() {\n effect(() => {\n this.updateClasses();\n });\n\n effect(() => {\n this.setButtonText();\n });\n\n afterNextRender(() => {\n if (assertIconOnly(this.nativeElement)) {\n this.hostRenderer.addClass(iconOnlyClass);\n } else {\n this.hostRenderer.removeClass(iconOnlyClass);\n }\n this.wrapSpanForText(this.nativeElement.childNodes);\n });\n }\n\n private wrapSpanForText(nodes: NodeList): void {\n nodes.forEach(node => {\n if (node.nodeName === '#text') {\n const span = this.renderer.createElement('span');\n const parent = this.renderer.parentNode(node);\n this.renderer.addClass(span, 'thy-btn-wrap-span');\n this.renderer.insertBefore(parent, span, node);\n this.renderer.appendChild(span, node);\n }\n });\n }\n}\n","@if (svgIconName()) {\n <thy-icon [thyIconName]=\"svgIconName()\"></thy-icon>\n} @else {\n @if (iconClass()) {\n <i [ngClass]=\"iconClass()\"></i>\n }\n}\n<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyButtonGroup } from './button-group.component';\nimport { ThyButtonIcon } from './button-icon.component';\nimport { ThyButton } from './button.component';\n\n@NgModule({\n imports: [CommonModule, ThyIconModule, ThyButton, ThyButtonIcon, ThyButtonGroup],\n exports: [ThyButton, ThyButtonIcon, ThyButtonGroup]\n})\nexport class ThyButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["coerceBooleanProperty"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-button.mjs","sources":["../../../src/button/button-group.component.ts","../../../src/button/button-icon.component.ts","../../../src/button/button-icon.component.html","../../../src/button/button.component.ts","../../../src/button/button.component.html","../../../src/button/button.module.ts","../../../src/button/ngx-tethys-button.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { Component, effect, HostBinding, input, Input, OnInit, ViewEncapsulation } from '@angular/core';\n\nexport type ButtonGroupSize = 'sm' | 'lg' | 'xs' | 'md';\n\nexport type ButtonGroupType = 'outline-primary' | 'outline-default';\n\nconst buttonGroupSizeMap = {\n sm: ['btn-group-sm'],\n md: ['btn-group-md'],\n lg: ['btn-group-lg'],\n xs: ['btn-group-xs']\n};\n\n/**\n * 按钮分组组件\n * @name thy-button-group\n * @order 30\n */\n@Component({\n selector: 'thy-button-group',\n template: '<ng-content></ng-content>',\n host: {\n class: 'btn-group',\n '[class.btn-group-clear-min-width]': 'thyClearMinWidth()'\n },\n encapsulation: ViewEncapsulation.None\n})\nexport class ThyButtonGroup {\n private hostRenderer = useHostRenderer();\n\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default md\n */\n readonly thySize = input<ButtonGroupSize>();\n\n /**\n * 类型\n * @type outline-default | outline-primary\n * @default outline-default\n */\n readonly thyType = input<ButtonGroupType>();\n\n /**\n * 是否需要最小宽度,默认按钮最小宽度为80px\n * @default false\n */\n readonly thyClearMinWidth = input(false, { transform: coerceBooleanProperty });\n\n constructor() {\n effect(() => {\n this.setClasses();\n });\n }\n\n private setClasses() {\n const type = this.thyType();\n const size = this.thySize();\n let classNames: string[] = [];\n if (type) {\n classNames.push(`btn-group-${type}`);\n }\n if (size && buttonGroupSizeMap[size]) {\n classNames = classNames.concat(...buttonGroupSizeMap[size]);\n }\n this.hostRenderer.updateClass(classNames);\n }\n}\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit, ViewEncapsulation, computed, effect, input } from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { coerceBooleanProperty, ThyBooleanInput } from 'ngx-tethys/util';\n\nexport type ThyButtonIconShape = '' | 'circle-dashed' | 'circle-solid' | 'circle-thick-dashed' | 'circle-thick-solid' | 'self-icon';\n\nconst sizeClassesMap: Record<string, string[]> = {\n lg: ['btn-icon-lg'],\n md: ['btn-icon-md'],\n sm: ['btn-icon-sm'],\n xs: ['btn-icon-xs']\n};\n\nconst shapeClassesMap = {\n 'circle-dashed': ['btn-icon-circle', 'circle-dashed'],\n 'circle-solid': ['btn-icon-circle', 'circle-solid'],\n 'circle-thick-dashed': ['btn-icon-circle', 'circle-dashed', 'border-thick'],\n 'circle-thick-solid': ['btn-icon-circle', 'circle-solid', 'border-thick'],\n 'self-icon': ['btn-icon-self-circle']\n};\n\nconst themeClassesMap: any = {\n 'danger-weak': ['btn-icon-danger-weak']\n};\n\n/**\n * 操作按钮图标,支持`thy-button-icon`组件和`thyButtonIcon`指令两种形式\n * @name thy-button-icon,[thy-button-icon],[thyButtonIcon]\n * @order 20\n */\n@Component({\n selector: 'thy-button-icon,[thy-button-icon],[thyButtonIcon]',\n templateUrl: './button-icon.component.html',\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'btn btn-icon',\n '[class.btn-icon-light]': 'thyLight()',\n '[class.btn-icon-active]': 'thyActive()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButtonIcon {\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default 36px\n */\n readonly thySize = input<string>();\n\n /**\n * 图标, 和`thyButtonIcon`相同,当使用`thy-button-icon`时,只能使用 thyIcon 设置图标\n */\n readonly thyIcon = input<string>();\n\n /**\n * 图标按钮的图标\n */\n readonly thyButtonIcon = input<string>();\n\n /**\n * 展示的形状,默认只显示字体图标图标,circle-dashed, circle-solid 展示成虚线,实线边框圆形图标, circle-thick-dashed, circle-thick-solid 边框加粗\n */\n readonly thyShape = input<ThyButtonIconShape>();\n\n /**\n * 亮色,颜色更浅,适合左侧导航顶部的按钮\n * @default false\n */\n readonly thyLight = input<boolean, ThyBooleanInput>(false, { transform: coerceBooleanProperty });\n\n /**\n * 设置为选中状态\n * @default false\n */\n readonly thyActive = input<boolean, ThyBooleanInput>(false, { transform: coerceBooleanProperty });\n\n /**\n * 按钮展示类型,默认图标移上去显示主色, danger-weak 鼠标移上去显示 danger 红色\n */\n readonly thyTheme = input<string>();\n\n readonly thyColor = input<string>();\n\n constructor() {\n effect(() => {\n this.setClasses();\n });\n }\n\n private hostRenderer = useHostRenderer();\n\n private icon = computed(() => {\n return this.thyButtonIcon() || this.thyIcon();\n });\n\n private isWtfIcon = computed(() => {\n const icon = this.icon();\n return icon && icon.includes('wtf');\n });\n\n protected svgIconName = computed(() => {\n if (!this.isWtfIcon()) {\n return this.icon();\n }\n return null;\n });\n\n protected iconClasses = computed<string[] | null>(() => {\n const icon = this.icon();\n if (this.isWtfIcon()) {\n const classes = icon!.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n return classes;\n }\n return null;\n });\n\n private setClasses() {\n const size = this.thySize();\n const shape = this.thyShape();\n const theme = this.thyTheme();\n const classes = size && sizeClassesMap[size] ? [...sizeClassesMap[size]] : [];\n if (shape && shapeClassesMap[shape]) {\n shapeClassesMap[shape].forEach((className: string) => {\n classes.push(className);\n });\n }\n if (theme && themeClassesMap[theme]) {\n themeClassesMap[theme].forEach((className: string) => {\n classes.push(className);\n });\n }\n this.hostRenderer.updateClass(classes);\n }\n}\n","@if (svgIconName()) {\n <thy-icon [thyIconName]=\"svgIconName()\" [style.color]=\"thyColor()\" [style.borderColor]=\"thyColor()\"></thy-icon>\n} @else {\n @if (iconClasses()) {\n <i [ngClass]=\"iconClasses()\" [style.color]=\"thyColor()\" [style.borderColor]=\"thyColor()\"></i>\n }\n}\n<ng-content></ng-content>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Renderer2,\n ViewEncapsulation,\n inject,\n input,\n computed,\n effect,\n afterNextRender\n} from '@angular/core';\n\nimport { assertIconOnly, coerceBooleanProperty, ThyBooleanInput } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgClass } from '@angular/common';\n\nexport type ThyButtonType =\n | 'primary'\n | 'secondary'\n | 'info'\n | 'outline-primary'\n | 'outline-default'\n | 'danger'\n | 'link'\n | 'link-secondary'\n | 'warning'\n | 'outline-warning'\n | 'success'\n | 'outline-success'\n | 'outline-info'\n | 'outline-danger'\n | 'link-danger-weak'\n | 'link-danger'\n | 'link-success';\n\nconst btnTypeClassesMap: Record<string, string[]> = {\n primary: ['btn-primary'],\n secondary: ['btn-primary', 'btn-md'],\n info: ['btn-info'],\n warning: ['btn-warning'],\n danger: ['btn-danger'],\n 'outline-primary': ['btn-outline-primary'],\n 'outline-default': ['btn-outline-default'],\n link: ['btn-link'], // 链接按钮\n 'link-info': ['btn-link', 'btn-link-info'], // 幽灵链接按钮\n 'link-secondary': ['btn-link', 'btn-link-primary-weak'], // 幽灵链接按钮\n 'link-danger-weak': ['btn-link', 'btn-link-danger-weak'], // 幽灵危险按钮\n 'link-danger': ['btn-link', 'btn-link-danger'], // 危险按钮\n 'link-success': ['btn-link', 'btn-link-success'] // 成功按钮\n};\n\nconst iconOnlyClass = 'thy-btn-icon-only';\n\n/**\n * 操作按钮,支持组件`thy-button`和`thyButton`指令两种形式\n * @name thy-button,[thy-button],[thyButton]\n * @order 10\n */\n@Component({\n selector: 'thy-button,[thy-button],[thyButton]',\n templateUrl: './button.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-btn btn',\n '[class.btn-block]': 'thyBlock()'\n },\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButton {\n private elementRef = inject(ElementRef);\n private renderer = inject(Renderer2);\n\n private _originalText?: string;\n\n private get nativeElement(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 按钮类型,支持添加前缀`outline-`实现线框按钮,支持添加前缀`link-`实现按钮链接\n * @type primary | info | warning | danger | success\n * @default primary\n */\n readonly thyButton = input<ThyButtonType>();\n\n /**\n * 和`thyButton`参数一样,一般使用`thyButton`,为了减少参数输入, 当通过`thy-button`使用时,只能使用该参数控制类型\n * @default primary\n */\n readonly thyType = input<ThyButtonType>();\n\n /**\n * 加载状态\n * @default false\n */\n readonly thyLoading = input<boolean, ThyBooleanInput>(false, {\n transform: value => {\n if (!this.thyLoading() && value) {\n const textElement = this.nativeElement?.querySelector('span');\n this._originalText = textElement ? textElement.innerText : '';\n }\n return coerceBooleanProperty(value);\n }\n });\n\n /**\n * 加载状态时显示的文案\n */\n readonly thyLoadingText = input<string>();\n\n /**\n * 按钮大小\n * @type xs | sm | md | default | lg\n * @default default\n */\n readonly thySize = input<string>();\n\n /**\n * 按钮中显示的图标,支持SVG图标名称,比如`angle-left`,也支持传之前的 wtf 字体,比如: wtf-plus\n */\n readonly thyIcon = input<string>();\n\n /**\n * 按钮整块展示\n * @default false\n */\n readonly thyBlock = input<boolean, ThyBooleanInput>(false, { transform: coerceBooleanProperty });\n\n private isWtfIcon = computed(() => {\n const icon = this.thyIcon();\n return icon && icon.includes('wtf');\n });\n\n protected svgIconName = computed(() => {\n if (!this.isWtfIcon()) {\n return this.thyIcon();\n }\n return null;\n });\n\n protected iconClass = computed<string[] | null>(() => {\n const icon = this.thyIcon();\n if (this.isWtfIcon()) {\n const classes = icon!.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n return classes;\n }\n return null;\n });\n\n private readonly buttonType = computed<ThyButtonType>(() => {\n return this.thyButton() || this.thyType() || 'primary';\n });\n\n protected isRadiusSquare = computed(() => {\n const type = this.buttonType();\n return !!type?.includes('-square');\n });\n\n protected type = computed(() => {\n const type = this.buttonType();\n if (this.isRadiusSquare()) {\n return type?.replace('-square', '');\n } else {\n return type;\n }\n });\n\n private setButtonText() {\n const text = this.thyLoading() ? this.thyLoadingText() : this._originalText;\n const spanElement = this.nativeElement.querySelector('span');\n const textNode = spanElement?.firstChild;\n if (spanElement && textNode && text) {\n this.renderer.setValue(textNode, text);\n }\n }\n\n private updateClasses() {\n const type = this.type();\n if (!type) {\n return;\n }\n\n let classNames: string[] = [];\n if (btnTypeClassesMap[type]) {\n classNames = [...btnTypeClassesMap[type]];\n } else {\n if (type) {\n classNames.push(`btn-${type}`);\n }\n }\n\n const size = this.thySize();\n if (size) {\n classNames.push(`btn-${size}`);\n }\n if (this.isRadiusSquare()) {\n classNames.push('btn-square');\n }\n const loading = this.thyLoading();\n if (loading) {\n classNames.push('loading');\n }\n this.hostRenderer.updateClass(classNames);\n }\n\n constructor() {\n effect(() => {\n this.updateClasses();\n });\n\n effect(() => {\n this.setButtonText();\n });\n\n afterNextRender(() => {\n if (assertIconOnly(this.nativeElement)) {\n this.hostRenderer.addClass(iconOnlyClass);\n } else {\n this.hostRenderer.removeClass(iconOnlyClass);\n }\n this.wrapSpanForText(this.nativeElement.childNodes);\n });\n }\n\n private wrapSpanForText(nodes: NodeList): void {\n nodes.forEach(node => {\n if (node.nodeName === '#text') {\n const span = this.renderer.createElement('span');\n const parent = this.renderer.parentNode(node);\n this.renderer.addClass(span, 'thy-btn-wrap-span');\n this.renderer.insertBefore(parent, span, node);\n this.renderer.appendChild(span, node);\n }\n });\n }\n}\n","@if (svgIconName()) {\n <thy-icon [thyIconName]=\"svgIconName()\"></thy-icon>\n} @else {\n @if (iconClass()) {\n <i [ngClass]=\"iconClass()\"></i>\n }\n}\n<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyButtonGroup } from './button-group.component';\nimport { ThyButtonIcon } from './button-icon.component';\nimport { ThyButton } from './button.component';\n\n@NgModule({\n imports: [CommonModule, ThyIconModule, ThyButton, ThyButtonIcon, ThyButtonGroup],\n exports: [ThyButton, ThyButtonIcon, ThyButtonGroup]\n})\nexport class ThyButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["coerceBooleanProperty"],"mappings":"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"}
@@ -3660,6 +3660,7 @@ class PickerDirective extends AbstractPickerComponent {
3660
3660
  }, this.thyPopoverOptions()));
3661
3661
  if (popoverRef) {
3662
3662
  const componentInstance = popoverRef.componentInstance;
3663
+ this.datePopupRef = popoverRef.containerInstance.portalOutlet.attachedRef;
3663
3664
  if (this.valueChangeSubscription) {
3664
3665
  this.valueChangeSubscription.unsubscribe();
3665
3666
  }
@@ -3690,7 +3691,10 @@ class PickerDirective extends AbstractPickerComponent {
3690
3691
  popoverRef
3691
3692
  .afterClosed()
3692
3693
  .pipe(takeUntilDestroyed(this.destroyRef))
3693
- .subscribe(() => this.thyOpenChange.emit(false));
3694
+ .subscribe(() => {
3695
+ this.datePopupRef = undefined;
3696
+ this.thyOpenChange.emit(false);
3697
+ });
3694
3698
  }
3695
3699
  }
3696
3700
  closeOverlay() {
@@ -3729,6 +3733,7 @@ class PickerDirective extends AbstractPickerComponent {
3729
3733
  }
3730
3734
  onShowTimePickerChange(show) {
3731
3735
  this.withTime = show;
3736
+ this.datePopupRef?.setInput('mustShowTime', show);
3732
3737
  }
3733
3738
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PickerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
3734
3739
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: PickerDirective, isStandalone: true, inputs: { thyDateRender: { classPropertyName: "thyDateRender", publicName: "thyDateRender", isSignal: true, isRequired: false, transformFunction: null }, thyPlacement: { classPropertyName: "thyPlacement", publicName: "thyPlacement", isSignal: true, isRequired: false, transformFunction: null }, thyOffset: { classPropertyName: "thyOffset", publicName: "thyOffset", isSignal: true, isRequired: false, transformFunction: null }, thyHasBackdrop: { classPropertyName: "thyHasBackdrop", publicName: "thyHasBackdrop", isSignal: true, isRequired: false, transformFunction: null }, thyPopoverOptions: { classPropertyName: "thyPopoverOptions", publicName: "thyPopoverOptions", isSignal: true, isRequired: false, transformFunction: null }, thyStopPropagation: { classPropertyName: "thyStopPropagation", publicName: "thyStopPropagation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { thyOnPanelChange: "thyOnPanelChange", thyOnCalendarChange: "thyOnCalendarChange" }, usesInheritance: true, ngImport: i0 }); }