ngx-tethys 18.2.5 → 18.2.7

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 (589) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/carousel/carousel.component.d.ts +2 -2
  3. package/date-picker/date-picker.config.d.ts +1 -1
  4. package/date-picker/lib/calendar/calendar-footer.component.d.ts +2 -2
  5. package/date-picker/lib/date/date-table.component.d.ts +2 -2
  6. package/date-picker/lib/popups/date-popup.component.d.ts +3 -2
  7. package/date-picker/lib/popups/inner-popup.component.d.ts +1 -1
  8. package/date-picker/picker.util.d.ts +3 -3
  9. package/date-range/date-range.component.d.ts +1 -1
  10. package/esm2022/action/action.component.mjs +4 -4
  11. package/esm2022/action/action.module.mjs +5 -5
  12. package/esm2022/action/actions.component.mjs +4 -4
  13. package/esm2022/affix/affix.component.mjs +4 -4
  14. package/esm2022/affix/affix.module.mjs +5 -5
  15. package/esm2022/alert/alert.component.mjs +4 -4
  16. package/esm2022/alert/alert.directive.mjs +4 -4
  17. package/esm2022/alert/alert.module.mjs +5 -5
  18. package/esm2022/anchor/anchor-link.component.mjs +4 -4
  19. package/esm2022/anchor/anchor.component.mjs +4 -4
  20. package/esm2022/anchor/anchor.module.mjs +5 -5
  21. package/esm2022/arrow-switcher/arrow-switcher.component.mjs +4 -4
  22. package/esm2022/arrow-switcher/module.mjs +5 -5
  23. package/esm2022/autocomplete/autocomplete.component.mjs +4 -4
  24. package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +4 -4
  25. package/esm2022/autocomplete/module.mjs +5 -5
  26. package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +4 -4
  27. package/esm2022/autocomplete/overlay/autocomplete.service.mjs +4 -4
  28. package/esm2022/avatar/avatar-list/avatar-list.component.mjs +4 -4
  29. package/esm2022/avatar/avatar.component.mjs +4 -4
  30. package/esm2022/avatar/avatar.module.mjs +5 -5
  31. package/esm2022/avatar/avatar.pipe.mjs +10 -10
  32. package/esm2022/avatar/avatar.service.mjs +4 -4
  33. package/esm2022/back-top/back-top.component.mjs +4 -4
  34. package/esm2022/back-top/back-top.module.mjs +5 -5
  35. package/esm2022/badge/badge.component.mjs +4 -4
  36. package/esm2022/badge/badge.module.mjs +5 -5
  37. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +4 -4
  38. package/esm2022/breadcrumb/breadcrumb.component.mjs +4 -4
  39. package/esm2022/breadcrumb/module.mjs +5 -5
  40. package/esm2022/button/button-group.component.mjs +4 -4
  41. package/esm2022/button/button-icon.component.mjs +4 -4
  42. package/esm2022/button/button.component.mjs +4 -4
  43. package/esm2022/button/button.module.mjs +5 -5
  44. package/esm2022/calendar/calendar-cells.mjs +7 -7
  45. package/esm2022/calendar/calendar-header.component.mjs +17 -17
  46. package/esm2022/calendar/calendar.component.mjs +6 -6
  47. package/esm2022/calendar/module.mjs +5 -5
  48. package/esm2022/card/card.component.mjs +4 -4
  49. package/esm2022/card/card.module.mjs +5 -5
  50. package/esm2022/card/content.component.mjs +4 -4
  51. package/esm2022/card/header.component.mjs +4 -4
  52. package/esm2022/carousel/carousel-item.directive.mjs +4 -4
  53. package/esm2022/carousel/carousel.component.mjs +13 -13
  54. package/esm2022/carousel/carousel.service.mjs +4 -4
  55. package/esm2022/carousel/module.mjs +5 -5
  56. package/esm2022/cascader/cascader-li.component.mjs +4 -4
  57. package/esm2022/cascader/cascader-search-option.component.mjs +4 -4
  58. package/esm2022/cascader/cascader.component.mjs +4 -4
  59. package/esm2022/cascader/cascader.service.mjs +4 -4
  60. package/esm2022/cascader/module.mjs +5 -5
  61. package/esm2022/checkbox/checkbox.component.mjs +4 -4
  62. package/esm2022/checkbox/module.mjs +5 -5
  63. package/esm2022/collapse/collapse-item.component.mjs +4 -4
  64. package/esm2022/collapse/collapse.component.mjs +4 -4
  65. package/esm2022/collapse/module.mjs +5 -5
  66. package/esm2022/color-picker/color-picker-custom-panel.component.mjs +4 -4
  67. package/esm2022/color-picker/color-picker-panel.component.mjs +4 -4
  68. package/esm2022/color-picker/color-picker.component.mjs +4 -4
  69. package/esm2022/color-picker/coordinates.directive.mjs +4 -4
  70. package/esm2022/color-picker/module.mjs +5 -5
  71. package/esm2022/color-picker/parts/alpha/alpha.component.mjs +4 -4
  72. package/esm2022/color-picker/parts/hue/hue.component.mjs +4 -4
  73. package/esm2022/color-picker/parts/indicator/indicator.component.mjs +4 -4
  74. package/esm2022/color-picker/parts/inputs/inputs.component.mjs +4 -4
  75. package/esm2022/color-picker/parts/saturation/saturation.component.mjs +4 -4
  76. package/esm2022/comment/comment-actions.directive.mjs +4 -4
  77. package/esm2022/comment/comment-content.directive.mjs +4 -4
  78. package/esm2022/comment/comment.component.mjs +4 -4
  79. package/esm2022/comment/comment.module.mjs +5 -5
  80. package/esm2022/copy/copy.directive.mjs +4 -4
  81. package/esm2022/copy/module.mjs +5 -5
  82. package/esm2022/core/click-positioner.mjs +4 -4
  83. package/esm2022/core/overlay/portal-directives.mjs +4 -4
  84. package/esm2022/core/request-animation.mjs +3 -2
  85. package/esm2022/core/scroll.mjs +4 -4
  86. package/esm2022/core/store/store.mjs +4 -4
  87. package/esm2022/core/theme/store.mjs +4 -4
  88. package/esm2022/core/translate.mjs +4 -4
  89. package/esm2022/core/update-host-class.service.mjs +4 -4
  90. package/esm2022/date-picker/abstract-picker.component.mjs +4 -4
  91. package/esm2022/date-picker/abstract-picker.directive.mjs +4 -4
  92. package/esm2022/date-picker/base-picker.component.mjs +4 -4
  93. package/esm2022/date-picker/date-helper.service.mjs +4 -4
  94. package/esm2022/date-picker/date-picker.component.mjs +4 -4
  95. package/esm2022/date-picker/date-picker.config.mjs +12 -13
  96. package/esm2022/date-picker/date-picker.directive.mjs +4 -4
  97. package/esm2022/date-picker/date-picker.module.mjs +5 -5
  98. package/esm2022/date-picker/date-picker.service.mjs +4 -4
  99. package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +9 -9
  100. package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +4 -4
  101. package/esm2022/date-picker/lib/calendar/calendar-table.component.mjs +4 -4
  102. package/esm2022/date-picker/lib/date/date-header.component.mjs +4 -4
  103. package/esm2022/date-picker/lib/date/date-table-cell.component.mjs +4 -4
  104. package/esm2022/date-picker/lib/date/date-table.component.mjs +10 -9
  105. package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +4 -4
  106. package/esm2022/date-picker/lib/decade/decade-header.component.mjs +4 -4
  107. package/esm2022/date-picker/lib/decade/decade-table.component.mjs +4 -4
  108. package/esm2022/date-picker/lib/lib-packer.module.mjs +5 -5
  109. package/esm2022/date-picker/lib/month/month-header.component.mjs +4 -4
  110. package/esm2022/date-picker/lib/month/month-table.component.mjs +4 -4
  111. package/esm2022/date-picker/lib/popups/date-popup.component.mjs +21 -18
  112. package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +6 -6
  113. package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +4 -4
  114. package/esm2022/date-picker/lib/year/year-header.component.mjs +4 -4
  115. package/esm2022/date-picker/lib/year/year-table.component.mjs +4 -4
  116. package/esm2022/date-picker/month-picker.component.mjs +4 -4
  117. package/esm2022/date-picker/picker.component.mjs +8 -8
  118. package/esm2022/date-picker/picker.pipes.mjs +13 -13
  119. package/esm2022/date-picker/picker.util.mjs +8 -6
  120. package/esm2022/date-picker/picker.validators.mjs +7 -7
  121. package/esm2022/date-picker/quarter-picker.component.mjs +4 -4
  122. package/esm2022/date-picker/range-picker.component.mjs +4 -4
  123. package/esm2022/date-picker/range-picker.directive.mjs +4 -4
  124. package/esm2022/date-picker/week-picker.component.mjs +4 -4
  125. package/esm2022/date-picker/year-picker.component.mjs +4 -4
  126. package/esm2022/date-range/date-range.component.mjs +15 -16
  127. package/esm2022/date-range/module.mjs +5 -5
  128. package/esm2022/date-range/optional-dates/optional-dates.component.mjs +4 -4
  129. package/esm2022/dialog/body/dialog-body.component.mjs +4 -4
  130. package/esm2022/dialog/confirm/confirm.component.mjs +4 -4
  131. package/esm2022/dialog/dialog-container.component.mjs +4 -4
  132. package/esm2022/dialog/dialog.module.mjs +5 -5
  133. package/esm2022/dialog/dialog.service.mjs +4 -4
  134. package/esm2022/dialog/footer/dialog-footer.component.mjs +4 -4
  135. package/esm2022/dialog/header/dialog-header.component.mjs +4 -4
  136. package/esm2022/divider/divider.component.mjs +4 -4
  137. package/esm2022/divider/divider.module.mjs +5 -5
  138. package/esm2022/dot/dot.component.mjs +4 -4
  139. package/esm2022/dot/dot.module.mjs +5 -5
  140. package/esm2022/drag-drop/drag-content.directive.mjs +4 -4
  141. package/esm2022/drag-drop/drag-drop.service.mjs +4 -4
  142. package/esm2022/drag-drop/drag-handle.directive.mjs +4 -4
  143. package/esm2022/drag-drop/drag.directive.mjs +4 -4
  144. package/esm2022/drag-drop/drop-container.directive.mjs +4 -4
  145. package/esm2022/drag-drop/module.mjs +5 -5
  146. package/esm2022/dropdown/dropdown-active.directive.mjs +4 -4
  147. package/esm2022/dropdown/dropdown-menu-item.directive.mjs +22 -22
  148. package/esm2022/dropdown/dropdown-menu.component.mjs +13 -13
  149. package/esm2022/dropdown/dropdown-submenu.component.mjs +4 -4
  150. package/esm2022/dropdown/dropdown.directive.mjs +4 -4
  151. package/esm2022/dropdown/module.mjs +5 -5
  152. package/esm2022/empty/empty.component.mjs +4 -4
  153. package/esm2022/empty/empty.config.mjs +4 -4
  154. package/esm2022/empty/empty.module.mjs +5 -5
  155. package/esm2022/flexible-text/flexible-text.component.mjs +4 -4
  156. package/esm2022/flexible-text/flexible-text.module.mjs +5 -5
  157. package/esm2022/form/form-group-error/form-group-error.component.mjs +4 -4
  158. package/esm2022/form/form-group-label.directive.mjs +4 -4
  159. package/esm2022/form/form-group.component.mjs +4 -4
  160. package/esm2022/form/form-submit.directive.mjs +4 -4
  161. package/esm2022/form/form-validator-loader.mjs +4 -4
  162. package/esm2022/form/form-validator.service.mjs +4 -4
  163. package/esm2022/form/form.directive.mjs +4 -4
  164. package/esm2022/form/from-group-footer/form-group-footer.component.mjs +4 -4
  165. package/esm2022/form/module.mjs +5 -5
  166. package/esm2022/form/validator/confirm-validator.directive.mjs +4 -4
  167. package/esm2022/form/validator/max-validator.directive.mjs +4 -4
  168. package/esm2022/form/validator/min-validator.directive.mjs +4 -4
  169. package/esm2022/form/validator/unique-validator.directive.mjs +4 -4
  170. package/esm2022/fullscreen/fullscreen-launch.directive.mjs +4 -4
  171. package/esm2022/fullscreen/fullscreen.component.mjs +4 -4
  172. package/esm2022/fullscreen/fullscreen.module.mjs +5 -5
  173. package/esm2022/fullscreen/fullscreen.service.mjs +4 -4
  174. package/esm2022/grid/flex.mjs +13 -13
  175. package/esm2022/grid/module.mjs +5 -5
  176. package/esm2022/grid/thy-col.directive.mjs +4 -4
  177. package/esm2022/grid/thy-grid-item.component.mjs +4 -4
  178. package/esm2022/grid/thy-grid.component.mjs +7 -7
  179. package/esm2022/grid/thy-row.directive.mjs +4 -4
  180. package/esm2022/guider/guider-hint/guider-hint.component.mjs +4 -4
  181. package/esm2022/guider/guider-manager.mjs +4 -4
  182. package/esm2022/guider/guider.directive.mjs +4 -4
  183. package/esm2022/guider/guider.module.mjs +5 -5
  184. package/esm2022/guider/guider.service.mjs +4 -4
  185. package/esm2022/i18n/i18n.mjs +1 -1
  186. package/esm2022/i18n/i18n.service.mjs +4 -4
  187. package/esm2022/i18n/locales/de-de.mjs +5 -1
  188. package/esm2022/i18n/locales/en-us.mjs +5 -1
  189. package/esm2022/i18n/locales/ja-jp.mjs +5 -1
  190. package/esm2022/i18n/locales/zh-hans.mjs +5 -1
  191. package/esm2022/i18n/locales/zh-hant.mjs +5 -1
  192. package/esm2022/icon/icon-registry.mjs +5 -5
  193. package/esm2022/icon/icon.component.mjs +4 -4
  194. package/esm2022/icon/icon.module.mjs +6 -7
  195. package/esm2022/image/image-group.component.mjs +4 -4
  196. package/esm2022/image/image.directive.mjs +4 -4
  197. package/esm2022/image/image.service.mjs +4 -4
  198. package/esm2022/image/module.mjs +5 -5
  199. package/esm2022/image/preview/image-preview.component.mjs +4 -4
  200. package/esm2022/input/input-count.component.mjs +4 -4
  201. package/esm2022/input/input-group.component.mjs +4 -4
  202. package/esm2022/input/input-search.component.mjs +4 -4
  203. package/esm2022/input/input.component.mjs +4 -4
  204. package/esm2022/input/input.directive.mjs +4 -4
  205. package/esm2022/input/module.mjs +5 -5
  206. package/esm2022/input-number/input-number.component.mjs +4 -4
  207. package/esm2022/input-number/module.mjs +5 -5
  208. package/esm2022/layout/content-main.component.mjs +7 -7
  209. package/esm2022/layout/content-section.component.mjs +7 -7
  210. package/esm2022/layout/content.component.mjs +7 -7
  211. package/esm2022/layout/header.component.mjs +7 -7
  212. package/esm2022/layout/layout.component.mjs +7 -7
  213. package/esm2022/layout/layout.module.mjs +5 -5
  214. package/esm2022/layout/sidebar-content.component.mjs +7 -7
  215. package/esm2022/layout/sidebar-footer.component.mjs +7 -7
  216. package/esm2022/layout/sidebar-header.component.mjs +7 -7
  217. package/esm2022/layout/sidebar.component.mjs +10 -8
  218. package/esm2022/list/list-item-meta.component.mjs +4 -4
  219. package/esm2022/list/list-item.component.mjs +4 -4
  220. package/esm2022/list/list.component.mjs +4 -4
  221. package/esm2022/list/list.module.mjs +5 -5
  222. package/esm2022/list/selection/selection-list.mjs +4 -4
  223. package/esm2022/loading/loading.component.mjs +4 -4
  224. package/esm2022/loading/loading.module.mjs +5 -5
  225. package/esm2022/mention/mention.directive.mjs +4 -4
  226. package/esm2022/mention/mention.module.mjs +5 -5
  227. package/esm2022/mention/suggestions/suggestions.component.mjs +4 -4
  228. package/esm2022/menu/divider/menu-divider.component.mjs +4 -4
  229. package/esm2022/menu/group/menu-group.component.mjs +4 -4
  230. package/esm2022/menu/item/action/menu-item-action.component.mjs +4 -4
  231. package/esm2022/menu/item/icon/menu-item-icon.component.mjs +4 -4
  232. package/esm2022/menu/item/menu-item.component.mjs +4 -4
  233. package/esm2022/menu/item/name/menu-item-name.component.mjs +4 -4
  234. package/esm2022/menu/menu.component.mjs +4 -4
  235. package/esm2022/menu/menu.module.mjs +5 -5
  236. package/esm2022/message/abstract/abstract-message-container.component.mjs +4 -4
  237. package/esm2022/message/abstract/abstract-message.component.mjs +4 -4
  238. package/esm2022/message/message-container.component.mjs +4 -4
  239. package/esm2022/message/message-queue.service.mjs +4 -4
  240. package/esm2022/message/message.component.mjs +4 -4
  241. package/esm2022/message/message.service.mjs +4 -4
  242. package/esm2022/message/module.mjs +5 -5
  243. package/esm2022/nav/icon-nav/icon-nav-link.directive.mjs +4 -4
  244. package/esm2022/nav/icon-nav/icon-nav.component.mjs +4 -4
  245. package/esm2022/nav/nav-ink-bar.directive.mjs +4 -4
  246. package/esm2022/nav/nav-item.directive.mjs +4 -4
  247. package/esm2022/nav/nav.component.mjs +4 -4
  248. package/esm2022/nav/nav.module.mjs +5 -5
  249. package/esm2022/nav/nav.pipe.mjs +4 -4
  250. package/esm2022/notify/module.mjs +5 -5
  251. package/esm2022/notify/notify-container.component.mjs +4 -4
  252. package/esm2022/notify/notify-queue.service.mjs +4 -4
  253. package/esm2022/notify/notify.component.mjs +4 -4
  254. package/esm2022/notify/notify.service.mjs +4 -4
  255. package/esm2022/pagination/pagination.component.mjs +4 -4
  256. package/esm2022/pagination/pagination.module.mjs +5 -5
  257. package/esm2022/pagination/pagination.pipe.mjs +7 -7
  258. package/esm2022/popover/body/popover-body.component.mjs +4 -4
  259. package/esm2022/popover/header/popover-header.component.mjs +4 -4
  260. package/esm2022/popover/module.mjs +5 -5
  261. package/esm2022/popover/popover-container.component.mjs +4 -4
  262. package/esm2022/popover/popover.directive.mjs +4 -4
  263. package/esm2022/popover/popover.service.mjs +4 -4
  264. package/esm2022/progress/progress-circle.component.mjs +4 -4
  265. package/esm2022/progress/progress-strip.component.mjs +4 -4
  266. package/esm2022/progress/progress.component.mjs +4 -4
  267. package/esm2022/progress/progress.module.mjs +5 -5
  268. package/esm2022/property/module.mjs +5 -5
  269. package/esm2022/property/properties.component.mjs +4 -4
  270. package/esm2022/property/property-item.component.mjs +4 -4
  271. package/esm2022/property-operation/group/property-operation-group.component.mjs +4 -4
  272. package/esm2022/property-operation/module.mjs +5 -5
  273. package/esm2022/property-operation/property-operation.component.mjs +4 -4
  274. package/esm2022/radio/button/radio-button.component.mjs +4 -4
  275. package/esm2022/radio/group/radio-group.component.mjs +4 -4
  276. package/esm2022/radio/module.mjs +5 -5
  277. package/esm2022/radio/radio.component.mjs +4 -4
  278. package/esm2022/rate/module.mjs +5 -5
  279. package/esm2022/rate/rate-item.component.mjs +4 -4
  280. package/esm2022/rate/rate.component.mjs +4 -4
  281. package/esm2022/resizable/module.mjs +5 -5
  282. package/esm2022/resizable/resizable.directive.mjs +4 -4
  283. package/esm2022/resizable/resizable.service.mjs +4 -4
  284. package/esm2022/resizable/resize-handle.component.mjs +4 -4
  285. package/esm2022/resizable/resize-handles.component.mjs +4 -4
  286. package/esm2022/result/result.component.mjs +4 -4
  287. package/esm2022/result/result.module.mjs +5 -5
  288. package/esm2022/segment/segment-item.component.mjs +4 -4
  289. package/esm2022/segment/segment.component.mjs +4 -4
  290. package/esm2022/segment/segment.module.mjs +5 -5
  291. package/esm2022/select/custom-select/custom-select.component.mjs +4 -4
  292. package/esm2022/select/module.mjs +5 -5
  293. package/esm2022/select/native-select/native-select.component.mjs +4 -4
  294. package/esm2022/shared/base-form-check.component.mjs +4 -4
  295. package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +4 -4
  296. package/esm2022/shared/directives/thy-autofocus.directive.mjs +4 -4
  297. package/esm2022/shared/directives/thy-contextmenu.directive.mjs +4 -4
  298. package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +4 -4
  299. package/esm2022/shared/directives/thy-drag-drop.directive.mjs +4 -4
  300. package/esm2022/shared/directives/thy-enter.directive.mjs +4 -4
  301. package/esm2022/shared/directives/thy-scroll.directive.mjs +4 -4
  302. package/esm2022/shared/directives/thy-show.mjs +4 -4
  303. package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +4 -4
  304. package/esm2022/shared/directives/view-outlet.directive.mjs +4 -4
  305. package/esm2022/shared/ng-transclude.directive.mjs +4 -4
  306. package/esm2022/shared/option/group/option-group.component.mjs +4 -4
  307. package/esm2022/shared/option/list-option/list-option.component.mjs +4 -4
  308. package/esm2022/shared/option/module.mjs +5 -5
  309. package/esm2022/shared/option/option-group.component.mjs +4 -4
  310. package/esm2022/shared/option/option.component.mjs +4 -4
  311. package/esm2022/shared/option/options-container.component.mjs +4 -4
  312. package/esm2022/shared/select/module.mjs +5 -5
  313. package/esm2022/shared/select/select-control/select-control.component.mjs +4 -4
  314. package/esm2022/shared/shared.module.mjs +5 -5
  315. package/esm2022/skeleton/module.mjs +5 -5
  316. package/esm2022/skeleton/skeleton-circle.component.mjs +4 -4
  317. package/esm2022/skeleton/skeleton-rectangle.component.mjs +4 -4
  318. package/esm2022/skeleton/skeleton.component.mjs +4 -4
  319. package/esm2022/skeleton/stylized/bullet-list.component.mjs +4 -4
  320. package/esm2022/skeleton/stylized/list.component.mjs +4 -4
  321. package/esm2022/skeleton/stylized/paragraph.component.mjs +4 -4
  322. package/esm2022/slide/drawer/drawer-container.directive.mjs +4 -4
  323. package/esm2022/slide/slide-body/slide-body-section.component.mjs +4 -4
  324. package/esm2022/slide/slide-body/slide-body.component.mjs +4 -4
  325. package/esm2022/slide/slide-container.component.mjs +4 -4
  326. package/esm2022/slide/slide-footer/slide-footer.component.mjs +4 -4
  327. package/esm2022/slide/slide-header/slide-header.component.mjs +4 -4
  328. package/esm2022/slide/slide-layout/slide-layout.component.mjs +4 -4
  329. package/esm2022/slide/slide-ref.service.mjs +4 -4
  330. package/esm2022/slide/slide.module.mjs +5 -5
  331. package/esm2022/slide/slide.service.mjs +4 -4
  332. package/esm2022/slider/slider.component.mjs +4 -4
  333. package/esm2022/slider/slider.module.mjs +5 -5
  334. package/esm2022/space/space.component.mjs +7 -7
  335. package/esm2022/space/space.module.mjs +5 -5
  336. package/esm2022/statistic/statistic.component.mjs +4 -4
  337. package/esm2022/statistic/statistic.module.mjs +5 -5
  338. package/esm2022/stepper/step-header.component.mjs +4 -4
  339. package/esm2022/stepper/step.component.mjs +4 -4
  340. package/esm2022/stepper/stepper-button.directive.mjs +7 -7
  341. package/esm2022/stepper/stepper.component.mjs +4 -4
  342. package/esm2022/stepper/stepper.module.mjs +5 -5
  343. package/esm2022/strength/strength.component.mjs +4 -4
  344. package/esm2022/strength/strength.module.mjs +5 -5
  345. package/esm2022/switch/switch.component.mjs +4 -4
  346. package/esm2022/switch/switch.module.mjs +5 -5
  347. package/esm2022/table/pipes/drag.pipe.mjs +4 -4
  348. package/esm2022/table/pipes/table.pipe.mjs +4 -4
  349. package/esm2022/table/table-column.component.mjs +4 -4
  350. package/esm2022/table/table-skeleton.component.mjs +4 -4
  351. package/esm2022/table/table.component.mjs +4 -4
  352. package/esm2022/table/table.module.mjs +5 -5
  353. package/esm2022/tabs/tab-content.component.mjs +4 -4
  354. package/esm2022/tabs/tab.component.mjs +4 -4
  355. package/esm2022/tabs/tabs.component.mjs +4 -4
  356. package/esm2022/tabs/tabs.module.mjs +5 -5
  357. package/esm2022/tag/tag.component.mjs +4 -4
  358. package/esm2022/tag/tag.module.mjs +5 -5
  359. package/esm2022/tag/tags.component.mjs +4 -4
  360. package/esm2022/time-picker/inner/inner-time-picker.component.mjs +5 -5
  361. package/esm2022/time-picker/inner/inner-time-picker.config.mjs +4 -4
  362. package/esm2022/time-picker/inner/inner-time-picker.store.mjs +12 -9
  363. package/esm2022/time-picker/time-picker-panel.component.mjs +11 -12
  364. package/esm2022/time-picker/time-picker.component.mjs +17 -19
  365. package/esm2022/time-picker/time-picker.module.mjs +5 -5
  366. package/esm2022/time-picker/time-picker.utils.mjs +14 -8
  367. package/esm2022/timeline/timeline-item.component.mjs +4 -4
  368. package/esm2022/timeline/timeline.component.mjs +4 -4
  369. package/esm2022/timeline/timeline.module.mjs +5 -5
  370. package/esm2022/timeline/timeline.service.mjs +4 -4
  371. package/esm2022/tooltip/tooltip.component.mjs +4 -4
  372. package/esm2022/tooltip/tooltip.directive.mjs +4 -4
  373. package/esm2022/tooltip/tooltip.module.mjs +5 -5
  374. package/esm2022/tooltip/tooltip.service.mjs +4 -4
  375. package/esm2022/transfer/transfer-list.component.mjs +4 -4
  376. package/esm2022/transfer/transfer.component.mjs +4 -4
  377. package/esm2022/transfer/transfer.module.mjs +5 -5
  378. package/esm2022/tree/tree-node.component.mjs +4 -4
  379. package/esm2022/tree/tree.component.mjs +4 -4
  380. package/esm2022/tree/tree.module.mjs +5 -5
  381. package/esm2022/tree/tree.pipe.mjs +4 -4
  382. package/esm2022/tree/tree.service.mjs +4 -4
  383. package/esm2022/tree-select/module.mjs +5 -5
  384. package/esm2022/tree-select/tree-select.component.mjs +7 -7
  385. package/esm2022/typography/bg-color.directive.mjs +4 -4
  386. package/esm2022/typography/module.mjs +5 -5
  387. package/esm2022/typography/text/text.component.mjs +4 -4
  388. package/esm2022/typography/text-color.directive.mjs +4 -4
  389. package/esm2022/upload/file-drop.directive.mjs +4 -4
  390. package/esm2022/upload/file-select-base.mjs +4 -4
  391. package/esm2022/upload/file-select.component.mjs +4 -4
  392. package/esm2022/upload/module.mjs +6 -7
  393. package/esm2022/upload/upload.service.mjs +11 -11
  394. package/esm2022/util/date/functions.mjs +26 -1
  395. package/esm2022/util/date/tiny-date.mjs +78 -34
  396. package/esm2022/util/index.mjs +9 -9
  397. package/esm2022/version.mjs +2 -2
  398. package/esm2022/vote/vote.component.mjs +4 -4
  399. package/esm2022/vote/vote.module.mjs +5 -5
  400. package/esm2022/watermark/watermark.directive.mjs +4 -4
  401. package/esm2022/watermark/watermark.module.mjs +5 -5
  402. package/fesm2022/ngx-tethys-action.mjs +10 -10
  403. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  404. package/fesm2022/ngx-tethys-affix.mjs +7 -7
  405. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  406. package/fesm2022/ngx-tethys-alert.mjs +10 -10
  407. package/fesm2022/ngx-tethys-alert.mjs.map +1 -1
  408. package/fesm2022/ngx-tethys-anchor.mjs +10 -10
  409. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  410. package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
  411. package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
  412. package/fesm2022/ngx-tethys-autocomplete.mjs +16 -16
  413. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  414. package/fesm2022/ngx-tethys-avatar.mjs +22 -22
  415. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  416. package/fesm2022/ngx-tethys-back-top.mjs +7 -7
  417. package/fesm2022/ngx-tethys-back-top.mjs.map +1 -1
  418. package/fesm2022/ngx-tethys-badge.mjs +7 -7
  419. package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
  420. package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
  421. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  422. package/fesm2022/ngx-tethys-button.mjs +13 -13
  423. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  424. package/fesm2022/ngx-tethys-calendar.mjs +26 -26
  425. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  426. package/fesm2022/ngx-tethys-card.mjs +13 -13
  427. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  428. package/fesm2022/ngx-tethys-carousel.mjs +84 -84
  429. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  430. package/fesm2022/ngx-tethys-cascader.mjs +16 -16
  431. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  432. package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
  433. package/fesm2022/ngx-tethys-checkbox.mjs.map +1 -1
  434. package/fesm2022/ngx-tethys-collapse.mjs +10 -10
  435. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  436. package/fesm2022/ngx-tethys-color-picker.mjs +31 -31
  437. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  438. package/fesm2022/ngx-tethys-comment.mjs +13 -13
  439. package/fesm2022/ngx-tethys-comment.mjs.map +1 -1
  440. package/fesm2022/ngx-tethys-copy.mjs +7 -7
  441. package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
  442. package/fesm2022/ngx-tethys-core.mjs +23 -23
  443. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  444. package/fesm2022/ngx-tethys-date-picker.mjs +242 -235
  445. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  446. package/fesm2022/ngx-tethys-date-range.mjs +17 -18
  447. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  448. package/fesm2022/ngx-tethys-dialog.mjs +22 -22
  449. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  450. package/fesm2022/ngx-tethys-divider.mjs +7 -7
  451. package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
  452. package/fesm2022/ngx-tethys-dot.mjs +7 -7
  453. package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
  454. package/fesm2022/ngx-tethys-drag-drop.mjs +19 -19
  455. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  456. package/fesm2022/ngx-tethys-dropdown.mjs +46 -46
  457. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  458. package/fesm2022/ngx-tethys-empty.mjs +10 -10
  459. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  460. package/fesm2022/ngx-tethys-flexible-text.mjs +7 -7
  461. package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
  462. package/fesm2022/ngx-tethys-form.mjs +40 -40
  463. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  464. package/fesm2022/ngx-tethys-fullscreen.mjs +13 -13
  465. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  466. package/fesm2022/ngx-tethys-grid.mjs +31 -31
  467. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  468. package/fesm2022/ngx-tethys-guider.mjs +16 -16
  469. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  470. package/fesm2022/ngx-tethys-i18n.mjs +23 -3
  471. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  472. package/fesm2022/ngx-tethys-icon.mjs +13 -13
  473. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  474. package/fesm2022/ngx-tethys-image.mjs +16 -16
  475. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  476. package/fesm2022/ngx-tethys-input-number.mjs +7 -7
  477. package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
  478. package/fesm2022/ngx-tethys-input.mjs +19 -19
  479. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  480. package/fesm2022/ngx-tethys-layout.mjs +61 -59
  481. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  482. package/fesm2022/ngx-tethys-list.mjs +16 -16
  483. package/fesm2022/ngx-tethys-list.mjs.map +1 -1
  484. package/fesm2022/ngx-tethys-loading.mjs +7 -7
  485. package/fesm2022/ngx-tethys-loading.mjs.map +1 -1
  486. package/fesm2022/ngx-tethys-mention.mjs +10 -10
  487. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  488. package/fesm2022/ngx-tethys-menu.mjs +25 -25
  489. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  490. package/fesm2022/ngx-tethys-message.mjs +22 -22
  491. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  492. package/fesm2022/ngx-tethys-nav.mjs +22 -22
  493. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  494. package/fesm2022/ngx-tethys-notify.mjs +16 -16
  495. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  496. package/fesm2022/ngx-tethys-pagination.mjs +13 -13
  497. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  498. package/fesm2022/ngx-tethys-popover.mjs +19 -19
  499. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  500. package/fesm2022/ngx-tethys-progress.mjs +13 -13
  501. package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
  502. package/fesm2022/ngx-tethys-property-operation.mjs +10 -10
  503. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  504. package/fesm2022/ngx-tethys-property.mjs +10 -10
  505. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  506. package/fesm2022/ngx-tethys-radio.mjs +13 -13
  507. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  508. package/fesm2022/ngx-tethys-rate.mjs +10 -10
  509. package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
  510. package/fesm2022/ngx-tethys-resizable.mjs +16 -16
  511. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  512. package/fesm2022/ngx-tethys-result.mjs +7 -7
  513. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  514. package/fesm2022/ngx-tethys-segment.mjs +10 -10
  515. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  516. package/fesm2022/ngx-tethys-select.mjs +10 -10
  517. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  518. package/fesm2022/ngx-tethys-shared.mjs +66 -66
  519. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  520. package/fesm2022/ngx-tethys-skeleton.mjs +22 -22
  521. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  522. package/fesm2022/ngx-tethys-slide.mjs +31 -31
  523. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  524. package/fesm2022/ngx-tethys-slider.mjs +7 -7
  525. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  526. package/fesm2022/ngx-tethys-space.mjs +10 -10
  527. package/fesm2022/ngx-tethys-space.mjs.map +1 -1
  528. package/fesm2022/ngx-tethys-statistic.mjs +7 -7
  529. package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
  530. package/fesm2022/ngx-tethys-stepper.mjs +19 -19
  531. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  532. package/fesm2022/ngx-tethys-strength.mjs +7 -7
  533. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  534. package/fesm2022/ngx-tethys-switch.mjs +7 -7
  535. package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
  536. package/fesm2022/ngx-tethys-table.mjs +19 -19
  537. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  538. package/fesm2022/ngx-tethys-tabs.mjs +13 -13
  539. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  540. package/fesm2022/ngx-tethys-tag.mjs +10 -10
  541. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  542. package/fesm2022/ngx-tethys-time-picker.mjs +46 -40
  543. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  544. package/fesm2022/ngx-tethys-timeline.mjs +13 -13
  545. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  546. package/fesm2022/ngx-tethys-tooltip.mjs +13 -13
  547. package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
  548. package/fesm2022/ngx-tethys-transfer.mjs +10 -10
  549. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  550. package/fesm2022/ngx-tethys-tree-select.mjs +10 -10
  551. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  552. package/fesm2022/ngx-tethys-tree.mjs +16 -16
  553. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  554. package/fesm2022/ngx-tethys-typography.mjs +13 -13
  555. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  556. package/fesm2022/ngx-tethys-upload.mjs +23 -24
  557. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  558. package/fesm2022/ngx-tethys-util.mjs +107 -38
  559. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  560. package/fesm2022/ngx-tethys-vote.mjs +7 -7
  561. package/fesm2022/ngx-tethys-vote.mjs.map +1 -1
  562. package/fesm2022/ngx-tethys-watermark.mjs +7 -7
  563. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  564. package/fesm2022/ngx-tethys.mjs +1 -1
  565. package/fesm2022/ngx-tethys.mjs.map +1 -1
  566. package/i18n/i18n.d.ts +6 -1
  567. package/i18n/locales/de-de.d.ts +4 -0
  568. package/i18n/locales/en-us.d.ts +4 -0
  569. package/i18n/locales/ja-jp.d.ts +4 -0
  570. package/i18n/locales/zh-hans.d.ts +4 -0
  571. package/i18n/locales/zh-hant.d.ts +4 -0
  572. package/layout/sidebar.component.d.ts +8 -42
  573. package/package.json +3 -2
  574. package/schematics/ng-add/index.js +2 -3
  575. package/schematics/ng-add/index.spec.js +21 -22
  576. package/schematics/ng-update/update-18/index.spec.js +7 -8
  577. package/schematics/testing/test-app.js +2 -5
  578. package/schematics/testing/test-project.js +7 -10
  579. package/schematics/testing/test-workspace.d.ts +1 -0
  580. package/schematics/testing/test-workspace.js +14 -15
  581. package/schematics/tsconfig.json +1 -1
  582. package/schematics/utils/get-workspace-tsconfig.js +8 -9
  583. package/schematics/utils/package-config.js +1 -2
  584. package/schematics/version.d.ts +1 -1
  585. package/schematics/version.js +1 -1
  586. package/time-picker/inner/inner-time-picker.store.d.ts +1 -1
  587. package/util/date/functions.d.ts +25 -0
  588. package/util/date/tiny-date.d.ts +20 -4
  589. package/util/index.d.ts +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-button.mjs","sources":["../../../src/button/button-group.component.ts","../../../src/button/button-icon.component.ts","../../../src/button/button-icon.component.html","../../../src/button/button.component.ts","../../../src/button/button.component.html","../../../src/button/button.module.ts","../../../src/button/ngx-tethys-button.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { Component, HostBinding, Input, OnInit, ViewEncapsulation } from '@angular/core';\n\nexport type ButtonGroupSize = 'sm' | 'lg' | 'xs' | 'md';\n\nexport type ButtonGroupType = 'outline-primary' | 'outline-default';\n\nconst buttonGroupSizeMap = {\n sm: ['btn-group-sm'],\n md: ['btn-group-md'],\n lg: ['btn-group-lg'],\n xs: ['btn-group-xs']\n};\n\n/**\n * 按钮分组组件\n * @name thy-button-group\n * @order 30\n */\n@Component({\n selector: 'thy-button-group',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\nexport class ThyButtonGroup implements OnInit {\n private initialized = false;\n\n private type: string;\n\n private size: string;\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default md\n */\n @Input()\n set thySize(size: ButtonGroupSize) {\n this.size = size;\n if (this.initialized) {\n this.setClasses();\n }\n }\n\n /**\n * 类型\n * @type outline-default | outline-primary\n * @default outline-default\n */\n @Input()\n set thyType(type: ButtonGroupType) {\n this.type = type;\n if (this.initialized) {\n this.setClasses();\n }\n }\n\n /**\n * 是否需要最小宽度,默认按钮最小宽度为80px\n * @default false\n */\n @Input()\n set thyClearMinWidth(value: string) {\n this.thyClearMinWidthClassName = coerceBooleanProperty(value);\n }\n\n @HostBinding('class.btn-group') _isButtonGroup = true;\n @HostBinding(`class.btn-group-clear-min-width`)\n thyClearMinWidthClassName = false;\n\n constructor() {}\n\n ngOnInit() {\n this.setClasses();\n this.initialized = true;\n }\n\n private setClasses() {\n let classNames: string[] = [];\n if (this.type) {\n classNames.push(`btn-group-${this.type}`);\n }\n if (buttonGroupSizeMap[this.size]) {\n classNames.push(buttonGroupSizeMap[this.size]);\n }\n this.hostRenderer.updateClass(classNames);\n }\n}\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport type ThyButtonIconShape = '' | 'circle-dashed' | 'circle-solid' | 'circle-thick-dashed' | 'circle-thick-solid' | 'self-icon';\n\nconst sizeClassesMap = {\n lg: ['btn-icon-lg'],\n md: ['btn-icon-md'],\n sm: ['btn-icon-sm'],\n xs: ['btn-icon-xs']\n};\n\nconst shapeClassesMap = {\n 'circle-dashed': ['btn-icon-circle', 'circle-dashed'],\n 'circle-solid': ['btn-icon-circle', 'circle-solid'],\n 'circle-thick-dashed': ['btn-icon-circle', 'circle-dashed', 'border-thick'],\n 'circle-thick-solid': ['btn-icon-circle', 'circle-solid', 'border-thick'],\n 'self-icon': ['btn-icon-self-circle']\n};\n\nconst themeClassesMap: any = {\n 'danger-weak': ['btn-icon-danger-weak']\n};\n\n/**\n * 操作按钮图标,支持`thy-button-icon`组件和`thyButtonIcon`指令两种形式\n * @name thy-button-icon,[thy-button-icon],[thyButtonIcon]\n * @order 20\n */\n@Component({\n selector: 'thy-button-icon,[thy-button-icon],[thyButtonIcon]',\n templateUrl: './button-icon.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButtonIcon implements OnInit {\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default 36px\n */\n @Input()\n set thySize(size: string) {\n this.size = size;\n this.setClasses();\n }\n\n /**\n * 图标, 和`thyButtonIcon`相同,当使用`thy-button-icon`时,只能使用 thyIcon 设置图标\n */\n @Input()\n set thyIcon(icon: string) {\n this.setIconClass(icon);\n }\n\n /**\n * 图标按钮的图标\n */\n @Input()\n set thyButtonIcon(icon: string) {\n this.setIconClass(icon);\n }\n\n /**\n * 展示的形状,默认只显示字体图标图标,circle-dashed, circle-solid 展示成虚线,实线边框圆形图标, circle-thick-dashed, circle-thick-solid 边框加粗\n */\n @Input()\n set thyShape(value: ThyButtonIconShape) {\n this.shape = value;\n this.setClasses();\n }\n\n /**\n * 亮色,颜色更浅,适合左侧导航顶部的按钮\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyLight(value: boolean) {\n this._isLighted = value;\n }\n\n /**\n * 设置为选中状态\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyActive(value: boolean) {\n this._isActive = value;\n }\n\n /**\n * 按钮展示类型,默认图标移上去显示主色, danger-weak 鼠标移上去显示 danger 红色\n */\n @Input()\n set thyTheme(value: string) {\n this.theme = value;\n this.setClasses();\n }\n\n constructor() {}\n\n private initialized = false;\n\n private shape: ThyButtonIconShape;\n\n private size: string;\n\n private hostRenderer = useHostRenderer();\n\n iconPrefix = 'wtf';\n\n iconClasses: string[];\n\n icon: string;\n\n theme: string;\n\n svgIconName: string;\n\n @HostBinding('class.btn') _isBtn = true;\n @HostBinding('class.btn-icon') _isBtnIcon = true;\n @HostBinding('class.btn-icon-light') _isLighted = false;\n @HostBinding('class.btn-icon-active') _isActive = false;\n\n @Input() thyColor: string;\n\n private setIconClass(icon: string) {\n if (icon) {\n if (icon.includes('wtf')) {\n const classes = icon.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n this.iconClasses = classes;\n this.svgIconName = null;\n } else {\n this.svgIconName = icon;\n }\n } else {\n this.iconClasses = null;\n this.svgIconName = null;\n }\n }\n\n private setClasses(first = false) {\n // 设置样式判断是否已经初始化,未初始化直接返回,除非是初次调用\n // 只有 ngOnInit 调用会传入 first = true\n if (!first && !this.initialized) {\n return;\n }\n const classes = sizeClassesMap[this.size] ? [...sizeClassesMap[this.size]] : [];\n if (this.shape && shapeClassesMap[this.shape]) {\n shapeClassesMap[this.shape].forEach((className: string) => {\n classes.push(className);\n });\n }\n if (this.theme && themeClassesMap[this.theme]) {\n themeClassesMap[this.theme].forEach((className: string) => {\n classes.push(className);\n });\n }\n this.hostRenderer.updateClass(classes);\n }\n\n ngOnInit() {\n this.setClasses(true);\n this.initialized = true;\n }\n}\n","@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></thy-icon>\n} @else {\n @if (iconClasses) {\n <i [ngClass]=\"iconClasses\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></i>\n }\n}\n<ng-content></ng-content>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnInit,\n Renderer2,\n ViewEncapsulation,\n AfterViewInit,\n inject\n} from '@angular/core';\n\nimport { assertIconOnly, coerceBooleanProperty } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgClass } from '@angular/common';\n\nexport type ThyButtonType =\n | 'primary'\n | 'secondary'\n | 'info'\n | 'outline-primary'\n | 'outline-default'\n | 'danger'\n | 'link'\n | 'link-secondary'\n | 'warning'\n | 'outline-warning'\n | 'success'\n | 'outline-success'\n | 'outline-info'\n | 'outline-danger'\n | 'link-danger-weak'\n | 'link-danger'\n | 'link-success';\n\nconst btnTypeClassesMap = {\n primary: ['btn-primary'],\n secondary: ['btn-primary', 'btn-md'],\n info: ['btn-info'],\n warning: ['btn-warning'],\n danger: ['btn-danger'],\n 'outline-primary': ['btn-outline-primary'],\n 'outline-default': ['btn-outline-default'],\n link: ['btn-link'], // 链接按钮\n 'link-info': ['btn-link', 'btn-link-info'], // 幽灵链接按钮\n 'link-secondary': ['btn-link', 'btn-link-primary-weak'], // 幽灵链接按钮\n 'link-danger-weak': ['btn-link', 'btn-link-danger-weak'], // 幽灵危险按钮\n 'link-danger': ['btn-link', 'btn-link-danger'], // 危险按钮\n 'link-success': ['btn-link', 'btn-link-success'] // 成功按钮\n};\n\nconst iconOnlyClass = 'thy-btn-icon-only';\n\n/**\n * 操作按钮,支持组件`thy-button`和`thyButton`指令两种形式\n * @name thy-button,[thy-button],[thyButton]\n * @order 10\n */\n@Component({\n selector: 'thy-button,[thy-button],[thyButton]',\n templateUrl: './button.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-btn btn'\n },\n standalone: true,\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButton implements OnInit, AfterViewInit {\n private elementRef = inject(ElementRef);\n private renderer = inject(Renderer2);\n\n private _initialized = false;\n\n private _originalText: string;\n\n private _type: string;\n\n private _size: string;\n\n private _icon: string;\n\n private _loading: boolean;\n\n private _loadingText: string;\n\n // 圆角方形\n _isRadiusSquare = false;\n\n iconClass: string[];\n\n svgIconName: string;\n\n private get nativeElement(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 按钮类型,支持添加前缀`outline-`实现线框按钮,支持添加前缀`link-`实现按钮链接\n * @type primary | info | warning | danger | success\n * @default primary\n */\n @Input()\n set thyButton(value: ThyButtonType) {\n this.setBtnType(value);\n }\n\n /**\n * 和`thyButton`参数一样,一般使用`thyButton`,为了减少参数输入, 当通过`thy-button`使用时,只能使用该参数控制类型\n * @default primary\n */\n @Input()\n set thyType(value: ThyButtonType) {\n this.setBtnType(value);\n }\n\n /**\n * 加载状态\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyLoading(value: boolean) {\n if (!this._loading && value) {\n this._loading = value;\n const textElement = this.nativeElement.querySelector('span');\n this._originalText = textElement ? textElement.innerText : '';\n this.setLoadingStatus();\n } else {\n this._loading = value;\n this.setLoadingStatus();\n }\n }\n\n /**\n * 加载状态时显示的文案\n */\n @Input()\n set thyLoadingText(value: string) {\n if (this._loadingText !== value) {\n this._loadingText = value;\n if (this._loading) {\n this.setLoadingText(this._loadingText);\n }\n }\n }\n\n /**\n * 按钮大小\n * @type xs | sm | md | default | lg\n * @default default\n */\n @Input()\n set thySize(size: string) {\n this._size = size;\n if (this._initialized) {\n this.updateClasses();\n }\n }\n\n /**\n * 按钮中显示的图标,支持SVG图标名称,比如`angle-left`,也支持传之前的 wtf 字体,比如: wtf-plus\n */\n @Input()\n set thyIcon(icon: string) {\n this._icon = icon;\n if (this._icon) {\n if (icon.includes('wtf')) {\n const classes = this._icon.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n this.iconClass = classes;\n this.svgIconName = null;\n } else {\n this.svgIconName = icon;\n }\n } else {\n this.iconClass = null;\n this.svgIconName = null;\n }\n }\n\n /**\n * 按钮整块展示\n * @default false\n */\n @HostBinding(`class.btn-block`)\n @Input({ transform: coerceBooleanProperty })\n thyBlock: boolean;\n\n private setBtnType(value: ThyButtonType) {\n if (value) {\n if (value.includes('-square')) {\n this._type = value.replace('-square', '');\n this._isRadiusSquare = true;\n } else {\n this._type = value;\n }\n\n if (this._initialized) {\n this.updateClasses();\n }\n }\n }\n\n private setLoadingText(text: string) {\n const spanElement = this.nativeElement.querySelector('span');\n if (spanElement) {\n this.renderer.setProperty(spanElement, 'innerText', text);\n }\n }\n\n private setLoadingStatus() {\n const innerText = this._loading ? this._loadingText : this._originalText;\n this.updateClasses();\n if (innerText) {\n this.setLoadingText(innerText);\n }\n }\n\n private updateClasses() {\n let classNames: string[] = [];\n if (btnTypeClassesMap[this._type]) {\n classNames = [...btnTypeClassesMap[this._type]];\n } else {\n if (this._type) {\n classNames.push(`btn-${this._type}`);\n }\n }\n if (this._size) {\n classNames.push(`btn-${this._size}`);\n }\n if (this._isRadiusSquare) {\n classNames.push('btn-square');\n }\n if (this._loading) {\n classNames.push('loading');\n }\n this.hostRenderer.updateClass(classNames);\n }\n\n ngOnInit() {\n this.updateClasses();\n this._initialized = true;\n }\n\n ngAfterViewInit() {\n if (assertIconOnly(this.nativeElement)) {\n this.hostRenderer.addClass(iconOnlyClass);\n } else {\n this.hostRenderer.removeClass(iconOnlyClass);\n }\n this.wrapSpanForText(this.nativeElement.childNodes);\n }\n\n private wrapSpanForText(nodes: NodeList): void {\n nodes.forEach(node => {\n if (node.nodeName === '#text') {\n const span = this.renderer.createElement('span');\n const parent = this.renderer.parentNode(node);\n this.renderer.addClass(span, 'thy-btn-wrap-span');\n this.renderer.insertBefore(parent, span, node);\n this.renderer.appendChild(span, node);\n }\n });\n }\n}\n","@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\"></thy-icon>\n} @else {\n @if (iconClass) {\n <i [ngClass]=\"iconClass\"></i>\n }\n}\n<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyButtonGroup } from './button-group.component';\nimport { ThyButtonIcon } from './button-icon.component';\nimport { ThyButton } from './button.component';\n\n@NgModule({\n imports: [CommonModule, ThyIconModule, ThyButton, ThyButtonIcon, ThyButtonGroup],\n exports: [ThyButton, ThyButtonIcon, ThyButtonGroup]\n})\nexport class ThyButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["coerceBooleanProperty"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-button.mjs","sources":["../../../src/button/button-group.component.ts","../../../src/button/button-icon.component.ts","../../../src/button/button-icon.component.html","../../../src/button/button.component.ts","../../../src/button/button.component.html","../../../src/button/button.module.ts","../../../src/button/ngx-tethys-button.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { Component, HostBinding, Input, OnInit, ViewEncapsulation } from '@angular/core';\n\nexport type ButtonGroupSize = 'sm' | 'lg' | 'xs' | 'md';\n\nexport type ButtonGroupType = 'outline-primary' | 'outline-default';\n\nconst buttonGroupSizeMap = {\n sm: ['btn-group-sm'],\n md: ['btn-group-md'],\n lg: ['btn-group-lg'],\n xs: ['btn-group-xs']\n};\n\n/**\n * 按钮分组组件\n * @name thy-button-group\n * @order 30\n */\n@Component({\n selector: 'thy-button-group',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\nexport class ThyButtonGroup implements OnInit {\n private initialized = false;\n\n private type: string;\n\n private size: string;\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default md\n */\n @Input()\n set thySize(size: ButtonGroupSize) {\n this.size = size;\n if (this.initialized) {\n this.setClasses();\n }\n }\n\n /**\n * 类型\n * @type outline-default | outline-primary\n * @default outline-default\n */\n @Input()\n set thyType(type: ButtonGroupType) {\n this.type = type;\n if (this.initialized) {\n this.setClasses();\n }\n }\n\n /**\n * 是否需要最小宽度,默认按钮最小宽度为80px\n * @default false\n */\n @Input()\n set thyClearMinWidth(value: string) {\n this.thyClearMinWidthClassName = coerceBooleanProperty(value);\n }\n\n @HostBinding('class.btn-group') _isButtonGroup = true;\n @HostBinding(`class.btn-group-clear-min-width`)\n thyClearMinWidthClassName = false;\n\n constructor() {}\n\n ngOnInit() {\n this.setClasses();\n this.initialized = true;\n }\n\n private setClasses() {\n let classNames: string[] = [];\n if (this.type) {\n classNames.push(`btn-group-${this.type}`);\n }\n if (buttonGroupSizeMap[this.size]) {\n classNames.push(buttonGroupSizeMap[this.size]);\n }\n this.hostRenderer.updateClass(classNames);\n }\n}\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport type ThyButtonIconShape = '' | 'circle-dashed' | 'circle-solid' | 'circle-thick-dashed' | 'circle-thick-solid' | 'self-icon';\n\nconst sizeClassesMap = {\n lg: ['btn-icon-lg'],\n md: ['btn-icon-md'],\n sm: ['btn-icon-sm'],\n xs: ['btn-icon-xs']\n};\n\nconst shapeClassesMap = {\n 'circle-dashed': ['btn-icon-circle', 'circle-dashed'],\n 'circle-solid': ['btn-icon-circle', 'circle-solid'],\n 'circle-thick-dashed': ['btn-icon-circle', 'circle-dashed', 'border-thick'],\n 'circle-thick-solid': ['btn-icon-circle', 'circle-solid', 'border-thick'],\n 'self-icon': ['btn-icon-self-circle']\n};\n\nconst themeClassesMap: any = {\n 'danger-weak': ['btn-icon-danger-weak']\n};\n\n/**\n * 操作按钮图标,支持`thy-button-icon`组件和`thyButtonIcon`指令两种形式\n * @name thy-button-icon,[thy-button-icon],[thyButtonIcon]\n * @order 20\n */\n@Component({\n selector: 'thy-button-icon,[thy-button-icon],[thyButtonIcon]',\n templateUrl: './button-icon.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButtonIcon implements OnInit {\n /**\n * 大小\n * @type xs | sm | md | lg\n * @default 36px\n */\n @Input()\n set thySize(size: string) {\n this.size = size;\n this.setClasses();\n }\n\n /**\n * 图标, 和`thyButtonIcon`相同,当使用`thy-button-icon`时,只能使用 thyIcon 设置图标\n */\n @Input()\n set thyIcon(icon: string) {\n this.setIconClass(icon);\n }\n\n /**\n * 图标按钮的图标\n */\n @Input()\n set thyButtonIcon(icon: string) {\n this.setIconClass(icon);\n }\n\n /**\n * 展示的形状,默认只显示字体图标图标,circle-dashed, circle-solid 展示成虚线,实线边框圆形图标, circle-thick-dashed, circle-thick-solid 边框加粗\n */\n @Input()\n set thyShape(value: ThyButtonIconShape) {\n this.shape = value;\n this.setClasses();\n }\n\n /**\n * 亮色,颜色更浅,适合左侧导航顶部的按钮\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyLight(value: boolean) {\n this._isLighted = value;\n }\n\n /**\n * 设置为选中状态\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyActive(value: boolean) {\n this._isActive = value;\n }\n\n /**\n * 按钮展示类型,默认图标移上去显示主色, danger-weak 鼠标移上去显示 danger 红色\n */\n @Input()\n set thyTheme(value: string) {\n this.theme = value;\n this.setClasses();\n }\n\n constructor() {}\n\n private initialized = false;\n\n private shape: ThyButtonIconShape;\n\n private size: string;\n\n private hostRenderer = useHostRenderer();\n\n iconPrefix = 'wtf';\n\n iconClasses: string[];\n\n icon: string;\n\n theme: string;\n\n svgIconName: string;\n\n @HostBinding('class.btn') _isBtn = true;\n @HostBinding('class.btn-icon') _isBtnIcon = true;\n @HostBinding('class.btn-icon-light') _isLighted = false;\n @HostBinding('class.btn-icon-active') _isActive = false;\n\n @Input() thyColor: string;\n\n private setIconClass(icon: string) {\n if (icon) {\n if (icon.includes('wtf')) {\n const classes = icon.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n this.iconClasses = classes;\n this.svgIconName = null;\n } else {\n this.svgIconName = icon;\n }\n } else {\n this.iconClasses = null;\n this.svgIconName = null;\n }\n }\n\n private setClasses(first = false) {\n // 设置样式判断是否已经初始化,未初始化直接返回,除非是初次调用\n // 只有 ngOnInit 调用会传入 first = true\n if (!first && !this.initialized) {\n return;\n }\n const classes = sizeClassesMap[this.size] ? [...sizeClassesMap[this.size]] : [];\n if (this.shape && shapeClassesMap[this.shape]) {\n shapeClassesMap[this.shape].forEach((className: string) => {\n classes.push(className);\n });\n }\n if (this.theme && themeClassesMap[this.theme]) {\n themeClassesMap[this.theme].forEach((className: string) => {\n classes.push(className);\n });\n }\n this.hostRenderer.updateClass(classes);\n }\n\n ngOnInit() {\n this.setClasses(true);\n this.initialized = true;\n }\n}\n","@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></thy-icon>\n} @else {\n @if (iconClasses) {\n <i [ngClass]=\"iconClasses\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></i>\n }\n}\n<ng-content></ng-content>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnInit,\n Renderer2,\n ViewEncapsulation,\n AfterViewInit,\n inject\n} from '@angular/core';\n\nimport { assertIconOnly, coerceBooleanProperty } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgClass } from '@angular/common';\n\nexport type ThyButtonType =\n | 'primary'\n | 'secondary'\n | 'info'\n | 'outline-primary'\n | 'outline-default'\n | 'danger'\n | 'link'\n | 'link-secondary'\n | 'warning'\n | 'outline-warning'\n | 'success'\n | 'outline-success'\n | 'outline-info'\n | 'outline-danger'\n | 'link-danger-weak'\n | 'link-danger'\n | 'link-success';\n\nconst btnTypeClassesMap = {\n primary: ['btn-primary'],\n secondary: ['btn-primary', 'btn-md'],\n info: ['btn-info'],\n warning: ['btn-warning'],\n danger: ['btn-danger'],\n 'outline-primary': ['btn-outline-primary'],\n 'outline-default': ['btn-outline-default'],\n link: ['btn-link'], // 链接按钮\n 'link-info': ['btn-link', 'btn-link-info'], // 幽灵链接按钮\n 'link-secondary': ['btn-link', 'btn-link-primary-weak'], // 幽灵链接按钮\n 'link-danger-weak': ['btn-link', 'btn-link-danger-weak'], // 幽灵危险按钮\n 'link-danger': ['btn-link', 'btn-link-danger'], // 危险按钮\n 'link-success': ['btn-link', 'btn-link-success'] // 成功按钮\n};\n\nconst iconOnlyClass = 'thy-btn-icon-only';\n\n/**\n * 操作按钮,支持组件`thy-button`和`thyButton`指令两种形式\n * @name thy-button,[thy-button],[thyButton]\n * @order 10\n */\n@Component({\n selector: 'thy-button,[thy-button],[thyButton]',\n templateUrl: './button.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-btn btn'\n },\n standalone: true,\n imports: [ThyIcon, NgClass]\n})\nexport class ThyButton implements OnInit, AfterViewInit {\n private elementRef = inject(ElementRef);\n private renderer = inject(Renderer2);\n\n private _initialized = false;\n\n private _originalText: string;\n\n private _type: string;\n\n private _size: string;\n\n private _icon: string;\n\n private _loading: boolean;\n\n private _loadingText: string;\n\n // 圆角方形\n _isRadiusSquare = false;\n\n iconClass: string[];\n\n svgIconName: string;\n\n private get nativeElement(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 按钮类型,支持添加前缀`outline-`实现线框按钮,支持添加前缀`link-`实现按钮链接\n * @type primary | info | warning | danger | success\n * @default primary\n */\n @Input()\n set thyButton(value: ThyButtonType) {\n this.setBtnType(value);\n }\n\n /**\n * 和`thyButton`参数一样,一般使用`thyButton`,为了减少参数输入, 当通过`thy-button`使用时,只能使用该参数控制类型\n * @default primary\n */\n @Input()\n set thyType(value: ThyButtonType) {\n this.setBtnType(value);\n }\n\n /**\n * 加载状态\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyLoading(value: boolean) {\n if (!this._loading && value) {\n this._loading = value;\n const textElement = this.nativeElement.querySelector('span');\n this._originalText = textElement ? textElement.innerText : '';\n this.setLoadingStatus();\n } else {\n this._loading = value;\n this.setLoadingStatus();\n }\n }\n\n /**\n * 加载状态时显示的文案\n */\n @Input()\n set thyLoadingText(value: string) {\n if (this._loadingText !== value) {\n this._loadingText = value;\n if (this._loading) {\n this.setLoadingText(this._loadingText);\n }\n }\n }\n\n /**\n * 按钮大小\n * @type xs | sm | md | default | lg\n * @default default\n */\n @Input()\n set thySize(size: string) {\n this._size = size;\n if (this._initialized) {\n this.updateClasses();\n }\n }\n\n /**\n * 按钮中显示的图标,支持SVG图标名称,比如`angle-left`,也支持传之前的 wtf 字体,比如: wtf-plus\n */\n @Input()\n set thyIcon(icon: string) {\n this._icon = icon;\n if (this._icon) {\n if (icon.includes('wtf')) {\n const classes = this._icon.split(' ');\n if (classes.length === 1) {\n classes.unshift('wtf');\n }\n this.iconClass = classes;\n this.svgIconName = null;\n } else {\n this.svgIconName = icon;\n }\n } else {\n this.iconClass = null;\n this.svgIconName = null;\n }\n }\n\n /**\n * 按钮整块展示\n * @default false\n */\n @HostBinding(`class.btn-block`)\n @Input({ transform: coerceBooleanProperty })\n thyBlock: boolean;\n\n private setBtnType(value: ThyButtonType) {\n if (value) {\n if (value.includes('-square')) {\n this._type = value.replace('-square', '');\n this._isRadiusSquare = true;\n } else {\n this._type = value;\n }\n\n if (this._initialized) {\n this.updateClasses();\n }\n }\n }\n\n private setLoadingText(text: string) {\n const spanElement = this.nativeElement.querySelector('span');\n if (spanElement) {\n this.renderer.setProperty(spanElement, 'innerText', text);\n }\n }\n\n private setLoadingStatus() {\n const innerText = this._loading ? this._loadingText : this._originalText;\n this.updateClasses();\n if (innerText) {\n this.setLoadingText(innerText);\n }\n }\n\n private updateClasses() {\n let classNames: string[] = [];\n if (btnTypeClassesMap[this._type]) {\n classNames = [...btnTypeClassesMap[this._type]];\n } else {\n if (this._type) {\n classNames.push(`btn-${this._type}`);\n }\n }\n if (this._size) {\n classNames.push(`btn-${this._size}`);\n }\n if (this._isRadiusSquare) {\n classNames.push('btn-square');\n }\n if (this._loading) {\n classNames.push('loading');\n }\n this.hostRenderer.updateClass(classNames);\n }\n\n ngOnInit() {\n this.updateClasses();\n this._initialized = true;\n }\n\n ngAfterViewInit() {\n if (assertIconOnly(this.nativeElement)) {\n this.hostRenderer.addClass(iconOnlyClass);\n } else {\n this.hostRenderer.removeClass(iconOnlyClass);\n }\n this.wrapSpanForText(this.nativeElement.childNodes);\n }\n\n private wrapSpanForText(nodes: NodeList): void {\n nodes.forEach(node => {\n if (node.nodeName === '#text') {\n const span = this.renderer.createElement('span');\n const parent = this.renderer.parentNode(node);\n this.renderer.addClass(span, 'thy-btn-wrap-span');\n this.renderer.insertBefore(parent, span, node);\n this.renderer.appendChild(span, node);\n }\n });\n }\n}\n","@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\"></thy-icon>\n} @else {\n @if (iconClass) {\n <i [ngClass]=\"iconClass\"></i>\n }\n}\n<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyButtonGroup } from './button-group.component';\nimport { ThyButtonIcon } from './button-icon.component';\nimport { ThyButton } from './button.component';\n\n@NgModule({\n imports: [CommonModule, ThyIconModule, ThyButton, ThyButtonIcon, ThyButtonGroup],\n exports: [ThyButton, ThyButtonIcon, ThyButtonGroup]\n})\nexport class ThyButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["coerceBooleanProperty"],"mappings":"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"}
@@ -5,12 +5,11 @@ import * as i1 from '@angular/forms';
5
5
  import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
6
6
  import { ThySharedModule } from 'ngx-tethys/shared';
7
7
  import { ThyIconModule } from 'ngx-tethys/icon';
8
- import { fromUnixTime, getMonth, getYear } from 'date-fns';
9
8
  import { ThyDateRange, ThyDateRangeModule } from 'ngx-tethys/date-range';
10
- import { TinyDate, getUnixTime, startOfMonth, endOfMonth } from 'ngx-tethys/util';
9
+ import { TinyDate, getUnixTime, startOfMonth, endOfMonth, getMonth, getYear } from 'ngx-tethys/util';
11
10
  import { ThyButton, ThyButtonModule } from 'ngx-tethys/button';
12
- import { injectLocale } from 'ngx-tethys/i18n';
13
11
  import { DateHelperService, DateTable, MonthTable, LibPackerModule } from 'ngx-tethys/date-picker';
12
+ import { injectLocale } from 'ngx-tethys/i18n';
14
13
  import { ThySelectModule } from 'ngx-tethys/select';
15
14
  import { ThyRadioModule } from 'ngx-tethys/radio';
16
15
 
@@ -42,8 +41,8 @@ class ThyCalendarHeader {
42
41
  {
43
42
  key: 'month',
44
43
  text: this.dateHelper.format(new TinyDate().nativeDate, this.pickerFormat),
45
- begin: getUnixTime(startOfMonth(new Date())),
46
- end: getUnixTime(endOfMonth(new Date())),
44
+ begin: getUnixTime(startOfMonth(new TinyDate().getTime())),
45
+ end: getUnixTime(endOfMonth(new TinyDate().getTime())),
47
46
  timestamp: {
48
47
  interval: 1,
49
48
  unit: 'month'
@@ -59,11 +58,11 @@ class ThyCalendarHeader {
59
58
  }
60
59
  ngOnInit() { }
61
60
  onChangeMonth(month) {
62
- const currentMonth = fromUnixTime(month.begin).getMonth();
61
+ const currentMonth = TinyDate.fromUnixTime(month.end).getMonth();
63
62
  this.monthChange.emit(currentMonth);
64
63
  }
65
64
  onChangeYear(year) {
66
- const currentYear = fromUnixTime(year.begin).getFullYear();
65
+ const currentYear = TinyDate.fromUnixTime(year.begin).getFullYear();
67
66
  this.yearChange.emit(currentYear);
68
67
  }
69
68
  onChangeRange(dateRange) {
@@ -86,8 +85,8 @@ class ThyCalendarHeader {
86
85
  ...this.dateRanges[0],
87
86
  key: 'exception',
88
87
  text: this._currentDate.format(this.pickerFormat),
89
- begin: getUnixTime(startOfMonth(this._currentDate.nativeDate)),
90
- end: getUnixTime(endOfMonth(this._currentDate.nativeDate))
88
+ begin: getUnixTime(startOfMonth(this._currentDate.getTime())),
89
+ end: getUnixTime(endOfMonth(this._currentDate.getTime()))
91
90
  };
92
91
  this.date = dateRange;
93
92
  }
@@ -97,12 +96,13 @@ class ThyCalendarHeader {
97
96
  }
98
97
  }
99
98
  isCurrentDate(currentDate) {
100
- this.isCurrent = currentDate.getMonth() !== getMonth(new Date()) || currentDate.getYear() !== getYear(new Date());
99
+ this.isCurrent =
100
+ currentDate.getMonth() !== getMonth(new TinyDate().getTime()) || currentDate.getYear() !== getYear(new TinyDate().getTime());
101
101
  }
102
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
103
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyCalendarHeader, isStandalone: true, selector: "thy-calendar-header", inputs: { currentDate: "currentDate", operationRender: "operationRender" }, outputs: { yearChange: "yearChange", monthChange: "monthChange", dateRangeChange: "dateRangeChange" }, host: { properties: { "class.thy-calendar-full-header-container": "this.className" } }, ngImport: i0, template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n", dependencies: [{ kind: "component", type: ThyDateRange, selector: "thy-date-range", inputs: ["thyOptionalDateRanges", "thyHiddenMenu", "thyDisabledSwitch", "thyCustomTextValue", "thyMinDate", "thyMaxDate", "thyCustomKey", "thyPickerFormat", "thyDisabledDate"], outputs: ["thyOnCalendarChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: JsonPipe, name: "json" }] }); }
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
103
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyCalendarHeader, isStandalone: true, selector: "thy-calendar-header", inputs: { currentDate: "currentDate", operationRender: "operationRender" }, outputs: { yearChange: "yearChange", monthChange: "monthChange", dateRangeChange: "dateRangeChange" }, host: { properties: { "class.thy-calendar-full-header-container": "this.className" } }, ngImport: i0, template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n", dependencies: [{ kind: "component", type: ThyDateRange, selector: "thy-date-range", inputs: ["thyOptionalDateRanges", "thyHiddenMenu", "thyDisabledSwitch", "thyCustomTextValue", "thyMinDate", "thyMaxDate", "thyCustomKey", "thyPickerFormat", "thyDisabledDate"], outputs: ["thyOnCalendarChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: JsonPipe, name: "json" }] }); }
104
104
  }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeader, decorators: [{
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarHeader, decorators: [{
106
106
  type: Component,
107
107
  args: [{ selector: 'thy-calendar-header', standalone: true, imports: [ThyDateRange, FormsModule, ThyButton, NgTemplateOutlet, JsonPipe], template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n" }]
108
108
  }], propDecorators: { className: [{
@@ -125,10 +125,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
125
125
  * @name thyDateCell
126
126
  */
127
127
  class ThyDateCellDirective {
128
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyDateCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
129
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: ThyDateCellDirective, isStandalone: true, selector: "[thyDateCell]", exportAs: ["thyDateCell"], ngImport: i0 }); }
128
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDateCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
129
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ThyDateCellDirective, isStandalone: true, selector: "[thyDateCell]", exportAs: ["thyDateCell"], ngImport: i0 }); }
130
130
  }
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyDateCellDirective, decorators: [{
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDateCellDirective, decorators: [{
132
132
  type: Directive,
133
133
  args: [{
134
134
  selector: '[thyDateCell]',
@@ -141,10 +141,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
141
141
  * @name thyCalendarHeaderOperation
142
142
  */
143
143
  class ThyCalendarHeaderOperationDirective {
144
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeaderOperationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
145
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: ThyCalendarHeaderOperationDirective, isStandalone: true, selector: "[thyCalendarHeaderOperation]", exportAs: ["thyCalendarHeaderOperation"], ngImport: i0 }); }
144
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarHeaderOperationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
145
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ThyCalendarHeaderOperationDirective, isStandalone: true, selector: "[thyCalendarHeaderOperation]", exportAs: ["thyCalendarHeaderOperation"], ngImport: i0 }); }
146
146
  }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeaderOperationDirective, decorators: [{
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarHeaderOperationDirective, decorators: [{
148
148
  type: Directive,
149
149
  args: [{
150
150
  selector: '[thyCalendarHeaderOperation]',
@@ -232,10 +232,10 @@ class ThyCalendar {
232
232
  this.updateDate(new TinyDate(this.thyValue), false);
233
233
  }
234
234
  }
235
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
236
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyCalendar, isStandalone: true, selector: "thy-calendar", inputs: { thyMode: "thyMode", thyValue: "thyValue", thyDisabledDate: "thyDisabledDate", thyDateCell: "thyDateCell", thyCalendarHeaderOperation: "thyCalendarHeaderOperation" }, outputs: { thySelectChange: "thySelectChange", thyValueChange: "thyValueChange", thyDateRangeChange: "thyDateRangeChange" }, host: { properties: { "class.thy-calendar-container": "this.className", "class.thy-calendar-full": "this.className1" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => ThyCalendar), multi: true }], queries: [{ propertyName: "thyDateCellChild", first: true, predicate: ThyDateCellDirective, descendants: true, read: TemplateRef }, { propertyName: "thyCalendarHeaderOperationChild", first: true, predicate: ThyCalendarHeaderOperationDirective, descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: "<thy-calendar-header\n [operationRender]=\"headerOperation\"\n (monthChange)=\"onMonthSelect($event)\"\n (yearChange)=\"onYearSelect($event)\"\n (dateRangeChange)=\"onDateRangeSelect($event)\"\n [currentDate]=\"currentDate\"\n></thy-calendar-header>\n\n<div class=\"thy-calendar-panel\">\n <div class=\"thy-calendar-{{ thyMode === 'month' ? 'date' : 'month' }}-panel\">\n <div class=\"thy-calendar-body\">\n @if (thyMode === 'month') {\n <date-table\n [prefixCls]=\"prefixCls\"\n [value]=\"currentDate\"\n [activeDate]=\"currentDate\"\n [selectedValue]=\"currentDate\"\n [cellRender]=\"dateCell\"\n [disabledDate]=\"thyDisabledDate\"\n (valueChange)=\"onDateSelect($event)\"\n ></date-table>\n } @else {\n <month-table [value]=\"currentDate\" [disabledDate]=\"thyDisabledDate\" (valueChange)=\"onDateSelect($event)\"></month-table>\n }\n </div>\n </div>\n</div>\n\n", dependencies: [{ kind: "component", type: ThyCalendarHeader, selector: "thy-calendar-header", inputs: ["currentDate", "operationRender"], outputs: ["yearChange", "monthChange", "dateRangeChange"] }, { kind: "component", type: DateTable, selector: "date-table", outputs: ["dayHover"], exportAs: ["dateTable"] }, { kind: "component", type: MonthTable, selector: "month-table", exportAs: ["monthTable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
235
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
236
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyCalendar, isStandalone: true, selector: "thy-calendar", inputs: { thyMode: "thyMode", thyValue: "thyValue", thyDisabledDate: "thyDisabledDate", thyDateCell: "thyDateCell", thyCalendarHeaderOperation: "thyCalendarHeaderOperation" }, outputs: { thySelectChange: "thySelectChange", thyValueChange: "thyValueChange", thyDateRangeChange: "thyDateRangeChange" }, host: { properties: { "class.thy-calendar-container": "this.className", "class.thy-calendar-full": "this.className1" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => ThyCalendar), multi: true }], queries: [{ propertyName: "thyDateCellChild", first: true, predicate: ThyDateCellDirective, descendants: true, read: TemplateRef }, { propertyName: "thyCalendarHeaderOperationChild", first: true, predicate: ThyCalendarHeaderOperationDirective, descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: "<thy-calendar-header\n [operationRender]=\"headerOperation\"\n (monthChange)=\"onMonthSelect($event)\"\n (yearChange)=\"onYearSelect($event)\"\n (dateRangeChange)=\"onDateRangeSelect($event)\"\n [currentDate]=\"currentDate\"\n></thy-calendar-header>\n\n<div class=\"thy-calendar-panel\">\n <div class=\"thy-calendar-{{ thyMode === 'month' ? 'date' : 'month' }}-panel\">\n <div class=\"thy-calendar-body\">\n @if (thyMode === 'month') {\n <date-table\n [prefixCls]=\"prefixCls\"\n [value]=\"currentDate\"\n [activeDate]=\"currentDate\"\n [selectedValue]=\"currentDate\"\n [cellRender]=\"dateCell\"\n [disabledDate]=\"thyDisabledDate\"\n (valueChange)=\"onDateSelect($event)\"\n ></date-table>\n } @else {\n <month-table [value]=\"currentDate\" [disabledDate]=\"thyDisabledDate\" (valueChange)=\"onDateSelect($event)\"></month-table>\n }\n </div>\n </div>\n</div>\n\n", dependencies: [{ kind: "component", type: ThyCalendarHeader, selector: "thy-calendar-header", inputs: ["currentDate", "operationRender"], outputs: ["yearChange", "monthChange", "dateRangeChange"] }, { kind: "component", type: DateTable, selector: "date-table", outputs: ["dayHover"], exportAs: ["dateTable"] }, { kind: "component", type: MonthTable, selector: "month-table", exportAs: ["monthTable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
237
237
  }
238
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendar, decorators: [{
238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendar, decorators: [{
239
239
  type: Component,
240
240
  args: [{ selector: 'thy-calendar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => ThyCalendar), multi: true }], standalone: true, imports: [ThyCalendarHeader, DateTable, MonthTable], template: "<thy-calendar-header\n [operationRender]=\"headerOperation\"\n (monthChange)=\"onMonthSelect($event)\"\n (yearChange)=\"onYearSelect($event)\"\n (dateRangeChange)=\"onDateRangeSelect($event)\"\n [currentDate]=\"currentDate\"\n></thy-calendar-header>\n\n<div class=\"thy-calendar-panel\">\n <div class=\"thy-calendar-{{ thyMode === 'month' ? 'date' : 'month' }}-panel\">\n <div class=\"thy-calendar-body\">\n @if (thyMode === 'month') {\n <date-table\n [prefixCls]=\"prefixCls\"\n [value]=\"currentDate\"\n [activeDate]=\"currentDate\"\n [selectedValue]=\"currentDate\"\n [cellRender]=\"dateCell\"\n [disabledDate]=\"thyDisabledDate\"\n (valueChange)=\"onDateSelect($event)\"\n ></date-table>\n } @else {\n <month-table [value]=\"currentDate\" [disabledDate]=\"thyDisabledDate\" (valueChange)=\"onDateSelect($event)\"></month-table>\n }\n </div>\n </div>\n</div>\n\n" }]
241
241
  }], propDecorators: { className: [{
@@ -269,8 +269,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
269
269
  }] } });
270
270
 
271
271
  class ThyCalendarModule {
272
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
273
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarModule, imports: [CommonModule,
272
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
273
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarModule, imports: [CommonModule,
274
274
  FormsModule,
275
275
  ThySharedModule,
276
276
  ThyIconModule,
@@ -283,7 +283,7 @@ class ThyCalendarModule {
283
283
  ThyCalendar,
284
284
  ThyDateCellDirective,
285
285
  ThyCalendarHeaderOperationDirective], exports: [ThyCalendarHeader, ThyCalendar, ThyDateCellDirective, ThyCalendarHeaderOperationDirective] }); }
286
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarModule, imports: [CommonModule,
286
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarModule, imports: [CommonModule,
287
287
  FormsModule,
288
288
  ThySharedModule,
289
289
  ThyIconModule,
@@ -295,7 +295,7 @@ class ThyCalendarModule {
295
295
  ThyCalendarHeader,
296
296
  ThyCalendar] }); }
297
297
  }
298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarModule, decorators: [{
298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarModule, decorators: [{
299
299
  type: NgModule,
300
300
  args: [{
301
301
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-calendar.mjs","sources":["../../../src/calendar/calendar-header.component.ts","../../../src/calendar/calendar-header.component.html","../../../src/calendar/calendar-cells.ts","../../../src/calendar/calendar.component.ts","../../../src/calendar/calendar.component.html","../../../src/calendar/module.ts","../../../src/calendar/ngx-tethys-calendar.ts"],"sourcesContent":["import { fromUnixTime, getMonth, getYear } from 'date-fns';\nimport { DateRangeItemInfo, ThyDateRange } from 'ngx-tethys/date-range';\nimport { endOfMonth, FunctionProp, getUnixTime, startOfMonth, TinyDate } from 'ngx-tethys/util';\n\nimport { ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, OnInit, Output, Signal, TemplateRef, inject } from '@angular/core';\nimport { ThyButton } from 'ngx-tethys/button';\nimport { NgTemplateOutlet, JsonPipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { injectLocale, ThyCalendarLocale } from 'ngx-tethys/i18n';\nimport { DateHelperService } from 'ngx-tethys/date-picker';\n\n/**\n * 日历头部操作栏组件\n * @name thy-calendar-header\n * @order 20\n */\n@Component({\n selector: 'thy-calendar-header',\n templateUrl: './calendar-header.component.html',\n standalone: true,\n imports: [ThyDateRange, FormsModule, ThyButton, NgTemplateOutlet, JsonPipe]\n})\nexport class ThyCalendarHeader implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n private dateHelper = inject(DateHelperService);\n private locale: Signal<ThyCalendarLocale> = injectLocale('calendar');\n\n @HostBinding('class.thy-calendar-full-header-container') className = true;\n\n /**\n * 当前选中日期\n */\n @Input()\n set currentDate(value: TinyDate) {\n this.setDate(value);\n }\n\n /**\n * \t自定义渲染右侧操作项\n */\n @Input() operationRender: FunctionProp<TemplateRef<any>>;\n\n /**\n * 日期选择范围(年)发生变化的回调\n */\n @Output() readonly yearChange: EventEmitter<number> = new EventEmitter();\n\n /**\n * 日期选择范围(月)发生变化的回调\n */\n @Output() readonly monthChange: EventEmitter<number> = new EventEmitter();\n\n /**\n * 日期选择范围(日期)发生变化的回调\n */\n @Output() readonly dateRangeChange: EventEmitter<DateRangeItemInfo> = new EventEmitter();\n\n public pickerFormat = this.locale().yearMonthFormat;\n\n public dateRanges: DateRangeItemInfo[] = [\n {\n key: 'month',\n text: this.dateHelper.format(new TinyDate().nativeDate, this.pickerFormat),\n begin: getUnixTime(startOfMonth(new Date())),\n end: getUnixTime(endOfMonth(new Date())),\n timestamp: {\n interval: 1,\n unit: 'month'\n }\n }\n ];\n\n public date: DateRangeItemInfo;\n\n private _currentDate: TinyDate;\n\n public isCurrent: boolean;\n\n ngOnInit(): void {}\n\n onChangeMonth(month: DateRangeItemInfo) {\n const currentMonth = fromUnixTime(month.begin).getMonth();\n this.monthChange.emit(currentMonth);\n }\n\n onChangeYear(year: DateRangeItemInfo) {\n const currentYear = fromUnixTime(year.begin).getFullYear();\n this.yearChange.emit(currentYear);\n }\n\n onChangeRange(dateRange: DateRangeItemInfo) {\n this.isCurrentDate(this._currentDate);\n this.onChangeYear(dateRange);\n this.onChangeMonth(dateRange);\n this.dateRangeChange.emit(dateRange);\n }\n\n backToday() {\n this._currentDate = new TinyDate();\n this.date = { ...this.dateRanges[0] };\n this.onChangeRange(this.date);\n this.cdr.detectChanges();\n }\n\n setDate(value: TinyDate) {\n this.isCurrentDate(value);\n if (this.isCurrent) {\n this._currentDate = value;\n const dateRange = {\n ...this.dateRanges[0],\n key: 'exception',\n text: this._currentDate.format(this.pickerFormat),\n begin: getUnixTime(startOfMonth(this._currentDate.nativeDate)),\n end: getUnixTime(endOfMonth(this._currentDate.nativeDate))\n };\n this.date = dateRange;\n } else {\n this._currentDate = new TinyDate();\n this.date = { ...this.dateRanges[0] };\n }\n }\n\n isCurrentDate(currentDate: TinyDate) {\n this.isCurrent = currentDate.getMonth() !== getMonth(new Date()) || currentDate.getYear() !== getYear(new Date());\n }\n}\n","<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n","import { Directive } from '@angular/core';\n\n/**\n * 自定义日期单元格,模板内容会被追加到单元格,可通过 *thyDateCell 传入模板\n * @name thyDateCell\n */\n@Directive({\n selector: '[thyDateCell]',\n exportAs: 'thyDateCell',\n standalone: true\n})\nexport class ThyDateCellDirective {}\n\n/**\n * 自定义右上角操作项,可通过 *thyCalendarHeaderOperation传入模板\n * @name thyCalendarHeaderOperation\n */\n@Directive({\n selector: '[thyCalendarHeaderOperation]',\n exportAs: 'thyCalendarHeaderOperation',\n standalone: true\n})\nexport class ThyCalendarHeaderOperationDirective {}\n","import { DateRangeItemInfo } from 'ngx-tethys/date-range';\nimport { TinyDate } from 'ngx-tethys/util';\n\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n inject\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ThyCalendarHeaderOperationDirective as HeaderOperation, ThyDateCellDirective as DateCell } from './calendar-cells';\nimport { DateTable, MonthTable } from 'ngx-tethys/date-picker';\n\nimport { ThyCalendarHeader } from './calendar-header.component';\n\nexport type CalendarMode = 'month' | 'year';\ntype CalendarDateTemplate = TemplateRef<{ $implicit: Date }>;\n\n/**\n * 日历组件\n * @name thy-calendar\n * @order 10\n */\n@Component({\n selector: 'thy-calendar',\n templateUrl: './calendar.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => ThyCalendar), multi: true }],\n standalone: true,\n imports: [ThyCalendarHeader, DateTable, MonthTable]\n})\nexport class ThyCalendar implements OnInit, OnChanges {\n private cdr = inject(ChangeDetectorRef);\n\n @HostBinding('class.thy-calendar-container') className = true;\n\n @HostBinding('class.thy-calendar-full') className1 = true;\n\n /**\n * 展示模式\n * @type month | year\n */\n @Input() thyMode: CalendarMode = 'month';\n\n /**\n * (可双向绑定)展示日期,默认为当前日期\n */\n @Input() thyValue?: Date;\n\n /**\n * 不可选择的日期\n */\n @Input() thyDisabledDate?: (date: Date) => boolean;\n\n /**\n * 日期选择变化的回调\n */\n @Output() thySelectChange: EventEmitter<Date> = new EventEmitter();\n\n /**\n * 日期选择变化的回调\n */\n @Output() thyValueChange: EventEmitter<Date> = new EventEmitter();\n\n /**\n * 日期选择范围变化的回调\n */\n @Output() thyDateRangeChange: EventEmitter<DateRangeItemInfo> = new EventEmitter();\n\n /**\n * (可作为内容)自定义渲染日期单元格,模板内容会被追加到单元格\n */\n @Input() thyDateCell?: CalendarDateTemplate;\n\n /**\n * 追加到单元格的自定义模板\n */\n @ContentChild(DateCell, { read: TemplateRef }) thyDateCellChild?: CalendarDateTemplate;\n get dateCell(): CalendarDateTemplate {\n return (this.thyDateCell || this.thyDateCellChild)!;\n }\n\n /**\n * (可作为内容)自定义渲染右上角操作项\n */\n @Input() thyCalendarHeaderOperation?: CalendarDateTemplate;\n\n /**\n * 右上角操作项的自定义模板\n */\n @ContentChild(HeaderOperation, { read: TemplateRef }) thyCalendarHeaderOperationChild?: CalendarDateTemplate;\n get headerOperation(): CalendarDateTemplate {\n return (this.thyCalendarHeaderOperation || this.thyCalendarHeaderOperationChild)!;\n }\n\n public currentDate = new TinyDate();\n\n public prefixCls = 'thy-calendar-full';\n\n private onChangeFn: (date: Date) => void = () => {};\n\n private onTouchFn: () => void = () => {};\n\n ngOnInit(): void {}\n\n onYearSelect(year: number): void {\n const date = this.currentDate.setYear(year);\n this.updateDate(date);\n }\n\n onMonthSelect(month: number): void {\n const date = this.currentDate.setMonth(month);\n this.updateDate(date);\n }\n\n onDateSelect(date: TinyDate): void {\n // Only currentDate is enough in calendar\n // this.value = date;\n this.updateDate(date);\n }\n\n onDateRangeSelect(date: DateRangeItemInfo) {\n this.thyDateRangeChange.emit(date);\n }\n\n writeValue(value: Date | null): void {\n this.updateDate(new TinyDate(value as Date), false);\n this.cdr.markForCheck();\n }\n\n registerOnChange(fn: (date: Date) => void): void {\n this.onChangeFn = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouchFn = fn;\n }\n\n private updateDate(date: TinyDate, touched: boolean = true): void {\n this.currentDate = date;\n\n if (touched) {\n this.onChangeFn(date.nativeDate);\n this.onTouchFn();\n this.thySelectChange.emit(date.nativeDate);\n this.thyValueChange.emit(date.nativeDate);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.thyValue) {\n this.updateDate(new TinyDate(this.thyValue), false);\n }\n }\n}\n","<thy-calendar-header\n [operationRender]=\"headerOperation\"\n (monthChange)=\"onMonthSelect($event)\"\n (yearChange)=\"onYearSelect($event)\"\n (dateRangeChange)=\"onDateRangeSelect($event)\"\n [currentDate]=\"currentDate\"\n></thy-calendar-header>\n\n<div class=\"thy-calendar-panel\">\n <div class=\"thy-calendar-{{ thyMode === 'month' ? 'date' : 'month' }}-panel\">\n <div class=\"thy-calendar-body\">\n @if (thyMode === 'month') {\n <date-table\n [prefixCls]=\"prefixCls\"\n [value]=\"currentDate\"\n [activeDate]=\"currentDate\"\n [selectedValue]=\"currentDate\"\n [cellRender]=\"dateCell\"\n [disabledDate]=\"thyDisabledDate\"\n (valueChange)=\"onDateSelect($event)\"\n ></date-table>\n } @else {\n <month-table [value]=\"currentDate\" [disabledDate]=\"thyDisabledDate\" (valueChange)=\"onDateSelect($event)\"></month-table>\n }\n </div>\n </div>\n</div>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyCalendarHeader } from './calendar-header.component';\nimport { ThyCalendar } from './calendar.component';\nimport { ThyCalendarHeaderOperationDirective, ThyDateCellDirective } from './calendar-cells';\nimport { LibPackerModule } from 'ngx-tethys/date-picker';\nimport { ThySelectModule } from 'ngx-tethys/select';\nimport { ThyRadioModule } from 'ngx-tethys/radio';\nimport { ThyButtonModule } from 'ngx-tethys/button';\nimport { ThyDateRangeModule } from 'ngx-tethys/date-range';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ThySharedModule,\n ThyIconModule,\n LibPackerModule,\n ThySelectModule,\n ThyRadioModule,\n ThyButtonModule,\n ThyDateRangeModule,\n ThyCalendarHeader,\n ThyCalendar,\n ThyDateCellDirective,\n ThyCalendarHeaderOperationDirective\n ],\n exports: [ThyCalendarHeader, ThyCalendar, ThyDateCellDirective, ThyCalendarHeaderOperationDirective]\n})\nexport class ThyCalendarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DateCell","HeaderOperation"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-calendar.mjs","sources":["../../../src/calendar/calendar-header.component.ts","../../../src/calendar/calendar-header.component.html","../../../src/calendar/calendar-cells.ts","../../../src/calendar/calendar.component.ts","../../../src/calendar/calendar.component.html","../../../src/calendar/module.ts","../../../src/calendar/ngx-tethys-calendar.ts"],"sourcesContent":["import { DateRangeItemInfo, ThyDateRange } from 'ngx-tethys/date-range';\nimport { endOfMonth, FunctionProp, getMonth, getUnixTime, getYear, startOfMonth, TinyDate } from 'ngx-tethys/util';\n\nimport { JsonPipe, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectorRef, Component, EventEmitter, HostBinding, inject, Input, OnInit, Output, Signal, TemplateRef } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { ThyButton } from 'ngx-tethys/button';\nimport { DateHelperService } from 'ngx-tethys/date-picker';\nimport { injectLocale, ThyCalendarLocale } from 'ngx-tethys/i18n';\n\n/**\n * 日历头部操作栏组件\n * @name thy-calendar-header\n * @order 20\n */\n@Component({\n selector: 'thy-calendar-header',\n templateUrl: './calendar-header.component.html',\n standalone: true,\n imports: [ThyDateRange, FormsModule, ThyButton, NgTemplateOutlet, JsonPipe]\n})\nexport class ThyCalendarHeader implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n private dateHelper = inject(DateHelperService);\n private locale: Signal<ThyCalendarLocale> = injectLocale('calendar');\n\n @HostBinding('class.thy-calendar-full-header-container') className = true;\n\n /**\n * 当前选中日期\n */\n @Input()\n set currentDate(value: TinyDate) {\n this.setDate(value);\n }\n\n /**\n * \t自定义渲染右侧操作项\n */\n @Input() operationRender: FunctionProp<TemplateRef<any>>;\n\n /**\n * 日期选择范围(年)发生变化的回调\n */\n @Output() readonly yearChange: EventEmitter<number> = new EventEmitter();\n\n /**\n * 日期选择范围(月)发生变化的回调\n */\n @Output() readonly monthChange: EventEmitter<number> = new EventEmitter();\n\n /**\n * 日期选择范围(日期)发生变化的回调\n */\n @Output() readonly dateRangeChange: EventEmitter<DateRangeItemInfo> = new EventEmitter();\n\n public pickerFormat = this.locale().yearMonthFormat;\n\n public dateRanges: DateRangeItemInfo[] = [\n {\n key: 'month',\n text: this.dateHelper.format(new TinyDate().nativeDate, this.pickerFormat),\n begin: getUnixTime(startOfMonth(new TinyDate().getTime())),\n end: getUnixTime(endOfMonth(new TinyDate().getTime())),\n timestamp: {\n interval: 1,\n unit: 'month'\n }\n }\n ];\n\n public date: DateRangeItemInfo;\n\n private _currentDate: TinyDate;\n\n public isCurrent: boolean;\n\n ngOnInit(): void {}\n\n onChangeMonth(month: DateRangeItemInfo) {\n const currentMonth = TinyDate.fromUnixTime(month.end).getMonth();\n this.monthChange.emit(currentMonth);\n }\n\n onChangeYear(year: DateRangeItemInfo) {\n const currentYear = TinyDate.fromUnixTime(year.begin).getFullYear();\n this.yearChange.emit(currentYear);\n }\n\n onChangeRange(dateRange: DateRangeItemInfo) {\n this.isCurrentDate(this._currentDate);\n this.onChangeYear(dateRange);\n this.onChangeMonth(dateRange);\n this.dateRangeChange.emit(dateRange);\n }\n\n backToday() {\n this._currentDate = new TinyDate();\n this.date = { ...this.dateRanges[0] };\n this.onChangeRange(this.date);\n this.cdr.detectChanges();\n }\n\n setDate(value: TinyDate) {\n this.isCurrentDate(value);\n if (this.isCurrent) {\n this._currentDate = value;\n const dateRange = {\n ...this.dateRanges[0],\n key: 'exception',\n text: this._currentDate.format(this.pickerFormat),\n begin: getUnixTime(startOfMonth(this._currentDate.getTime())),\n end: getUnixTime(endOfMonth(this._currentDate.getTime()))\n };\n this.date = dateRange;\n } else {\n this._currentDate = new TinyDate();\n this.date = { ...this.dateRanges[0] };\n }\n }\n\n isCurrentDate(currentDate: TinyDate) {\n this.isCurrent =\n currentDate.getMonth() !== getMonth(new TinyDate().getTime()) || currentDate.getYear() !== getYear(new TinyDate().getTime());\n }\n}\n","<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n","import { Directive } from '@angular/core';\n\n/**\n * 自定义日期单元格,模板内容会被追加到单元格,可通过 *thyDateCell 传入模板\n * @name thyDateCell\n */\n@Directive({\n selector: '[thyDateCell]',\n exportAs: 'thyDateCell',\n standalone: true\n})\nexport class ThyDateCellDirective {}\n\n/**\n * 自定义右上角操作项,可通过 *thyCalendarHeaderOperation传入模板\n * @name thyCalendarHeaderOperation\n */\n@Directive({\n selector: '[thyCalendarHeaderOperation]',\n exportAs: 'thyCalendarHeaderOperation',\n standalone: true\n})\nexport class ThyCalendarHeaderOperationDirective {}\n","import { DateRangeItemInfo } from 'ngx-tethys/date-range';\nimport { TinyDate } from 'ngx-tethys/util';\n\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n HostBinding,\n inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { DateTable, MonthTable } from 'ngx-tethys/date-picker';\nimport { ThyDateCellDirective as DateCell, ThyCalendarHeaderOperationDirective as HeaderOperation } from './calendar-cells';\n\nimport { ThyCalendarHeader } from './calendar-header.component';\n\nexport type CalendarMode = 'month' | 'year';\ntype CalendarDateTemplate = TemplateRef<{ $implicit: Date }>;\n\n/**\n * 日历组件\n * @name thy-calendar\n * @order 10\n */\n@Component({\n selector: 'thy-calendar',\n templateUrl: './calendar.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => ThyCalendar), multi: true }],\n standalone: true,\n imports: [ThyCalendarHeader, DateTable, MonthTable]\n})\nexport class ThyCalendar implements OnInit, OnChanges {\n private cdr = inject(ChangeDetectorRef);\n\n @HostBinding('class.thy-calendar-container') className = true;\n\n @HostBinding('class.thy-calendar-full') className1 = true;\n\n /**\n * 展示模式\n * @type month | year\n */\n @Input() thyMode: CalendarMode = 'month';\n\n /**\n * (可双向绑定)展示日期,默认为当前日期\n */\n @Input() thyValue?: Date;\n\n /**\n * 不可选择的日期\n */\n @Input() thyDisabledDate?: (date: Date) => boolean;\n\n /**\n * 日期选择变化的回调\n */\n @Output() thySelectChange: EventEmitter<Date> = new EventEmitter();\n\n /**\n * 日期选择变化的回调\n */\n @Output() thyValueChange: EventEmitter<Date> = new EventEmitter();\n\n /**\n * 日期选择范围变化的回调\n */\n @Output() thyDateRangeChange: EventEmitter<DateRangeItemInfo> = new EventEmitter();\n\n /**\n * (可作为内容)自定义渲染日期单元格,模板内容会被追加到单元格\n */\n @Input() thyDateCell?: CalendarDateTemplate;\n\n /**\n * 追加到单元格的自定义模板\n */\n @ContentChild(DateCell, { read: TemplateRef }) thyDateCellChild?: CalendarDateTemplate;\n get dateCell(): CalendarDateTemplate {\n return (this.thyDateCell || this.thyDateCellChild)!;\n }\n\n /**\n * (可作为内容)自定义渲染右上角操作项\n */\n @Input() thyCalendarHeaderOperation?: CalendarDateTemplate;\n\n /**\n * 右上角操作项的自定义模板\n */\n @ContentChild(HeaderOperation, { read: TemplateRef }) thyCalendarHeaderOperationChild?: CalendarDateTemplate;\n get headerOperation(): CalendarDateTemplate {\n return (this.thyCalendarHeaderOperation || this.thyCalendarHeaderOperationChild)!;\n }\n\n public currentDate = new TinyDate();\n\n public prefixCls = 'thy-calendar-full';\n\n private onChangeFn: (date: Date) => void = () => {};\n\n private onTouchFn: () => void = () => {};\n\n ngOnInit(): void {}\n\n onYearSelect(year: number): void {\n const date = this.currentDate.setYear(year);\n this.updateDate(date);\n }\n\n onMonthSelect(month: number): void {\n const date = this.currentDate.setMonth(month);\n this.updateDate(date);\n }\n\n onDateSelect(date: TinyDate): void {\n // Only currentDate is enough in calendar\n // this.value = date;\n this.updateDate(date);\n }\n\n onDateRangeSelect(date: DateRangeItemInfo) {\n this.thyDateRangeChange.emit(date);\n }\n\n writeValue(value: Date | null): void {\n this.updateDate(new TinyDate(value as Date), false);\n this.cdr.markForCheck();\n }\n\n registerOnChange(fn: (date: Date) => void): void {\n this.onChangeFn = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouchFn = fn;\n }\n\n private updateDate(date: TinyDate, touched: boolean = true): void {\n this.currentDate = date;\n\n if (touched) {\n this.onChangeFn(date.nativeDate);\n this.onTouchFn();\n this.thySelectChange.emit(date.nativeDate);\n this.thyValueChange.emit(date.nativeDate);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.thyValue) {\n this.updateDate(new TinyDate(this.thyValue), false);\n }\n }\n}\n","<thy-calendar-header\n [operationRender]=\"headerOperation\"\n (monthChange)=\"onMonthSelect($event)\"\n (yearChange)=\"onYearSelect($event)\"\n (dateRangeChange)=\"onDateRangeSelect($event)\"\n [currentDate]=\"currentDate\"\n></thy-calendar-header>\n\n<div class=\"thy-calendar-panel\">\n <div class=\"thy-calendar-{{ thyMode === 'month' ? 'date' : 'month' }}-panel\">\n <div class=\"thy-calendar-body\">\n @if (thyMode === 'month') {\n <date-table\n [prefixCls]=\"prefixCls\"\n [value]=\"currentDate\"\n [activeDate]=\"currentDate\"\n [selectedValue]=\"currentDate\"\n [cellRender]=\"dateCell\"\n [disabledDate]=\"thyDisabledDate\"\n (valueChange)=\"onDateSelect($event)\"\n ></date-table>\n } @else {\n <month-table [value]=\"currentDate\" [disabledDate]=\"thyDisabledDate\" (valueChange)=\"onDateSelect($event)\"></month-table>\n }\n </div>\n </div>\n</div>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyCalendarHeader } from './calendar-header.component';\nimport { ThyCalendar } from './calendar.component';\nimport { ThyCalendarHeaderOperationDirective, ThyDateCellDirective } from './calendar-cells';\nimport { LibPackerModule } from 'ngx-tethys/date-picker';\nimport { ThySelectModule } from 'ngx-tethys/select';\nimport { ThyRadioModule } from 'ngx-tethys/radio';\nimport { ThyButtonModule } from 'ngx-tethys/button';\nimport { ThyDateRangeModule } from 'ngx-tethys/date-range';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ThySharedModule,\n ThyIconModule,\n LibPackerModule,\n ThySelectModule,\n ThyRadioModule,\n ThyButtonModule,\n ThyDateRangeModule,\n ThyCalendarHeader,\n ThyCalendar,\n ThyDateCellDirective,\n ThyCalendarHeaderOperationDirective\n ],\n exports: [ThyCalendarHeader, ThyCalendar, ThyDateCellDirective, ThyCalendarHeaderOperationDirective]\n})\nexport class ThyCalendarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DateCell","HeaderOperation"],"mappings":";;;;;;;;;;;;;;;AAUA;;;;AAIG;MAOU,iBAAiB,CAAA;AAN9B,IAAA,WAAA,GAAA;AAOY,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAChC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,MAAM,GAA8B,YAAY,CAAC,UAAU,CAAC,CAAC;QAEZ,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;AAe1E;;AAEG;AACgB,QAAA,IAAA,CAAA,UAAU,GAAyB,IAAI,YAAY,EAAE,CAAC;AAEzE;;AAEG;AACgB,QAAA,IAAA,CAAA,WAAW,GAAyB,IAAI,YAAY,EAAE,CAAC;AAE1E;;AAEG;AACgB,QAAA,IAAA,CAAA,eAAe,GAAoC,IAAI,YAAY,EAAE,CAAC;AAElF,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,eAAe,CAAC;AAE7C,QAAA,IAAA,CAAA,UAAU,GAAwB;AACrC,YAAA;AACI,gBAAA,GAAG,EAAE,OAAO;AACZ,gBAAA,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;AAC1E,gBAAA,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,IAAI,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;AAC1D,gBAAA,GAAG,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;AACtD,gBAAA,SAAS,EAAE;AACP,oBAAA,QAAQ,EAAE,CAAC;AACX,oBAAA,IAAI,EAAE,OAAO;AAChB,iBAAA;AACJ,aAAA;SACJ,CAAC;AAwDL,KAAA;AAjGG;;AAEG;IACH,IACI,WAAW,CAAC,KAAe,EAAA;AAC3B,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KACvB;AA2CD,IAAA,QAAQ,MAAW;AAEnB,IAAA,aAAa,CAAC,KAAwB,EAAA;AAClC,QAAA,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AACjE,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACvC;AAED,IAAA,YAAY,CAAC,IAAuB,EAAA;AAChC,QAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AACpE,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACrC;AAED,IAAA,aAAa,CAAC,SAA4B,EAAA;AACtC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACtC,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACxC;IAED,SAAS,GAAA;AACL,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,QAAQ,EAAE,CAAC;AACnC,QAAA,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;AACtC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC5B;AAED,IAAA,OAAO,CAAC,KAAe,EAAA;AACnB,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC1B,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,YAAA,MAAM,SAAS,GAAG;AACd,gBAAA,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AACrB,gBAAA,GAAG,EAAE,WAAW;gBAChB,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;AACjD,gBAAA,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;AAC7D,gBAAA,GAAG,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;aAC5D,CAAC;AACF,YAAA,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;SACzB;aAAM;AACH,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,QAAQ,EAAE,CAAC;AACnC,YAAA,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;SACzC;KACJ;AAED,IAAA,aAAa,CAAC,WAAqB,EAAA;AAC/B,QAAA,IAAI,CAAC,SAAS;AACV,YAAA,WAAW,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,KAAK,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;KACpI;+GAvGQ,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,0CAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrB9B,kqBAiBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDEc,YAAY,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,SAAS,EAAA,QAAA,EAAA,qCAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,QAAQ,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAEjE,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EAEnB,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAA,QAAA,EAAA,kqBAAA,EAAA,CAAA;8BAOlB,SAAS,EAAA,CAAA;sBAAjE,WAAW;uBAAC,0CAA0C,CAAA;gBAMnD,WAAW,EAAA,CAAA;sBADd,KAAK;gBAQG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBAKa,UAAU,EAAA,CAAA;sBAA5B,MAAM;gBAKY,WAAW,EAAA,CAAA;sBAA7B,MAAM;gBAKY,eAAe,EAAA,CAAA;sBAAjC,MAAM;;;AEpDX;;;AAGG;MAMU,oBAAoB,CAAA;+GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;;AAGD;;;AAGG;MAMU,mCAAmC,CAAA;+GAAnC,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAnC,mCAAmC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,QAAA,EAAA,CAAA,4BAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAnC,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAL/C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;;;ACSD;;;;AAIG;MAUU,WAAW,CAAA;AATxB,IAAA,WAAA,GAAA;AAUY,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEK,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;QAEtB,IAAU,CAAA,UAAA,GAAG,IAAI,CAAC;AAE1D;;;AAGG;QACM,IAAO,CAAA,OAAA,GAAiB,OAAO,CAAC;AAYzC;;AAEG;AACO,QAAA,IAAA,CAAA,eAAe,GAAuB,IAAI,YAAY,EAAE,CAAC;AAEnE;;AAEG;AACO,QAAA,IAAA,CAAA,cAAc,GAAuB,IAAI,YAAY,EAAE,CAAC;AAElE;;AAEG;AACO,QAAA,IAAA,CAAA,kBAAkB,GAAoC,IAAI,YAAY,EAAE,CAAC;AA4B5E,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,QAAQ,EAAE,CAAC;QAE7B,IAAS,CAAA,SAAA,GAAG,mBAAmB,CAAC;AAE/B,QAAA,IAAA,CAAA,UAAU,GAAyB,MAAK,GAAG,CAAC;AAE5C,QAAA,IAAA,CAAA,SAAS,GAAe,MAAK,GAAG,CAAC;AAqD5C,KAAA;AA5EG,IAAA,IAAI,QAAQ,GAAA;QACR,QAAQ,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,gBAAgB,EAAG;KACvD;AAWD,IAAA,IAAI,eAAe,GAAA;QACf,QAAQ,IAAI,CAAC,0BAA0B,IAAI,IAAI,CAAC,+BAA+B,EAAG;KACrF;AAUD,IAAA,QAAQ,MAAW;AAEnB,IAAA,YAAY,CAAC,IAAY,EAAA;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC5C,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACzB;AAED,IAAA,aAAa,CAAC,KAAa,EAAA;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACzB;AAED,IAAA,YAAY,CAAC,IAAc,EAAA;;;AAGvB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACzB;AAED,IAAA,iBAAiB,CAAC,IAAuB,EAAA;AACrC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;AAED,IAAA,UAAU,CAAC,KAAkB,EAAA;QACzB,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,KAAa,CAAC,EAAE,KAAK,CAAC,CAAC;AACpD,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KAC3B;AAED,IAAA,gBAAgB,CAAC,EAAwB,EAAA;AACrC,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACxB;AAED,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACvB;AAEO,IAAA,UAAU,CAAC,IAAc,EAAE,OAAA,GAAmB,IAAI,EAAA;AACtD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,IAAI,OAAO,EAAE;AACT,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC7C;KACJ;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAC9B,QAAA,IAAI,OAAO,CAAC,QAAQ,EAAE;AAClB,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;SACvD;KACJ;+GA1HQ,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,WAAW,keAJT,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAkDtFA,oBAAQ,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAU,WAAW,EAa7B,EAAA,EAAA,YAAA,EAAA,iCAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAAC,mCAAe,EAAU,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,WAAW,kDCvGtD,m9BA4BA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDcc,iBAAiB,EAAE,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,aAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,SAAS,uGAAE,UAAU,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;4FAEzC,WAAW,EAAA,UAAA,EAAA,CAAA;kBATvB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,iBAET,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACxF,UAAA,EAAA,IAAI,WACP,CAAC,iBAAiB,EAAE,SAAS,EAAE,UAAU,CAAC,EAAA,QAAA,EAAA,m9BAAA,EAAA,CAAA;8BAKN,SAAS,EAAA,CAAA;sBAArD,WAAW;uBAAC,8BAA8B,CAAA;gBAEH,UAAU,EAAA,CAAA;sBAAjD,WAAW;uBAAC,yBAAyB,CAAA;gBAM7B,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAKG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAKG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBAKI,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBAKG,cAAc,EAAA,CAAA;sBAAvB,MAAM;gBAKG,kBAAkB,EAAA,CAAA;sBAA3B,MAAM;gBAKE,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAKyC,gBAAgB,EAAA,CAAA;sBAA9D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAAD,oBAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;gBAQpC,0BAA0B,EAAA,CAAA;sBAAlC,KAAK;gBAKgD,+BAA+B,EAAA,CAAA;sBAApF,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAAC,mCAAe,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;;;MEvE3C,iBAAiB,CAAA;+GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAhBtB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,aAAa;YACb,eAAe;YACf,eAAe;YACf,cAAc;YACd,eAAe;YACf,kBAAkB;YAClB,iBAAiB;YACjB,WAAW;YACX,oBAAoB;AACpB,YAAA,mCAAmC,aAE7B,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE,mCAAmC,CAAA,EAAA,CAAA,CAAA,EAAA;AAE1F,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAhBtB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,aAAa;YACb,eAAe;YACf,eAAe;YACf,cAAc;YACd,eAAe;YACf,kBAAkB;YAClB,iBAAiB;YACjB,WAAW,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAMN,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAlB7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,WAAW;wBACX,eAAe;wBACf,aAAa;wBACb,eAAe;wBACf,eAAe;wBACf,cAAc;wBACd,eAAe;wBACf,kBAAkB;wBAClB,iBAAiB;wBACjB,WAAW;wBACX,oBAAoB;wBACpB,mCAAmC;AACtC,qBAAA;oBACD,OAAO,EAAE,CAAC,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE,mCAAmC,CAAC;AACvG,iBAAA,CAAA;;;AC/BD;;AAEG;;;;"}
@@ -11,10 +11,10 @@ import { coerceBooleanProperty } from 'ngx-tethys/util';
11
11
  class ThyCardHeader {
12
12
  constructor() { }
13
13
  ngOnInit() { }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyCardHeader, isStandalone: true, selector: "thy-card-header", inputs: { thyTitle: "thyTitle", thyDescription: "thyDescription", thySize: "thySize" }, host: { properties: { "class.thy-card-header--sm": "thySize === \"sm\"", "class.thy-card-header--lg": "thySize === \"lg\"", "class.thy-card-header--md": "thySize === \"md\"" }, classAttribute: "thy-card-header" }, queries: [{ propertyName: "titleTemplateRef", first: true, predicate: ["headerTitle"], descendants: true }, { propertyName: "descriptionTemplateRef", first: true, predicate: ["headerDescription"], descendants: true }, { propertyName: "operationTemplateRef", first: true, predicate: ["headerOperation"], descendants: true }], ngImport: i0, template: "<div class=\"card-header-title\">\n <ng-template [ngTemplateOutlet]=\"titleTemplateRef\"></ng-template>\n @if (!titleTemplateRef) {\n <span>{{ thyTitle }}</span>\n }\n</div>\n<div class=\"card-header-description\">\n <ng-template [ngTemplateOutlet]=\"descriptionTemplateRef\"></ng-template>\n @if (!descriptionTemplateRef) {\n <span>{{ thyDescription }}</span>\n }\n</div>\n<div class=\"card-header-operation\">\n <ng-template [ngTemplateOutlet]=\"operationTemplateRef\"></ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyCardHeader, isStandalone: true, selector: "thy-card-header", inputs: { thyTitle: "thyTitle", thyDescription: "thyDescription", thySize: "thySize" }, host: { properties: { "class.thy-card-header--sm": "thySize === \"sm\"", "class.thy-card-header--lg": "thySize === \"lg\"", "class.thy-card-header--md": "thySize === \"md\"" }, classAttribute: "thy-card-header" }, queries: [{ propertyName: "titleTemplateRef", first: true, predicate: ["headerTitle"], descendants: true }, { propertyName: "descriptionTemplateRef", first: true, predicate: ["headerDescription"], descendants: true }, { propertyName: "operationTemplateRef", first: true, predicate: ["headerOperation"], descendants: true }], ngImport: i0, template: "<div class=\"card-header-title\">\n <ng-template [ngTemplateOutlet]=\"titleTemplateRef\"></ng-template>\n @if (!titleTemplateRef) {\n <span>{{ thyTitle }}</span>\n }\n</div>\n<div class=\"card-header-description\">\n <ng-template [ngTemplateOutlet]=\"descriptionTemplateRef\"></ng-template>\n @if (!descriptionTemplateRef) {\n <span>{{ thyDescription }}</span>\n }\n</div>\n<div class=\"card-header-operation\">\n <ng-template [ngTemplateOutlet]=\"operationTemplateRef\"></ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardHeader, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardHeader, decorators: [{
18
18
  type: Component,
19
19
  args: [{ selector: 'thy-card-header', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, host: {
20
20
  class: 'thy-card-header',
@@ -55,10 +55,10 @@ class ThyCard {
55
55
  */
56
56
  this.thyHasLeftRightPadding = true;
57
57
  }
58
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCard, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyCard, isStandalone: true, selector: "thy-card", inputs: { thyHasLeftRightPadding: ["thyHasLeftRightPadding", "thyHasLeftRightPadding", coerceBooleanProperty], thyDivided: ["thyDivided", "thyDivided", coerceBooleanProperty], thyBordered: ["thyBordered", "thyBordered", coerceBooleanProperty], thySize: "thySize" }, host: { properties: { "class.thy-card--divided": "!!thyDivided", "class.thy-card--bordered": "!!thyBordered", "class.thy-card--clear-left-right-padding": "!thyHasLeftRightPadding", "class.thy-card-sm": "thySize === \"sm\"", "class.thy-card-lg": "thySize === \"lg\"" }, classAttribute: "thy-card" }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCard, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: ThyCard, isStandalone: true, selector: "thy-card", inputs: { thyHasLeftRightPadding: ["thyHasLeftRightPadding", "thyHasLeftRightPadding", coerceBooleanProperty], thyDivided: ["thyDivided", "thyDivided", coerceBooleanProperty], thyBordered: ["thyBordered", "thyBordered", coerceBooleanProperty], thySize: "thySize" }, host: { properties: { "class.thy-card--divided": "!!thyDivided", "class.thy-card--bordered": "!!thyBordered", "class.thy-card--clear-left-right-padding": "!thyHasLeftRightPadding", "class.thy-card-sm": "thySize === \"sm\"", "class.thy-card-lg": "thySize === \"lg\"" }, classAttribute: "thy-card" }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
60
60
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCard, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCard, decorators: [{
62
62
  type: Component,
63
63
  args: [{
64
64
  selector: 'thy-card',
@@ -113,10 +113,10 @@ class ThyCardContent {
113
113
  this._thySizeSm = value === 'sm';
114
114
  }
115
115
  ngOnInit() { }
116
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
117
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyCardContent, isStandalone: true, selector: "thy-card-content", inputs: { thyScroll: ["thyScroll", "thyScroll", coerceBooleanProperty], thySize: "thySize" }, host: { properties: { "class.thy-card-content--scroll": "this.scrollClassName", "class.thy-card-content--sm": "this._thySizeSm" }, classAttribute: "thy-card-content" }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
116
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: ThyCardContent, isStandalone: true, selector: "thy-card-content", inputs: { thyScroll: ["thyScroll", "thyScroll", coerceBooleanProperty], thySize: "thySize" }, host: { properties: { "class.thy-card-content--scroll": "this.scrollClassName", "class.thy-card-content--sm": "this._thySizeSm" }, classAttribute: "thy-card-content" }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
118
118
  }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardContent, decorators: [{
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardContent, decorators: [{
120
120
  type: Component,
121
121
  args: [{
122
122
  selector: 'thy-card-content',
@@ -143,11 +143,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
143
143
  }] } });
144
144
 
145
145
  class ThyCardModule {
146
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
147
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: ThyCardModule, imports: [CommonModule, ThyCard, ThyCardHeader, ThyCardContent], exports: [ThyCard, ThyCardHeader, ThyCardContent] }); }
148
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardModule, imports: [CommonModule] }); }
146
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
147
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ThyCardModule, imports: [CommonModule, ThyCard, ThyCardHeader, ThyCardContent], exports: [ThyCard, ThyCardHeader, ThyCardContent] }); }
148
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardModule, imports: [CommonModule] }); }
149
149
  }
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCardModule, decorators: [{
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCardModule, decorators: [{
151
151
  type: NgModule,
152
152
  args: [{
153
153
  imports: [CommonModule, ThyCard, ThyCardHeader, ThyCardContent],
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-card.mjs","sources":["../../../src/card/header.component.ts","../../../src/card/header.component.html","../../../src/card/card.component.ts","../../../src/card/content.component.ts","../../../src/card/card.module.ts","../../../src/card/ngx-tethys-card.ts"],"sourcesContent":["import { Component, Input, OnInit, TemplateRef, ContentChild, ChangeDetectionStrategy } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n/**\n * 卡片头部组件\n * @name thy-card-header\n * @order 20\n */\n@Component({\n selector: 'thy-card-header',\n preserveWhitespaces: false,\n templateUrl: './header.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-card-header',\n '[class.thy-card-header--sm]': 'thySize === \"sm\"',\n '[class.thy-card-header--lg]': 'thySize === \"lg\"',\n '[class.thy-card-header--md]': 'thySize === \"md\"'\n },\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class ThyCardHeader implements OnInit {\n public iconClass: string;\n\n /**\n * 头部,标题\n */\n @Input('thyTitle') thyTitle: string;\n\n /**\n * 头部,附加信息\n */\n @Input('thyDescription') thyDescription: string;\n\n /**\n * 已废弃,头部大小\n * @deprecated\n * @default md\n */\n @Input('thySize') thySize: 'sm' | 'lg' | 'md' | '';\n\n /**\n * 自定义头部标题\n * @type TemplateRef\n */\n @ContentChild('headerTitle')\n public titleTemplateRef: TemplateRef<any>;\n\n /**\n * 自定义头部描述\n * @type TemplateRef\n */\n @ContentChild('headerDescription')\n public descriptionTemplateRef: TemplateRef<any>;\n\n /**\n * 自定义头部操作区域\n * @type TemplateRef\n */\n @ContentChild('headerOperation')\n public operationTemplateRef: TemplateRef<any>;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div class=\"card-header-title\">\n <ng-template [ngTemplateOutlet]=\"titleTemplateRef\"></ng-template>\n @if (!titleTemplateRef) {\n <span>{{ thyTitle }}</span>\n }\n</div>\n<div class=\"card-header-description\">\n <ng-template [ngTemplateOutlet]=\"descriptionTemplateRef\"></ng-template>\n @if (!descriptionTemplateRef) {\n <span>{{ thyDescription }}</span>\n }\n</div>\n<div class=\"card-header-operation\">\n <ng-template [ngTemplateOutlet]=\"operationTemplateRef\"></ng-template>\n</div>\n","import { Component, Input, ChangeDetectionStrategy } from '@angular/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 卡片组件\n * @name thy-card\n * @order 10\n */\n@Component({\n selector: 'thy-card',\n template: ` <ng-content></ng-content> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-card',\n '[class.thy-card--divided]': '!!thyDivided',\n '[class.thy-card--bordered]': '!!thyBordered',\n '[class.thy-card--clear-left-right-padding]': '!thyHasLeftRightPadding',\n '[class.thy-card-sm]': 'thySize === \"sm\"',\n '[class.thy-card-lg]': 'thySize === \"lg\"'\n },\n standalone: true\n})\nexport class ThyCard {\n /**\n * 左右是否有内边距,已废弃,如需配置间距使用 spacing 工具样式覆盖默认间距\n * @deprecated\n */\n @Input({ transform: coerceBooleanProperty })\n thyHasLeftRightPadding: boolean | string = true;\n\n /**\n * 是否是分割模式,分割模式头部和内容区之间有一条分割线\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n thyDivided: boolean | string;\n\n /**\n * 是否有边框,边框颜色为#eee\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n thyBordered: boolean | string;\n\n /**\n * 大小\n * @type sm | md | lg\n * @default md\n */\n @Input()\n thySize: 'md' | 'sm' | 'lg';\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 卡片内容组件\n * @name thy-card-content\n * @order 30\n */\n@Component({\n selector: 'thy-card-content',\n preserveWhitespaces: false,\n template: ` <ng-content></ng-content> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-card-content'\n },\n standalone: true\n})\nexport class ThyCardContent implements OnInit {\n @HostBinding('class.thy-card-content--scroll') scrollClassName = false;\n\n /**\n * 内容区,滚动\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyScroll(value: boolean) {\n this.scrollClassName = value;\n }\n\n @HostBinding('class.thy-card-content--sm') _thySizeSm = false;\n\n /**\n * 已废弃,Content 大小,sm 时 padding-top 间距变小\n * @deprecated\n * @default md\n */\n @Input('thySize')\n set thySize(value: string) {\n this._thySizeSm = value === 'sm';\n }\n\n ngOnInit() {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyCard } from './card.component';\nimport { ThyCardHeader } from './header.component';\nimport { ThyCardContent } from './content.component';\n\n@NgModule({\n imports: [CommonModule, ThyCard, ThyCardHeader, ThyCardContent],\n exports: [ThyCard, ThyCardHeader, ThyCardContent]\n})\nexport class ThyCardModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-card.mjs","sources":["../../../src/card/header.component.ts","../../../src/card/header.component.html","../../../src/card/card.component.ts","../../../src/card/content.component.ts","../../../src/card/card.module.ts","../../../src/card/ngx-tethys-card.ts"],"sourcesContent":["import { Component, Input, OnInit, TemplateRef, ContentChild, ChangeDetectionStrategy } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n/**\n * 卡片头部组件\n * @name thy-card-header\n * @order 20\n */\n@Component({\n selector: 'thy-card-header',\n preserveWhitespaces: false,\n templateUrl: './header.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-card-header',\n '[class.thy-card-header--sm]': 'thySize === \"sm\"',\n '[class.thy-card-header--lg]': 'thySize === \"lg\"',\n '[class.thy-card-header--md]': 'thySize === \"md\"'\n },\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class ThyCardHeader implements OnInit {\n public iconClass: string;\n\n /**\n * 头部,标题\n */\n @Input('thyTitle') thyTitle: string;\n\n /**\n * 头部,附加信息\n */\n @Input('thyDescription') thyDescription: string;\n\n /**\n * 已废弃,头部大小\n * @deprecated\n * @default md\n */\n @Input('thySize') thySize: 'sm' | 'lg' | 'md' | '';\n\n /**\n * 自定义头部标题\n * @type TemplateRef\n */\n @ContentChild('headerTitle')\n public titleTemplateRef: TemplateRef<any>;\n\n /**\n * 自定义头部描述\n * @type TemplateRef\n */\n @ContentChild('headerDescription')\n public descriptionTemplateRef: TemplateRef<any>;\n\n /**\n * 自定义头部操作区域\n * @type TemplateRef\n */\n @ContentChild('headerOperation')\n public operationTemplateRef: TemplateRef<any>;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div class=\"card-header-title\">\n <ng-template [ngTemplateOutlet]=\"titleTemplateRef\"></ng-template>\n @if (!titleTemplateRef) {\n <span>{{ thyTitle }}</span>\n }\n</div>\n<div class=\"card-header-description\">\n <ng-template [ngTemplateOutlet]=\"descriptionTemplateRef\"></ng-template>\n @if (!descriptionTemplateRef) {\n <span>{{ thyDescription }}</span>\n }\n</div>\n<div class=\"card-header-operation\">\n <ng-template [ngTemplateOutlet]=\"operationTemplateRef\"></ng-template>\n</div>\n","import { Component, Input, ChangeDetectionStrategy } from '@angular/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 卡片组件\n * @name thy-card\n * @order 10\n */\n@Component({\n selector: 'thy-card',\n template: ` <ng-content></ng-content> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-card',\n '[class.thy-card--divided]': '!!thyDivided',\n '[class.thy-card--bordered]': '!!thyBordered',\n '[class.thy-card--clear-left-right-padding]': '!thyHasLeftRightPadding',\n '[class.thy-card-sm]': 'thySize === \"sm\"',\n '[class.thy-card-lg]': 'thySize === \"lg\"'\n },\n standalone: true\n})\nexport class ThyCard {\n /**\n * 左右是否有内边距,已废弃,如需配置间距使用 spacing 工具样式覆盖默认间距\n * @deprecated\n */\n @Input({ transform: coerceBooleanProperty })\n thyHasLeftRightPadding: boolean | string = true;\n\n /**\n * 是否是分割模式,分割模式头部和内容区之间有一条分割线\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n thyDivided: boolean | string;\n\n /**\n * 是否有边框,边框颜色为#eee\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n thyBordered: boolean | string;\n\n /**\n * 大小\n * @type sm | md | lg\n * @default md\n */\n @Input()\n thySize: 'md' | 'sm' | 'lg';\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 卡片内容组件\n * @name thy-card-content\n * @order 30\n */\n@Component({\n selector: 'thy-card-content',\n preserveWhitespaces: false,\n template: ` <ng-content></ng-content> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-card-content'\n },\n standalone: true\n})\nexport class ThyCardContent implements OnInit {\n @HostBinding('class.thy-card-content--scroll') scrollClassName = false;\n\n /**\n * 内容区,滚动\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyScroll(value: boolean) {\n this.scrollClassName = value;\n }\n\n @HostBinding('class.thy-card-content--sm') _thySizeSm = false;\n\n /**\n * 已废弃,Content 大小,sm 时 padding-top 间距变小\n * @deprecated\n * @default md\n */\n @Input('thySize')\n set thySize(value: string) {\n this._thySizeSm = value === 'sm';\n }\n\n ngOnInit() {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyCard } from './card.component';\nimport { ThyCardHeader } from './header.component';\nimport { ThyCardContent } from './content.component';\n\n@NgModule({\n imports: [CommonModule, ThyCard, ThyCardHeader, ThyCardContent],\n exports: [ThyCard, ThyCardHeader, ThyCardContent]\n})\nexport class ThyCardModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAGA;;;;AAIG;MAeU,aAAa,CAAA;AAyCtB,IAAA,WAAA,GAAA,GAAgB;AAEhB,IAAA,QAAQ,MAAK;+GA3CJ,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,2BAAA,EAAA,oBAAA,EAAA,2BAAA,EAAA,oBAAA,EAAA,2BAAA,EAAA,oBAAA,EAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,aAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtB1B,8fAeA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDKc,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAEjB,aAAa,EAAA,UAAA,EAAA,CAAA;kBAdzB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,uBACN,KAAK,EAAA,eAAA,EAET,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,iBAAiB;AACxB,wBAAA,6BAA6B,EAAE,kBAAkB;AACjD,wBAAA,6BAA6B,EAAE,kBAAkB;AACjD,wBAAA,6BAA6B,EAAE,kBAAkB;AACpD,qBAAA,EAAA,UAAA,EACW,IAAI,EAAA,OAAA,EACP,CAAC,gBAAgB,CAAC,EAAA,QAAA,EAAA,8fAAA,EAAA,CAAA;wDAQR,QAAQ,EAAA,CAAA;sBAA1B,KAAK;uBAAC,UAAU,CAAA;gBAKQ,cAAc,EAAA,CAAA;sBAAtC,KAAK;uBAAC,gBAAgB,CAAA;gBAOL,OAAO,EAAA,CAAA;sBAAxB,KAAK;uBAAC,SAAS,CAAA;gBAOT,gBAAgB,EAAA,CAAA;sBADtB,YAAY;uBAAC,aAAa,CAAA;gBAQpB,sBAAsB,EAAA,CAAA;sBAD5B,YAAY;uBAAC,mBAAmB,CAAA;gBAQ1B,oBAAoB,EAAA,CAAA;sBAD1B,YAAY;uBAAC,iBAAiB,CAAA;;;AEzDnC;;;;AAIG;MAeU,OAAO,CAAA;AAdpB,IAAA,WAAA,GAAA;AAeI;;;AAGG;QAEH,IAAsB,CAAA,sBAAA,GAAqB,IAAI,CAAC;AAuBnD,KAAA;+GA7BY,OAAO,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAP,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,OAAO,mIAKI,qBAAqB,CAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAOrB,qBAAqB,CAOrB,EAAA,WAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,qBAAqB,4VA/B/B,CAA6B,2BAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAY9B,OAAO,EAAA,UAAA,EAAA,CAAA;kBAdnB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,CAA6B,2BAAA,CAAA;oBACvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,UAAU;AACjB,wBAAA,2BAA2B,EAAE,cAAc;AAC3C,wBAAA,4BAA4B,EAAE,eAAe;AAC7C,wBAAA,4CAA4C,EAAE,yBAAyB;AACvE,wBAAA,qBAAqB,EAAE,kBAAkB;AACzC,wBAAA,qBAAqB,EAAE,kBAAkB;AAC5C,qBAAA;AACD,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;8BAOG,sBAAsB,EAAA,CAAA;sBADrB,KAAK;uBAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAA;gBAQ3C,UAAU,EAAA,CAAA;sBADT,KAAK;uBAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAA;gBAQ3C,WAAW,EAAA,CAAA;sBADV,KAAK;uBAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAA;gBAS3C,OAAO,EAAA,CAAA;sBADN,KAAK;;;AC9CV;;;;AAIG;MAWU,cAAc,CAAA;AAV3B,IAAA,WAAA,GAAA;QAWmD,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QAW5B,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;AAajE,KAAA;AAtBG;;;AAGG;IACH,IACI,SAAS,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;KAChC;AAID;;;;AAIG;IACH,IACI,OAAO,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,KAAK,IAAI,CAAC;KACpC;AAED,IAAA,QAAQ,MAAK;+GAxBJ,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAOH,qBAAqB,CAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gCAAA,EAAA,sBAAA,EAAA,4BAAA,EAAA,iBAAA,EAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAd/B,CAA6B,2BAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAO9B,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,mBAAmB,EAAE,KAAK;AAC1B,oBAAA,QAAQ,EAAE,CAA6B,2BAAA,CAAA;oBACvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,kBAAkB;AAC5B,qBAAA;AACD,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;8BAEkD,eAAe,EAAA,CAAA;sBAA7D,WAAW;uBAAC,gCAAgC,CAAA;gBAOzC,SAAS,EAAA,CAAA;sBADZ,KAAK;uBAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAA;gBAKA,UAAU,EAAA,CAAA;sBAApD,WAAW;uBAAC,4BAA4B,CAAA;gBAQrC,OAAO,EAAA,CAAA;sBADV,KAAK;uBAAC,SAAS,CAAA;;;MC3BP,aAAa,CAAA;+GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAHZ,OAAA,EAAA,CAAA,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,CACpD,EAAA,OAAA,EAAA,CAAA,OAAO,EAAE,aAAa,EAAE,cAAc,CAAA,EAAA,CAAA,CAAA,EAAA;AAEvC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHZ,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAGb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC;AAC/D,oBAAA,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC;AACpD,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}