@ng-nest/ui 20.0.7 → 20.1.0

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 (206) hide show
  1. package/auto-complete/index.d.ts +33 -8
  2. package/base-form/index.d.ts +3 -3
  3. package/calendar/index.d.ts +1 -2
  4. package/cascade/index.d.ts +33 -8
  5. package/checkbox/index.d.ts +3 -3
  6. package/color-picker/index.d.ts +34 -8
  7. package/core/index.d.ts +40 -8
  8. package/date-picker/index.d.ts +57 -12
  9. package/dropdown/index.d.ts +4 -4
  10. package/fesm2022/ng-nest-ui-affix.mjs +12 -12
  11. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  12. package/fesm2022/ng-nest-ui-alert.mjs +35 -35
  13. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  14. package/fesm2022/ng-nest-ui-anchor.mjs +31 -31
  15. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  16. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  17. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  18. package/fesm2022/ng-nest-ui-auto-complete.mjs +82 -72
  19. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  20. package/fesm2022/ng-nest-ui-avatar.mjs +31 -31
  21. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  22. package/fesm2022/ng-nest-ui-back-top.mjs +18 -18
  23. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  24. package/fesm2022/ng-nest-ui-badge.mjs +23 -23
  25. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  26. package/fesm2022/ng-nest-ui-base-form.mjs +45 -45
  27. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  28. package/fesm2022/ng-nest-ui-button.mjs +42 -42
  29. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  30. package/fesm2022/ng-nest-ui-calendar.mjs +20 -20
  31. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  32. package/fesm2022/ng-nest-ui-card.mjs +15 -15
  33. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  34. package/fesm2022/ng-nest-ui-carousel.mjs +46 -46
  35. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  36. package/fesm2022/ng-nest-ui-cascade.mjs +86 -76
  37. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  38. package/fesm2022/ng-nest-ui-checkbox.mjs +39 -39
  39. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  40. package/fesm2022/ng-nest-ui-collapse.mjs +31 -31
  41. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  42. package/fesm2022/ng-nest-ui-color-picker.mjs +91 -72
  43. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  44. package/fesm2022/ng-nest-ui-color.mjs +16 -16
  45. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  46. package/fesm2022/ng-nest-ui-comment.mjs +21 -21
  47. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  48. package/fesm2022/ng-nest-ui-container.mjs +37 -37
  49. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  50. package/fesm2022/ng-nest-ui-core.mjs +38 -22
  51. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  52. package/fesm2022/ng-nest-ui-crumb.mjs +13 -13
  53. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  54. package/fesm2022/ng-nest-ui-date-picker.mjs +273 -253
  55. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  56. package/fesm2022/ng-nest-ui-description.mjs +31 -31
  57. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  58. package/fesm2022/ng-nest-ui-dialog.mjs +81 -81
  59. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  60. package/fesm2022/ng-nest-ui-doc.mjs +7 -7
  61. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  62. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  63. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
  64. package/fesm2022/ng-nest-ui-drawer.mjs +42 -42
  65. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  66. package/fesm2022/ng-nest-ui-dropdown.mjs +49 -49
  67. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  68. package/fesm2022/ng-nest-ui-empty.mjs +12 -12
  69. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  70. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  71. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  72. package/fesm2022/ng-nest-ui-find.mjs +79 -77
  73. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  74. package/fesm2022/ng-nest-ui-form.mjs +33 -33
  75. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  76. package/fesm2022/ng-nest-ui-highlight.mjs +20 -20
  77. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  78. package/fesm2022/ng-nest-ui-i18n.mjs +15 -15
  79. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  80. package/fesm2022/ng-nest-ui-icon.mjs +21 -21
  81. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  82. package/fesm2022/ng-nest-ui-image.mjs +39 -39
  83. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  84. package/fesm2022/ng-nest-ui-inner.mjs +11 -11
  85. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  86. package/fesm2022/ng-nest-ui-input-number.mjs +42 -42
  87. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  88. package/fesm2022/ng-nest-ui-input.mjs +102 -81
  89. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  90. package/fesm2022/ng-nest-ui-keyword.mjs +15 -15
  91. package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
  92. package/fesm2022/ng-nest-ui-layout.mjs +31 -31
  93. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  94. package/fesm2022/ng-nest-ui-link.mjs +18 -18
  95. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  96. package/fesm2022/ng-nest-ui-list.mjs +80 -80
  97. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  98. package/fesm2022/ng-nest-ui-loading.mjs +22 -22
  99. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  100. package/fesm2022/ng-nest-ui-menu.mjs +45 -45
  101. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  102. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  103. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  104. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  105. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  106. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  107. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  108. package/fesm2022/ng-nest-ui-outlet.mjs +9 -9
  109. package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
  110. package/fesm2022/ng-nest-ui-page-header.mjs +15 -15
  111. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  112. package/fesm2022/ng-nest-ui-pagination.mjs +53 -53
  113. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  114. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  115. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  116. package/fesm2022/ng-nest-ui-popconfirm.mjs +27 -27
  117. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  118. package/fesm2022/ng-nest-ui-popover.mjs +38 -38
  119. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  120. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  121. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  122. package/fesm2022/ng-nest-ui-progress.mjs +38 -38
  123. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  124. package/fesm2022/ng-nest-ui-radio.mjs +36 -36
  125. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  126. package/fesm2022/ng-nest-ui-rate.mjs +30 -30
  127. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  128. package/fesm2022/ng-nest-ui-resizable.mjs +16 -16
  129. package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
  130. package/fesm2022/ng-nest-ui-result.mjs +16 -16
  131. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  132. package/fesm2022/ng-nest-ui-ripple.mjs +13 -13
  133. package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
  134. package/fesm2022/ng-nest-ui-scrollable.mjs +102 -19
  135. package/fesm2022/ng-nest-ui-scrollable.mjs.map +1 -1
  136. package/fesm2022/ng-nest-ui-select.mjs +121 -111
  137. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  138. package/fesm2022/ng-nest-ui-skeleton.mjs +15 -15
  139. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  140. package/fesm2022/ng-nest-ui-slider-select.mjs +54 -54
  141. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  142. package/fesm2022/ng-nest-ui-slider.mjs +39 -39
  143. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  144. package/fesm2022/ng-nest-ui-statistic.mjs +30 -30
  145. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  146. package/fesm2022/ng-nest-ui-steps.mjs +19 -19
  147. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  148. package/fesm2022/ng-nest-ui-switch.mjs +26 -26
  149. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  150. package/fesm2022/ng-nest-ui-table-view.mjs +490 -242
  151. package/fesm2022/ng-nest-ui-table-view.mjs.map +1 -1
  152. package/fesm2022/ng-nest-ui-table.mjs +221 -221
  153. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  154. package/fesm2022/ng-nest-ui-tabs.mjs +58 -58
  155. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  156. package/fesm2022/ng-nest-ui-tag.mjs +22 -22
  157. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  158. package/fesm2022/ng-nest-ui-text-retract.mjs +15 -15
  159. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  160. package/fesm2022/ng-nest-ui-textarea.mjs +41 -41
  161. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  162. package/fesm2022/ng-nest-ui-theme.mjs +23 -23
  163. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  164. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  165. package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
  166. package/fesm2022/ng-nest-ui-time-picker.mjs +104 -94
  167. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  168. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  169. package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
  170. package/fesm2022/ng-nest-ui-timeline.mjs +15 -15
  171. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  172. package/fesm2022/ng-nest-ui-tooltip.mjs +38 -38
  173. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  174. package/fesm2022/ng-nest-ui-transfer.mjs +40 -40
  175. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  176. package/fesm2022/ng-nest-ui-tree-file.mjs +28 -28
  177. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  178. package/fesm2022/ng-nest-ui-tree-select.mjs +126 -116
  179. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  180. package/fesm2022/ng-nest-ui-tree.mjs +107 -107
  181. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  182. package/fesm2022/ng-nest-ui-typography.mjs +13 -13
  183. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  184. package/fesm2022/ng-nest-ui-upload.mjs +37 -37
  185. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  186. package/find/index.d.ts +5 -5
  187. package/form/index.d.ts +1 -1
  188. package/input/index.d.ts +32 -5
  189. package/input-number/index.d.ts +5 -5
  190. package/list/index.d.ts +2 -2
  191. package/message-box/index.d.ts +4 -5
  192. package/package.json +20 -20
  193. package/radio/index.d.ts +3 -3
  194. package/rate/index.d.ts +5 -5
  195. package/scrollable/index.d.ts +15 -7
  196. package/select/index.d.ts +38 -8
  197. package/slider-select/index.d.ts +3 -3
  198. package/steps/index.d.ts +1 -2
  199. package/switch/index.d.ts +3 -3
  200. package/table-view/index.d.ts +121 -79
  201. package/textarea/index.d.ts +3 -3
  202. package/theme/index.d.ts +1 -1
  203. package/time-picker/index.d.ts +33 -8
  204. package/transfer/index.d.ts +1 -1
  205. package/tree-select/index.d.ts +33 -8
  206. package/upload/index.d.ts +2 -2
@@ -35,162 +35,172 @@ class XDatePickerProperty extends XFormControlFunction(X_DATA_PICKER_CONFIG_NAME
35
35
  * @zh_CN 选择类型
36
36
  * @en_US Select type
37
37
  */
38
- this.type = input('date');
38
+ this.type = input('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
39
39
  /**
40
40
  * @zh_CN 形态变体
41
41
  * @en_US Input variant
42
42
  */
43
- this.variant = input(this.config?.variant ?? 'outlined');
43
+ this.variant = input(this.config?.variant ?? 'outlined', ...(ngDevMode ? [{ debugName: "variant" }] : []));
44
44
  /**
45
45
  * @zh_CN 格式化类型
46
46
  * @en_US Format type
47
47
  */
48
- this.format = input(this.config?.format ?? 'yyyy-MM-dd');
48
+ this.format = input(this.config?.format ?? 'yyyy-MM-dd', ...(ngDevMode ? [{ debugName: "format" }] : []));
49
49
  /**
50
50
  * @zh_CN 清除按钮
51
51
  * @en_US Clear button
52
52
  */
53
- this.clearable = input(this.config?.clearable ?? true, { transform: XToBoolean });
53
+ this.clearable = input(this.config?.clearable ?? true, ...(ngDevMode ? [{ debugName: "clearable", transform: XToBoolean }] : [{ transform: XToBoolean }]));
54
54
  /**
55
55
  * @zh_CN 展示方位
56
56
  * @en_US Display position
57
57
  */
58
- this.placement = input(this.config?.placement ?? 'bottom-start');
58
+ this.placement = input(this.config?.placement ?? 'bottom-start', ...(ngDevMode ? [{ debugName: "placement" }] : []));
59
59
  /**
60
60
  * @zh_CN 显示边框
61
61
  * @en_US Display Border
62
62
  */
63
- this.bordered = input(this.config?.bordered ?? true, { transform: XToBoolean });
63
+ this.bordered = input(this.config?.bordered ?? true, ...(ngDevMode ? [{ debugName: "bordered", transform: XToBoolean }] : [{ transform: XToBoolean }]));
64
64
  /**
65
65
  * @zh_CN 快捷选择按钮,自定义或直接设置今天(today),昨天(yesterday),明天(tomorrow)
66
66
  * @en_US Quick selection button, support today, yesterday, tomorrow
67
67
  */
68
- this.preset = input([], { transform: XToDataConvert });
68
+ this.preset = input([], ...(ngDevMode ? [{ debugName: "preset", transform: XToDataConvert }] : [{ transform: XToDataConvert }]));
69
69
  /**
70
70
  * @zh_CN 页脚
71
71
  * @en_US Footer
72
72
  */
73
- this.extraFooter = input();
73
+ this.extraFooter = input(...(ngDevMode ? [undefined, { debugName: "extraFooter" }] : []));
74
74
  /**
75
75
  * @zh_CN 禁用的日期
76
76
  * @en_US Disabled date
77
77
  */
78
- this.disabledDate = input();
78
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
79
79
  /**
80
80
  * @zh_CN 禁用的时间
81
81
  * @en_US Disabled time
82
82
  */
83
- this.disabledTime = input();
83
+ this.disabledTime = input(...(ngDevMode ? [undefined, { debugName: "disabledTime" }] : []));
84
+ /**
85
+ * @zh_CN 浮动标签
86
+ * @en_US Float label
87
+ */
88
+ this.floatLabel = input(this.config?.floatLabel ?? null, ...(ngDevMode ? [{ debugName: "floatLabel" }] : []));
89
+ /**
90
+ * @zh_CN 固定浮动标签
91
+ * @en_US Fixed float label
92
+ */
93
+ this.floatFixed = input(this.config?.floatFixed ?? false, ...(ngDevMode ? [{ debugName: "floatFixed", transform: XToBoolean }] : [{ transform: XToBoolean }]));
84
94
  /**
85
95
  * @zh_CN 尺寸
86
96
  * @en_US Size
87
97
  */
88
- this.size = input(this.config?.size ?? 'medium');
98
+ this.size = input(this.config?.size ?? 'medium', ...(ngDevMode ? [{ debugName: "size" }] : []));
89
99
  /**
90
100
  * @zh_CN 输入框点击样式
91
101
  * @en_US Input pointer
92
102
  */
93
- this.pointer = input(false, { transform: XToBoolean });
103
+ this.pointer = input(false, ...(ngDevMode ? [{ debugName: "pointer", transform: XToBoolean }] : [{ transform: XToBoolean }]));
94
104
  /**
95
105
  * @zh_CN 标签
96
106
  * @en_US Label
97
107
  */
98
- this.label = input('');
108
+ this.label = input('', ...(ngDevMode ? [{ debugName: "label" }] : []));
99
109
  /**
100
110
  * @zh_CN 标签宽度
101
111
  * @en_US Label width
102
112
  */
103
- this.labelWidth = input('', { transform: XToCssPixelValue });
113
+ this.labelWidth = input('', ...(ngDevMode ? [{ debugName: "labelWidth", transform: XToCssPixelValue }] : [{ transform: XToCssPixelValue }]));
104
114
  /**
105
115
  * @zh_CN 标签文字对齐方式
106
116
  * @en_US Label text alignment method
107
117
  */
108
- this.labelAlign = input('start');
118
+ this.labelAlign = input('start', ...(ngDevMode ? [{ debugName: "labelAlign" }] : []));
109
119
  /**
110
120
  * @zh_CN flex 布局下的子元素水平排列方式
111
121
  * @en_US The level of sub-element level arrangement under flex layout
112
122
  */
113
- this.justify = input('start');
123
+ this.justify = input('start', ...(ngDevMode ? [{ debugName: "justify" }] : []));
114
124
  /**
115
125
  * @zh_CN flex 布局下的子元素垂直排列方式
116
126
  * @en_US sub-element vertical arrangement method under flex layout
117
127
  */
118
- this.align = input('start');
128
+ this.align = input('start', ...(ngDevMode ? [{ debugName: "align" }] : []));
119
129
  /**
120
130
  * @zh_CN flex 布局下的子元素排列方向
121
131
  * @en_US The direction of the sub-element arrangement under flex layout
122
132
  */
123
- this.direction = input('column');
133
+ this.direction = input('column', ...(ngDevMode ? [{ debugName: "direction" }] : []));
124
134
  /**
125
135
  * @zh_CN 输入提示信息
126
136
  * @en_US Enter prompt information
127
137
  */
128
- this.placeholder = input('');
138
+ this.placeholder = input('', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
129
139
  /**
130
140
  * @zh_CN 禁用
131
141
  * @en_US Disabled
132
142
  */
133
- this.disabled = input(false, { transform: XToBoolean });
143
+ this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: XToBoolean }] : [{ transform: XToBoolean }]));
134
144
  /**
135
145
  * @zh_CN 必填
136
146
  * @en_US Required
137
147
  */
138
- this.required = input(false, { transform: XToBoolean });
148
+ this.required = input(false, ...(ngDevMode ? [{ debugName: "required", transform: XToBoolean }] : [{ transform: XToBoolean }]));
139
149
  /**
140
150
  * @zh_CN 只读
141
151
  * @en_US Readonly
142
152
  */
143
- this.readonly = input(false, { transform: XToBoolean });
153
+ this.readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly", transform: XToBoolean }] : [{ transform: XToBoolean }]));
144
154
  /**
145
155
  * @zh_CN 值模板
146
156
  * @en_US Node template
147
157
  */
148
- this.valueTpl = input();
158
+ this.valueTpl = input(...(ngDevMode ? [undefined, { debugName: "valueTpl" }] : []));
149
159
  /**
150
160
  * @zh_CN 值模板参数
151
161
  * @en_US Node template
152
162
  */
153
- this.valueTplContext = input();
163
+ this.valueTplContext = input(...(ngDevMode ? [undefined, { debugName: "valueTplContext" }] : []));
154
164
  /**
155
165
  * @zh_CN 前置标签
156
166
  * @en_US Before label
157
167
  */
158
- this.before = input();
168
+ this.before = input(...(ngDevMode ? [undefined, { debugName: "before" }] : []));
159
169
  /**
160
170
  * @zh_CN 后置标签
161
171
  * @en_US After label
162
172
  */
163
- this.after = input();
173
+ this.after = input(...(ngDevMode ? [undefined, { debugName: "after" }] : []));
164
174
  /**
165
175
  * @zh_CN 正则验证规则
166
176
  * @en_US Regular verification rules
167
177
  */
168
- this.pattern = input(null);
178
+ this.pattern = input(null, ...(ngDevMode ? [{ debugName: "pattern" }] : []));
169
179
  /**
170
180
  * @zh_CN 验证不通过提示文字
171
181
  * @en_US Verify not pass the prompt text
172
182
  */
173
- this.message = input([]);
183
+ this.message = input([], ...(ngDevMode ? [{ debugName: "message" }] : []));
174
184
  /**
175
185
  * @zh_CN 激活状态
176
186
  * @en_US Activation state
177
187
  */
178
- this.active = model(false);
188
+ this.active = model(false, ...(ngDevMode ? [{ debugName: "active" }] : []));
179
189
  /**
180
190
  * @zh_CN 输入验证函数
181
191
  * @en_US Enter the verification function
182
192
  */
183
- this.inputValidator = input();
193
+ this.inputValidator = input(...(ngDevMode ? [undefined, { debugName: "inputValidator" }] : []));
184
194
  /**
185
195
  * @zh_CN 节点点击的事件
186
196
  * @en_US Node click event
187
197
  */
188
198
  this.nodeEmit = output();
189
199
  }
190
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
191
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XDatePickerProperty, isStandalone: true, selector: "x-date-picker-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
200
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
201
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XDatePickerProperty, isStandalone: true, selector: "x-date-picker-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, floatLabel: { classPropertyName: "floatLabel", publicName: "floatLabel", isSignal: true, isRequired: false, transformFunction: null }, floatFixed: { classPropertyName: "floatFixed", publicName: "floatFixed", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
192
202
  }
193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerProperty, decorators: [{
203
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerProperty, decorators: [{
194
204
  type: Component,
195
205
  args: [{ selector: `${XDatePickerPrefix}-property`, template: '' }]
196
206
  }] });
@@ -211,147 +221,157 @@ class XDateRangeProperty extends XFormControlFunction(X_DATA_RANGE_CONFIG_NAME)
211
221
  * @zh_CN 选择类型
212
222
  * @en_US Select type
213
223
  */
214
- this.type = input('date');
224
+ this.type = input('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
215
225
  /**
216
226
  * @zh_CN 形态变体
217
227
  * @en_US Input variant
218
228
  */
219
- this.variant = input(this.config?.variant ?? 'outlined');
229
+ this.variant = input(this.config?.variant ?? 'outlined', ...(ngDevMode ? [{ debugName: "variant" }] : []));
220
230
  /**
221
231
  * @zh_CN 格式化类型
222
232
  * @en_US Format type
223
233
  */
224
- this.format = input(this.config?.format ?? 'yyyy-MM-dd');
234
+ this.format = input(this.config?.format ?? 'yyyy-MM-dd', ...(ngDevMode ? [{ debugName: "format" }] : []));
225
235
  /**
226
236
  * @zh_CN 清除按钮
227
237
  * @en_US Clear button
228
238
  */
229
- this.clearable = input(this.config?.clearable ?? true, { transform: XToBoolean });
239
+ this.clearable = input(this.config?.clearable ?? true, ...(ngDevMode ? [{ debugName: "clearable", transform: XToBoolean }] : [{ transform: XToBoolean }]));
230
240
  /**
231
241
  * @zh_CN 展示方位
232
242
  * @en_US Display position
233
243
  */
234
- this.placement = input(this.config?.placement ?? 'bottom-start');
244
+ this.placement = input(this.config?.placement ?? 'bottom-start', ...(ngDevMode ? [{ debugName: "placement" }] : []));
235
245
  /**
236
246
  * @zh_CN 显示边框
237
247
  * @en_US Display Border
238
248
  */
239
- this.bordered = input(this.config?.bordered ?? true, { transform: XToBoolean });
249
+ this.bordered = input(this.config?.bordered ?? true, ...(ngDevMode ? [{ debugName: "bordered", transform: XToBoolean }] : [{ transform: XToBoolean }]));
240
250
  /**
241
251
  * @zh_CN 快捷选择按钮,自定义或直接设置本周(thisWeek)、上周(lastWeek)、下周(nextWeek)、本月(thisMonth)、上一月(lastMonth)、下一月(nextMonth)、本年(thisYear)、去年(lastYear)、明年(nextYear)
242
252
  * @en_US Quick selection button, support thisWeek, lastWeek, nextWeek, thisMonth, lastMonth, nextMonth, thisYear, lastYear, nextYear
243
253
  */
244
- this.preset = input([], { transform: XToDataConvert });
254
+ this.preset = input([], ...(ngDevMode ? [{ debugName: "preset", transform: XToDataConvert }] : [{ transform: XToDataConvert }]));
245
255
  /**
246
256
  * @zh_CN 页脚
247
257
  * @en_US Footer
248
258
  */
249
- this.extraFooter = input();
259
+ this.extraFooter = input(...(ngDevMode ? [undefined, { debugName: "extraFooter" }] : []));
250
260
  /**
251
261
  * @zh_CN 禁用的日期
252
262
  * @en_US Disabled date
253
263
  */
254
- this.disabledDate = input();
264
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
255
265
  /**
256
266
  * @zh_CN 禁用的时间
257
267
  * @en_US Disabled time
258
268
  */
259
- this.disabledTime = input();
269
+ this.disabledTime = input(...(ngDevMode ? [undefined, { debugName: "disabledTime" }] : []));
270
+ /**
271
+ * @zh_CN 浮动标签
272
+ * @en_US Float label
273
+ */
274
+ this.floatLabel = input(this.config?.floatLabel ?? null, ...(ngDevMode ? [{ debugName: "floatLabel" }] : []));
275
+ /**
276
+ * @zh_CN 固定浮动标签
277
+ * @en_US Fixed float label
278
+ */
279
+ this.floatFixed = input(this.config?.floatFixed ?? false, ...(ngDevMode ? [{ debugName: "floatFixed", transform: XToBoolean }] : [{ transform: XToBoolean }]));
260
280
  /**
261
281
  * @zh_CN 尺寸
262
282
  * @en_US Size
263
283
  */
264
- this.size = input(this.config?.size ?? 'medium');
284
+ this.size = input(this.config?.size ?? 'medium', ...(ngDevMode ? [{ debugName: "size" }] : []));
265
285
  /**
266
286
  * @zh_CN 输入框点击样式
267
287
  * @en_US Input pointer
268
288
  */
269
- this.pointer = input(false, { transform: XToBoolean });
289
+ this.pointer = input(false, ...(ngDevMode ? [{ debugName: "pointer", transform: XToBoolean }] : [{ transform: XToBoolean }]));
270
290
  /**
271
291
  * @zh_CN 标签
272
292
  * @en_US Label
273
293
  */
274
- this.label = input('');
294
+ this.label = input('', ...(ngDevMode ? [{ debugName: "label" }] : []));
275
295
  /**
276
296
  * @zh_CN 标签宽度
277
297
  * @en_US Label width
278
298
  */
279
- this.labelWidth = input('', { transform: XToCssPixelValue });
299
+ this.labelWidth = input('', ...(ngDevMode ? [{ debugName: "labelWidth", transform: XToCssPixelValue }] : [{ transform: XToCssPixelValue }]));
280
300
  /**
281
301
  * @zh_CN 标签文字对齐方式
282
302
  * @en_US Label text alignment method
283
303
  */
284
- this.labelAlign = input('start');
304
+ this.labelAlign = input('start', ...(ngDevMode ? [{ debugName: "labelAlign" }] : []));
285
305
  /**
286
306
  * @zh_CN flex 布局下的子元素水平排列方式
287
307
  * @en_US The level of sub-element level arrangement under flex layout
288
308
  */
289
- this.justify = input('start');
309
+ this.justify = input('start', ...(ngDevMode ? [{ debugName: "justify" }] : []));
290
310
  /**
291
311
  * @zh_CN flex 布局下的子元素垂直排列方式
292
312
  * @en_US sub-element vertical arrangement method under flex layout
293
313
  */
294
- this.align = input('start');
314
+ this.align = input('start', ...(ngDevMode ? [{ debugName: "align" }] : []));
295
315
  /**
296
316
  * @zh_CN flex 布局下的子元素排列方向
297
317
  * @en_US The direction of the sub-element arrangement under flex layout
298
318
  */
299
- this.direction = input('column');
319
+ this.direction = input('column', ...(ngDevMode ? [{ debugName: "direction" }] : []));
300
320
  /**
301
321
  * @zh_CN 输入提示信息
302
322
  * @en_US Enter prompt information
303
323
  */
304
- this.placeholder = input('');
324
+ this.placeholder = input('', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
305
325
  /**
306
326
  * @zh_CN 禁用
307
327
  * @en_US Disabled
308
328
  */
309
- this.disabled = input(false, { transform: XToBoolean });
329
+ this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: XToBoolean }] : [{ transform: XToBoolean }]));
310
330
  /**
311
331
  * @zh_CN 必填
312
332
  * @en_US Required
313
333
  */
314
- this.required = input(false, { transform: XToBoolean });
334
+ this.required = input(false, ...(ngDevMode ? [{ debugName: "required", transform: XToBoolean }] : [{ transform: XToBoolean }]));
315
335
  /**
316
336
  * @zh_CN 只读
317
337
  * @en_US Readonly
318
338
  */
319
- this.readonly = input(false, { transform: XToBoolean });
339
+ this.readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly", transform: XToBoolean }] : [{ transform: XToBoolean }]));
320
340
  /**
321
341
  * @zh_CN 前置标签
322
342
  * @en_US Before label
323
343
  */
324
- this.before = input();
344
+ this.before = input(...(ngDevMode ? [undefined, { debugName: "before" }] : []));
325
345
  /**
326
346
  * @zh_CN 后置标签
327
347
  * @en_US After label
328
348
  */
329
- this.after = input();
349
+ this.after = input(...(ngDevMode ? [undefined, { debugName: "after" }] : []));
330
350
  /**
331
351
  * @zh_CN 正则验证规则
332
352
  * @en_US Regular verification rules
333
353
  */
334
- this.pattern = input(null);
354
+ this.pattern = input(null, ...(ngDevMode ? [{ debugName: "pattern" }] : []));
335
355
  /**
336
356
  * @zh_CN 验证不通过提示文字
337
357
  * @en_US Verify not pass the prompt text
338
358
  */
339
- this.message = input([]);
359
+ this.message = input([], ...(ngDevMode ? [{ debugName: "message" }] : []));
340
360
  /**
341
361
  * @zh_CN 输入验证函数
342
362
  * @en_US Enter the verification function
343
363
  */
344
- this.inputValidator = input();
364
+ this.inputValidator = input(...(ngDevMode ? [undefined, { debugName: "inputValidator" }] : []));
345
365
  /**
346
366
  * @zh_CN 节点点击的事件
347
367
  * @en_US Node click event
348
368
  */
349
369
  this.nodeEmit = output();
350
370
  }
351
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateRangeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
352
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XDateRangeProperty, isStandalone: true, selector: "x-date-range-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
371
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateRangeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
372
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XDateRangeProperty, isStandalone: true, selector: "x-date-range-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, floatLabel: { classPropertyName: "floatLabel", publicName: "floatLabel", isSignal: true, isRequired: false, transformFunction: null }, floatFixed: { classPropertyName: "floatFixed", publicName: "floatFixed", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
353
373
  }
354
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateRangeProperty, decorators: [{
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateRangeProperty, decorators: [{
355
375
  type: Component,
356
376
  args: [{ selector: `${XDateRangePrefix}-property`, template: '' }]
357
377
  }] });
@@ -383,72 +403,72 @@ class XPickerDateProperty extends XProperty {
383
403
  * @zh_CN 选择类型
384
404
  * @en_US Select type
385
405
  */
386
- this.type = model('date');
406
+ this.type = model('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
387
407
  /**
388
408
  * @zh_CN 显示的日期
389
409
  * @en_US Date displayed
390
410
  */
391
- this.display = model(new Date());
411
+ this.display = model(new Date(), ...(ngDevMode ? [{ debugName: "display" }] : []));
392
412
  /**
393
413
  * @zh_CN 选中的日期
394
414
  * @en_US Selected date
395
415
  */
396
- this.model = model();
416
+ this.model = model(...(ngDevMode ? [undefined, { debugName: "model" }] : []));
397
417
  /**
398
418
  * @zh_CN 日期显示模板
399
419
  * @en_US Date display template
400
420
  */
401
- this.dateTemp = input();
421
+ this.dateTemp = input(...(ngDevMode ? [undefined, { debugName: "dateTemp" }] : []));
402
422
  /**
403
423
  * @zh_CN 显示切换按钮
404
424
  * @en_US Display switch button
405
425
  */
406
- this.showHeader = input(true, { transform: XToBoolean });
426
+ this.showHeader = input(true, ...(ngDevMode ? [{ debugName: "showHeader", transform: XToBoolean }] : [{ transform: XToBoolean }]));
407
427
  /**
408
428
  * @zh_CN 范围选择
409
429
  * @en_US Range picker
410
430
  */
411
- this.rangePicker = input(false, { transform: XToBoolean });
431
+ this.rangePicker = input(false, ...(ngDevMode ? [{ debugName: "rangePicker", transform: XToBoolean }] : [{ transform: XToBoolean }]));
412
432
  /**
413
433
  * @zh_CN 上一年
414
434
  * @en_US Last year
415
435
  */
416
- this.lastYearBtn = input(true, { transform: XToBoolean });
436
+ this.lastYearBtn = input(true, ...(ngDevMode ? [{ debugName: "lastYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
417
437
  /**
418
438
  * @zh_CN 上月
419
439
  * @en_US Last month
420
440
  */
421
- this.lastMonthBtn = input(true, { transform: XToBoolean });
441
+ this.lastMonthBtn = input(true, ...(ngDevMode ? [{ debugName: "lastMonthBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
422
442
  /**
423
443
  * @zh_CN 下一年
424
444
  * @en_US Next year
425
445
  */
426
- this.nextYearBtn = input(true, { transform: XToBoolean });
446
+ this.nextYearBtn = input(true, ...(ngDevMode ? [{ debugName: "nextYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
427
447
  /**
428
448
  * @zh_CN 上月
429
449
  * @en_US Next month
430
450
  */
431
- this.nextMonthBtn = input(true, { transform: XToBoolean });
451
+ this.nextMonthBtn = input(true, ...(ngDevMode ? [{ debugName: "nextMonthBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
432
452
  /**
433
453
  * @zh_CN 范围 hover 效果
434
454
  * @en_US Range hover style
435
455
  */
436
- this.rangeHover = input(true, { transform: XToBoolean });
456
+ this.rangeHover = input(true, ...(ngDevMode ? [{ debugName: "rangeHover", transform: XToBoolean }] : [{ transform: XToBoolean }]));
437
457
  /**
438
458
  * @zh_CN 范围日期
439
459
  * @en_US Range date
440
460
  */
441
- this.rangeValue = input([]);
461
+ this.rangeValue = input([], ...(ngDevMode ? [{ debugName: "rangeValue" }] : []));
442
462
  /**
443
463
  * @zh_CN 当前选择的是开始/结束日期
444
464
  * @en_US The current choice is the start / end date
445
465
  */
446
- this.rangeType = input();
466
+ this.rangeType = input(...(ngDevMode ? [undefined, { debugName: "rangeType" }] : []));
447
467
  /**
448
468
  * @zh_CN 禁用的日期
449
469
  * @en_US Disabled date
450
470
  */
451
- this.disabledDate = input();
471
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
452
472
  /**
453
473
  * @zh_CN 范围变化的事件
454
474
  * @en_US Scope change event
@@ -475,10 +495,10 @@ class XPickerDateProperty extends XProperty {
475
495
  */
476
496
  this.rangeTdMouseleave = output();
477
497
  }
478
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerDateProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
479
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XPickerDateProperty, isStandalone: true, selector: "x-picker-date-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, dateTemp: { classPropertyName: "dateTemp", publicName: "dateTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, lastMonthBtn: { classPropertyName: "lastMonthBtn", publicName: "lastMonthBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextMonthBtn: { classPropertyName: "nextMonthBtn", publicName: "nextMonthBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeHover: { classPropertyName: "rangeHover", publicName: "rangeHover", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
498
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerDateProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
499
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XPickerDateProperty, isStandalone: true, selector: "x-picker-date-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, dateTemp: { classPropertyName: "dateTemp", publicName: "dateTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, lastMonthBtn: { classPropertyName: "lastMonthBtn", publicName: "lastMonthBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextMonthBtn: { classPropertyName: "nextMonthBtn", publicName: "nextMonthBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeHover: { classPropertyName: "rangeHover", publicName: "rangeHover", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
480
500
  }
481
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerDateProperty, decorators: [{
501
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerDateProperty, decorators: [{
482
502
  type: Component,
483
503
  args: [{ selector: `${XPickerDatePrefix}-property`, template: '' }]
484
504
  }] });
@@ -498,57 +518,57 @@ class XPickerMonthProperty extends XProperty {
498
518
  * @zh_CN 选择类型
499
519
  * @en_US Select type
500
520
  */
501
- this.type = model('date');
521
+ this.type = model('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
502
522
  /**
503
523
  * @zh_CN 显示的日期
504
524
  * @en_US Date displayed
505
525
  */
506
- this.display = model(new Date());
526
+ this.display = model(new Date(), ...(ngDevMode ? [{ debugName: "display" }] : []));
507
527
  /**
508
528
  * @zh_CN 选中的日期
509
529
  * @en_US Selected date
510
530
  */
511
- this.model = model();
531
+ this.model = model(...(ngDevMode ? [undefined, { debugName: "model" }] : []));
512
532
  /**
513
533
  * @zh_CN 月份显示模板
514
534
  * @en_US Month display template
515
535
  */
516
- this.monthTemp = input();
536
+ this.monthTemp = input(...(ngDevMode ? [undefined, { debugName: "monthTemp" }] : []));
517
537
  /**
518
538
  * @zh_CN 显示切换按钮
519
539
  * @en_US Display switch button
520
540
  */
521
- this.showHeader = input(true, { transform: XToBoolean });
541
+ this.showHeader = input(true, ...(ngDevMode ? [{ debugName: "showHeader", transform: XToBoolean }] : [{ transform: XToBoolean }]));
522
542
  /**
523
543
  * @zh_CN 范围选择
524
544
  * @en_US Range picker
525
545
  */
526
- this.rangePicker = input(false, { transform: XToBoolean });
546
+ this.rangePicker = input(false, ...(ngDevMode ? [{ debugName: "rangePicker", transform: XToBoolean }] : [{ transform: XToBoolean }]));
527
547
  /**
528
548
  * @zh_CN 上一年
529
549
  * @en_US Last year
530
550
  */
531
- this.lastYearBtn = input(true, { transform: XToBoolean });
551
+ this.lastYearBtn = input(true, ...(ngDevMode ? [{ debugName: "lastYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
532
552
  /**
533
553
  * @zh_CN 下一年
534
554
  * @en_US Next year
535
555
  */
536
- this.nextYearBtn = input(true, { transform: XToBoolean });
556
+ this.nextYearBtn = input(true, ...(ngDevMode ? [{ debugName: "nextYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
537
557
  /**
538
558
  * @zh_CN 范围月份
539
559
  * @en_US Range date
540
560
  */
541
- this.rangeValue = input([]);
561
+ this.rangeValue = input([], ...(ngDevMode ? [{ debugName: "rangeValue" }] : []));
542
562
  /**
543
563
  * @zh_CN 当前选择的是开始/结束日期
544
564
  * @en_US The current choice is the start / end date
545
565
  */
546
- this.rangeType = input();
566
+ this.rangeType = input(...(ngDevMode ? [undefined, { debugName: "rangeType" }] : []));
547
567
  /**
548
568
  * @zh_CN 禁用的日期
549
569
  * @en_US Disabled date
550
570
  */
551
- this.disabledDate = input();
571
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
552
572
  /**
553
573
  * @zh_CN 范围变化的事件
554
574
  * @en_US Scope change event
@@ -575,10 +595,10 @@ class XPickerMonthProperty extends XProperty {
575
595
  */
576
596
  this.rangeTdMouseleave = output();
577
597
  }
578
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerMonthProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
579
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XPickerMonthProperty, isStandalone: true, selector: "x-picker-month-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, monthTemp: { classPropertyName: "monthTemp", publicName: "monthTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
598
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerMonthProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
599
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XPickerMonthProperty, isStandalone: true, selector: "x-picker-month-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, monthTemp: { classPropertyName: "monthTemp", publicName: "monthTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
580
600
  }
581
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerMonthProperty, decorators: [{
601
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerMonthProperty, decorators: [{
582
602
  type: Component,
583
603
  args: [{ selector: `${XPickerMonthPrefix}-property`, template: '' }]
584
604
  }] });
@@ -598,57 +618,57 @@ class XPickerQuarterProperty extends XProperty {
598
618
  * @zh_CN 选择类型
599
619
  * @en_US Select type
600
620
  */
601
- this.type = model('date');
621
+ this.type = model('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
602
622
  /**
603
623
  * @zh_CN 显示的日期
604
624
  * @en_US Date displayed
605
625
  */
606
- this.display = model(new Date());
626
+ this.display = model(new Date(), ...(ngDevMode ? [{ debugName: "display" }] : []));
607
627
  /**
608
628
  * @zh_CN 选中的日期
609
629
  * @en_US Selected date
610
630
  */
611
- this.model = model();
631
+ this.model = model(...(ngDevMode ? [undefined, { debugName: "model" }] : []));
612
632
  /**
613
633
  * @zh_CN 季度显示模板
614
634
  * @en_US Month display template
615
635
  */
616
- this.quarterTemp = input();
636
+ this.quarterTemp = input(...(ngDevMode ? [undefined, { debugName: "quarterTemp" }] : []));
617
637
  /**
618
638
  * @zh_CN 显示切换按钮
619
639
  * @en_US Display switch button
620
640
  */
621
- this.showHeader = input(true, { transform: XToBoolean });
641
+ this.showHeader = input(true, ...(ngDevMode ? [{ debugName: "showHeader", transform: XToBoolean }] : [{ transform: XToBoolean }]));
622
642
  /**
623
643
  * @zh_CN 范围选择
624
644
  * @en_US Range picker
625
645
  */
626
- this.rangePicker = input(false, { transform: XToBoolean });
646
+ this.rangePicker = input(false, ...(ngDevMode ? [{ debugName: "rangePicker", transform: XToBoolean }] : [{ transform: XToBoolean }]));
627
647
  /**
628
648
  * @zh_CN 上一年
629
649
  * @en_US Last year
630
650
  */
631
- this.lastYearBtn = input(true, { transform: XToBoolean });
651
+ this.lastYearBtn = input(true, ...(ngDevMode ? [{ debugName: "lastYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
632
652
  /**
633
653
  * @zh_CN 下一年
634
654
  * @en_US Next year
635
655
  */
636
- this.nextYearBtn = input(true, { transform: XToBoolean });
656
+ this.nextYearBtn = input(true, ...(ngDevMode ? [{ debugName: "nextYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
637
657
  /**
638
658
  * @zh_CN 范围月份
639
659
  * @en_US Range date
640
660
  */
641
- this.rangeValue = input([]);
661
+ this.rangeValue = input([], ...(ngDevMode ? [{ debugName: "rangeValue" }] : []));
642
662
  /**
643
663
  * @zh_CN 当前选择的是开始/结束日期
644
664
  * @en_US The current choice is the start / end date
645
665
  */
646
- this.rangeType = input();
666
+ this.rangeType = input(...(ngDevMode ? [undefined, { debugName: "rangeType" }] : []));
647
667
  /**
648
668
  * @zh_CN 禁用的日期
649
669
  * @en_US Disabled date
650
670
  */
651
- this.disabledDate = input();
671
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
652
672
  /**
653
673
  * @zh_CN 范围变化的事件
654
674
  * @en_US Scope change event
@@ -675,10 +695,10 @@ class XPickerQuarterProperty extends XProperty {
675
695
  */
676
696
  this.rangeTdMouseleave = output();
677
697
  }
678
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerQuarterProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
679
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XPickerQuarterProperty, isStandalone: true, selector: "x-picker-quarter-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, quarterTemp: { classPropertyName: "quarterTemp", publicName: "quarterTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
698
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerQuarterProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
699
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XPickerQuarterProperty, isStandalone: true, selector: "x-picker-quarter-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, quarterTemp: { classPropertyName: "quarterTemp", publicName: "quarterTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
680
700
  }
681
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerQuarterProperty, decorators: [{
701
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerQuarterProperty, decorators: [{
682
702
  type: Component,
683
703
  args: [{ selector: `${XPickerQuarterPrefix}-property`, template: '' }]
684
704
  }] });
@@ -704,57 +724,57 @@ class XPickerYearProperty extends XProperty {
704
724
  * @zh_CN 选择类型
705
725
  * @en_US Select type
706
726
  */
707
- this.type = model('date');
727
+ this.type = model('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
708
728
  /**
709
729
  * @zh_CN 显示的日期
710
730
  * @en_US Date displayed
711
731
  */
712
- this.display = model(new Date());
732
+ this.display = model(new Date(), ...(ngDevMode ? [{ debugName: "display" }] : []));
713
733
  /**
714
734
  * @zh_CN 选中的日期
715
735
  * @en_US Selected date
716
736
  */
717
- this.model = model();
737
+ this.model = model(...(ngDevMode ? [undefined, { debugName: "model" }] : []));
718
738
  /**
719
739
  * @zh_CN 年份显示模板
720
740
  * @en_US Month display template
721
741
  */
722
- this.yearTemp = input();
742
+ this.yearTemp = input(...(ngDevMode ? [undefined, { debugName: "yearTemp" }] : []));
723
743
  /**
724
744
  * @zh_CN 显示切换按钮
725
745
  * @en_US Display switch button
726
746
  */
727
- this.showHeader = input(true, { transform: XToBoolean });
747
+ this.showHeader = input(true, ...(ngDevMode ? [{ debugName: "showHeader", transform: XToBoolean }] : [{ transform: XToBoolean }]));
728
748
  /**
729
749
  * @zh_CN 范围选择
730
750
  * @en_US Range picker
731
751
  */
732
- this.rangePicker = input(false, { transform: XToBoolean });
752
+ this.rangePicker = input(false, ...(ngDevMode ? [{ debugName: "rangePicker", transform: XToBoolean }] : [{ transform: XToBoolean }]));
733
753
  /**
734
754
  * @zh_CN 上一年
735
755
  * @en_US Last year
736
756
  */
737
- this.lastYearBtn = input(true, { transform: XToBoolean });
757
+ this.lastYearBtn = input(true, ...(ngDevMode ? [{ debugName: "lastYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
738
758
  /**
739
759
  * @zh_CN 下一年
740
760
  * @en_US Next year
741
761
  */
742
- this.nextYearBtn = input(true, { transform: XToBoolean });
762
+ this.nextYearBtn = input(true, ...(ngDevMode ? [{ debugName: "nextYearBtn", transform: XToBoolean }] : [{ transform: XToBoolean }]));
743
763
  /**
744
764
  * @zh_CN 范围年份
745
765
  * @en_US Range date
746
766
  */
747
- this.rangeValue = input([]);
767
+ this.rangeValue = input([], ...(ngDevMode ? [{ debugName: "rangeValue" }] : []));
748
768
  /**
749
769
  * @zh_CN 当前选择的是开始/结束日期
750
770
  * @en_US The current choice is the start / end date
751
771
  */
752
- this.rangeType = input();
772
+ this.rangeType = input(...(ngDevMode ? [undefined, { debugName: "rangeType" }] : []));
753
773
  /**
754
774
  * @zh_CN 禁用的日期
755
775
  * @en_US Disabled date
756
776
  */
757
- this.disabledDate = input();
777
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
758
778
  /**
759
779
  * @zh_CN 开始年份变化的事件
760
780
  * @en_US Start year change event
@@ -786,10 +806,10 @@ class XPickerYearProperty extends XProperty {
786
806
  */
787
807
  this.rangeTdMouseleave = output();
788
808
  }
789
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerYearProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
790
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XPickerYearProperty, isStandalone: true, selector: "x-picker-year-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, yearTemp: { classPropertyName: "yearTemp", publicName: "yearTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", startChange: "startChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
809
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerYearProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
810
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XPickerYearProperty, isStandalone: true, selector: "x-picker-year-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, yearTemp: { classPropertyName: "yearTemp", publicName: "yearTemp", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, rangePicker: { classPropertyName: "rangePicker", publicName: "rangePicker", isSignal: true, isRequired: false, transformFunction: null }, lastYearBtn: { classPropertyName: "lastYearBtn", publicName: "lastYearBtn", isSignal: true, isRequired: false, transformFunction: null }, nextYearBtn: { classPropertyName: "nextYearBtn", publicName: "nextYearBtn", isSignal: true, isRequired: false, transformFunction: null }, rangeValue: { classPropertyName: "rangeValue", publicName: "rangeValue", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", display: "displayChange", model: "modelChange", startChange: "startChange", rangeChange: "rangeChange", yearChange: "yearChange", monthChange: "monthChange", rangeTdMouseenter: "rangeTdMouseenter", rangeTdMouseleave: "rangeTdMouseleave" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
791
811
  }
792
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerYearProperty, decorators: [{
812
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerYearProperty, decorators: [{
793
813
  type: Component,
794
814
  args: [{ selector: `${XPickerYearPrefix}-property`, template: '' }]
795
815
  }] });
@@ -809,10 +829,10 @@ class XPickerDateComponent extends XPickerDateProperty {
809
829
  'datePicker.friday',
810
830
  'datePicker.saturday',
811
831
  'datePicker.sunday'
812
- ]);
832
+ ], ...(ngDevMode ? [{ debugName: "titles" }] : []));
813
833
  this.now = new Date();
814
- this.dates = signal([]);
815
- this.weekDates = signal([]);
834
+ this.dates = signal([], ...(ngDevMode ? [{ debugName: "dates" }] : []));
835
+ this.weekDates = signal([], ...(ngDevMode ? [{ debugName: "weekDates" }] : []));
816
836
  this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.datePicker)), {
817
837
  initialValue: zh_CN.datePicker
818
838
  });
@@ -821,22 +841,22 @@ class XPickerDateComponent extends XPickerDateProperty {
821
841
  return this.rangeValue()[0];
822
842
  }
823
843
  return '';
824
- });
844
+ }, ...(ngDevMode ? [{ debugName: "rangeStart" }] : []));
825
845
  this.rangeEnd = computed(() => {
826
846
  if (this.rangeValue() && this.rangeValue().length > 1) {
827
847
  return this.rangeValue()[1];
828
848
  }
829
849
  return '';
830
- });
850
+ }, ...(ngDevMode ? [{ debugName: "rangeEnd" }] : []));
831
851
  this.isWeek = computed(() => {
832
852
  return this.type() === 'week';
833
- });
853
+ }, ...(ngDevMode ? [{ debugName: "isWeek" }] : []));
834
854
  this.isWeekRange = computed(() => {
835
855
  return this.type() === 'week' && this.rangePicker();
836
- });
856
+ }, ...(ngDevMode ? [{ debugName: "isWeekRange" }] : []));
837
857
  this.isNotWeekRange = computed(() => {
838
858
  return this.type() !== 'week' && this.rangePicker();
839
- });
859
+ }, ...(ngDevMode ? [{ debugName: "isNotWeekRange" }] : []));
840
860
  }
841
861
  isDisabled(date) {
842
862
  const disabledDate = this.disabledDate();
@@ -1111,10 +1131,10 @@ class XPickerDateComponent extends XPickerDateProperty {
1111
1131
  typeOnChange(type) {
1112
1132
  this.type.set(type);
1113
1133
  }
1114
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1115
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XPickerDateComponent, isStandalone: true, selector: "x-picker-date", providers: [DatePipe, LowerCasePipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-date\" [class.x-date-picker-datetemp]=\"dateTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-date-header\">\r\n <x-link icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\" [class.x-visibility]=\"!lastYearBtn()\"></x-link>\r\n <x-link icon=\"fto-chevron-left\" (click)=\"nextMonth(-1)\" [class.x-visibility]=\"!lastMonthBtn()\"></x-link>\r\n <div class=\"x-picker-date-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n <x-link (click)=\"typeOnChange('month')\">{{ getLocaleMonth(display()) }}</x-link>\r\n </div>\r\n <x-link icon=\"fto-chevron-right\" (click)=\"nextMonth(1)\" [class.x-visibility]=\"!nextMonthBtn()\"></x-link>\r\n <x-link icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\" [class.x-visibility]=\"!nextYearBtn()\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-date-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n <thead>\r\n <tr>\r\n @for (title of titles(); track title) {\r\n <th>{{ title | xI18n }}</th>\r\n }\r\n </tr>\r\n </thead>\r\n <tbody>\r\n @for (weeks of weekDates(); track $index) {\r\n <tr\r\n [class.x-date-week-active]=\"!rangePicker() && isWeek() && isWeekActive(weeks)\"\r\n [class.x-date-week-start-active]=\"isWeekRange() && isStartWeek(weeks)\"\r\n [class.x-date-week-end-active]=\"isWeekRange() && isEndWeek(weeks)\"\r\n [class.x-date-week-in-range]=\"isWeekRange() && isInRangeWeek(weeks)\"\r\n >\r\n @for (week of weeks; track week.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-week]=\"week.type === 'week'\"\r\n [class.x-date-disabled]=\"week.isDisabled\"\r\n [class.x-date-last-or-next]=\"week.isLastOrNext\"\r\n [class.x-date-now]=\"week.isNow\"\r\n [class.x-date-first-day]=\"week.isFirstDay\"\r\n [class.x-date-last-day]=\"week.isLastDay\"\r\n [class.x-date-range-start]=\"isNotWeekRange() && isStartDate(week.date!)\"\r\n [class.x-date-range-end]=\"isNotWeekRange() && isEndDate(week.date!)\"\r\n [class.x-date-range-start-left]=\"isNotWeekRange() && week.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"isNotWeekRange() && week.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"isNotWeekRange() && week.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"isNotWeekRange() && week.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"isNotWeekRange() && week.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"isNotWeekRange() && week.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"isNotWeekRange() && week.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"isNotWeekRange() && week.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"isNotWeekRange() && week.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"isNotWeekRange() && week.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"isNotWeekRange() && week.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"isNotWeekRange() && week.isInRange\"\r\n [class.x-date-in-range-hover]=\"isNotWeekRange() && week.isInRangeHover\"\r\n [class.x-date-active]=\"\r\n !rangePicker() &&\r\n week.type !== 'week' &&\r\n (week.date | date: 'yyyyMMdd') === (model() | date: 'yyyyMMdd')\r\n \"\r\n [title]=\"week.date | date: 'yyyy-MM-dd'\"\r\n (click)=\"week.type !== 'week' && !week.isDisabled && dateClick(week)\"\r\n (mouseenter)=\"\r\n week.type !== 'week' && !week.isDisabled && rangePicker() && rangeHover() && onTdMouseenter(week)\r\n \"\r\n (mouseleave)=\"\r\n week.type !== 'week' && !week.isDisabled && rangePicker() && rangeHover() && onTdMouseleave(week)\r\n \"\r\n >\r\n @if (dateTemp()) {\r\n <ng-container *ngTemplateOutlet=\"dateTemp()!; context: { date$: week.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n @switch (week.type) {\r\n @case ('week') {\r\n {{ week.week }}\r\n }\r\n @default {\r\n {{ week.date | date: 'd' }}\r\n }\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-date{margin:0;padding:0}.x-picker-date-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-date-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-date-header .x-link{padding:0 .25rem}.x-picker-date-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-date-body{padding:.1375rem .5rem}.x-picker-date-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-date-body>table tr{display:flex;align-items:center;justify-content:center}.x-picker-date-body>table tr.x-date-week-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text,.x-picker-date-body>table tr.x-date-week-start-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-start-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text,.x-picker-date-body>table tr.x-date-week-end-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-end-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);color:var(--x-background-100)}.x-picker-date-body>table tbody tr{padding:.125rem 0}.x-picker-date-body>table th{flex:1;font-weight:400;height:2rem;line-height:2rem;color:var(--x-text-400);-webkit-user-select:none;user-select:none}.x-picker-date-body>table td{padding:.125rem 0;flex:1;-webkit-user-select:none;user-select:none}.x-picker-date-body>table td:first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-picker-date-body>table td:last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-picker-date-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative;transition:var(--x-animation-duration-base)}.x-picker-date-body .x-picker-date-item .x-date-text{width:1.75rem;height:1.625rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-date-body .x-picker-date-item:after,.x-picker-date-body .x-picker-date-item:before{height:1.625rem}.x-picker-date-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-date-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-date .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "pipe", type: DatePipe, name: "date" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1134
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1135
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XPickerDateComponent, isStandalone: true, selector: "x-picker-date", providers: [DatePipe, LowerCasePipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-date\" [class.x-date-picker-datetemp]=\"dateTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-date-header\">\r\n <x-link icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\" [class.x-visibility]=\"!lastYearBtn()\"></x-link>\r\n <x-link icon=\"fto-chevron-left\" (click)=\"nextMonth(-1)\" [class.x-visibility]=\"!lastMonthBtn()\"></x-link>\r\n <div class=\"x-picker-date-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n <x-link (click)=\"typeOnChange('month')\">{{ getLocaleMonth(display()) }}</x-link>\r\n </div>\r\n <x-link icon=\"fto-chevron-right\" (click)=\"nextMonth(1)\" [class.x-visibility]=\"!nextMonthBtn()\"></x-link>\r\n <x-link icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\" [class.x-visibility]=\"!nextYearBtn()\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-date-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n <thead>\r\n <tr>\r\n @for (title of titles(); track title) {\r\n <th>{{ title | xI18n }}</th>\r\n }\r\n </tr>\r\n </thead>\r\n <tbody>\r\n @for (weeks of weekDates(); track $index) {\r\n <tr\r\n [class.x-date-week-active]=\"!rangePicker() && isWeek() && isWeekActive(weeks)\"\r\n [class.x-date-week-start-active]=\"isWeekRange() && isStartWeek(weeks)\"\r\n [class.x-date-week-end-active]=\"isWeekRange() && isEndWeek(weeks)\"\r\n [class.x-date-week-in-range]=\"isWeekRange() && isInRangeWeek(weeks)\"\r\n >\r\n @for (week of weeks; track week.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-week]=\"week.type === 'week'\"\r\n [class.x-date-disabled]=\"week.isDisabled\"\r\n [class.x-date-last-or-next]=\"week.isLastOrNext\"\r\n [class.x-date-now]=\"week.isNow\"\r\n [class.x-date-first-day]=\"week.isFirstDay\"\r\n [class.x-date-last-day]=\"week.isLastDay\"\r\n [class.x-date-range-start]=\"isNotWeekRange() && isStartDate(week.date!)\"\r\n [class.x-date-range-end]=\"isNotWeekRange() && isEndDate(week.date!)\"\r\n [class.x-date-range-start-left]=\"isNotWeekRange() && week.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"isNotWeekRange() && week.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"isNotWeekRange() && week.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"isNotWeekRange() && week.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"isNotWeekRange() && week.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"isNotWeekRange() && week.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"isNotWeekRange() && week.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"isNotWeekRange() && week.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"isNotWeekRange() && week.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"isNotWeekRange() && week.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"isNotWeekRange() && week.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"isNotWeekRange() && week.isInRange\"\r\n [class.x-date-in-range-hover]=\"isNotWeekRange() && week.isInRangeHover\"\r\n [class.x-date-active]=\"\r\n !rangePicker() &&\r\n week.type !== 'week' &&\r\n (week.date | date: 'yyyyMMdd') === (model() | date: 'yyyyMMdd')\r\n \"\r\n [title]=\"week.date | date: 'yyyy-MM-dd'\"\r\n (click)=\"week.type !== 'week' && !week.isDisabled && dateClick(week)\"\r\n (mouseenter)=\"\r\n week.type !== 'week' && !week.isDisabled && rangePicker() && rangeHover() && onTdMouseenter(week)\r\n \"\r\n (mouseleave)=\"\r\n week.type !== 'week' && !week.isDisabled && rangePicker() && rangeHover() && onTdMouseleave(week)\r\n \"\r\n >\r\n @if (dateTemp()) {\r\n <ng-container *ngTemplateOutlet=\"dateTemp()!; context: { date$: week.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n @switch (week.type) {\r\n @case ('week') {\r\n {{ week.week }}\r\n }\r\n @default {\r\n {{ week.date | date: 'd' }}\r\n }\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-date{margin:0;padding:0}.x-picker-date-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-date-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-date-header .x-link{padding:0 .25rem}.x-picker-date-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-date-body{padding:.1375rem .5rem}.x-picker-date-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-date-body>table tr{display:flex;align-items:center;justify-content:center}.x-picker-date-body>table tr.x-date-week-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text,.x-picker-date-body>table tr.x-date-week-start-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-start-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text,.x-picker-date-body>table tr.x-date-week-end-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-end-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);color:var(--x-background-100)}.x-picker-date-body>table tbody tr{padding:.125rem 0}.x-picker-date-body>table th{flex:1;font-weight:400;height:2rem;line-height:2rem;color:var(--x-text-400);-webkit-user-select:none;user-select:none}.x-picker-date-body>table td{padding:.125rem 0;flex:1;-webkit-user-select:none;user-select:none}.x-picker-date-body>table td:first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-picker-date-body>table td:last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-picker-date-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative;transition:var(--x-animation-duration-base)}.x-picker-date-body .x-picker-date-item .x-date-text{width:1.75rem;height:1.625rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-date-body .x-picker-date-item:after,.x-picker-date-body .x-picker-date-item:before{height:1.625rem}.x-picker-date-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-date-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-date .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1116
1136
  }
1117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerDateComponent, decorators: [{
1137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerDateComponent, decorators: [{
1118
1138
  type: Component,
1119
1139
  args: [{ selector: `${XPickerDatePrefix}`, imports: [DatePipe, NgTemplateOutlet, XLinkComponent, XI18nPipe], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, LowerCasePipe], template: "<div class=\"x-picker-date\" [class.x-date-picker-datetemp]=\"dateTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-date-header\">\r\n <x-link icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\" [class.x-visibility]=\"!lastYearBtn()\"></x-link>\r\n <x-link icon=\"fto-chevron-left\" (click)=\"nextMonth(-1)\" [class.x-visibility]=\"!lastMonthBtn()\"></x-link>\r\n <div class=\"x-picker-date-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n <x-link (click)=\"typeOnChange('month')\">{{ getLocaleMonth(display()) }}</x-link>\r\n </div>\r\n <x-link icon=\"fto-chevron-right\" (click)=\"nextMonth(1)\" [class.x-visibility]=\"!nextMonthBtn()\"></x-link>\r\n <x-link icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\" [class.x-visibility]=\"!nextYearBtn()\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-date-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n <thead>\r\n <tr>\r\n @for (title of titles(); track title) {\r\n <th>{{ title | xI18n }}</th>\r\n }\r\n </tr>\r\n </thead>\r\n <tbody>\r\n @for (weeks of weekDates(); track $index) {\r\n <tr\r\n [class.x-date-week-active]=\"!rangePicker() && isWeek() && isWeekActive(weeks)\"\r\n [class.x-date-week-start-active]=\"isWeekRange() && isStartWeek(weeks)\"\r\n [class.x-date-week-end-active]=\"isWeekRange() && isEndWeek(weeks)\"\r\n [class.x-date-week-in-range]=\"isWeekRange() && isInRangeWeek(weeks)\"\r\n >\r\n @for (week of weeks; track week.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-week]=\"week.type === 'week'\"\r\n [class.x-date-disabled]=\"week.isDisabled\"\r\n [class.x-date-last-or-next]=\"week.isLastOrNext\"\r\n [class.x-date-now]=\"week.isNow\"\r\n [class.x-date-first-day]=\"week.isFirstDay\"\r\n [class.x-date-last-day]=\"week.isLastDay\"\r\n [class.x-date-range-start]=\"isNotWeekRange() && isStartDate(week.date!)\"\r\n [class.x-date-range-end]=\"isNotWeekRange() && isEndDate(week.date!)\"\r\n [class.x-date-range-start-left]=\"isNotWeekRange() && week.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"isNotWeekRange() && week.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"isNotWeekRange() && week.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"isNotWeekRange() && week.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"isNotWeekRange() && week.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"isNotWeekRange() && week.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"isNotWeekRange() && week.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"isNotWeekRange() && week.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"isNotWeekRange() && week.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"isNotWeekRange() && week.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"isNotWeekRange() && week.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"isNotWeekRange() && week.isInRange\"\r\n [class.x-date-in-range-hover]=\"isNotWeekRange() && week.isInRangeHover\"\r\n [class.x-date-active]=\"\r\n !rangePicker() &&\r\n week.type !== 'week' &&\r\n (week.date | date: 'yyyyMMdd') === (model() | date: 'yyyyMMdd')\r\n \"\r\n [title]=\"week.date | date: 'yyyy-MM-dd'\"\r\n (click)=\"week.type !== 'week' && !week.isDisabled && dateClick(week)\"\r\n (mouseenter)=\"\r\n week.type !== 'week' && !week.isDisabled && rangePicker() && rangeHover() && onTdMouseenter(week)\r\n \"\r\n (mouseleave)=\"\r\n week.type !== 'week' && !week.isDisabled && rangePicker() && rangeHover() && onTdMouseleave(week)\r\n \"\r\n >\r\n @if (dateTemp()) {\r\n <ng-container *ngTemplateOutlet=\"dateTemp()!; context: { date$: week.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n @switch (week.type) {\r\n @case ('week') {\r\n {{ week.week }}\r\n }\r\n @default {\r\n {{ week.date | date: 'd' }}\r\n }\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-date{margin:0;padding:0}.x-picker-date-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-date-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-date-header .x-link{padding:0 .25rem}.x-picker-date-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-date-body{padding:.1375rem .5rem}.x-picker-date-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-date-body>table tr{display:flex;align-items:center;justify-content:center}.x-picker-date-body>table tr.x-date-week-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text,.x-picker-date-body>table tr.x-date-week-start-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-start-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text,.x-picker-date-body>table tr.x-date-week-end-active .x-picker-date-item,.x-picker-date-body>table tr.x-date-week-end-active .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);color:var(--x-background-100)}.x-picker-date-body>table tbody tr{padding:.125rem 0}.x-picker-date-body>table th{flex:1;font-weight:400;height:2rem;line-height:2rem;color:var(--x-text-400);-webkit-user-select:none;user-select:none}.x-picker-date-body>table td{padding:.125rem 0;flex:1;-webkit-user-select:none;user-select:none}.x-picker-date-body>table td:first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-picker-date-body>table td:last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-picker-date-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative;transition:var(--x-animation-duration-base)}.x-picker-date-body .x-picker-date-item .x-date-text{width:1.75rem;height:1.625rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-date-body .x-picker-date-item:after,.x-picker-date-body .x-picker-date-item:before{height:1.625rem}.x-picker-date-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-date-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-date-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-date-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-date-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:1.75rem}.x-picker-date-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-date .x-visibility{visibility:hidden}\n"] }]
1120
1140
  }] });
@@ -1127,8 +1147,8 @@ class XPickerMonthComponent extends XPickerMonthProperty {
1127
1147
  this.i18n = inject(XI18nService);
1128
1148
  this.cdr = inject(ChangeDetectorRef);
1129
1149
  this.now = new Date();
1130
- this.dates = signal([]);
1131
- this.chunkDates = signal([]);
1150
+ this.dates = signal([], ...(ngDevMode ? [{ debugName: "dates" }] : []));
1151
+ this.chunkDates = signal([], ...(ngDevMode ? [{ debugName: "chunkDates" }] : []));
1132
1152
  this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.datePicker)), {
1133
1153
  initialValue: zh_CN.datePicker
1134
1154
  });
@@ -1137,13 +1157,13 @@ class XPickerMonthComponent extends XPickerMonthProperty {
1137
1157
  return this.rangeValue()[0];
1138
1158
  }
1139
1159
  return '';
1140
- });
1160
+ }, ...(ngDevMode ? [{ debugName: "rangeStart" }] : []));
1141
1161
  this.rangeEnd = computed(() => {
1142
1162
  if (this.rangeValue() && this.rangeValue().length > 1) {
1143
1163
  return this.rangeValue()[1];
1144
1164
  }
1145
1165
  return '';
1146
- });
1166
+ }, ...(ngDevMode ? [{ debugName: "rangeEnd" }] : []));
1147
1167
  }
1148
1168
  isDisabled(date) {
1149
1169
  const disabledDate = this.disabledDate();
@@ -1334,12 +1354,12 @@ class XPickerMonthComponent extends XPickerMonthProperty {
1334
1354
  typeOnChange(type) {
1335
1355
  this.type.set(type);
1336
1356
  }
1337
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerMonthComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1338
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XPickerMonthComponent, isStandalone: true, selector: "x-picker-month", providers: [DatePipe, LowerCasePipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-month\" [class.x-date-picker-monthtemp]=\"monthTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-month-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-month-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-month-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (months of chunkDates(); track $index) {\r\n <tr>\r\n @for (month of months; track month.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"month.isDisabled\"\r\n [class.x-date-last-or-next]=\"month.isLastOrNext\"\r\n [class.x-date-now]=\"month.isNow\"\r\n [class.x-date-first-day]=\"month.isFirstDay\"\r\n [class.x-date-last-day]=\"month.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartMonth(month.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndMonth(month.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && month.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && month.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && month.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && month.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && month.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && month.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && month.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && month.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && month.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && month.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && month.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && month.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && month.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (month.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"month.date | date: 'yyyy-MM'\"\r\n (click)=\"!month.isDisabled && monthClick(month)\"\r\n (mouseenter)=\"!month.isDisabled && rangePicker() && onTdMouseenter(month)\"\r\n (mouseleave)=\"!month.isDisabled && rangePicker() && onTdMouseleave(month)\"\r\n >\r\n @if (monthTemp()) {\r\n <ng-container *ngTemplateOutlet=\"monthTemp()!; context: { date$: month.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ getLocaleMonth(month.date!) }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-month{margin:0;padding:0}.x-picker-month-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-month-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-month-header .x-link{padding:0 .25rem}.x-picker-month-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-month-body{padding:.1375rem .5rem}.x-picker-month-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-month-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-month-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-month-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-month-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-month-body .x-picker-date-item:after,.x-picker-month-body .x-picker-date-item:before{height:3.25rem}.x-picker-month-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-month-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-month .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "pipe", type: DatePipe, name: "date" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1357
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerMonthComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1358
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XPickerMonthComponent, isStandalone: true, selector: "x-picker-month", providers: [DatePipe, LowerCasePipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-month\" [class.x-date-picker-monthtemp]=\"monthTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-month-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-month-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-month-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (months of chunkDates(); track $index) {\r\n <tr>\r\n @for (month of months; track month.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"month.isDisabled\"\r\n [class.x-date-last-or-next]=\"month.isLastOrNext\"\r\n [class.x-date-now]=\"month.isNow\"\r\n [class.x-date-first-day]=\"month.isFirstDay\"\r\n [class.x-date-last-day]=\"month.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartMonth(month.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndMonth(month.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && month.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && month.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && month.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && month.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && month.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && month.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && month.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && month.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && month.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && month.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && month.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && month.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && month.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (month.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"month.date | date: 'yyyy-MM'\"\r\n (click)=\"!month.isDisabled && monthClick(month)\"\r\n (mouseenter)=\"!month.isDisabled && rangePicker() && onTdMouseenter(month)\"\r\n (mouseleave)=\"!month.isDisabled && rangePicker() && onTdMouseleave(month)\"\r\n >\r\n @if (monthTemp()) {\r\n <ng-container *ngTemplateOutlet=\"monthTemp()!; context: { date$: month.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ getLocaleMonth(month.date!) }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-month{margin:0;padding:0}.x-picker-month-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-month-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-month-header .x-link{padding:0 .25rem}.x-picker-month-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-month-body{padding:.1375rem .5rem}.x-picker-month-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-month-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-month-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-month-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-month-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-month-body .x-picker-date-item:after,.x-picker-month-body .x-picker-date-item:before{height:3.25rem}.x-picker-month-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-month-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-month .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1339
1359
  }
1340
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerMonthComponent, decorators: [{
1360
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerMonthComponent, decorators: [{
1341
1361
  type: Component,
1342
- args: [{ selector: 'x-picker-month', imports: [DatePipe, NgTemplateOutlet, XLinkComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, LowerCasePipe], template: "<div class=\"x-picker-month\" [class.x-date-picker-monthtemp]=\"monthTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-month-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-month-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-month-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (months of chunkDates(); track $index) {\r\n <tr>\r\n @for (month of months; track month.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"month.isDisabled\"\r\n [class.x-date-last-or-next]=\"month.isLastOrNext\"\r\n [class.x-date-now]=\"month.isNow\"\r\n [class.x-date-first-day]=\"month.isFirstDay\"\r\n [class.x-date-last-day]=\"month.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartMonth(month.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndMonth(month.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && month.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && month.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && month.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && month.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && month.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && month.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && month.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && month.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && month.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && month.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && month.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && month.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && month.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (month.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"month.date | date: 'yyyy-MM'\"\r\n (click)=\"!month.isDisabled && monthClick(month)\"\r\n (mouseenter)=\"!month.isDisabled && rangePicker() && onTdMouseenter(month)\"\r\n (mouseleave)=\"!month.isDisabled && rangePicker() && onTdMouseleave(month)\"\r\n >\r\n @if (monthTemp()) {\r\n <ng-container *ngTemplateOutlet=\"monthTemp()!; context: { date$: month.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ getLocaleMonth(month.date!) }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-month{margin:0;padding:0}.x-picker-month-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-month-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-month-header .x-link{padding:0 .25rem}.x-picker-month-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-month-body{padding:.1375rem .5rem}.x-picker-month-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-month-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-month-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-month-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-month-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-month-body .x-picker-date-item:after,.x-picker-month-body .x-picker-date-item:before{height:3.25rem}.x-picker-month-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-month-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-month .x-visibility{visibility:hidden}\n"] }]
1362
+ args: [{ selector: 'x-picker-month', imports: [DatePipe, NgTemplateOutlet, XLinkComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, LowerCasePipe], template: "<div class=\"x-picker-month\" [class.x-date-picker-monthtemp]=\"monthTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-month-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-month-year-month\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-month-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (months of chunkDates(); track $index) {\r\n <tr>\r\n @for (month of months; track month.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"month.isDisabled\"\r\n [class.x-date-last-or-next]=\"month.isLastOrNext\"\r\n [class.x-date-now]=\"month.isNow\"\r\n [class.x-date-first-day]=\"month.isFirstDay\"\r\n [class.x-date-last-day]=\"month.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartMonth(month.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndMonth(month.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && month.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && month.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && month.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && month.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && month.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && month.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && month.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && month.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && month.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && month.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && month.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && month.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && month.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (month.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"month.date | date: 'yyyy-MM'\"\r\n (click)=\"!month.isDisabled && monthClick(month)\"\r\n (mouseenter)=\"!month.isDisabled && rangePicker() && onTdMouseenter(month)\"\r\n (mouseleave)=\"!month.isDisabled && rangePicker() && onTdMouseleave(month)\"\r\n >\r\n @if (monthTemp()) {\r\n <ng-container *ngTemplateOutlet=\"monthTemp()!; context: { date$: month.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ getLocaleMonth(month.date!) }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-month{margin:0;padding:0}.x-picker-month-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-month-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-month-header .x-link{padding:0 .25rem}.x-picker-month-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-month-body{padding:.1375rem .5rem}.x-picker-month-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-month-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-month-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-month-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-month-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-month-body .x-picker-date-item:after,.x-picker-month-body .x-picker-date-item:before{height:3.25rem}.x-picker-month-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-month-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-month-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-month-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-month-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-month-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-month .x-visibility{visibility:hidden}\n"] }]
1343
1363
  }] });
1344
1364
 
1345
1365
  class XDateQuarterPipe {
@@ -1349,10 +1369,10 @@ class XDateQuarterPipe {
1349
1369
  return '';
1350
1370
  return !includeYear ? XDateQuarter(input) : XDateYearQuarter(input);
1351
1371
  }
1352
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateQuarterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1353
- /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.0.0", ngImport: i0, type: XDateQuarterPipe, isStandalone: true, name: "xDateQuarter" }); }
1372
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateQuarterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1373
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XDateQuarterPipe, isStandalone: true, name: "xDateQuarter" }); }
1354
1374
  }
1355
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateQuarterPipe, decorators: [{
1375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateQuarterPipe, decorators: [{
1356
1376
  type: Pipe,
1357
1377
  args: [{ name: `${XDateQuarterPrefix}`, standalone: true }]
1358
1378
  }], ctorParameters: () => [] });
@@ -1365,8 +1385,8 @@ class XPickerQuarterComponent extends XPickerQuarterProperty {
1365
1385
  this.i18n = inject(XI18nService);
1366
1386
  this.cdr = inject(ChangeDetectorRef);
1367
1387
  this.now = new Date();
1368
- this.dates = signal([]);
1369
- this.chunkDates = signal([]);
1388
+ this.dates = signal([], ...(ngDevMode ? [{ debugName: "dates" }] : []));
1389
+ this.chunkDates = signal([], ...(ngDevMode ? [{ debugName: "chunkDates" }] : []));
1370
1390
  this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.datePicker)), {
1371
1391
  initialValue: zh_CN.datePicker
1372
1392
  });
@@ -1375,13 +1395,13 @@ class XPickerQuarterComponent extends XPickerQuarterProperty {
1375
1395
  return this.rangeValue()[0];
1376
1396
  }
1377
1397
  return '';
1378
- });
1398
+ }, ...(ngDevMode ? [{ debugName: "rangeStart" }] : []));
1379
1399
  this.rangeEnd = computed(() => {
1380
1400
  if (this.rangeValue() && this.rangeValue().length > 1) {
1381
1401
  return this.rangeValue()[1];
1382
1402
  }
1383
1403
  return '';
1384
- });
1404
+ }, ...(ngDevMode ? [{ debugName: "rangeEnd" }] : []));
1385
1405
  }
1386
1406
  isDisabled(date) {
1387
1407
  const disabledDate = this.disabledDate();
@@ -1576,10 +1596,10 @@ class XPickerQuarterComponent extends XPickerQuarterProperty {
1576
1596
  typeOnChange(type) {
1577
1597
  this.type.set(type);
1578
1598
  }
1579
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerQuarterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1580
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XPickerQuarterComponent, isStandalone: true, selector: "x-picker-quarter", providers: [DatePipe, LowerCasePipe, XDateQuarterPipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-quarter\" [class.x-date-picker-quartertemp]=\"quarterTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-quarter-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-quarter-year-quarter\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-quarter-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (quarters of chunkDates(); track $index) {\r\n <tr>\r\n @for (quarter of quarters; track quarter.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"quarter.isDisabled\"\r\n [class.x-date-last-or-next]=\"quarter.isLastOrNext\"\r\n [class.x-date-now]=\"quarter.isNow\"\r\n [class.x-date-first-day]=\"quarter.isFirstDay\"\r\n [class.x-date-last-day]=\"quarter.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartQuarter(quarter.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndQuarter(quarter.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && quarter.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && quarter.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && quarter.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && quarter.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && quarter.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && quarter.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && quarter.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && quarter.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && quarter.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && quarter.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && quarter.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && quarter.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && quarter.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker && (quarter.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"quarter.date | xDateQuarter: true\"\r\n (click)=\"!quarter.isDisabled && quarterClick(quarter)\"\r\n (mouseenter)=\"!quarter.isDisabled && rangePicker() && onTdMouseenter(quarter)\"\r\n (mouseleave)=\"!quarter.isDisabled && rangePicker() && onTdMouseleave(quarter)\"\r\n >\r\n @if (quarterTemp()) {\r\n <ng-container *ngTemplateOutlet=\"quarterTemp()!; context: { date$: quarter.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ quarter.date | xDateQuarter }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-quarter{margin:0;padding:0}.x-picker-quarter-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-quarter-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-quarter-header .x-link{padding:0 .25rem}.x-picker-quarter-year-quarter{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-quarter-body{padding:.1375rem .5rem}.x-picker-quarter-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-quarter-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-quarter-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-quarter-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-quarter-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-quarter-body .x-picker-date-item:after,.x-picker-quarter-body .x-picker-date-item:before{height:3.25rem}.x-picker-quarter-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-quarter-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-quarter .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "pipe", type: DatePipe, name: "date" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: XDateQuarterPipe, name: "xDateQuarter" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1599
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerQuarterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1600
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XPickerQuarterComponent, isStandalone: true, selector: "x-picker-quarter", providers: [DatePipe, LowerCasePipe, XDateQuarterPipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-quarter\" [class.x-date-picker-quartertemp]=\"quarterTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-quarter-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-quarter-year-quarter\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-quarter-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (quarters of chunkDates(); track $index) {\r\n <tr>\r\n @for (quarter of quarters; track quarter.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"quarter.isDisabled\"\r\n [class.x-date-last-or-next]=\"quarter.isLastOrNext\"\r\n [class.x-date-now]=\"quarter.isNow\"\r\n [class.x-date-first-day]=\"quarter.isFirstDay\"\r\n [class.x-date-last-day]=\"quarter.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartQuarter(quarter.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndQuarter(quarter.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && quarter.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && quarter.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && quarter.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && quarter.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && quarter.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && quarter.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && quarter.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && quarter.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && quarter.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && quarter.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && quarter.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && quarter.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && quarter.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker && (quarter.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"quarter.date | xDateQuarter: true\"\r\n (click)=\"!quarter.isDisabled && quarterClick(quarter)\"\r\n (mouseenter)=\"!quarter.isDisabled && rangePicker() && onTdMouseenter(quarter)\"\r\n (mouseleave)=\"!quarter.isDisabled && rangePicker() && onTdMouseleave(quarter)\"\r\n >\r\n @if (quarterTemp()) {\r\n <ng-container *ngTemplateOutlet=\"quarterTemp()!; context: { date$: quarter.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ quarter.date | xDateQuarter }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-quarter{margin:0;padding:0}.x-picker-quarter-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-quarter-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-quarter-header .x-link{padding:0 .25rem}.x-picker-quarter-year-quarter{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-quarter-body{padding:.1375rem .5rem}.x-picker-quarter-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-quarter-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-quarter-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-quarter-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-quarter-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-quarter-body .x-picker-date-item:after,.x-picker-quarter-body .x-picker-date-item:before{height:3.25rem}.x-picker-quarter-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-quarter-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-quarter .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: XDateQuarterPipe, name: "xDateQuarter" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1581
1601
  }
1582
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerQuarterComponent, decorators: [{
1602
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerQuarterComponent, decorators: [{
1583
1603
  type: Component,
1584
1604
  args: [{ selector: 'x-picker-quarter', imports: [DatePipe, NgTemplateOutlet, XLinkComponent, XDateQuarterPipe], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, LowerCasePipe, XDateQuarterPipe], template: "<div class=\"x-picker-quarter\" [class.x-date-picker-quartertemp]=\"quarterTemp()\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-quarter-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYear(-1)\"></x-link>\r\n <div class=\"x-picker-quarter-year-quarter\">\r\n <x-link (click)=\"typeOnChange('year')\">{{ display() | date: 'yyyy' }}{{ locale().year }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYear(1)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-quarter-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (quarters of chunkDates(); track $index) {\r\n <tr>\r\n @for (quarter of quarters; track quarter.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"quarter.isDisabled\"\r\n [class.x-date-last-or-next]=\"quarter.isLastOrNext\"\r\n [class.x-date-now]=\"quarter.isNow\"\r\n [class.x-date-first-day]=\"quarter.isFirstDay\"\r\n [class.x-date-last-day]=\"quarter.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartQuarter(quarter.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndQuarter(quarter.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && quarter.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && quarter.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && quarter.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && quarter.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && quarter.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && quarter.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && quarter.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && quarter.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && quarter.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && quarter.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && quarter.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && quarter.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && quarter.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker && (quarter.date | date: 'yyyyMM') === (model() | date: 'yyyyMM')\"\r\n [title]=\"quarter.date | xDateQuarter: true\"\r\n (click)=\"!quarter.isDisabled && quarterClick(quarter)\"\r\n (mouseenter)=\"!quarter.isDisabled && rangePicker() && onTdMouseenter(quarter)\"\r\n (mouseleave)=\"!quarter.isDisabled && rangePicker() && onTdMouseleave(quarter)\"\r\n >\r\n @if (quarterTemp()) {\r\n <ng-container *ngTemplateOutlet=\"quarterTemp()!; context: { date$: quarter.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ quarter.date | xDateQuarter }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-quarter{margin:0;padding:0}.x-picker-quarter-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-quarter-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-quarter-header .x-link{padding:0 .25rem}.x-picker-quarter-year-quarter{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-quarter-body{padding:.1375rem .5rem}.x-picker-quarter-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-quarter-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-quarter-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-quarter-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-quarter-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-quarter-body .x-picker-date-item:after,.x-picker-quarter-body .x-picker-date-item:before{height:3.25rem}.x-picker-quarter-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-quarter-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-quarter-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-quarter-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-quarter-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-quarter .x-visibility{visibility:hidden}\n"] }]
1585
1605
  }] });
@@ -1590,22 +1610,22 @@ class XPickerYearComponent extends XPickerYearProperty {
1590
1610
  this.datePipe = inject(DatePipe);
1591
1611
  this.cdr = inject(ChangeDetectorRef);
1592
1612
  this.now = new Date();
1593
- this.dates = signal([]);
1594
- this.chunkDates = signal([]);
1595
- this.start = signal(null);
1596
- this.end = signal(null);
1613
+ this.dates = signal([], ...(ngDevMode ? [{ debugName: "dates" }] : []));
1614
+ this.chunkDates = signal([], ...(ngDevMode ? [{ debugName: "chunkDates" }] : []));
1615
+ this.start = signal(null, ...(ngDevMode ? [{ debugName: "start" }] : []));
1616
+ this.end = signal(null, ...(ngDevMode ? [{ debugName: "end" }] : []));
1597
1617
  this.rangeStart = computed(() => {
1598
1618
  if (this.rangeValue() && this.rangeValue().length > 0) {
1599
1619
  return this.rangeValue()[0];
1600
1620
  }
1601
1621
  return '';
1602
- });
1622
+ }, ...(ngDevMode ? [{ debugName: "rangeStart" }] : []));
1603
1623
  this.rangeEnd = computed(() => {
1604
1624
  if (this.rangeValue() && this.rangeValue().length > 1) {
1605
1625
  return this.rangeValue()[1];
1606
1626
  }
1607
1627
  return '';
1608
- });
1628
+ }, ...(ngDevMode ? [{ debugName: "rangeEnd" }] : []));
1609
1629
  }
1610
1630
  isDisabled(date) {
1611
1631
  const disabledDate = this.disabledDate();
@@ -1803,10 +1823,10 @@ class XPickerYearComponent extends XPickerYearProperty {
1803
1823
  this.setDisplay(date);
1804
1824
  this.yearChange.emit(num);
1805
1825
  }
1806
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerYearComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1807
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XPickerYearComponent, isStandalone: true, selector: "x-picker-year", providers: [DatePipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-year\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-year-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYears(-10)\"></x-link>\r\n <div class=\"x-picker-year-year-month\">\r\n <x-link>{{ start() }}</x-link> -\r\n <x-link>{{ end() }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYears(10)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-year-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (years of chunkDates(); track $index) {\r\n <tr>\r\n @for (year of years; track year.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"year.isDisabled\"\r\n [class.x-date-last-or-next]=\"year.isLastOrNext\"\r\n [class.x-date-now]=\"year.isNow\"\r\n [class.x-date-first-day]=\"year.isFirstDay\"\r\n [class.x-date-last-day]=\"year.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartYear(year.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndYear(year.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && year.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && year.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && year.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && year.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && year.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && year.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && year.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && year.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && year.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && year.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && year.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && year.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && year.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (year.date | date: 'yyyy') === (model() | date: 'yyyy')\"\r\n [title]=\"year.date | date: 'yyyy'\"\r\n (click)=\"!year.isDisabled && yearClick(year)\"\r\n (mouseenter)=\"!year.isDisabled && rangePicker() && onTdMouseenter(year)\"\r\n (mouseleave)=\"!year.isDisabled && rangePicker() && onTdMouseleave(year)\"\r\n >\r\n @if (yearTemp()) {\r\n <ng-container *ngTemplateOutlet=\"yearTemp()!; context: { date$: year.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ year.date | date: 'yyyy' }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-year{margin:0;padding:0}.x-picker-year-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-year-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-year-header .x-link{padding:0 .25rem}.x-picker-year-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-year-body{padding:.1375rem .5rem}.x-picker-year-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-year-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-year-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-year-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-year-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-year-body .x-picker-date-item:after,.x-picker-year-body .x-picker-date-item:before{height:3.25rem}.x-picker-year-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-year-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-year .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "pipe", type: DatePipe, name: "date" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1826
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerYearComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1827
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XPickerYearComponent, isStandalone: true, selector: "x-picker-year", providers: [DatePipe], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-picker-year\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-year-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYears(-10)\"></x-link>\r\n <div class=\"x-picker-year-year-month\">\r\n <x-link>{{ start() }}</x-link> -\r\n <x-link>{{ end() }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYears(10)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-year-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (years of chunkDates(); track $index) {\r\n <tr>\r\n @for (year of years; track year.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"year.isDisabled\"\r\n [class.x-date-last-or-next]=\"year.isLastOrNext\"\r\n [class.x-date-now]=\"year.isNow\"\r\n [class.x-date-first-day]=\"year.isFirstDay\"\r\n [class.x-date-last-day]=\"year.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartYear(year.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndYear(year.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && year.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && year.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && year.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && year.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && year.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && year.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && year.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && year.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && year.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && year.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && year.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && year.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && year.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (year.date | date: 'yyyy') === (model() | date: 'yyyy')\"\r\n [title]=\"year.date | date: 'yyyy'\"\r\n (click)=\"!year.isDisabled && yearClick(year)\"\r\n (mouseenter)=\"!year.isDisabled && rangePicker() && onTdMouseenter(year)\"\r\n (mouseleave)=\"!year.isDisabled && rangePicker() && onTdMouseleave(year)\"\r\n >\r\n @if (yearTemp()) {\r\n <ng-container *ngTemplateOutlet=\"yearTemp()!; context: { date$: year.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ year.date | date: 'yyyy' }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-year{margin:0;padding:0}.x-picker-year-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-year-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-year-header .x-link{padding:0 .25rem}.x-picker-year-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-year-body{padding:.1375rem .5rem}.x-picker-year-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-year-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-year-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-year-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-year-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-year-body .x-picker-date-item:after,.x-picker-year-body .x-picker-date-item:before{height:3.25rem}.x-picker-year-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-year-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-year .x-visibility{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1808
1828
  }
1809
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XPickerYearComponent, decorators: [{
1829
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XPickerYearComponent, decorators: [{
1810
1830
  type: Component,
1811
1831
  args: [{ selector: 'x-picker-year', imports: [DatePipe, NgTemplateOutlet, XLinkComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe], template: "<div class=\"x-picker-year\">\r\n @if (showHeader()) {\r\n <div class=\"x-picker-year-header\">\r\n <x-link [class.x-visibility]=\"!lastYearBtn()\" icon=\"fto-chevrons-left\" (click)=\"nextYears(-10)\"></x-link>\r\n <div class=\"x-picker-year-year-month\">\r\n <x-link>{{ start() }}</x-link> -\r\n <x-link>{{ end() }}</x-link>\r\n </div>\r\n <x-link [class.x-visibility]=\"!nextYearBtn()\" icon=\"fto-chevrons-right\" (click)=\"nextYears(10)\"></x-link>\r\n </div>\r\n }\r\n <div class=\"x-picker-year-body\">\r\n <table cellspacing=\"0\" cellpadding=\"0\">\r\n @for (years of chunkDates(); track $index) {\r\n <tr>\r\n @for (year of years; track year.date) {\r\n <td\r\n class=\"x-picker-date-item\"\r\n [class.x-date-disabled]=\"year.isDisabled\"\r\n [class.x-date-last-or-next]=\"year.isLastOrNext\"\r\n [class.x-date-now]=\"year.isNow\"\r\n [class.x-date-first-day]=\"year.isFirstDay\"\r\n [class.x-date-last-day]=\"year.isLastDay\"\r\n [class.x-date-range-start]=\"rangePicker() && isStartYear(year.date!)\"\r\n [class.x-date-range-end]=\"rangePicker() && isEndYear(year.date!)\"\r\n [class.x-date-range-start-left]=\"rangePicker() && year.isRangeStartLeft\"\r\n [class.x-date-range-start-right]=\"rangePicker() && year.isRangeStartRight\"\r\n [class.x-date-range-end-left]=\"rangePicker() && year.isRangeEndLeft\"\r\n [class.x-date-range-end-right]=\"rangePicker() && year.isRangeEndRight\"\r\n [class.x-date-range-hover]=\"rangePicker() && year.isRangeHover\"\r\n [class.x-date-range-hover-start-left]=\"rangePicker() && year.isRangeHoverStartLeft\"\r\n [class.x-date-range-hover-start-right]=\"rangePicker() && year.isRangeHoverStartRight\"\r\n [class.x-date-range-hover-end-left]=\"rangePicker() && year.isRangeHoverEndLeft\"\r\n [class.x-date-range-hover-end-right]=\"rangePicker() && year.isRangeHoverEndRight\"\r\n [class.x-date-range-hover-start]=\"rangePicker() && year.isRangeHoverStart\"\r\n [class.x-date-range-hover-end]=\"rangePicker() && year.isRangeHoverEnd\"\r\n [class.x-date-in-range]=\"rangePicker() && year.isInRange\"\r\n [class.x-date-in-range-hover]=\"rangePicker() && year.isInRangeHover\"\r\n [class.x-date-active]=\"!rangePicker() && (year.date | date: 'yyyy') === (model() | date: 'yyyy')\"\r\n [title]=\"year.date | date: 'yyyy'\"\r\n (click)=\"!year.isDisabled && yearClick(year)\"\r\n (mouseenter)=\"!year.isDisabled && rangePicker() && onTdMouseenter(year)\"\r\n (mouseleave)=\"!year.isDisabled && rangePicker() && onTdMouseleave(year)\"\r\n >\r\n @if (yearTemp()) {\r\n <ng-container *ngTemplateOutlet=\"yearTemp()!; context: { date$: year.date }\"></ng-container>\r\n } @else {\r\n <div class=\"x-date-text\">\r\n {{ year.date | date: 'yyyy' }}\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </table>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-picker-year{margin:0;padding:0}.x-picker-year-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) solid var(--x-border);color:var(--x-text-500);font-size:var(--x-font-size-medium)}.x-picker-year-header x-link{height:100%;-webkit-user-select:none;user-select:none}.x-picker-year-header .x-link{padding:0 .25rem}.x-picker-year-year-month{flex:1;text-align:center;color:var(--x-text);font-size:var(--x-font-size)}.x-picker-year-body{padding:.1375rem .5rem}.x-picker-year-body>table{width:100%;border-collapse:collapse;border-spacing:0}.x-picker-year-body>table tr{padding:.125rem 0;display:flex;align-items:center;justify-content:center}.x-picker-year-body>table td{flex:1;padding:.125rem 0;-webkit-user-select:none;user-select:none}.x-picker-year-body .x-picker-date-item{text-align:center;cursor:pointer;color:var(--x-text-300);position:relative}.x-picker-year-body .x-picker-date-item .x-date-text{width:3.5rem;height:3.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto;border:var(--x-border-width) var(--x-border-style) transparent;border-radius:var(--x-border-radius);transition:var(--x-animation-duration-base);position:relative}.x-picker-year-body .x-picker-date-item:after,.x-picker-year-body .x-picker-date-item:before{height:3.25rem}.x-picker-year-body .x-picker-date-item:hover:not(.x-date-in-range) .x-date-text{background-color:var(--x-background-a200)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next){color:var(--x-background-100)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-picker-year-body .x-picker-date-item.x-date-active:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-last-or-next{color:var(--x-text-700)}.x-picker-year-body .x-picker-date-item.x-date-now:not(.x-date-active):not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{color:var(--x-primary);border-color:var(--x-primary)}.x-picker-year-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before,.x-picker-year-body .x-picker-date-item.x-date-range-hover.x-date-last-day:first-child:not(.x-date-last-or-next):before{width:3.5rem}.x-picker-year-body .x-picker-date-item.x-date-disabled{cursor:default;background-color:var(--x-background-a300);color:var(--x-text-700)}.x-picker-year .x-visibility{visibility:hidden}\n"] }]
1812
1832
  }] });
@@ -1814,29 +1834,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImpor
1814
1834
  class XDatePickerPortalComponent {
1815
1835
  constructor() {
1816
1836
  this.i18n = inject(XI18nService);
1817
- this._type = signal('date');
1818
- this.destroy = signal(false);
1837
+ this._type = signal('date', ...(ngDevMode ? [{ debugName: "_type" }] : []));
1838
+ this.destroy = signal(false, ...(ngDevMode ? [{ debugName: "destroy" }] : []));
1819
1839
  this.destroyRef = inject(DestroyRef);
1820
- this.timePickerFrame = viewChild('timePickerFrame', { read: XTimePickerFrameComponent });
1821
- this.value = input();
1822
- this.type = model('date');
1823
- this.preset = input([]);
1824
- this.extraFooter = input();
1825
- this.placement = input();
1826
- this.inputCom = input();
1827
- this.disabledDate = input();
1828
- this.disabledTime = input();
1840
+ this.timePickerFrame = viewChild('timePickerFrame', ...(ngDevMode ? [{ debugName: "timePickerFrame", read: XTimePickerFrameComponent }] : [{ read: XTimePickerFrameComponent }]));
1841
+ this.value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
1842
+ this.type = model('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
1843
+ this.preset = input([], ...(ngDevMode ? [{ debugName: "preset" }] : []));
1844
+ this.extraFooter = input(...(ngDevMode ? [undefined, { debugName: "extraFooter" }] : []));
1845
+ this.placement = input(...(ngDevMode ? [undefined, { debugName: "placement" }] : []));
1846
+ this.inputCom = input(...(ngDevMode ? [undefined, { debugName: "inputCom" }] : []));
1847
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
1848
+ this.disabledTime = input(...(ngDevMode ? [undefined, { debugName: "disabledTime" }] : []));
1829
1849
  this.animating = output();
1830
1850
  this.nodeClick = output();
1831
- this.display = signal(new Date());
1832
- this.model = signal(null);
1851
+ this.display = signal(new Date(), ...(ngDevMode ? [{ debugName: "display" }] : []));
1852
+ this.model = signal(null, ...(ngDevMode ? [{ debugName: "model" }] : []));
1833
1853
  this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.datePicker)), {
1834
1854
  initialValue: zh_CN.datePicker
1835
1855
  });
1836
- this.time = signal(null);
1856
+ this.time = signal(null, ...(ngDevMode ? [{ debugName: "time" }] : []));
1837
1857
  this.isDatePicker = computed(() => {
1838
1858
  return ['date', 'month', 'year'].includes(this.type());
1839
- });
1859
+ }, ...(ngDevMode ? [{ debugName: "isDatePicker" }] : []));
1840
1860
  this.sureDisabled = computed(() => {
1841
1861
  let res = XIsUndefined(this.time());
1842
1862
  let timePickerFrame = this.timePickerFrame();
@@ -1850,7 +1870,7 @@ class XDatePickerPortalComponent {
1850
1870
  timePickerFrame.setDisabled('seconds', seconds));
1851
1871
  }
1852
1872
  return res;
1853
- });
1873
+ }, ...(ngDevMode ? [{ debugName: "sureDisabled" }] : []));
1854
1874
  }
1855
1875
  get getPlacement() {
1856
1876
  return this.placement();
@@ -1962,10 +1982,10 @@ class XDatePickerPortalComponent {
1962
1982
  this.model.set(new Date(date.getFullYear(), date.getMonth(), date.getDate(), time.getHours(), time.getMinutes(), time.getSeconds()));
1963
1983
  return this.model();
1964
1984
  }
1965
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1966
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XDatePickerPortalComponent, isStandalone: true, selector: "x-date-picker-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, inputCom: { classPropertyName: "inputCom", publicName: "inputCom", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, providers: [DatePipe, LowerCasePipe], viewQueries: [{ propertyName: "timePickerFrame", first: true, predicate: ["timePickerFrame"], descendants: true, read: XTimePickerFrameComponent, isSignal: true }], ngImport: i0, template: "<div class=\"x-date-picker-portal {{ type() }}\" (click)=\"inputCom()?.inputFocus('focus')\">\r\n @switch (type()) {\r\n @case ('date') {\r\n <x-picker-date\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"dateChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-date>\r\n }\r\n @case ('week') {\r\n <x-picker-date\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"dateChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-date>\r\n }\r\n @case ('month') {\r\n <x-picker-month\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"monthChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-month>\r\n }\r\n @case ('quarter') {\r\n <x-picker-quarter\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"quarterChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-quarter>\r\n }\r\n @case ('year') {\r\n <x-picker-year\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"yearChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-year>\r\n }\r\n @case ('date-time') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm:ss', timeType: 'time' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-hour') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH', timeType: 'hour' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-minute') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm', timeType: 'minute' }\"\r\n ></ng-container>\r\n }\r\n @case ('month') {}\r\n }\r\n @if (isDatePicker()) {\r\n @if (extraFooter()) {\r\n <div class=\"x-date-picker-portal-extra-footer\">\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n </div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n</div>\r\n\r\n<ng-template #dateTimeHourMinuteTpl let-timeFormat=\"timeFormat\" let-timeType=\"timeType\">\r\n <div class=\"x-date-picker-portal-content\">\r\n <div class=\"x-date-picker-portal-date\">\r\n <x-picker-date\r\n [(display)]=\"display\"\r\n [(type)]=\"type\"\r\n [(model)]=\"model\"\r\n (modelChange)=\"dateChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-date>\r\n </div>\r\n <div class=\"x-date-picker-portal-time\">\r\n <div class=\"x-date-picker-portal-time-label\">\r\n {{ time() | date: timeFormat }}\r\n </div>\r\n <x-time-picker-frame\r\n #timePickerFrameD\r\n [type]=\"timeType\"\r\n [value]=\"time()\"\r\n (nodeEmit)=\"selectTime($event)\"\r\n [disabledTime]=\"disabledTime()\"\r\n [defaultNow]=\"false\"\r\n ></x-time-picker-frame>\r\n </div>\r\n </div>\r\n @if (!isDatePicker() && extraFooter()) {\r\n <div class=\"x-date-picker-portal-extra-footer\">\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-date-picker-portal-footer\">\r\n <div class=\"x-date-picker-portal-footer-left\">\r\n @if (!isDatePicker() && preset()) {\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n </div>\r\n <x-button\r\n type=\"primary\"\r\n text\r\n (click)=\"!sureDisabled() && nodeClick.emit({ date: model()!, sure: true })\"\r\n size=\"small\"\r\n [disabled]=\"sureDisabled()\"\r\n >{{ locale().sure }}</x-button\r\n >\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #presetTpl>\r\n @if (preset()) {\r\n <div class=\"x-date-picker-portal-preset\">\r\n @for (item of preset(); track item) {\r\n @switch (item.id) {\r\n @case ('yesterday') {\r\n <x-link (click)=\"onYesterday()\">{{ locale().yesterday }}</x-link>\r\n }\r\n @case ('today') {\r\n <x-link (click)=\"onToday()\">{{ locale().today }}</x-link>\r\n }\r\n @case ('tomorrow') {\r\n <x-link (click)=\"onTomorrow()\">{{ locale().tomorrow }}</x-link>\r\n }\r\n }\r\n @if (!!item.func) {\r\n <x-link (click)=\"onPresetFunc(item)\">{{ item.label }}</x-link>\r\n }\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-date-picker-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:16rem;display:flex;flex-direction:column}.x-date-picker-portal.week{width:18.125rem}.x-date-picker-portal.week .x-picker-date-body .x-picker-date-item:not(.x-date-in-range):not(.x-date-active) .x-date-text{background-color:transparent}.x-date-picker-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):hover .x-picker-date-item:not(.x-date-in-range){background-color:var(--x-background-a200)}.x-date-picker-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):hover .x-picker-date-item:not(.x-date-in-range):first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-picker-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):hover .x-picker-date-item:not(.x-date-in-range):last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-picker-portal.date-time{width:27rem}.x-date-picker-portal.date-hour{width:19.75rem}.x-date-picker-portal.date-minute{width:23.375rem}.x-date-picker-portal-preset{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;border-top:var(--x-border-width) solid var(--x-border)}.x-date-picker-portal-preset>x-link{padding:.25rem}.x-date-picker-portal-preset>x-link:not(:first-child){margin-left:1rem}.x-date-picker-portal-body{padding:.4rem}.x-date-picker-portal-content{display:flex}.x-date-picker-portal-footer{display:flex;align-items:center;justify-content:space-between;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-picker-portal-footer .x-date-picker-portal-preset{border-top:none}.x-date-picker-portal-footer .x-date-picker-portal-preset>x-link{padding:0 .25rem}.x-date-picker-portal-extra-footer{display:flex;align-items:center;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-picker-portal-date{flex:1}.x-date-picker-portal-time{display:flex;flex-direction:column;border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-picker-portal-time-label{display:flex;align-items:center;justify-content:center;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-picker-portal-time .x-time-picker-frame{border-width:0;box-shadow:none;margin:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "component", type: XPickerDateComponent, selector: "x-picker-date" }, { kind: "component", type: XPickerMonthComponent, selector: "x-picker-month" }, { kind: "component", type: XPickerQuarterComponent, selector: "x-picker-quarter" }, { kind: "component", type: XPickerYearComponent, selector: "x-picker-year" }, { kind: "ngmodule", type: XTimePickerModule }, { kind: "component", type: i1.XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: ["type", "value", "use12Hours", "hourStep", "minuteStep", "secondStep", "defaultNow", "disabledTime", "disabledTimeParam"], outputs: ["nodeEmit"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1985
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1986
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XDatePickerPortalComponent, isStandalone: true, selector: "x-date-picker-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, inputCom: { classPropertyName: "inputCom", publicName: "inputCom", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, providers: [DatePipe, LowerCasePipe], viewQueries: [{ propertyName: "timePickerFrame", first: true, predicate: ["timePickerFrame"], descendants: true, read: XTimePickerFrameComponent, isSignal: true }], ngImport: i0, template: "<div class=\"x-date-picker-portal {{ type() }}\" (click)=\"inputCom()?.inputFocus('focus')\">\r\n @switch (type()) {\r\n @case ('date') {\r\n <x-picker-date\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"dateChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-date>\r\n }\r\n @case ('week') {\r\n <x-picker-date\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"dateChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-date>\r\n }\r\n @case ('month') {\r\n <x-picker-month\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"monthChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-month>\r\n }\r\n @case ('quarter') {\r\n <x-picker-quarter\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"quarterChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-quarter>\r\n }\r\n @case ('year') {\r\n <x-picker-year\r\n [(display)]=\"display\"\r\n [(model)]=\"model\"\r\n [(type)]=\"type\"\r\n (modelChange)=\"yearChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-year>\r\n }\r\n @case ('date-time') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm:ss', timeType: 'time' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-hour') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH', timeType: 'hour' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-minute') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm', timeType: 'minute' }\"\r\n ></ng-container>\r\n }\r\n @case ('month') {}\r\n }\r\n @if (isDatePicker()) {\r\n @if (extraFooter()) {\r\n <div class=\"x-date-picker-portal-extra-footer\">\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n </div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n</div>\r\n\r\n<ng-template #dateTimeHourMinuteTpl let-timeFormat=\"timeFormat\" let-timeType=\"timeType\">\r\n <div class=\"x-date-picker-portal-content\">\r\n <div class=\"x-date-picker-portal-date\">\r\n <x-picker-date\r\n [(display)]=\"display\"\r\n [(type)]=\"type\"\r\n [(model)]=\"model\"\r\n (modelChange)=\"dateChange($event!)\"\r\n [disabledDate]=\"disabledDate()\"\r\n ></x-picker-date>\r\n </div>\r\n <div class=\"x-date-picker-portal-time\">\r\n <div class=\"x-date-picker-portal-time-label\">\r\n {{ time() | date: timeFormat }}\r\n </div>\r\n <x-time-picker-frame\r\n #timePickerFrameD\r\n [type]=\"timeType\"\r\n [value]=\"time()\"\r\n (nodeEmit)=\"selectTime($event)\"\r\n [disabledTime]=\"disabledTime()\"\r\n [defaultNow]=\"false\"\r\n ></x-time-picker-frame>\r\n </div>\r\n </div>\r\n @if (!isDatePicker() && extraFooter()) {\r\n <div class=\"x-date-picker-portal-extra-footer\">\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-date-picker-portal-footer\">\r\n <div class=\"x-date-picker-portal-footer-left\">\r\n @if (!isDatePicker() && preset()) {\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n </div>\r\n <x-button\r\n type=\"primary\"\r\n text\r\n (click)=\"!sureDisabled() && nodeClick.emit({ date: model()!, sure: true })\"\r\n size=\"small\"\r\n [disabled]=\"sureDisabled()\"\r\n >{{ locale().sure }}</x-button\r\n >\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #presetTpl>\r\n @if (preset()) {\r\n <div class=\"x-date-picker-portal-preset\">\r\n @for (item of preset(); track item) {\r\n @switch (item.id) {\r\n @case ('yesterday') {\r\n <x-link (click)=\"onYesterday()\">{{ locale().yesterday }}</x-link>\r\n }\r\n @case ('today') {\r\n <x-link (click)=\"onToday()\">{{ locale().today }}</x-link>\r\n }\r\n @case ('tomorrow') {\r\n <x-link (click)=\"onTomorrow()\">{{ locale().tomorrow }}</x-link>\r\n }\r\n }\r\n @if (!!item.func) {\r\n <x-link (click)=\"onPresetFunc(item)\">{{ item.label }}</x-link>\r\n }\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-date-picker-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:16rem;display:flex;flex-direction:column}.x-date-picker-portal.week{width:18.125rem}.x-date-picker-portal.week .x-picker-date-body .x-picker-date-item:not(.x-date-in-range):not(.x-date-active) .x-date-text{background-color:transparent}.x-date-picker-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):hover .x-picker-date-item:not(.x-date-in-range){background-color:var(--x-background-a200)}.x-date-picker-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):hover .x-picker-date-item:not(.x-date-in-range):first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-picker-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):hover .x-picker-date-item:not(.x-date-in-range):last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-picker-portal.date-time{width:27rem}.x-date-picker-portal.date-hour{width:19.75rem}.x-date-picker-portal.date-minute{width:23.375rem}.x-date-picker-portal-preset{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;border-top:var(--x-border-width) solid var(--x-border)}.x-date-picker-portal-preset>x-link{padding:.25rem}.x-date-picker-portal-preset>x-link:not(:first-child){margin-left:1rem}.x-date-picker-portal-body{padding:.4rem}.x-date-picker-portal-content{display:flex}.x-date-picker-portal-footer{display:flex;align-items:center;justify-content:space-between;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-picker-portal-footer .x-date-picker-portal-preset{border-top:none}.x-date-picker-portal-footer .x-date-picker-portal-preset>x-link{padding:0 .25rem}.x-date-picker-portal-extra-footer{display:flex;align-items:center;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-picker-portal-date{flex:1}.x-date-picker-portal-time{display:flex;flex-direction:column;border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-picker-portal-time-label{display:flex;align-items:center;justify-content:center;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-picker-portal-time .x-time-picker-frame{border-width:0;box-shadow:none;margin:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XPickerDateComponent, selector: "x-picker-date" }, { kind: "component", type: XPickerMonthComponent, selector: "x-picker-month" }, { kind: "component", type: XPickerQuarterComponent, selector: "x-picker-quarter" }, { kind: "component", type: XPickerYearComponent, selector: "x-picker-year" }, { kind: "ngmodule", type: XTimePickerModule }, { kind: "component", type: i1.XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: ["type", "value", "use12Hours", "hourStep", "minuteStep", "secondStep", "defaultNow", "disabledTime", "disabledTimeParam"], outputs: ["nodeEmit"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "pipe", type: DatePipe, name: "date" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1967
1987
  }
1968
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerPortalComponent, decorators: [{
1988
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerPortalComponent, decorators: [{
1969
1989
  type: Component,
1970
1990
  args: [{ selector: `${XDatePickerPortalPrefix}`, imports: [
1971
1991
  NgTemplateOutlet,
@@ -2020,23 +2040,23 @@ class XDatePickerComponent extends XDatePickerProperty {
2020
2040
  this.elementRef = inject(ElementRef);
2021
2041
  this.overlay = inject(Overlay);
2022
2042
  this.inputCom = viewChild.required('inputCom', { read: XInputComponent });
2023
- this.modelType = signal('date');
2024
- this.numberValue = signal(null);
2025
- this.isInput = signal(false);
2026
- this.enter = signal(false);
2027
- this.inputClearable = signal(false);
2028
- this.animating = signal(false);
2029
- this.displayValue = signal('');
2030
- this.icon = signal('fto-calendar');
2043
+ this.modelType = signal('date', ...(ngDevMode ? [{ debugName: "modelType" }] : []));
2044
+ this.numberValue = signal(null, ...(ngDevMode ? [{ debugName: "numberValue" }] : []));
2045
+ this.isInput = signal(false, ...(ngDevMode ? [{ debugName: "isInput" }] : []));
2046
+ this.enter = signal(false, ...(ngDevMode ? [{ debugName: "enter" }] : []));
2047
+ this.inputClearable = signal(false, ...(ngDevMode ? [{ debugName: "inputClearable" }] : []));
2048
+ this.animating = signal(false, ...(ngDevMode ? [{ debugName: "animating" }] : []));
2049
+ this.displayValue = signal('', ...(ngDevMode ? [{ debugName: "displayValue" }] : []));
2050
+ this.icon = signal('fto-calendar', ...(ngDevMode ? [{ debugName: "icon" }] : []));
2031
2051
  this.closeSubject = new Subject();
2032
2052
  this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.datePicker)), {
2033
2053
  initialValue: zh_CN.datePicker
2034
2054
  });
2035
2055
  this.document = inject(DOCUMENT);
2036
2056
  this.unSubject = new Subject();
2037
- this.realPlacement = signal(null);
2038
- this.portalComponent = signal(null);
2039
- this.portalOverlayRef = signal(null);
2057
+ this.realPlacement = signal(null, ...(ngDevMode ? [{ debugName: "realPlacement" }] : []));
2058
+ this.portalComponent = signal(null, ...(ngDevMode ? [{ debugName: "portalComponent" }] : []));
2059
+ this.portalOverlayRef = signal(null, ...(ngDevMode ? [{ debugName: "portalOverlayRef" }] : []));
2040
2060
  this.placeholderSignal = computed(() => {
2041
2061
  if (this.placeholder())
2042
2062
  return this.placeholder();
@@ -2055,7 +2075,7 @@ class XDatePickerComponent extends XDatePickerProperty {
2055
2075
  else {
2056
2076
  return this.locale().selectDate;
2057
2077
  }
2058
- });
2078
+ }, ...(ngDevMode ? [{ debugName: "placeholderSignal" }] : []));
2059
2079
  this.formatSignal = computed(() => {
2060
2080
  if (this.format() !== 'yyyy-MM-dd')
2061
2081
  return this.format();
@@ -2081,7 +2101,7 @@ class XDatePickerComponent extends XDatePickerProperty {
2081
2101
  return 'yyyy-MM-dd HH:mm';
2082
2102
  }
2083
2103
  return this.format();
2084
- });
2104
+ }, ...(ngDevMode ? [{ debugName: "formatSignal" }] : []));
2085
2105
  effect(() => this.portalComponent()?.setInput('value', this.numberValue()));
2086
2106
  effect(() => this.portalComponent()?.setInput('placement', this.realPlacement()));
2087
2107
  effect(() => this.portalComponent()?.setInput('type', this.type()));
@@ -2283,12 +2303,12 @@ class XDatePickerComponent extends XDatePickerProperty {
2283
2303
  formControlChanges() {
2284
2304
  this.ngOnInit();
2285
2305
  }
2286
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2287
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.0", type: XDatePickerComponent, isStandalone: true, selector: "x-date-picker", providers: [XValueAccessor(XDatePickerComponent), DatePipe], viewQueries: [{ propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #datePicker class=\"x-date-picker\">\r\n <div class=\"x-date-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholderSignal()!\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable() && inputClearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [variant]=\"variant()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xInput)=\"onInput()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n {{ displayValue() }}\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-picker{display:inline-block;width:12rem}.x-date-picker{margin:0;padding:0}.x-date-picker{width:100%}.x-date-picker x-input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2306
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2307
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.2.4", type: XDatePickerComponent, isStandalone: true, selector: "x-date-picker", providers: [XValueAccessor(XDatePickerComponent), DatePipe], viewQueries: [{ propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #datePicker class=\"x-date-picker\">\r\n <div class=\"x-date-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholderSignal()!\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable() && inputClearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [variant]=\"variant()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xInput)=\"onInput()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n {{ displayValue() }}\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-picker{display:inline-block;width:12rem}.x-date-picker{margin:0;padding:0}.x-date-picker{width:100%}.x-date-picker x-input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2288
2308
  }
2289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerComponent, decorators: [{
2309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerComponent, decorators: [{
2290
2310
  type: Component,
2291
- args: [{ selector: `${XDatePickerPrefix}`, imports: [FormsModule, ReactiveFormsModule, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XDatePickerComponent), DatePipe], template: "<div #datePicker class=\"x-date-picker\">\r\n <div class=\"x-date-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholderSignal()!\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable() && inputClearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [variant]=\"variant()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xInput)=\"onInput()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n {{ displayValue() }}\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-picker{display:inline-block;width:12rem}.x-date-picker{margin:0;padding:0}.x-date-picker{width:100%}.x-date-picker x-input{width:100%}\n"] }]
2311
+ args: [{ selector: `${XDatePickerPrefix}`, imports: [FormsModule, ReactiveFormsModule, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XDatePickerComponent), DatePipe], template: "<div #datePicker class=\"x-date-picker\">\r\n <div class=\"x-date-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholderSignal()!\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable() && inputClearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [variant]=\"variant()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xInput)=\"onInput()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n {{ displayValue() }}\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-picker{display:inline-block;width:12rem}.x-date-picker{margin:0;padding:0}.x-date-picker{width:100%}.x-date-picker x-input{width:100%}\n"] }]
2292
2312
  }], ctorParameters: () => [] });
2293
2313
 
2294
2314
  class XDateRangePortalComponent {
@@ -2296,41 +2316,41 @@ class XDateRangePortalComponent {
2296
2316
  this.datePipe = inject(DatePipe);
2297
2317
  this.lowerCasePipe = inject(LowerCasePipe);
2298
2318
  this.i18n = inject(XI18nService);
2299
- this.startPicker = viewChild('startPicker');
2300
- this.endPicker = viewChild('endPicker');
2301
- this.timePickerFrame = viewChild('timePickerFrame');
2302
- this.value = model([]);
2303
- this.placement = input();
2304
- this.type = model('date');
2305
- this.preset = input([]);
2306
- this.extraFooter = input();
2307
- this.disabledDate = input();
2308
- this.disabledTime = input();
2309
- this.activeType = input('start');
2319
+ this.startPicker = viewChild('startPicker', ...(ngDevMode ? [{ debugName: "startPicker" }] : []));
2320
+ this.endPicker = viewChild('endPicker', ...(ngDevMode ? [{ debugName: "endPicker" }] : []));
2321
+ this.timePickerFrame = viewChild('timePickerFrame', ...(ngDevMode ? [{ debugName: "timePickerFrame" }] : []));
2322
+ this.value = model([], ...(ngDevMode ? [{ debugName: "value" }] : []));
2323
+ this.placement = input(...(ngDevMode ? [undefined, { debugName: "placement" }] : []));
2324
+ this.type = model('date', ...(ngDevMode ? [{ debugName: "type" }] : []));
2325
+ this.preset = input([], ...(ngDevMode ? [{ debugName: "preset" }] : []));
2326
+ this.extraFooter = input(...(ngDevMode ? [undefined, { debugName: "extraFooter" }] : []));
2327
+ this.disabledDate = input(...(ngDevMode ? [undefined, { debugName: "disabledDate" }] : []));
2328
+ this.disabledTime = input(...(ngDevMode ? [undefined, { debugName: "disabledTime" }] : []));
2329
+ this.activeType = input('start', ...(ngDevMode ? [{ debugName: "activeType" }] : []));
2310
2330
  this.animating = output();
2311
2331
  this.nodeClick = output();
2312
2332
  this.startNodeChanged = output();
2313
2333
  this.endNodeChanged = output();
2314
- this.display = signal(new Date());
2315
- this.model = signal(null);
2316
- this.startModel = signal(null);
2317
- this.endModel = signal(null);
2318
- this.startYear = signal(null);
2319
- this.startDisplay = signal(new Date());
2320
- this.endDisplay = signal(XAddMonths(this.startDisplay(), 1));
2334
+ this.display = signal(new Date(), ...(ngDevMode ? [{ debugName: "display" }] : []));
2335
+ this.model = signal(null, ...(ngDevMode ? [{ debugName: "model" }] : []));
2336
+ this.startModel = signal(null, ...(ngDevMode ? [{ debugName: "startModel" }] : []));
2337
+ this.endModel = signal(null, ...(ngDevMode ? [{ debugName: "endModel" }] : []));
2338
+ this.startYear = signal(null, ...(ngDevMode ? [{ debugName: "startYear" }] : []));
2339
+ this.startDisplay = signal(new Date(), ...(ngDevMode ? [{ debugName: "startDisplay" }] : []));
2340
+ this.endDisplay = signal(XAddMonths(this.startDisplay(), 1), ...(ngDevMode ? [{ debugName: "endDisplay" }] : []));
2321
2341
  this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.datePicker)), {
2322
2342
  initialValue: zh_CN.datePicker
2323
2343
  });
2324
- this.time = signal(null);
2325
- this.timeDisplay = signal(new Date());
2326
- this.timeModel = signal(null);
2327
- this.timeHover = signal(false);
2328
- this.nodeClickCount = signal(0);
2329
- this.destroy = signal(false);
2344
+ this.time = signal(null, ...(ngDevMode ? [{ debugName: "time" }] : []));
2345
+ this.timeDisplay = signal(new Date(), ...(ngDevMode ? [{ debugName: "timeDisplay" }] : []));
2346
+ this.timeModel = signal(null, ...(ngDevMode ? [{ debugName: "timeModel" }] : []));
2347
+ this.timeHover = signal(false, ...(ngDevMode ? [{ debugName: "timeHover" }] : []));
2348
+ this.nodeClickCount = signal(0, ...(ngDevMode ? [{ debugName: "nodeClickCount" }] : []));
2349
+ this.destroy = signal(false, ...(ngDevMode ? [{ debugName: "destroy" }] : []));
2330
2350
  this.destroyRef = inject(DestroyRef);
2331
2351
  this.isDatePicker = computed(() => {
2332
2352
  return ['date', 'quarter', 'week', 'month', 'year'].includes(this.type());
2333
- });
2353
+ }, ...(ngDevMode ? [{ debugName: "isDatePicker" }] : []));
2334
2354
  this.sureDisabled = computed(() => {
2335
2355
  if (this.timePickerFrame() && !XIsEmpty(this.time())) {
2336
2356
  const dt = new Date(this.time());
@@ -2344,7 +2364,7 @@ class XDateRangePortalComponent {
2344
2364
  else {
2345
2365
  return true;
2346
2366
  }
2347
- });
2367
+ }, ...(ngDevMode ? [{ debugName: "sureDisabled" }] : []));
2348
2368
  }
2349
2369
  get getPlacement() {
2350
2370
  return this.placement();
@@ -2595,10 +2615,10 @@ class XDateRangePortalComponent {
2595
2615
  this.nodeClick.emit({ date: value, close: true });
2596
2616
  }
2597
2617
  }
2598
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateRangePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2599
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XDateRangePortalComponent, isStandalone: true, selector: "x-date-range-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, activeType: { classPropertyName: "activeType", publicName: "activeType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", type: "typeChange", animating: "animating", nodeClick: "nodeClick", startNodeChanged: "startNodeChanged", endNodeChanged: "endNodeChanged" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, providers: [DatePipe, LowerCasePipe], viewQueries: [{ propertyName: "startPicker", first: true, predicate: ["startPicker"], descendants: true, isSignal: true }, { propertyName: "endPicker", first: true, predicate: ["endPicker"], descendants: true, isSignal: true }, { propertyName: "timePickerFrame", first: true, predicate: ["timePickerFrame"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"x-date-range-portal {{ type() }}\">\r\n <div class=\"x-date-range-portal-body\">\r\n @switch (type()) {\r\n @case ('date') {\r\n <x-picker-date\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [nextMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n <x-picker-date\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [lastMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n }\r\n @case ('week') {\r\n <x-picker-date\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n type=\"week\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [nextMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n <x-picker-date\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n type=\"week\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [lastMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n }\r\n @case ('month') {\r\n <x-picker-month\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-month>\r\n <x-picker-month\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-month>\r\n }\r\n @case ('quarter') {\r\n <x-picker-quarter\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-quarter>\r\n <x-picker-quarter\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-quarter>\r\n }\r\n @case ('year') {\r\n <x-picker-year\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-year>\r\n <x-picker-year\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-year>\r\n }\r\n @case ('date-time') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm:ss', timeType: 'time' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-hour') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH', timeType: 'hour' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-minute') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm', timeType: 'minute' }\"\r\n ></ng-container>\r\n }\r\n }\r\n </div>\r\n @if (isDatePicker()) {\r\n @if (extraFooter()) {\r\n <div class=\"x-date-range-portal-extra-footer\">\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n </div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n</div>\r\n\r\n<ng-template #dateTimeHourMinuteTpl let-timeFormat=\"timeFormat\" let-timeType=\"timeType\">\r\n <div class=\"x-date-range-portal-content\">\r\n <div class=\"x-date-range-portal-date\">\r\n <x-picker-date\r\n [class.x-date-range-portal-start]=\"activeType() === 'start'\"\r\n [class.x-date-range-portal-end]=\"activeType() === 'end'\"\r\n [(display)]=\"timeDisplay\"\r\n [(model)]=\"timeModel\"\r\n [rangeHover]=\"timeHover()\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n rangePicker\r\n ></x-picker-date>\r\n </div>\r\n <div class=\"x-date-range-portal-time\">\r\n <div class=\"x-date-range-portal-time-label\">\r\n {{ time() | date: timeFormat }}\r\n </div>\r\n <x-time-picker-frame\r\n #timePickerFrame\r\n [type]=\"timeType\"\r\n [value]=\"time()\"\r\n (nodeEmit)=\"selectTime($event)\"\r\n [disabledTimeParam]=\"activeType()\"\r\n [disabledTime]=\"disabledTime()\"\r\n [defaultNow]=\"false\"\r\n ></x-time-picker-frame>\r\n </div>\r\n </div>\r\n @if (!isDatePicker() && extraFooter()) {\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n }\r\n <div class=\"x-date-range-portal-footer\">\r\n <div class=\"x-date-range-portal-footer-left\">\r\n @if (!isDatePicker()) {\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n </div>\r\n <x-button type=\"primary\" text (click)=\"!sureDisabled() && sureTime()\" size=\"small\" [disabled]=\"sureDisabled()!\">{{\r\n locale().sure\r\n }}</x-button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #presetTpl>\r\n @if (preset()) {\r\n <div class=\"x-date-range-portal-preset\">\r\n @for (item of preset(); track item) {\r\n @switch (item.id) {\r\n @case ('thisWeek') {\r\n <x-link (click)=\"onPreset('week', 0)\">{{ locale().thisWeek }}</x-link>\r\n }\r\n @case ('lastWeek') {\r\n <x-link (click)=\"onPreset('week', -1)\">{{ locale().lastWeek }}</x-link>\r\n }\r\n @case ('nextWeek') {\r\n <x-link (click)=\"onPreset('week', 1)\">{{ locale().nextWeek }}</x-link>\r\n }\r\n @case ('thisMonth') {\r\n <x-link (click)=\"onPreset('month', 0)\">{{ locale().thisMonth }}</x-link>\r\n }\r\n @case ('lastMonth') {\r\n <x-link (click)=\"onPreset('month', -1)\">{{ locale().lastMonth }}</x-link>\r\n }\r\n @case ('nextMonth') {\r\n <x-link (click)=\"onPreset('month', 1)\">{{ locale().nextMonth }}</x-link>\r\n }\r\n @case ('thisYear') {\r\n <x-link (click)=\"onPreset('year', 0)\">{{ locale().thisYear }}</x-link>\r\n }\r\n @case ('lastYear') {\r\n <x-link (click)=\"onPreset('year', -1)\">{{ locale().lastYear }}</x-link>\r\n }\r\n @case ('nextYear') {\r\n <x-link (click)=\"onPreset('year', 1)\">{{ locale().nextYear }}</x-link>\r\n }\r\n }\r\n @if (!!item.func) {\r\n <x-link (click)=\"onPresetFunc(item)\">{{ item.label }}</x-link>\r\n }\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-date-range-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:34rem;display:flex;flex-direction:column}.x-date-range-portal.week .x-picker-date-body .x-picker-date-item:not(.x-date-in-range):not(.x-date-active) .x-date-text{background-color:transparent}.x-date-range-portal.week .x-picker-date-body tbody tr.x-date-week-in-range:not(.x-date-week-start-active):not(.x-date-week-end-active) .x-picker-date-item{background-color:var(--x-primary-800)}.x-date-range-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):not(.x-date-week-start-active):not(.x-date-week-end-active):not(.x-date-week-in-range):hover .x-picker-date-item{background-color:var(--x-background-a200)}.x-date-range-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):not(.x-date-week-start-active):not(.x-date-week-end-active):not(.x-date-week-in-range):hover .x-picker-date-item:first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-range-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):not(.x-date-week-start-active):not(.x-date-week-end-active):not(.x-date-week-in-range):hover .x-picker-date-item:last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-range-portal.date-time{width:27rem}.x-date-range-portal.date-time .x-date-range-portal-body{flex-direction:column}.x-date-range-portal.date-hour{width:19.75rem}.x-date-range-portal.date-hour .x-date-range-portal-body{flex-direction:column}.x-date-range-portal.date-minute{width:23.375rem}.x-date-range-portal.date-minute .x-date-range-portal-body{flex-direction:column}.x-date-range-portal-content{display:flex}.x-date-range-portal-preset{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;border-top:var(--x-border-width) solid var(--x-border)}.x-date-range-portal-preset>x-link{padding:.25rem}.x-date-range-portal-preset>x-link:not(:first-child){margin-left:1rem}.x-date-range-portal-extra-footer{display:flex;align-items:center;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-range-portal-year-month{flex:1;text-align:center}.x-date-range-portal-body{display:flex}.x-date-range-portal-body .x-picker-date-item:before,.x-date-range-portal-body .x-picker-date-item:after{position:absolute;top:50%;right:0;left:0;z-index:1;border:var(--x-border-width) dashed transparent;transform:translateY(-50%);transition:var(--x-animation-duration-base);content:\"\"}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next),.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next){color:var(--x-background-100)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next) .x-date-text,.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next):hover,.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next):hover .x-date-text,.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-date-range-portal-body .x-picker-date-item.x-date-range-end-left:not(.x-date-last-or-next):not(.x-date-first-day):not(:first-child) .x-date-text{z-index:1}.x-date-range-portal-body .x-picker-date-item.x-date-range-end-left:not(.x-date-last-or-next):not(.x-date-first-day):not(:first-child):after{background-color:var(--x-primary-800);transform:translate(-.25rem,-50%);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius);z-index:0}.x-date-range-portal-body .x-picker-date-item.x-date-range-end-left:not(.x-date-last-or-next):not(.x-date-first-day):not(:first-child).x-date-in-range-hover:after{background-color:var(--x-primary-700)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child) .x-date-text{z-index:1}.x-date-range-portal-body .x-picker-date-item.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child):after{background-color:var(--x-primary-800);transform:translate(.25rem,-50%);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);z-index:0}.x-date-range-portal-body .x-picker-date-item.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child).x-date-in-range-hover:after{background-color:var(--x-primary-700)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start.x-date-range-end.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child):after{display:none}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{position:relative;z-index:1}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next):before{background-color:var(--x-primary-800);z-index:0}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next):first-child:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next):last-child:before{transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next).x-date-in-range-hover-left:before{transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next).x-date-in-range-hover-right:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next).x-date-in-range-hover:before{background-color:var(--x-primary-700)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:not(.x-date-last-or-next):before{border-color:var(--x-primary);border-left-color:transparent;border-right-color:transparent;transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-first-day:before{border-left-color:var(--x-primary);transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-last-day:before{border-right-color:var(--x-primary);transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-start:not(.x-date-last-or-next):before{border-left-color:var(--x-primary);transform:translate(.25rem,-50%);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-range-hover-start:not(.x-date-last-or-next):before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-end:not(.x-date-last-or-next):before{border-right-color:var(--x-primary);transform:translate(-.25rem,-50%);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-start-left:not(:first-child):not(.x-date-last-or-next):not(.x-date-first-day):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-end-left:not(:first-child):not(.x-date-last-or-next):not(.x-date-first-day):before{border-top-color:var(--x-primary);border-bottom-color:var(--x-primary);transform:translate(-.3125rem,-50%);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-start-right:not(:last-child):not(.x-date-last-or-next):not(.x-date-last-day):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-end-right:not(:last-child):not(.x-date-last-or-next):not(.x-date-last-day):before{border-top-color:var(--x-primary);border-bottom-color:var(--x-primary);transform:translate(.3125rem,-50%);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-range-portal-start,.x-date-range-portal-end{flex:1}.x-date-range-portal-footer{display:flex;align-items:center;justify-content:space-between;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-range-portal-footer .x-date-range-portal-preset{border-top:none}.x-date-range-portal-footer .x-date-range-portal-preset>x-link{padding:0 .25rem}.x-date-range-portal-date{flex:1}.x-date-range-portal-time{display:flex;flex-direction:column;border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-range-portal-time-label{display:flex;align-items:center;justify-content:center;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-range-portal-time .x-time-picker-frame{border-width:0;box-shadow:none;margin:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "component", type: XPickerDateComponent, selector: "x-picker-date" }, { kind: "component", type: XPickerMonthComponent, selector: "x-picker-month" }, { kind: "component", type: XPickerYearComponent, selector: "x-picker-year" }, { kind: "component", type: XPickerQuarterComponent, selector: "x-picker-quarter" }, { kind: "ngmodule", type: XTimePickerModule }, { kind: "component", type: i1.XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: ["type", "value", "use12Hours", "hourStep", "minuteStep", "secondStep", "defaultNow", "disabledTime", "disabledTimeParam"], outputs: ["nodeEmit"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2618
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateRangePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2619
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XDateRangePortalComponent, isStandalone: true, selector: "x-date-range-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, preset: { classPropertyName: "preset", publicName: "preset", isSignal: true, isRequired: false, transformFunction: null }, extraFooter: { classPropertyName: "extraFooter", publicName: "extraFooter", isSignal: true, isRequired: false, transformFunction: null }, disabledDate: { classPropertyName: "disabledDate", publicName: "disabledDate", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, activeType: { classPropertyName: "activeType", publicName: "activeType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", type: "typeChange", animating: "animating", nodeClick: "nodeClick", startNodeChanged: "startNodeChanged", endNodeChanged: "endNodeChanged" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, providers: [DatePipe, LowerCasePipe], viewQueries: [{ propertyName: "startPicker", first: true, predicate: ["startPicker"], descendants: true, isSignal: true }, { propertyName: "endPicker", first: true, predicate: ["endPicker"], descendants: true, isSignal: true }, { propertyName: "timePickerFrame", first: true, predicate: ["timePickerFrame"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"x-date-range-portal {{ type() }}\">\r\n <div class=\"x-date-range-portal-body\">\r\n @switch (type()) {\r\n @case ('date') {\r\n <x-picker-date\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [nextMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n <x-picker-date\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [lastMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n }\r\n @case ('week') {\r\n <x-picker-date\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n type=\"week\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [nextMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n <x-picker-date\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n type=\"week\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [lastMonthBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-date>\r\n }\r\n @case ('month') {\r\n <x-picker-month\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-month>\r\n <x-picker-month\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-month>\r\n }\r\n @case ('quarter') {\r\n <x-picker-quarter\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-quarter>\r\n <x-picker-quarter\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-quarter>\r\n }\r\n @case ('year') {\r\n <x-picker-year\r\n #startPicker\r\n class=\"x-date-range-portal-start\"\r\n [(display)]=\"startDisplay\"\r\n [(model)]=\"startModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [nextYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'start')\"\r\n (monthChange)=\"monthChange($event, 'start')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-year>\r\n <x-picker-year\r\n #endPicker\r\n class=\"x-date-range-portal-end\"\r\n [(display)]=\"endDisplay\"\r\n [(model)]=\"endModel\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [lastYearBtn]=\"false\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n (yearChange)=\"yearChange($event, 'end')\"\r\n (monthChange)=\"monthChange($event, 'end')\"\r\n (rangeTdMouseenter)=\"setDatesState($event)\"\r\n rangePicker\r\n ></x-picker-year>\r\n }\r\n @case ('date-time') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm:ss', timeType: 'time' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-hour') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH', timeType: 'hour' }\"\r\n ></ng-container>\r\n }\r\n @case ('date-minute') {\r\n <ng-container\r\n *ngTemplateOutlet=\"dateTimeHourMinuteTpl; context: { timeFormat: 'HH:mm', timeType: 'minute' }\"\r\n ></ng-container>\r\n }\r\n }\r\n </div>\r\n @if (isDatePicker()) {\r\n @if (extraFooter()) {\r\n <div class=\"x-date-range-portal-extra-footer\">\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n </div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n</div>\r\n\r\n<ng-template #dateTimeHourMinuteTpl let-timeFormat=\"timeFormat\" let-timeType=\"timeType\">\r\n <div class=\"x-date-range-portal-content\">\r\n <div class=\"x-date-range-portal-date\">\r\n <x-picker-date\r\n [class.x-date-range-portal-start]=\"activeType() === 'start'\"\r\n [class.x-date-range-portal-end]=\"activeType() === 'end'\"\r\n [(display)]=\"timeDisplay\"\r\n [(model)]=\"timeModel\"\r\n [rangeHover]=\"timeHover()\"\r\n [rangeValue]=\"value()\"\r\n [rangeType]=\"activeType()\"\r\n [disabledDate]=\"disabledDate()\"\r\n (modelChange)=\"dateChange($event!)\"\r\n rangePicker\r\n ></x-picker-date>\r\n </div>\r\n <div class=\"x-date-range-portal-time\">\r\n <div class=\"x-date-range-portal-time-label\">\r\n {{ time() | date: timeFormat }}\r\n </div>\r\n <x-time-picker-frame\r\n #timePickerFrame\r\n [type]=\"timeType\"\r\n [value]=\"time()\"\r\n (nodeEmit)=\"selectTime($event)\"\r\n [disabledTimeParam]=\"activeType()\"\r\n [disabledTime]=\"disabledTime()\"\r\n [defaultNow]=\"false\"\r\n ></x-time-picker-frame>\r\n </div>\r\n </div>\r\n @if (!isDatePicker() && extraFooter()) {\r\n <ng-container *xOutlet=\"extraFooter()\">{{ extraFooter() }}</ng-container>\r\n }\r\n <div class=\"x-date-range-portal-footer\">\r\n <div class=\"x-date-range-portal-footer-left\">\r\n @if (!isDatePicker()) {\r\n <ng-container *ngTemplateOutlet=\"presetTpl\"></ng-container>\r\n }\r\n </div>\r\n <x-button type=\"primary\" text (click)=\"!sureDisabled() && sureTime()\" size=\"small\" [disabled]=\"sureDisabled()!\">{{\r\n locale().sure\r\n }}</x-button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #presetTpl>\r\n @if (preset()) {\r\n <div class=\"x-date-range-portal-preset\">\r\n @for (item of preset(); track item) {\r\n @switch (item.id) {\r\n @case ('thisWeek') {\r\n <x-link (click)=\"onPreset('week', 0)\">{{ locale().thisWeek }}</x-link>\r\n }\r\n @case ('lastWeek') {\r\n <x-link (click)=\"onPreset('week', -1)\">{{ locale().lastWeek }}</x-link>\r\n }\r\n @case ('nextWeek') {\r\n <x-link (click)=\"onPreset('week', 1)\">{{ locale().nextWeek }}</x-link>\r\n }\r\n @case ('thisMonth') {\r\n <x-link (click)=\"onPreset('month', 0)\">{{ locale().thisMonth }}</x-link>\r\n }\r\n @case ('lastMonth') {\r\n <x-link (click)=\"onPreset('month', -1)\">{{ locale().lastMonth }}</x-link>\r\n }\r\n @case ('nextMonth') {\r\n <x-link (click)=\"onPreset('month', 1)\">{{ locale().nextMonth }}</x-link>\r\n }\r\n @case ('thisYear') {\r\n <x-link (click)=\"onPreset('year', 0)\">{{ locale().thisYear }}</x-link>\r\n }\r\n @case ('lastYear') {\r\n <x-link (click)=\"onPreset('year', -1)\">{{ locale().lastYear }}</x-link>\r\n }\r\n @case ('nextYear') {\r\n <x-link (click)=\"onPreset('year', 1)\">{{ locale().nextYear }}</x-link>\r\n }\r\n }\r\n @if (!!item.func) {\r\n <x-link (click)=\"onPresetFunc(item)\">{{ item.label }}</x-link>\r\n }\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-date-range-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:34rem;display:flex;flex-direction:column}.x-date-range-portal.week .x-picker-date-body .x-picker-date-item:not(.x-date-in-range):not(.x-date-active) .x-date-text{background-color:transparent}.x-date-range-portal.week .x-picker-date-body tbody tr.x-date-week-in-range:not(.x-date-week-start-active):not(.x-date-week-end-active) .x-picker-date-item{background-color:var(--x-primary-800)}.x-date-range-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):not(.x-date-week-start-active):not(.x-date-week-end-active):not(.x-date-week-in-range):hover .x-picker-date-item{background-color:var(--x-background-a200)}.x-date-range-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):not(.x-date-week-start-active):not(.x-date-week-end-active):not(.x-date-week-in-range):hover .x-picker-date-item:first-child{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-range-portal.week .x-picker-date-body tbody tr:not(.x-date-week-active):not(.x-date-week-start-active):not(.x-date-week-end-active):not(.x-date-week-in-range):hover .x-picker-date-item:last-child{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-range-portal.date-time{width:27rem}.x-date-range-portal.date-time .x-date-range-portal-body{flex-direction:column}.x-date-range-portal.date-hour{width:19.75rem}.x-date-range-portal.date-hour .x-date-range-portal-body{flex-direction:column}.x-date-range-portal.date-minute{width:23.375rem}.x-date-range-portal.date-minute .x-date-range-portal-body{flex-direction:column}.x-date-range-portal-content{display:flex}.x-date-range-portal-preset{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;border-top:var(--x-border-width) solid var(--x-border)}.x-date-range-portal-preset>x-link{padding:.25rem}.x-date-range-portal-preset>x-link:not(:first-child){margin-left:1rem}.x-date-range-portal-extra-footer{display:flex;align-items:center;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-range-portal-year-month{flex:1;text-align:center}.x-date-range-portal-body{display:flex}.x-date-range-portal-body .x-picker-date-item:before,.x-date-range-portal-body .x-picker-date-item:after{position:absolute;top:50%;right:0;left:0;z-index:1;border:var(--x-border-width) dashed transparent;transform:translateY(-50%);transition:var(--x-animation-duration-base);content:\"\"}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next),.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next){color:var(--x-background-100)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next) .x-date-text,.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next) .x-date-text{background-color:var(--x-primary);border-color:var(--x-primary)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next):hover,.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next):hover{color:var(--x-background-100)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start:not(.x-date-last-or-next):hover .x-date-text,.x-date-range-portal-body .x-picker-date-item.x-date-range-end:not(.x-date-last-or-next):hover .x-date-text{background-color:var(--x-primary)}.x-date-range-portal-body .x-picker-date-item.x-date-range-end-left:not(.x-date-last-or-next):not(.x-date-first-day):not(:first-child) .x-date-text{z-index:1}.x-date-range-portal-body .x-picker-date-item.x-date-range-end-left:not(.x-date-last-or-next):not(.x-date-first-day):not(:first-child):after{background-color:var(--x-primary-800);transform:translate(-.25rem,-50%);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius);z-index:0}.x-date-range-portal-body .x-picker-date-item.x-date-range-end-left:not(.x-date-last-or-next):not(.x-date-first-day):not(:first-child).x-date-in-range-hover:after{background-color:var(--x-primary-700)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child) .x-date-text{z-index:1}.x-date-range-portal-body .x-picker-date-item.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child):after{background-color:var(--x-primary-800);transform:translate(.25rem,-50%);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);z-index:0}.x-date-range-portal-body .x-picker-date-item.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child).x-date-in-range-hover:after{background-color:var(--x-primary-700)}.x-date-range-portal-body .x-picker-date-item.x-date-range-start.x-date-range-end.x-date-range-start-right:not(.x-date-last-or-next):not(.x-date-last-day):not(:last-child):after{display:none}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next) .x-date-text{position:relative;z-index:1}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next):before{background-color:var(--x-primary-800);z-index:0}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next):first-child:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next):last-child:before{transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next).x-date-in-range-hover-left:before{transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next).x-date-in-range-hover-right:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-in-range:not(.x-date-range-start):not(.x-date-range-end):not(.x-date-last-or-next).x-date-in-range-hover:before{background-color:var(--x-primary-700)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:not(.x-date-last-or-next):before{border-color:var(--x-primary);border-left-color:transparent;border-right-color:transparent;transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-first-day:before{border-left-color:var(--x-primary);transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:first-child:not(.x-date-last-or-next).x-date-range-hover-end:before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-first-day.x-date-range-hover-end:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-first-day:last-child:not(.x-date-last-or-next):before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-last-day:before{border-right-color:var(--x-primary);transform:translate(-.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover:last-child:not(.x-date-last-or-next).x-date-range-hover-start:before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-last-day.x-date-range-hover-start:before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-start:not(.x-date-last-or-next):before{border-left-color:var(--x-primary);transform:translate(.25rem,-50%);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover.x-date-range-hover-start:not(.x-date-last-or-next):before{transform:translate(.25rem,-50%)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-end:not(.x-date-last-or-next):before{border-right-color:var(--x-primary);transform:translate(-.25rem,-50%);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-start-left:not(:first-child):not(.x-date-last-or-next):not(.x-date-first-day):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-end-left:not(:first-child):not(.x-date-last-or-next):not(.x-date-first-day):before{border-top-color:var(--x-primary);border-bottom-color:var(--x-primary);transform:translate(-.3125rem,-50%);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-start-right:not(:last-child):not(.x-date-last-or-next):not(.x-date-last-day):before,.x-date-range-portal-body .x-picker-date-item.x-date-range-hover-end-right:not(:last-child):not(.x-date-last-or-next):not(.x-date-last-day):before{border-top-color:var(--x-primary);border-bottom-color:var(--x-primary);transform:translate(.3125rem,-50%);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-date-range-portal-start,.x-date-range-portal-end{flex:1}.x-date-range-portal-footer{display:flex;align-items:center;justify-content:space-between;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);padding:.5rem}.x-date-range-portal-footer .x-date-range-portal-preset{border-top:none}.x-date-range-portal-footer .x-date-range-portal-preset>x-link{padding:0 .25rem}.x-date-range-portal-date{flex:1}.x-date-range-portal-time{display:flex;flex-direction:column;border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-range-portal-time-label{display:flex;align-items:center;justify-content:center;padding:0 .5rem;height:2.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-date-range-portal-time .x-time-picker-frame{border-width:0;box-shadow:none;margin:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XPickerDateComponent, selector: "x-picker-date" }, { kind: "component", type: XPickerMonthComponent, selector: "x-picker-month" }, { kind: "component", type: XPickerYearComponent, selector: "x-picker-year" }, { kind: "component", type: XPickerQuarterComponent, selector: "x-picker-quarter" }, { kind: "ngmodule", type: XTimePickerModule }, { kind: "component", type: i1.XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: ["type", "value", "use12Hours", "hourStep", "minuteStep", "secondStep", "defaultNow", "disabledTime", "disabledTimeParam"], outputs: ["nodeEmit"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "pipe", type: DatePipe, name: "date" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2600
2620
  }
2601
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateRangePortalComponent, decorators: [{
2621
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateRangePortalComponent, decorators: [{
2602
2622
  type: Component,
2603
2623
  args: [{ selector: `${XDateRangePortalPrefix}`, imports: [
2604
2624
  NgTemplateOutlet,
@@ -2694,19 +2714,19 @@ class XDateRangeComponent extends XDateRangeProperty {
2694
2714
  this.inputGroup = viewChild.required('inputGroup', { read: XInputGroupComponent });
2695
2715
  this.inputStartCom = viewChild.required('inputStartCom', { read: XInputComponent });
2696
2716
  this.inputEndCom = viewChild.required('inputEndCom', { read: XInputComponent });
2697
- this.modelType = signal('date');
2698
- this.numberValue = signal([]);
2699
- this.isInput = signal(false);
2700
- this.showClearable = signal(false);
2701
- this.enter = signal(false);
2702
- this.inputClearable = signal(false);
2703
- this.animating = signal(false);
2704
- this.displayValue = signal([]);
2705
- this.icon = signal('fto-calendar');
2717
+ this.modelType = signal('date', ...(ngDevMode ? [{ debugName: "modelType" }] : []));
2718
+ this.numberValue = signal([], ...(ngDevMode ? [{ debugName: "numberValue" }] : []));
2719
+ this.isInput = signal(false, ...(ngDevMode ? [{ debugName: "isInput" }] : []));
2720
+ this.showClearable = signal(false, ...(ngDevMode ? [{ debugName: "showClearable" }] : []));
2721
+ this.enter = signal(false, ...(ngDevMode ? [{ debugName: "enter" }] : []));
2722
+ this.inputClearable = signal(false, ...(ngDevMode ? [{ debugName: "inputClearable" }] : []));
2723
+ this.animating = signal(false, ...(ngDevMode ? [{ debugName: "animating" }] : []));
2724
+ this.displayValue = signal([], ...(ngDevMode ? [{ debugName: "displayValue" }] : []));
2725
+ this.icon = signal('fto-calendar', ...(ngDevMode ? [{ debugName: "icon" }] : []));
2706
2726
  this.closeSubject = new Subject();
2707
- this.startDisplay = signal('');
2708
- this.endDisplay = signal('');
2709
- this.activeType = signal('start');
2727
+ this.startDisplay = signal('', ...(ngDevMode ? [{ debugName: "startDisplay" }] : []));
2728
+ this.endDisplay = signal('', ...(ngDevMode ? [{ debugName: "endDisplay" }] : []));
2729
+ this.activeType = signal('start', ...(ngDevMode ? [{ debugName: "activeType" }] : []));
2710
2730
  this.unSubject = new Subject();
2711
2731
  this.document = inject(DOCUMENT);
2712
2732
  this.elementRef = inject(ElementRef);
@@ -2723,10 +2743,10 @@ class XDateRangeComponent extends XDateRangeProperty {
2723
2743
  [`x-justify-${this.justify()}`]: !!this.justify(),
2724
2744
  [`x-align-${this.align()}`]: !!this.align(),
2725
2745
  [`x-direction-${this.direction()}`]: !!this.direction()
2726
- }));
2746
+ }), ...(ngDevMode ? [{ debugName: "classMap" }] : []));
2727
2747
  this.labelMapSignal = computed(() => ({
2728
2748
  [`x-text-align-${this.labelAlign()}`]: !!this.labelAlign()
2729
- }));
2749
+ }), ...(ngDevMode ? [{ debugName: "labelMapSignal" }] : []));
2730
2750
  this.formatSignal = computed(() => {
2731
2751
  if (this.format() !== 'yyyy-MM-dd')
2732
2752
  return this.format();
@@ -2749,24 +2769,24 @@ class XDateRangeComponent extends XDateRangeProperty {
2749
2769
  return 'yyyy-MM-dd HH:mm';
2750
2770
  }
2751
2771
  return this.format();
2752
- });
2772
+ }, ...(ngDevMode ? [{ debugName: "formatSignal" }] : []));
2753
2773
  this.getValue = computed(() => {
2754
2774
  return this.modelType() === 'date'
2755
2775
  ? this.numberValue().map((x) => new Date(x))
2756
2776
  : this.modelType() === 'string'
2757
2777
  ? this.numberValue().map((x) => this.datePipe.transform(x, this.formatSignal()))
2758
2778
  : this.numberValue();
2759
- });
2779
+ }, ...(ngDevMode ? [{ debugName: "getValue" }] : []));
2760
2780
  this.getNumberValue = computed(() => {
2761
2781
  return this.modelType() === 'date'
2762
2782
  ? this.value().map((x) => x.getTime())
2763
2783
  : this.modelType() === 'string'
2764
2784
  ? this.value().map((x) => new Date(x).getTime())
2765
2785
  : this.value();
2766
- });
2767
- this.realPlacement = signal(null);
2768
- this.portalComponent = signal(null);
2769
- this.portalOverlayRef = signal(null);
2786
+ }, ...(ngDevMode ? [{ debugName: "getNumberValue" }] : []));
2787
+ this.realPlacement = signal(null, ...(ngDevMode ? [{ debugName: "realPlacement" }] : []));
2788
+ this.portalComponent = signal(null, ...(ngDevMode ? [{ debugName: "portalComponent" }] : []));
2789
+ this.portalOverlayRef = signal(null, ...(ngDevMode ? [{ debugName: "portalOverlayRef" }] : []));
2770
2790
  effect(() => this.portalComponent()?.setInput('value', this.numberValue()));
2771
2791
  effect(() => this.portalComponent()?.setInput('placement', this.realPlacement()));
2772
2792
  effect(() => this.portalComponent()?.setInput('activeType', this.activeType()));
@@ -3028,23 +3048,23 @@ class XDateRangeComponent extends XDateRangeProperty {
3028
3048
  formControlChanges() {
3029
3049
  this.ngOnInit();
3030
3050
  }
3031
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3032
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XDateRangeComponent, isStandalone: true, selector: "x-date-range", host: { properties: { "class": "this.className" } }, providers: [XValueAccessor(XDateRangeComponent), DatePipe], viewQueries: [{ propertyName: "dateRange", first: true, predicate: ["dateRange"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputGroup", first: true, predicate: ["inputGroup"], descendants: true, read: XInputGroupComponent, isSignal: true }, { propertyName: "inputStartCom", first: true, predicate: ["inputStartCom"], descendants: true, read: XInputComponent, isSignal: true }, { propertyName: "inputEndCom", first: true, predicate: ["inputEndCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #dateRange\r\n class=\"x-date-range\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-checked]=\"value()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-date-range-bordered]=\"bordered()\"\r\n [class.x-date-range-filled]=\"variant() === 'filled'\"\r\n [class.x-date-range-borderless]=\"variant() === 'borderless' || (variant() === 'outlined' && !bordered())\"\r\n [class.x-date-range-underlined]=\"variant() === 'underlined'\"\r\n [class.x-date-range-active]=\"active()\"\r\n [class.x-date-range-active-start]=\"activeType() === 'start'\"\r\n [class.x-date-range-active-end]=\"activeType() === 'end'\"\r\n>\r\n @if (label()) {\r\n <label [class.x-date-range-label-required]=\"required()\" [style.width]=\"labelWidth()\" [ngClass]=\"labelMapSignal()\">{{\r\n label()\r\n }}</label>\r\n }\r\n <div class=\"x-date-range-row\">\r\n <x-input-group\r\n #inputGroup\r\n class=\"x-date-range-group\"\r\n (mouseenter)=\"menter()\"\r\n (mouseleave)=\"mleave()\"\r\n (click)=\"showPortal($event)\"\r\n >\r\n <x-input\r\n #inputStartCom\r\n class=\"x-date-range-input x-date-range-input-start\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [before]=\"before()\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"startPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n (xFocus)=\"onFocus('start')\"\r\n (xClick)=\"showPortal($event, 'start')\"\r\n [(ngModel)]=\"startDisplay\"\r\n icon=\"fto-arrow-right\"\r\n ></x-input>\r\n <x-input\r\n #inputEndCom\r\n class=\"x-date-range-input x-date-range-input-end\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"endPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n (xFocus)=\"onFocus('end')\"\r\n (xClick)=\"showPortal($event, 'end')\"\r\n [(ngModel)]=\"endDisplay\"\r\n [icon]=\"icon()\"\r\n (clearEmit)=\"clearEmit()\"\r\n [clearable]=\"showClearable()\"\r\n [after]=\"after()\"\r\n ></x-input>\r\n @if (active()) {\r\n <div class=\"x-date-range-active-bar\"></div>\r\n }\r\n </x-input-group>\r\n @if (invalid()) {\r\n <span class=\"x-date-range-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-range{display:inline-block;width:18rem}x-date-range.x-date-range-date-time{width:26rem}x-date-range.x-date-range-date-minute{width:21rem}x-date-range.x-date-range-date-hour{width:19rem}.x-date-range{margin:0;padding:0}.x-date-range{width:100%}.x-date-range.x-flex{display:flex}.x-date-range.x-justify-start{justify-content:flex-start}.x-date-range.x-justify-center{justify-content:center}.x-date-range.x-justify-end{justify-content:flex-end}.x-date-range.x-justify-space-between{justify-content:space-between}.x-date-range.x-justify-space-around{justify-content:space-around}.x-date-range.x-align-start{align-items:flex-start}.x-date-range.x-align-center{align-items:center}.x-date-range.x-align-end{align-items:flex-end}.x-date-range.x-direction-column{flex-direction:column}.x-date-range.x-direction-column-reverse{flex-direction:column-reverse}.x-date-range.x-direction-row{flex-direction:row}.x-date-range.x-direction-row-reverse{flex-direction:row-reverse}.x-date-range>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-date-range>label.x-text-align-start{text-align:start}.x-date-range>label.x-text-align-center{text-align:center}.x-date-range>label.x-text-align-end{text-align:end}.x-date-range.x-direction-row>label{padding:0 .5rem 0 0}.x-date-range.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-date-range.x-direction-column,.x-date-range.x-direction-column-reverse{align-items:inherit}.x-date-range-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-date-range-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-date-range.x-invalid>label,.x-date-range.x-required>label{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-input x-icon,.x-date-range.x-required .x-date-range-input x-icon{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error,.x-date-range.x-required .x-date-range-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range-row{flex:1;display:flex;align-items:center;position:relative}.x-date-range-group{width:100%;font-size:var(--x-font-size);background-image:none;box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);border-radius:var(--x-border-radius)}.x-date-range-group .x-input-group{display:flex;align-items:center;position:relative}.x-date-range-group .x-input-group>x-input{flex:1;width:50%}.x-date-range-group .x-input-group>x-input input{padding-left:var(--x-padding-medium)!important;padding-right:var(--x-padding-medium)!important}.x-date-range-group .x-input-group>x-input .x-input-row>.x-input-input>input{box-shadow:none}.x-date-range-bordered .x-date-range-group{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-date-range-bordered .x-date-range-group .x-input-group>x-input input{background-color:transparent}.x-date-range-bordered:not(.x-disabled) .x-date-range-group:hover{border-color:var(--x-primary-300)}.x-date-range-filled .x-date-range-group{border-color:transparent;background-color:var(--x-background-a200)}.x-date-range-filled:not(.x-disabled) .x-date-range-group:hover{background-color:var(--x-background-a300)}.x-date-range-filled:not(.x-disabled).x-date-range-active .x-date-range-group{border-color:var(--x-primary);background-color:var(--x-background)}.x-date-range-borderless .x-date-range-group{border:none}.x-date-range-underlined .x-date-range-group{border-width:0 0 var(--x-border-width);border-radius:0}.x-date-range-active-bar{position:absolute;height:.125rem;margin-left:.4rem;bottom:-.0625rem;width:calc(50% - 2.2rem);background-color:var(--x-primary);transition:var(--x-animation-duration-base)}.x-date-range-active .x-date-range-group{border-color:var(--x-primary)}.x-date-range-active-start .x-date-range-active-bar{left:0}.x-date-range-active-end .x-date-range-active-bar{left:50%}.x-date-range-input-start .x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-date-range-input-end .x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-date-range-big>.x-date-range-row .x-date-range-input input{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>.x-date-range-row{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-large>.x-date-range-row .x-date-range-input input{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>.x-date-range-row{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-medium>.x-date-range-row .x-date-range-input input{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>.x-date-range-row{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-small>.x-date-range-row .x-date-range-input input{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>.x-date-range-row{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-mini>.x-date-range-row .x-date-range-input input{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>.x-date-range-row{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "component", type: XInputGroupComponent, selector: "x-input-group" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
3051
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3052
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XDateRangeComponent, isStandalone: true, selector: "x-date-range", host: { properties: { "class": "this.className" } }, providers: [XValueAccessor(XDateRangeComponent), DatePipe], viewQueries: [{ propertyName: "dateRange", first: true, predicate: ["dateRange"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputGroup", first: true, predicate: ["inputGroup"], descendants: true, read: XInputGroupComponent, isSignal: true }, { propertyName: "inputStartCom", first: true, predicate: ["inputStartCom"], descendants: true, read: XInputComponent, isSignal: true }, { propertyName: "inputEndCom", first: true, predicate: ["inputEndCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #dateRange\r\n class=\"x-date-range\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-checked]=\"value()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-date-range-bordered]=\"bordered()\"\r\n [class.x-date-range-filled]=\"variant() === 'filled'\"\r\n [class.x-date-range-borderless]=\"variant() === 'borderless' || (variant() === 'outlined' && !bordered())\"\r\n [class.x-date-range-underlined]=\"variant() === 'underlined'\"\r\n [class.x-date-range-active]=\"active()\"\r\n [class.x-date-range-active-start]=\"activeType() === 'start'\"\r\n [class.x-date-range-active-end]=\"activeType() === 'end'\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-date-range-label-required]=\"required()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n *xOutlet=\"label()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-date-range-row\">\r\n <x-input-group\r\n #inputGroup\r\n class=\"x-date-range-group\"\r\n (mouseenter)=\"menter()\"\r\n (mouseleave)=\"mleave()\"\r\n (click)=\"showPortal($event)\"\r\n >\r\n <x-input\r\n #inputStartCom\r\n class=\"x-date-range-input x-date-range-input-start\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [before]=\"before()\"\r\n [label]=\"!!floatLabel() ? startPlaceholder()! : ''\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"startPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n (xFocus)=\"onFocus('start')\"\r\n (xClick)=\"showPortal($event, 'start')\"\r\n [(ngModel)]=\"startDisplay\"\r\n icon=\"fto-arrow-right\"\r\n ></x-input>\r\n <x-input\r\n #inputEndCom\r\n class=\"x-date-range-input x-date-range-input-end\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [label]=\"!!floatLabel() ? endPlaceholder()! : ''\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"endPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n (xFocus)=\"onFocus('end')\"\r\n (xClick)=\"showPortal($event, 'end')\"\r\n [(ngModel)]=\"endDisplay\"\r\n [icon]=\"icon()\"\r\n (clearEmit)=\"clearEmit()\"\r\n [clearable]=\"showClearable()\"\r\n [after]=\"after()\"\r\n ></x-input>\r\n @if (active()) {\r\n <div class=\"x-date-range-active-bar\"></div>\r\n }\r\n </x-input-group>\r\n @if (invalid()) {\r\n <span class=\"x-date-range-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-range{display:inline-block;width:18rem}x-date-range.x-date-range-date-time{width:26rem}x-date-range.x-date-range-date-minute{width:21rem}x-date-range.x-date-range-date-hour{width:19rem}.x-date-range{margin:0;padding:0}.x-date-range{width:100%}.x-date-range.x-flex{display:flex}.x-date-range.x-justify-start{justify-content:flex-start}.x-date-range.x-justify-center{justify-content:center}.x-date-range.x-justify-end{justify-content:flex-end}.x-date-range.x-justify-space-between{justify-content:space-between}.x-date-range.x-justify-space-around{justify-content:space-around}.x-date-range.x-align-start{align-items:flex-start}.x-date-range.x-align-center{align-items:center}.x-date-range.x-align-end{align-items:flex-end}.x-date-range.x-direction-column{flex-direction:column}.x-date-range.x-direction-column-reverse{flex-direction:column-reverse}.x-date-range.x-direction-row{flex-direction:row}.x-date-range.x-direction-row-reverse{flex-direction:row-reverse}.x-date-range>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:500}.x-date-range>label.x-text-align-start{text-align:start}.x-date-range>label.x-text-align-center{text-align:center}.x-date-range>label.x-text-align-end{text-align:end}.x-date-range.x-direction-row>label{padding:0 .5rem 0 0}.x-date-range.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-date-range.x-direction-column,.x-date-range.x-direction-column-reverse{align-items:inherit}.x-date-range-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-date-range-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-date-range.x-invalid>label,.x-date-range.x-required>label{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-input x-icon,.x-date-range.x-required .x-date-range-input x-icon{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error,.x-date-range.x-required .x-date-range-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range-row{flex:1;display:flex;align-items:center;position:relative}.x-date-range-group{width:100%;font-size:var(--x-font-size);background-image:none;box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);border-radius:var(--x-border-radius)}.x-date-range-group .x-input-group{display:flex;align-items:center;position:relative}.x-date-range-group .x-input-group>x-input{flex:1;width:50%}.x-date-range-group .x-input-group>x-input input{padding-left:.75rem!important;padding-right:.75rem!important}.x-date-range-group .x-input-group>x-input .x-input-row>.x-input-input>input{box-shadow:none}.x-date-range-bordered .x-date-range-group{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-date-range-bordered .x-date-range-group .x-input-group>x-input input{background-color:transparent}.x-date-range-bordered:not(.x-disabled) .x-date-range-group:hover{border-color:var(--x-primary-300)}.x-date-range-filled .x-date-range-group{border-color:transparent;background-color:var(--x-background-a200)}.x-date-range-filled:not(.x-disabled) .x-date-range-group:hover{background-color:var(--x-background-a300)}.x-date-range-filled:not(.x-disabled).x-date-range-active .x-date-range-group{border-color:var(--x-primary);background-color:var(--x-background)}.x-date-range-borderless .x-date-range-group{border:none}.x-date-range-underlined .x-date-range-group{border-width:0 0 var(--x-border-width);border-radius:0}.x-date-range-active-bar{position:absolute;height:.125rem;margin-left:.4rem;bottom:-.0625rem;width:calc(50% - 2.2rem);background-color:var(--x-primary);transition:var(--x-animation-duration-base)}.x-date-range-active .x-date-range-group{border-color:var(--x-primary)}.x-date-range-active-start .x-date-range-active-bar{left:0}.x-date-range-active-end .x-date-range-active-bar{left:50%}.x-date-range-input-start .x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-date-range-input-end .x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-date-range .x-input-mini.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-mini.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-mini.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-mini.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-mini.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-mini.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-mini.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-mini.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-mini.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-small.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-small.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-small.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-small.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-small.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-small.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-small.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-small.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-small.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-medium.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-medium.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-medium.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-medium.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-medium.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-medium.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-medium.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-medium.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-medium.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-large.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-large.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-large.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-large.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-large.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-large.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-large.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-large.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-large.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-big.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-big.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-big.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-big.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-big.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-big.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-big.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-big.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-big.x-input-float-label-in.x-input-active>label{margin-left:.75rem!important}.x-date-range-big>.x-date-range-row .x-date-range-input input{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>.x-date-range-row{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-large>.x-date-range-row .x-date-range-input input{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>.x-date-range-row{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-medium>.x-date-range-row .x-date-range-input input{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>.x-date-range-row{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-small>.x-date-range-row .x-date-range-input input{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>.x-date-range-row{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-mini>.x-date-range-row .x-date-range-input input{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>.x-date-range-row{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "component", type: XInputGroupComponent, selector: "x-input-group" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
3033
3053
  }
3034
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDateRangeComponent, decorators: [{
3054
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDateRangeComponent, decorators: [{
3035
3055
  type: Component,
3036
- args: [{ selector: `${XDateRangePrefix}`, imports: [NgClass, FormsModule, XInputComponent, XInputGroupComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XDateRangeComponent), DatePipe], template: "<div\r\n #dateRange\r\n class=\"x-date-range\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-checked]=\"value()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-date-range-bordered]=\"bordered()\"\r\n [class.x-date-range-filled]=\"variant() === 'filled'\"\r\n [class.x-date-range-borderless]=\"variant() === 'borderless' || (variant() === 'outlined' && !bordered())\"\r\n [class.x-date-range-underlined]=\"variant() === 'underlined'\"\r\n [class.x-date-range-active]=\"active()\"\r\n [class.x-date-range-active-start]=\"activeType() === 'start'\"\r\n [class.x-date-range-active-end]=\"activeType() === 'end'\"\r\n>\r\n @if (label()) {\r\n <label [class.x-date-range-label-required]=\"required()\" [style.width]=\"labelWidth()\" [ngClass]=\"labelMapSignal()\">{{\r\n label()\r\n }}</label>\r\n }\r\n <div class=\"x-date-range-row\">\r\n <x-input-group\r\n #inputGroup\r\n class=\"x-date-range-group\"\r\n (mouseenter)=\"menter()\"\r\n (mouseleave)=\"mleave()\"\r\n (click)=\"showPortal($event)\"\r\n >\r\n <x-input\r\n #inputStartCom\r\n class=\"x-date-range-input x-date-range-input-start\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [before]=\"before()\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"startPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n (xFocus)=\"onFocus('start')\"\r\n (xClick)=\"showPortal($event, 'start')\"\r\n [(ngModel)]=\"startDisplay\"\r\n icon=\"fto-arrow-right\"\r\n ></x-input>\r\n <x-input\r\n #inputEndCom\r\n class=\"x-date-range-input x-date-range-input-end\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"endPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n (xFocus)=\"onFocus('end')\"\r\n (xClick)=\"showPortal($event, 'end')\"\r\n [(ngModel)]=\"endDisplay\"\r\n [icon]=\"icon()\"\r\n (clearEmit)=\"clearEmit()\"\r\n [clearable]=\"showClearable()\"\r\n [after]=\"after()\"\r\n ></x-input>\r\n @if (active()) {\r\n <div class=\"x-date-range-active-bar\"></div>\r\n }\r\n </x-input-group>\r\n @if (invalid()) {\r\n <span class=\"x-date-range-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-range{display:inline-block;width:18rem}x-date-range.x-date-range-date-time{width:26rem}x-date-range.x-date-range-date-minute{width:21rem}x-date-range.x-date-range-date-hour{width:19rem}.x-date-range{margin:0;padding:0}.x-date-range{width:100%}.x-date-range.x-flex{display:flex}.x-date-range.x-justify-start{justify-content:flex-start}.x-date-range.x-justify-center{justify-content:center}.x-date-range.x-justify-end{justify-content:flex-end}.x-date-range.x-justify-space-between{justify-content:space-between}.x-date-range.x-justify-space-around{justify-content:space-around}.x-date-range.x-align-start{align-items:flex-start}.x-date-range.x-align-center{align-items:center}.x-date-range.x-align-end{align-items:flex-end}.x-date-range.x-direction-column{flex-direction:column}.x-date-range.x-direction-column-reverse{flex-direction:column-reverse}.x-date-range.x-direction-row{flex-direction:row}.x-date-range.x-direction-row-reverse{flex-direction:row-reverse}.x-date-range>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-date-range>label.x-text-align-start{text-align:start}.x-date-range>label.x-text-align-center{text-align:center}.x-date-range>label.x-text-align-end{text-align:end}.x-date-range.x-direction-row>label{padding:0 .5rem 0 0}.x-date-range.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-date-range.x-direction-column,.x-date-range.x-direction-column-reverse{align-items:inherit}.x-date-range-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-date-range-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-date-range.x-invalid>label,.x-date-range.x-required>label{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-input x-icon,.x-date-range.x-required .x-date-range-input x-icon{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error,.x-date-range.x-required .x-date-range-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range-row{flex:1;display:flex;align-items:center;position:relative}.x-date-range-group{width:100%;font-size:var(--x-font-size);background-image:none;box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);border-radius:var(--x-border-radius)}.x-date-range-group .x-input-group{display:flex;align-items:center;position:relative}.x-date-range-group .x-input-group>x-input{flex:1;width:50%}.x-date-range-group .x-input-group>x-input input{padding-left:var(--x-padding-medium)!important;padding-right:var(--x-padding-medium)!important}.x-date-range-group .x-input-group>x-input .x-input-row>.x-input-input>input{box-shadow:none}.x-date-range-bordered .x-date-range-group{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-date-range-bordered .x-date-range-group .x-input-group>x-input input{background-color:transparent}.x-date-range-bordered:not(.x-disabled) .x-date-range-group:hover{border-color:var(--x-primary-300)}.x-date-range-filled .x-date-range-group{border-color:transparent;background-color:var(--x-background-a200)}.x-date-range-filled:not(.x-disabled) .x-date-range-group:hover{background-color:var(--x-background-a300)}.x-date-range-filled:not(.x-disabled).x-date-range-active .x-date-range-group{border-color:var(--x-primary);background-color:var(--x-background)}.x-date-range-borderless .x-date-range-group{border:none}.x-date-range-underlined .x-date-range-group{border-width:0 0 var(--x-border-width);border-radius:0}.x-date-range-active-bar{position:absolute;height:.125rem;margin-left:.4rem;bottom:-.0625rem;width:calc(50% - 2.2rem);background-color:var(--x-primary);transition:var(--x-animation-duration-base)}.x-date-range-active .x-date-range-group{border-color:var(--x-primary)}.x-date-range-active-start .x-date-range-active-bar{left:0}.x-date-range-active-end .x-date-range-active-bar{left:50%}.x-date-range-input-start .x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-date-range-input-end .x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-date-range-big>.x-date-range-row .x-date-range-input input{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>.x-date-range-row{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-large>.x-date-range-row .x-date-range-input input{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>.x-date-range-row{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-medium>.x-date-range-row .x-date-range-input input{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>.x-date-range-row{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-small>.x-date-range-row .x-date-range-input input{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>.x-date-range-row{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-mini>.x-date-range-row .x-date-range-input input{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>.x-date-range-row{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}\n"] }]
3056
+ args: [{ selector: `${XDateRangePrefix}`, imports: [NgClass, FormsModule, XInputComponent, XInputGroupComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XDateRangeComponent), DatePipe], template: "<div\r\n #dateRange\r\n class=\"x-date-range\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-checked]=\"value()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-date-range-bordered]=\"bordered()\"\r\n [class.x-date-range-filled]=\"variant() === 'filled'\"\r\n [class.x-date-range-borderless]=\"variant() === 'borderless' || (variant() === 'outlined' && !bordered())\"\r\n [class.x-date-range-underlined]=\"variant() === 'underlined'\"\r\n [class.x-date-range-active]=\"active()\"\r\n [class.x-date-range-active-start]=\"activeType() === 'start'\"\r\n [class.x-date-range-active-end]=\"activeType() === 'end'\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-date-range-label-required]=\"required()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n *xOutlet=\"label()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-date-range-row\">\r\n <x-input-group\r\n #inputGroup\r\n class=\"x-date-range-group\"\r\n (mouseenter)=\"menter()\"\r\n (mouseleave)=\"mleave()\"\r\n (click)=\"showPortal($event)\"\r\n >\r\n <x-input\r\n #inputStartCom\r\n class=\"x-date-range-input x-date-range-input-start\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [before]=\"before()\"\r\n [label]=\"!!floatLabel() ? startPlaceholder()! : ''\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"startPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n (xFocus)=\"onFocus('start')\"\r\n (xClick)=\"showPortal($event, 'start')\"\r\n [(ngModel)]=\"startDisplay\"\r\n icon=\"fto-arrow-right\"\r\n ></x-input>\r\n <x-input\r\n #inputEndCom\r\n class=\"x-date-range-input x-date-range-input-end\"\r\n type=\"text\"\r\n bordered=\"false\"\r\n [label]=\"!!floatLabel() ? endPlaceholder()! : ''\"\r\n [size]=\"size()\"\r\n [disabled]=\"disabledComputed()\"\r\n [placeholder]=\"endPlaceholder()!\"\r\n [pointer]=\"pointer()\"\r\n [required]=\"required()\"\r\n [readonly]=\"readonly()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n (xFocus)=\"onFocus('end')\"\r\n (xClick)=\"showPortal($event, 'end')\"\r\n [(ngModel)]=\"endDisplay\"\r\n [icon]=\"icon()\"\r\n (clearEmit)=\"clearEmit()\"\r\n [clearable]=\"showClearable()\"\r\n [after]=\"after()\"\r\n ></x-input>\r\n @if (active()) {\r\n <div class=\"x-date-range-active-bar\"></div>\r\n }\r\n </x-input-group>\r\n @if (invalid()) {\r\n <span class=\"x-date-range-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-date-range{display:inline-block;width:18rem}x-date-range.x-date-range-date-time{width:26rem}x-date-range.x-date-range-date-minute{width:21rem}x-date-range.x-date-range-date-hour{width:19rem}.x-date-range{margin:0;padding:0}.x-date-range{width:100%}.x-date-range.x-flex{display:flex}.x-date-range.x-justify-start{justify-content:flex-start}.x-date-range.x-justify-center{justify-content:center}.x-date-range.x-justify-end{justify-content:flex-end}.x-date-range.x-justify-space-between{justify-content:space-between}.x-date-range.x-justify-space-around{justify-content:space-around}.x-date-range.x-align-start{align-items:flex-start}.x-date-range.x-align-center{align-items:center}.x-date-range.x-align-end{align-items:flex-end}.x-date-range.x-direction-column{flex-direction:column}.x-date-range.x-direction-column-reverse{flex-direction:column-reverse}.x-date-range.x-direction-row{flex-direction:row}.x-date-range.x-direction-row-reverse{flex-direction:row-reverse}.x-date-range>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:500}.x-date-range>label.x-text-align-start{text-align:start}.x-date-range>label.x-text-align-center{text-align:center}.x-date-range>label.x-text-align-end{text-align:end}.x-date-range.x-direction-row>label{padding:0 .5rem 0 0}.x-date-range.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-date-range.x-direction-column,.x-date-range.x-direction-column-reverse{align-items:inherit}.x-date-range-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-date-range-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-date-range.x-invalid>label,.x-date-range.x-required>label{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-input x-icon,.x-date-range.x-required .x-date-range-input x-icon{color:var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error,.x-date-range.x-required .x-date-range-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-top-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-left,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-date-range.x-invalid .x-date-range-row .x-border-error.x-bottom-right,.x-date-range.x-required .x-date-range-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-date-range-row{flex:1;display:flex;align-items:center;position:relative}.x-date-range-group{width:100%;font-size:var(--x-font-size);background-image:none;box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);border-radius:var(--x-border-radius)}.x-date-range-group .x-input-group{display:flex;align-items:center;position:relative}.x-date-range-group .x-input-group>x-input{flex:1;width:50%}.x-date-range-group .x-input-group>x-input input{padding-left:.75rem!important;padding-right:.75rem!important}.x-date-range-group .x-input-group>x-input .x-input-row>.x-input-input>input{box-shadow:none}.x-date-range-bordered .x-date-range-group{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-date-range-bordered .x-date-range-group .x-input-group>x-input input{background-color:transparent}.x-date-range-bordered:not(.x-disabled) .x-date-range-group:hover{border-color:var(--x-primary-300)}.x-date-range-filled .x-date-range-group{border-color:transparent;background-color:var(--x-background-a200)}.x-date-range-filled:not(.x-disabled) .x-date-range-group:hover{background-color:var(--x-background-a300)}.x-date-range-filled:not(.x-disabled).x-date-range-active .x-date-range-group{border-color:var(--x-primary);background-color:var(--x-background)}.x-date-range-borderless .x-date-range-group{border:none}.x-date-range-underlined .x-date-range-group{border-width:0 0 var(--x-border-width);border-radius:0}.x-date-range-active-bar{position:absolute;height:.125rem;margin-left:.4rem;bottom:-.0625rem;width:calc(50% - 2.2rem);background-color:var(--x-primary);transition:var(--x-animation-duration-base)}.x-date-range-active .x-date-range-group{border-color:var(--x-primary)}.x-date-range-active-start .x-date-range-active-bar{left:0}.x-date-range-active-end .x-date-range-active-bar{left:50%}.x-date-range-input-start .x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-date-range-input-end .x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-date-range .x-input-mini.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-mini.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-mini.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-mini.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-mini.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-mini.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-mini.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-mini.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-mini.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-small.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-small.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-small.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-small.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-small.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-small.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-small.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-small.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-small.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-medium.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-medium.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-medium.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-medium.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-medium.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-medium.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-medium.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-medium.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-medium.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-large.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-large.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-large.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-large.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-large.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-large.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-large.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-large.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-large.x-input-float-label-in.x-input-active>label,.x-date-range .x-input-big.x-input-float-label-over.x-input-focus>label,.x-date-range .x-input-big.x-input-float-label-over.x-input-has-value>label,.x-date-range .x-input-big.x-input-float-label-over.x-input-active>label,.x-date-range .x-input-big.x-input-float-label-on.x-input-focus>label,.x-date-range .x-input-big.x-input-float-label-on.x-input-has-value>label,.x-date-range .x-input-big.x-input-float-label-on.x-input-active>label,.x-date-range .x-input-big.x-input-float-label-in.x-input-focus>label,.x-date-range .x-input-big.x-input-float-label-in.x-input-has-value>label,.x-date-range .x-input-big.x-input-float-label-in.x-input-active>label{margin-left:.75rem!important}.x-date-range-big>.x-date-range-row .x-date-range-input input{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>.x-date-range-row{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-date-range-large>.x-date-range-row .x-date-range-input input{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>.x-date-range-row{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-date-range-medium>.x-date-range-row .x-date-range-input input{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>.x-date-range-row{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-date-range-small>.x-date-range-row .x-date-range-input input{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>.x-date-range-row{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-date-range-mini>.x-date-range-row .x-date-range-input input{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>.x-date-range-row{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-date-range-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}\n"] }]
3037
3057
  }], ctorParameters: () => [], propDecorators: { className: [{
3038
3058
  type: HostBinding,
3039
3059
  args: ['class']
3040
3060
  }] } });
3041
3061
 
3042
3062
  class XDatePickerModule {
3043
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3044
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerModule, imports: [XDatePickerComponent, XDateRangeComponent], exports: [XDatePickerComponent, XDateRangeComponent] }); }
3045
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerModule, imports: [XDatePickerComponent, XDateRangeComponent] }); }
3063
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3064
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerModule, imports: [XDatePickerComponent, XDateRangeComponent], exports: [XDatePickerComponent, XDateRangeComponent] }); }
3065
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerModule, imports: [XDatePickerComponent, XDateRangeComponent] }); }
3046
3066
  }
3047
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XDatePickerModule, decorators: [{
3067
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XDatePickerModule, decorators: [{
3048
3068
  type: NgModule,
3049
3069
  args: [{
3050
3070
  exports: [XDatePickerComponent, XDateRangeComponent],