ngx-tethys 18.0.0 → 18.0.2

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 (614) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/action/styles/action.scss +1 -1
  3. package/action/styles/mixin.scss +8 -3
  4. package/alert/styles/mixin.scss +3 -10
  5. package/back-top/examples/custom/custom.scss +3 -1
  6. package/badge/examples/basic/basic.component.scss +3 -1
  7. package/badge/examples/custom-color/custom-color.component.scss +3 -1
  8. package/badge/examples/overflow/overflow.component.scss +3 -1
  9. package/badge/examples/state-point/state-point.component.scss +3 -1
  10. package/badge/examples/type/type.component.scss +3 -1
  11. package/badge/styles/badge.scss +1 -1
  12. package/badge/styles/mixin.scss +2 -16
  13. package/button/styles/button.scss +8 -7
  14. package/button/styles/mixin.scss +22 -15
  15. package/carousel/styles/variables.scss +1 -1
  16. package/cascader/cascader.service.d.ts +1 -1
  17. package/cascader/styles/cascader.scss +3 -6
  18. package/collapse/examples/custom/custom.component.scss +3 -1
  19. package/color-picker/parts/inputs/inputs.component.d.ts +1 -0
  20. package/color-picker/styles/inputs.scss +8 -1
  21. package/color-picker/styles/saturation.scss +3 -3
  22. package/core/debounce-time.d.ts +8 -0
  23. package/core/index.d.ts +1 -0
  24. package/date-picker/styles/decade-panel.scss +1 -1
  25. package/date-picker/styles/mixin.scss +1 -1
  26. package/date-picker/styles/picker.scss +3 -0
  27. package/date-picker/styles/variables.scss +1 -4
  28. package/date-picker/styles/year-panel.scss +1 -1
  29. package/drag-drop/examples/tree-drag/tree-drag.component.scss +0 -1
  30. package/dropdown/styles/dropdown.scss +1 -1
  31. package/esm2022/action/action.component.mjs +4 -4
  32. package/esm2022/action/action.module.mjs +4 -4
  33. package/esm2022/action/actions.component.mjs +3 -3
  34. package/esm2022/affix/affix.component.mjs +4 -4
  35. package/esm2022/affix/affix.module.mjs +4 -4
  36. package/esm2022/alert/alert.component.mjs +3 -3
  37. package/esm2022/alert/alert.directive.mjs +3 -3
  38. package/esm2022/alert/alert.module.mjs +4 -4
  39. package/esm2022/anchor/anchor-link.component.mjs +4 -4
  40. package/esm2022/anchor/anchor.component.mjs +4 -4
  41. package/esm2022/anchor/anchor.module.mjs +4 -4
  42. package/esm2022/arrow-switcher/arrow-switcher.component.mjs +3 -3
  43. package/esm2022/arrow-switcher/module.mjs +4 -4
  44. package/esm2022/autocomplete/autocomplete.component.mjs +4 -4
  45. package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +3 -3
  46. package/esm2022/autocomplete/module.mjs +4 -4
  47. package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +3 -3
  48. package/esm2022/autocomplete/overlay/autocomplete.service.mjs +3 -3
  49. package/esm2022/avatar/avatar-list/avatar-list.component.mjs +3 -3
  50. package/esm2022/avatar/avatar.component.mjs +4 -4
  51. package/esm2022/avatar/avatar.module.mjs +4 -4
  52. package/esm2022/avatar/avatar.pipe.mjs +9 -9
  53. package/esm2022/avatar/avatar.service.mjs +3 -3
  54. package/esm2022/back-top/back-top.component.mjs +3 -3
  55. package/esm2022/back-top/back-top.module.mjs +4 -4
  56. package/esm2022/badge/badge.component.mjs +3 -3
  57. package/esm2022/badge/badge.module.mjs +4 -4
  58. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +4 -4
  59. package/esm2022/breadcrumb/breadcrumb.component.mjs +3 -3
  60. package/esm2022/breadcrumb/module.mjs +4 -4
  61. package/esm2022/button/button-group.component.mjs +3 -3
  62. package/esm2022/button/button-icon.component.mjs +3 -3
  63. package/esm2022/button/button.component.mjs +4 -4
  64. package/esm2022/button/button.module.mjs +4 -4
  65. package/esm2022/calendar/calendar-cells.mjs +6 -6
  66. package/esm2022/calendar/calendar-header.component.mjs +3 -3
  67. package/esm2022/calendar/calendar.component.mjs +3 -3
  68. package/esm2022/calendar/module.mjs +4 -4
  69. package/esm2022/card/card.component.mjs +3 -3
  70. package/esm2022/card/card.module.mjs +4 -4
  71. package/esm2022/card/content.component.mjs +3 -3
  72. package/esm2022/card/header.component.mjs +3 -3
  73. package/esm2022/carousel/carousel-item.directive.mjs +4 -4
  74. package/esm2022/carousel/carousel.component.mjs +7 -7
  75. package/esm2022/carousel/carousel.service.mjs +4 -4
  76. package/esm2022/carousel/module.mjs +4 -4
  77. package/esm2022/cascader/cascader-li.component.mjs +3 -3
  78. package/esm2022/cascader/cascader-search-option.component.mjs +6 -6
  79. package/esm2022/cascader/cascader.component.mjs +7 -7
  80. package/esm2022/cascader/cascader.service.mjs +9 -21
  81. package/esm2022/cascader/module.mjs +4 -4
  82. package/esm2022/checkbox/checkbox.component.mjs +3 -3
  83. package/esm2022/checkbox/module.mjs +4 -4
  84. package/esm2022/collapse/collapse-item.component.mjs +4 -4
  85. package/esm2022/collapse/collapse.component.mjs +3 -3
  86. package/esm2022/collapse/module.mjs +4 -4
  87. package/esm2022/color-picker/color-picker-custom-panel.component.mjs +3 -3
  88. package/esm2022/color-picker/color-picker-panel.component.mjs +3 -3
  89. package/esm2022/color-picker/color-picker.component.mjs +4 -4
  90. package/esm2022/color-picker/coordinates.directive.mjs +3 -3
  91. package/esm2022/color-picker/helpers/rgba.class.mjs +1 -1
  92. package/esm2022/color-picker/module.mjs +4 -4
  93. package/esm2022/color-picker/parts/alpha/alpha.component.mjs +3 -3
  94. package/esm2022/color-picker/parts/hue/hue.component.mjs +3 -3
  95. package/esm2022/color-picker/parts/indicator/indicator.component.mjs +3 -3
  96. package/esm2022/color-picker/parts/inputs/inputs.component.mjs +20 -10
  97. package/esm2022/color-picker/parts/saturation/saturation.component.mjs +3 -3
  98. package/esm2022/comment/comment-actions.directive.mjs +3 -3
  99. package/esm2022/comment/comment-content.directive.mjs +3 -3
  100. package/esm2022/comment/comment.component.mjs +3 -3
  101. package/esm2022/comment/comment.module.mjs +4 -4
  102. package/esm2022/copy/copy.directive.mjs +3 -3
  103. package/esm2022/copy/module.mjs +4 -4
  104. package/esm2022/core/click-positioner.mjs +3 -3
  105. package/esm2022/core/debounce-time.mjs +11 -0
  106. package/esm2022/core/index.mjs +2 -1
  107. package/esm2022/core/overlay/abstract-overlay-container.mjs +1 -1
  108. package/esm2022/core/overlay/overlay.directive.mjs +1 -1
  109. package/esm2022/core/overlay/portal-directives.mjs +3 -3
  110. package/esm2022/core/scroll.mjs +4 -4
  111. package/esm2022/core/store/store.mjs +3 -3
  112. package/esm2022/core/translate.mjs +3 -3
  113. package/esm2022/core/update-host-class.service.mjs +3 -3
  114. package/esm2022/date-picker/abstract-picker.component.mjs +3 -3
  115. package/esm2022/date-picker/abstract-picker.directive.mjs +4 -4
  116. package/esm2022/date-picker/base-picker.component.mjs +4 -4
  117. package/esm2022/date-picker/date-helper.service.mjs +3 -3
  118. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  119. package/esm2022/date-picker/date-picker.directive.mjs +3 -3
  120. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  121. package/esm2022/date-picker/date-picker.service.mjs +3 -3
  122. package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +3 -3
  123. package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +3 -3
  124. package/esm2022/date-picker/lib/calendar/calendar-table.component.mjs +3 -3
  125. package/esm2022/date-picker/lib/date/date-header.component.mjs +3 -3
  126. package/esm2022/date-picker/lib/date/date-table-cell.component.mjs +3 -3
  127. package/esm2022/date-picker/lib/date/date-table.component.mjs +4 -4
  128. package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +3 -3
  129. package/esm2022/date-picker/lib/decade/decade-header.component.mjs +3 -3
  130. package/esm2022/date-picker/lib/decade/decade-table.component.mjs +3 -3
  131. package/esm2022/date-picker/lib/lib-packer.module.mjs +4 -4
  132. package/esm2022/date-picker/lib/month/month-header.component.mjs +3 -3
  133. package/esm2022/date-picker/lib/month/month-table.component.mjs +3 -3
  134. package/esm2022/date-picker/lib/popups/date-popup.component.mjs +4 -4
  135. package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +3 -3
  136. package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +3 -3
  137. package/esm2022/date-picker/lib/year/year-header.component.mjs +3 -3
  138. package/esm2022/date-picker/lib/year/year-table.component.mjs +3 -3
  139. package/esm2022/date-picker/month-picker.component.mjs +4 -4
  140. package/esm2022/date-picker/picker.component.mjs +5 -5
  141. package/esm2022/date-picker/picker.pipes.mjs +12 -12
  142. package/esm2022/date-picker/picker.validators.mjs +6 -6
  143. package/esm2022/date-picker/quarter-picker.component.mjs +4 -4
  144. package/esm2022/date-picker/range-picker.component.mjs +4 -4
  145. package/esm2022/date-picker/range-picker.directive.mjs +3 -3
  146. package/esm2022/date-picker/week-picker.component.mjs +4 -4
  147. package/esm2022/date-picker/year-picker.component.mjs +4 -4
  148. package/esm2022/date-range/date-range.component.mjs +4 -4
  149. package/esm2022/date-range/module.mjs +4 -4
  150. package/esm2022/date-range/optional-dates/optional-dates.component.mjs +3 -3
  151. package/esm2022/dialog/body/dialog-body.component.mjs +3 -3
  152. package/esm2022/dialog/confirm/confirm.component.mjs +3 -3
  153. package/esm2022/dialog/dialog-container.component.mjs +3 -3
  154. package/esm2022/dialog/dialog.module.mjs +4 -4
  155. package/esm2022/dialog/dialog.service.mjs +3 -3
  156. package/esm2022/dialog/footer/dialog-footer.component.mjs +3 -3
  157. package/esm2022/dialog/header/dialog-header.component.mjs +3 -3
  158. package/esm2022/divider/divider.component.mjs +3 -3
  159. package/esm2022/divider/divider.module.mjs +4 -4
  160. package/esm2022/dot/dot.component.mjs +4 -4
  161. package/esm2022/dot/dot.module.mjs +4 -4
  162. package/esm2022/drag-drop/drag-content.directive.mjs +4 -4
  163. package/esm2022/drag-drop/drag-drop.service.mjs +3 -3
  164. package/esm2022/drag-drop/drag-handle.directive.mjs +4 -4
  165. package/esm2022/drag-drop/drag.directive.mjs +3 -3
  166. package/esm2022/drag-drop/drop-container.directive.mjs +3 -3
  167. package/esm2022/drag-drop/module.mjs +4 -4
  168. package/esm2022/dropdown/dropdown-active.directive.mjs +4 -4
  169. package/esm2022/dropdown/dropdown-menu-item.directive.mjs +21 -21
  170. package/esm2022/dropdown/dropdown-menu.component.mjs +12 -12
  171. package/esm2022/dropdown/dropdown-submenu.component.mjs +4 -4
  172. package/esm2022/dropdown/dropdown.directive.mjs +3 -3
  173. package/esm2022/dropdown/module.mjs +4 -4
  174. package/esm2022/empty/empty.component.mjs +3 -3
  175. package/esm2022/empty/empty.config.mjs +3 -3
  176. package/esm2022/empty/empty.module.mjs +4 -4
  177. package/esm2022/flexible-text/flexible-text.component.mjs +3 -3
  178. package/esm2022/flexible-text/flexible-text.module.mjs +4 -4
  179. package/esm2022/form/form-group-error/form-group-error.component.mjs +3 -3
  180. package/esm2022/form/form-group-label.directive.mjs +3 -3
  181. package/esm2022/form/form-group.component.mjs +4 -4
  182. package/esm2022/form/form-submit.directive.mjs +3 -3
  183. package/esm2022/form/form-validator-loader.mjs +3 -3
  184. package/esm2022/form/form-validator.service.mjs +3 -3
  185. package/esm2022/form/form.directive.mjs +3 -3
  186. package/esm2022/form/from-group-footer/form-group-footer.component.mjs +4 -4
  187. package/esm2022/form/module.mjs +4 -4
  188. package/esm2022/form/validator/confirm-validator.directive.mjs +3 -3
  189. package/esm2022/form/validator/max-validator.directive.mjs +3 -3
  190. package/esm2022/form/validator/min-validator.directive.mjs +3 -3
  191. package/esm2022/form/validator/unique-validator.directive.mjs +4 -4
  192. package/esm2022/fullscreen/fullscreen-launch.directive.mjs +3 -3
  193. package/esm2022/fullscreen/fullscreen-ref.mjs +3 -2
  194. package/esm2022/fullscreen/fullscreen.component.mjs +4 -4
  195. package/esm2022/fullscreen/fullscreen.module.mjs +4 -4
  196. package/esm2022/fullscreen/fullscreen.service.mjs +4 -4
  197. package/esm2022/grid/flex.mjs +12 -12
  198. package/esm2022/grid/module.mjs +4 -4
  199. package/esm2022/grid/thy-col.directive.mjs +3 -3
  200. package/esm2022/grid/thy-grid-item.component.mjs +4 -4
  201. package/esm2022/grid/thy-grid.component.mjs +7 -7
  202. package/esm2022/grid/thy-row.directive.mjs +3 -3
  203. package/esm2022/guider/guider-hint/guider-hint.component.mjs +3 -3
  204. package/esm2022/guider/guider-manager.mjs +3 -3
  205. package/esm2022/guider/guider.directive.mjs +4 -4
  206. package/esm2022/guider/guider.module.mjs +4 -4
  207. package/esm2022/guider/guider.service.mjs +3 -3
  208. package/esm2022/icon/icon-registry.mjs +4 -4
  209. package/esm2022/icon/icon.component.mjs +4 -4
  210. package/esm2022/icon/icon.module.mjs +4 -4
  211. package/esm2022/image/image-group.component.mjs +4 -4
  212. package/esm2022/image/image.directive.mjs +4 -4
  213. package/esm2022/image/image.service.mjs +3 -3
  214. package/esm2022/image/module.mjs +4 -4
  215. package/esm2022/image/preview/image-preview.component.mjs +4 -4
  216. package/esm2022/input/input-count.component.mjs +4 -4
  217. package/esm2022/input/input-group.component.mjs +4 -4
  218. package/esm2022/input/input-search.component.mjs +4 -4
  219. package/esm2022/input/input.component.mjs +4 -4
  220. package/esm2022/input/input.directive.mjs +4 -4
  221. package/esm2022/input/module.mjs +4 -4
  222. package/esm2022/input-number/input-number.component.mjs +3 -3
  223. package/esm2022/input-number/module.mjs +4 -4
  224. package/esm2022/layout/content-main.component.mjs +6 -6
  225. package/esm2022/layout/content-section.component.mjs +6 -6
  226. package/esm2022/layout/content.component.mjs +6 -6
  227. package/esm2022/layout/header.component.mjs +6 -6
  228. package/esm2022/layout/layout.component.mjs +6 -6
  229. package/esm2022/layout/layout.module.mjs +4 -4
  230. package/esm2022/layout/sidebar-content.component.mjs +6 -6
  231. package/esm2022/layout/sidebar-footer.component.mjs +6 -6
  232. package/esm2022/layout/sidebar-header.component.mjs +6 -6
  233. package/esm2022/layout/sidebar.component.mjs +7 -7
  234. package/esm2022/list/list-item-meta.component.mjs +3 -3
  235. package/esm2022/list/list-item.component.mjs +3 -3
  236. package/esm2022/list/list.component.mjs +3 -3
  237. package/esm2022/list/list.module.mjs +4 -4
  238. package/esm2022/list/selection/selection-list.mjs +3 -3
  239. package/esm2022/loading/loading.component.mjs +3 -3
  240. package/esm2022/loading/loading.module.mjs +4 -4
  241. package/esm2022/mention/mention.directive.mjs +3 -3
  242. package/esm2022/mention/mention.module.mjs +4 -4
  243. package/esm2022/mention/suggestions/suggestions.component.mjs +4 -4
  244. package/esm2022/menu/divider/menu-divider.component.mjs +3 -3
  245. package/esm2022/menu/group/menu-group.component.mjs +3 -3
  246. package/esm2022/menu/item/action/menu-item-action.component.mjs +4 -4
  247. package/esm2022/menu/item/icon/menu-item-icon.component.mjs +3 -3
  248. package/esm2022/menu/item/menu-item.component.mjs +3 -3
  249. package/esm2022/menu/item/name/menu-item-name.component.mjs +3 -3
  250. package/esm2022/menu/menu.component.mjs +3 -3
  251. package/esm2022/menu/menu.module.mjs +4 -4
  252. package/esm2022/message/abstract/abstract-message-container.component.mjs +4 -4
  253. package/esm2022/message/abstract/abstract-message.component.mjs +4 -4
  254. package/esm2022/message/abstract/abstract-message.service.mjs +1 -1
  255. package/esm2022/message/message-container.component.mjs +3 -3
  256. package/esm2022/message/message-queue.service.mjs +3 -3
  257. package/esm2022/message/message.component.mjs +3 -3
  258. package/esm2022/message/message.service.mjs +3 -3
  259. package/esm2022/message/module.mjs +4 -4
  260. package/esm2022/nav/icon-nav/icon-nav-link.directive.mjs +3 -3
  261. package/esm2022/nav/icon-nav/icon-nav.component.mjs +3 -3
  262. package/esm2022/nav/nav-ink-bar.directive.mjs +3 -3
  263. package/esm2022/nav/nav-item.directive.mjs +4 -4
  264. package/esm2022/nav/nav.component.mjs +3 -3
  265. package/esm2022/nav/nav.module.mjs +4 -4
  266. package/esm2022/nav/nav.pipe.mjs +3 -3
  267. package/esm2022/notify/module.mjs +4 -4
  268. package/esm2022/notify/notify-container.component.mjs +3 -3
  269. package/esm2022/notify/notify-queue.service.mjs +3 -3
  270. package/esm2022/notify/notify.component.mjs +5 -5
  271. package/esm2022/notify/notify.service.mjs +3 -3
  272. package/esm2022/pagination/pagination.component.mjs +29 -29
  273. package/esm2022/pagination/pagination.module.mjs +4 -4
  274. package/esm2022/pagination/pagination.pipe.mjs +3 -3
  275. package/esm2022/popover/body/popover-body.component.mjs +3 -3
  276. package/esm2022/popover/header/popover-header.component.mjs +4 -4
  277. package/esm2022/popover/module.mjs +4 -4
  278. package/esm2022/popover/popover-container.component.mjs +3 -3
  279. package/esm2022/popover/popover.directive.mjs +3 -3
  280. package/esm2022/popover/popover.service.mjs +3 -3
  281. package/esm2022/progress/progress-circle.component.mjs +3 -3
  282. package/esm2022/progress/progress-strip.component.mjs +3 -3
  283. package/esm2022/progress/progress.component.mjs +3 -3
  284. package/esm2022/progress/progress.module.mjs +4 -4
  285. package/esm2022/property/module.mjs +4 -4
  286. package/esm2022/property/properties.component.mjs +3 -3
  287. package/esm2022/property/property-item.component.mjs +4 -4
  288. package/esm2022/property-operation/group/property-operation-group.component.mjs +3 -3
  289. package/esm2022/property-operation/module.mjs +4 -4
  290. package/esm2022/property-operation/property-operation.component.mjs +4 -4
  291. package/esm2022/radio/button/radio-button.component.mjs +3 -3
  292. package/esm2022/radio/group/radio-group.component.mjs +3 -3
  293. package/esm2022/radio/module.mjs +4 -4
  294. package/esm2022/radio/radio.component.mjs +3 -3
  295. package/esm2022/rate/module.mjs +4 -4
  296. package/esm2022/rate/rate-item.component.mjs +3 -3
  297. package/esm2022/rate/rate.component.mjs +3 -3
  298. package/esm2022/resizable/module.mjs +4 -4
  299. package/esm2022/resizable/resizable.directive.mjs +3 -3
  300. package/esm2022/resizable/resizable.service.mjs +4 -4
  301. package/esm2022/resizable/resize-handle.component.mjs +4 -4
  302. package/esm2022/resizable/resize-handles.component.mjs +3 -3
  303. package/esm2022/result/result.component.mjs +3 -3
  304. package/esm2022/result/result.module.mjs +4 -4
  305. package/esm2022/segment/segment-item.component.mjs +3 -3
  306. package/esm2022/segment/segment.component.mjs +4 -4
  307. package/esm2022/segment/segment.module.mjs +4 -4
  308. package/esm2022/select/custom-select/custom-select.component.mjs +3 -3
  309. package/esm2022/select/module.mjs +4 -4
  310. package/esm2022/select/native-select/native-select.component.mjs +3 -3
  311. package/esm2022/shared/base-form-check.component.mjs +4 -4
  312. package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +4 -4
  313. package/esm2022/shared/directives/thy-autofocus.directive.mjs +4 -4
  314. package/esm2022/shared/directives/thy-contextmenu.directive.mjs +4 -4
  315. package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +4 -4
  316. package/esm2022/shared/directives/thy-drag-drop.directive.mjs +4 -4
  317. package/esm2022/shared/directives/thy-enter.directive.mjs +4 -4
  318. package/esm2022/shared/directives/thy-scroll.directive.mjs +4 -4
  319. package/esm2022/shared/directives/thy-show.mjs +4 -4
  320. package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +3 -3
  321. package/esm2022/shared/directives/view-outlet.directive.mjs +4 -4
  322. package/esm2022/shared/ng-transclude.directive.mjs +3 -3
  323. package/esm2022/shared/option/group/option-group.component.mjs +4 -4
  324. package/esm2022/shared/option/list-option/list-option.component.mjs +3 -3
  325. package/esm2022/shared/option/module.mjs +4 -4
  326. package/esm2022/shared/option/option-group.component.mjs +3 -3
  327. package/esm2022/shared/option/option.component.mjs +4 -4
  328. package/esm2022/shared/option/options-container.component.mjs +3 -3
  329. package/esm2022/shared/select/module.mjs +4 -4
  330. package/esm2022/shared/select/select-control/select-control.component.mjs +3 -3
  331. package/esm2022/shared/shared.module.mjs +4 -4
  332. package/esm2022/skeleton/module.mjs +4 -4
  333. package/esm2022/skeleton/skeleton-circle.component.mjs +3 -3
  334. package/esm2022/skeleton/skeleton-rectangle.component.mjs +3 -3
  335. package/esm2022/skeleton/skeleton.component.mjs +3 -3
  336. package/esm2022/skeleton/stylized/bullet-list.component.mjs +3 -3
  337. package/esm2022/skeleton/stylized/list.component.mjs +3 -3
  338. package/esm2022/skeleton/stylized/paragraph.component.mjs +3 -3
  339. package/esm2022/slide/drawer/drawer-container.directive.mjs +3 -3
  340. package/esm2022/slide/slide-body/slide-body-section.component.mjs +3 -3
  341. package/esm2022/slide/slide-body/slide-body.component.mjs +3 -3
  342. package/esm2022/slide/slide-container.component.mjs +3 -3
  343. package/esm2022/slide/slide-footer/slide-footer.component.mjs +3 -3
  344. package/esm2022/slide/slide-header/slide-header.component.mjs +3 -3
  345. package/esm2022/slide/slide-layout/slide-layout.component.mjs +3 -3
  346. package/esm2022/slide/slide-ref.service.mjs +3 -3
  347. package/esm2022/slide/slide.module.mjs +4 -4
  348. package/esm2022/slide/slide.service.mjs +3 -3
  349. package/esm2022/slider/slider.component.mjs +4 -4
  350. package/esm2022/slider/slider.module.mjs +4 -4
  351. package/esm2022/space/space.component.mjs +6 -6
  352. package/esm2022/space/space.module.mjs +4 -4
  353. package/esm2022/statistic/statistic.component.mjs +3 -3
  354. package/esm2022/statistic/statistic.module.mjs +4 -4
  355. package/esm2022/stepper/step-header.component.mjs +3 -3
  356. package/esm2022/stepper/step.component.mjs +3 -3
  357. package/esm2022/stepper/stepper-button.directive.mjs +6 -6
  358. package/esm2022/stepper/stepper.component.mjs +3 -3
  359. package/esm2022/stepper/stepper.module.mjs +4 -4
  360. package/esm2022/strength/strength.component.mjs +3 -3
  361. package/esm2022/strength/strength.module.mjs +4 -4
  362. package/esm2022/switch/switch.component.mjs +3 -3
  363. package/esm2022/switch/switch.module.mjs +4 -4
  364. package/esm2022/table/pipes/drag.pipe.mjs +3 -3
  365. package/esm2022/table/pipes/table.pipe.mjs +3 -3
  366. package/esm2022/table/table-column.component.mjs +3 -3
  367. package/esm2022/table/table-skeleton.component.mjs +3 -3
  368. package/esm2022/table/table.component.mjs +5 -5
  369. package/esm2022/table/table.module.mjs +4 -4
  370. package/esm2022/tabs/tab-content.component.mjs +3 -3
  371. package/esm2022/tabs/tab.component.mjs +3 -3
  372. package/esm2022/tabs/tabs.component.mjs +4 -4
  373. package/esm2022/tabs/tabs.module.mjs +4 -4
  374. package/esm2022/tag/tag.component.mjs +3 -3
  375. package/esm2022/tag/tag.module.mjs +4 -4
  376. package/esm2022/tag/tags.component.mjs +3 -3
  377. package/esm2022/testing/data-transfer.mjs +1 -1
  378. package/esm2022/time-picker/inner/inner-time-picker.component.mjs +4 -4
  379. package/esm2022/time-picker/inner/inner-time-picker.config.mjs +3 -3
  380. package/esm2022/time-picker/inner/inner-time-picker.store.mjs +3 -3
  381. package/esm2022/time-picker/time-picker-panel.component.mjs +4 -4
  382. package/esm2022/time-picker/time-picker.component.mjs +4 -4
  383. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  384. package/esm2022/timeline/timeline-item.component.mjs +4 -4
  385. package/esm2022/timeline/timeline.component.mjs +4 -4
  386. package/esm2022/timeline/timeline.module.mjs +4 -4
  387. package/esm2022/timeline/timeline.service.mjs +3 -3
  388. package/esm2022/tooltip/tooltip.component.mjs +3 -3
  389. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  390. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  391. package/esm2022/tooltip/tooltip.service.mjs +3 -3
  392. package/esm2022/transfer/transfer-list.component.mjs +4 -4
  393. package/esm2022/transfer/transfer.component.mjs +3 -3
  394. package/esm2022/transfer/transfer.module.mjs +4 -4
  395. package/esm2022/tree/tree-node.component.mjs +4 -4
  396. package/esm2022/tree/tree.component.mjs +5 -5
  397. package/esm2022/tree/tree.module.mjs +4 -4
  398. package/esm2022/tree/tree.pipe.mjs +3 -3
  399. package/esm2022/tree/tree.service.mjs +3 -3
  400. package/esm2022/tree-select/module.mjs +4 -4
  401. package/esm2022/tree-select/tree-select.component.mjs +13 -12
  402. package/esm2022/typography/bg-color.directive.mjs +3 -3
  403. package/esm2022/typography/module.mjs +4 -4
  404. package/esm2022/typography/text/text.component.mjs +3 -3
  405. package/esm2022/typography/text-color.directive.mjs +3 -3
  406. package/esm2022/upload/file-drop.directive.mjs +7 -6
  407. package/esm2022/upload/file-select-base.mjs +3 -3
  408. package/esm2022/upload/file-select.component.mjs +4 -4
  409. package/esm2022/upload/module.mjs +4 -4
  410. package/esm2022/upload/upload.service.mjs +3 -3
  411. package/esm2022/util/logger/logger.mjs +1 -1
  412. package/esm2022/version.mjs +2 -2
  413. package/esm2022/vote/vote.component.mjs +3 -3
  414. package/esm2022/vote/vote.module.mjs +4 -4
  415. package/esm2022/watermark/watermark.directive.mjs +3 -3
  416. package/esm2022/watermark/watermark.module.mjs +4 -4
  417. package/fesm2022/ngx-tethys-action.mjs +10 -10
  418. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  419. package/fesm2022/ngx-tethys-affix.mjs +7 -7
  420. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  421. package/fesm2022/ngx-tethys-alert.mjs +10 -10
  422. package/fesm2022/ngx-tethys-anchor.mjs +10 -10
  423. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  424. package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
  425. package/fesm2022/ngx-tethys-autocomplete.mjs +16 -16
  426. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  427. package/fesm2022/ngx-tethys-avatar.mjs +22 -22
  428. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  429. package/fesm2022/ngx-tethys-back-top.mjs +7 -7
  430. package/fesm2022/ngx-tethys-badge.mjs +7 -7
  431. package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
  432. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  433. package/fesm2022/ngx-tethys-button.mjs +13 -13
  434. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  435. package/fesm2022/ngx-tethys-calendar.mjs +16 -16
  436. package/fesm2022/ngx-tethys-card.mjs +13 -13
  437. package/fesm2022/ngx-tethys-carousel.mjs +16 -16
  438. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  439. package/fesm2022/ngx-tethys-cascader.mjs +25 -37
  440. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  441. package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
  442. package/fesm2022/ngx-tethys-collapse.mjs +10 -10
  443. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  444. package/fesm2022/ngx-tethys-color-picker.mjs +47 -37
  445. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  446. package/fesm2022/ngx-tethys-comment.mjs +13 -13
  447. package/fesm2022/ngx-tethys-copy.mjs +7 -7
  448. package/fesm2022/ngx-tethys-core.mjs +30 -20
  449. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  450. package/fesm2022/ngx-tethys-date-picker.mjs +117 -117
  451. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  452. package/fesm2022/ngx-tethys-date-range.mjs +10 -10
  453. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  454. package/fesm2022/ngx-tethys-dialog.mjs +22 -22
  455. package/fesm2022/ngx-tethys-divider.mjs +7 -7
  456. package/fesm2022/ngx-tethys-dot.mjs +7 -7
  457. package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
  458. package/fesm2022/ngx-tethys-drag-drop.mjs +19 -19
  459. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  460. package/fesm2022/ngx-tethys-dropdown.mjs +46 -46
  461. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  462. package/fesm2022/ngx-tethys-empty.mjs +10 -10
  463. package/fesm2022/ngx-tethys-flexible-text.mjs +7 -7
  464. package/fesm2022/ngx-tethys-form.mjs +40 -40
  465. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  466. package/fesm2022/ngx-tethys-fullscreen.mjs +15 -14
  467. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  468. package/fesm2022/ngx-tethys-grid.mjs +31 -31
  469. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  470. package/fesm2022/ngx-tethys-guider.mjs +16 -16
  471. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  472. package/fesm2022/ngx-tethys-icon.mjs +10 -10
  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.mjs +19 -19
  478. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  479. package/fesm2022/ngx-tethys-layout.mjs +58 -58
  480. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  481. package/fesm2022/ngx-tethys-list.mjs +16 -16
  482. package/fesm2022/ngx-tethys-loading.mjs +7 -7
  483. package/fesm2022/ngx-tethys-mention.mjs +10 -10
  484. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  485. package/fesm2022/ngx-tethys-menu.mjs +25 -25
  486. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  487. package/fesm2022/ngx-tethys-message.mjs +22 -22
  488. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  489. package/fesm2022/ngx-tethys-nav.mjs +22 -22
  490. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  491. package/fesm2022/ngx-tethys-notify.mjs +17 -17
  492. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  493. package/fesm2022/ngx-tethys-pagination.mjs +34 -34
  494. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  495. package/fesm2022/ngx-tethys-popover.mjs +19 -19
  496. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  497. package/fesm2022/ngx-tethys-progress.mjs +13 -13
  498. package/fesm2022/ngx-tethys-property-operation.mjs +10 -10
  499. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  500. package/fesm2022/ngx-tethys-property.mjs +10 -10
  501. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  502. package/fesm2022/ngx-tethys-radio.mjs +13 -13
  503. package/fesm2022/ngx-tethys-rate.mjs +10 -10
  504. package/fesm2022/ngx-tethys-resizable.mjs +16 -16
  505. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  506. package/fesm2022/ngx-tethys-result.mjs +7 -7
  507. package/fesm2022/ngx-tethys-segment.mjs +10 -10
  508. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  509. package/fesm2022/ngx-tethys-select.mjs +10 -10
  510. package/fesm2022/ngx-tethys-shared.mjs +66 -66
  511. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  512. package/fesm2022/ngx-tethys-skeleton.mjs +22 -22
  513. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  514. package/fesm2022/ngx-tethys-slide.mjs +31 -31
  515. package/fesm2022/ngx-tethys-slider.mjs +7 -7
  516. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  517. package/fesm2022/ngx-tethys-space.mjs +10 -10
  518. package/fesm2022/ngx-tethys-statistic.mjs +7 -7
  519. package/fesm2022/ngx-tethys-stepper.mjs +19 -19
  520. package/fesm2022/ngx-tethys-strength.mjs +7 -7
  521. package/fesm2022/ngx-tethys-switch.mjs +7 -7
  522. package/fesm2022/ngx-tethys-table.mjs +20 -20
  523. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  524. package/fesm2022/ngx-tethys-tabs.mjs +13 -13
  525. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  526. package/fesm2022/ngx-tethys-tag.mjs +10 -10
  527. package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
  528. package/fesm2022/ngx-tethys-time-picker.mjs +19 -19
  529. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  530. package/fesm2022/ngx-tethys-timeline.mjs +13 -13
  531. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  532. package/fesm2022/ngx-tethys-tooltip.mjs +13 -13
  533. package/fesm2022/ngx-tethys-transfer.mjs +10 -10
  534. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  535. package/fesm2022/ngx-tethys-tree-select.mjs +16 -15
  536. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  537. package/fesm2022/ngx-tethys-tree.mjs +17 -17
  538. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  539. package/fesm2022/ngx-tethys-typography.mjs +13 -13
  540. package/fesm2022/ngx-tethys-upload.mjs +18 -17
  541. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  542. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  543. package/fesm2022/ngx-tethys-vote.mjs +7 -7
  544. package/fesm2022/ngx-tethys-watermark.mjs +7 -7
  545. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  546. package/fesm2022/ngx-tethys.mjs +1 -1
  547. package/fesm2022/ngx-tethys.mjs.map +1 -1
  548. package/flexible-text/examples/placement/placement.component.scss +3 -1
  549. package/form/styles/form-check.scss +2 -3
  550. package/form/styles/mixin.scss +1 -1
  551. package/grid/examples/basic/basic.component.scss +5 -3
  552. package/grid/examples/flex/flex.component.scss +5 -3
  553. package/grid/examples/gap/gap.component.scss +5 -3
  554. package/grid/examples/offset/offset.component.scss +5 -3
  555. package/grid/examples/responsive/responsive.component.scss +6 -4
  556. package/grid/examples/row-col/row-col.component.scss +5 -3
  557. package/grid/examples/span/span.component.scss +5 -3
  558. package/guider/styles/guider-tip.scss +6 -6
  559. package/loading/styles/loading.scss +3 -3
  560. package/menu/examples/basic/basic.component.scss +3 -1
  561. package/menu/examples/divider/divider.component.scss +3 -1
  562. package/menu/examples/group/group.component.scss +3 -1
  563. package/menu/examples/theme/theme.component.scss +2 -2
  564. package/nav/examples/basic/basic.component.scss +3 -5
  565. package/nav/examples/extra/extra.component.scss +3 -1
  566. package/nav/examples/fill/fill.component.scss +3 -1
  567. package/nav/examples/lite/lite.component.scss +3 -1
  568. package/nav/examples/pills/pills.component.scss +3 -1
  569. package/nav/examples/responsive/responsive.component.scss +3 -1
  570. package/nav/examples/size/size.component.scss +3 -1
  571. package/nav/examples/tabs/tabs.component.scss +3 -1
  572. package/nav/examples/type/type.component.scss +3 -4
  573. package/nav/examples/vertical/vertical.component.scss +3 -1
  574. package/nav/nav.component.d.ts +1 -1
  575. package/nav/styles/mixin.scss +26 -10
  576. package/notify/styles/notify.scss +2 -2
  577. package/package.json +1 -1
  578. package/pagination/pagination.component.d.ts +3 -3
  579. package/pagination/styles/pagination.scss +1 -0
  580. package/progress/styles/progress-strip.scss +1 -1
  581. package/property-operation/styles/property-operation.scss +1 -15
  582. package/resizable/examples/layout/layout.style.scss +7 -5
  583. package/resizable/examples/table/table.style.scss +3 -1
  584. package/resizable/resize-handle.component.d.ts +4 -1
  585. package/schematics/version.d.ts +1 -1
  586. package/schematics/version.js +1 -1
  587. package/segment/styles/mixin.scss +8 -5
  588. package/segment/styles/segment.scss +1 -1
  589. package/shared/option/styles/option.mixin.scss +6 -6
  590. package/shared/option/styles/select-dropdown.scss +3 -1
  591. package/shared/select/select-control/select-control.scss +1 -1
  592. package/space/examples/align/align.component.scss +3 -2
  593. package/statistic/examples/prefix-suffix/prefix-suffix.component.scss +3 -1
  594. package/styles/bootstrap/_type.scss +8 -8
  595. package/styles/bootstrap/mixins/_transition.scss +3 -1
  596. package/styles/mixins/close.scss +4 -1
  597. package/styles/mixins/shadow.scss +3 -1
  598. package/styles/mixins/tables.scss +3 -166
  599. package/styles/modules/cdk/drag-drop.scss +1 -1
  600. package/styles/modules/link.scss +1 -1
  601. package/styles/modules/tables.scss +0 -1
  602. package/styles/variables.scss +73 -41
  603. package/switch/styles/mixin.scss +1 -1
  604. package/table/styles/table.scss +1 -1
  605. package/tabs/styles/tabs.scss +1 -0
  606. package/tag/styles/mixin.scss +10 -5
  607. package/tag/styles/tag.scss +4 -4
  608. package/tree/styles/tree.scss +0 -8
  609. package/tree-select/styles/tree-select.scss +4 -1
  610. package/tree-select/tree-select.component.d.ts +3 -3
  611. package/watermark/examples/basic/basic.component.scss +3 -1
  612. package/watermark/examples/custom/custom.component.scss +8 -0
  613. package/watermark/styles/watermark.scss +1 -2
  614. package/tabs/examples/basic/basic.component.scss +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-shared.mjs","sources":["../../../src/shared/ng-transclude.directive.ts","../../../src/shared/directives/thy-autofocus.directive.ts","../../../src/shared/directives/thy-enter.directive.ts","../../../src/shared/directives/thy-ctrl-enter.directive.ts","../../../src/shared/directives/thy-show.ts","../../../src/shared/directives/thy-stop-propagation.directive.ts","../../../src/shared/directives/thy-contextmenu.directive.ts","../../../src/shared/directives/thy-scroll.directive.ts","../../../src/shared/directives/thy-drag-drop.directive.ts","../../../src/shared/directives/string-or-template-outlet.directive.ts","../../../src/shared/directives/view-outlet.directive.ts","../../../src/shared/shared.module.ts","../../../src/shared/base-form-check.component.ts","../../../src/shared/select/select-control/select-control.component.ts","../../../src/shared/select/select-control/select-control.component.html","../../../src/shared/select/module.ts","../../../src/shared/option/option.token.ts","../../../src/shared/option/list-option/list-option.component.ts","../../../src/shared/option/list-option/list-option.component.html","../../../src/shared/option/option-group.component.ts","../../../src/shared/option/select-option-base.ts","../../../src/shared/option/option.component.ts","../../../src/shared/option/option.component.html","../../../src/shared/option/group/option-group.component.ts","../../../src/shared/option/group/option-group.component.html","../../../src/shared/option/options-container.component.ts","../../../src/shared/option/module.ts","../../../src/shared/ngx-tethys-shared.ts"],"sourcesContent":["import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\n\n/**\n * @private\n */\n@Directive({\n selector: '[thyTransclude]',\n standalone: true\n})\nexport class ThyTranscludeDirective {\n viewRef: ViewContainerRef;\n\n protected _viewRef: ViewContainerRef;\n protected _ngTransclude: TemplateRef<any>;\n\n @Input()\n set thyTransclude(templateRef: TemplateRef<any>) {\n this._ngTransclude = templateRef;\n if (templateRef) {\n this.viewRef.createEmbeddedView(templateRef);\n }\n }\n\n get thyTransclude(): TemplateRef<any> {\n return this._ngTransclude;\n }\n\n constructor(viewRef: ViewContainerRef) {\n this.viewRef = viewRef;\n }\n}\n","import { Directive, Input, ElementRef, NgZone } from '@angular/core';\nimport { reqAnimFrame } from 'ngx-tethys/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n/**\n * 自动聚焦指令\n * @name input[thyAutofocus],textarea[thyAutofocus]\n */\n@Directive({\n selector: 'input[thyAutofocus],textarea[thyAutofocus]',\n standalone: true\n})\nexport class ThyAutofocusDirective {\n // 自动选择,用于只读的 input 输入框,方便复制粘贴\n private _autoSelect = false;\n\n /**\n * 是否自动聚焦\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyAutofocus(value: boolean) {\n if (value) {\n // Note: this is being run outside of the Angular zone because `element.focus()` doesn't require\n // running change detection.\n this.ngZone.runOutsideAngular(() =>\n // Note: `element.focus()` causes re-layout and this may lead to frame drop on slower devices.\n // https://gist.github.com/paulirish/5d52fb081b3570c81e3a#setting-focus\n // `setTimeout` is a macrotask and macrotasks are executed within the current rendering frame.\n // Animation tasks are executed within the next rendering frame.\n reqAnimFrame(() => {\n this.elementRef.nativeElement.focus();\n if (this._autoSelect && this.elementRef.nativeElement.select) {\n this.elementRef.nativeElement.select();\n }\n })\n );\n }\n }\n\n /**\n * 是否自动选择\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyAutoSelect(value: boolean) {\n this._autoSelect = value;\n }\n\n constructor(private elementRef: ElementRef, private ngZone: NgZone) {}\n}\n","import { Directive, Output, EventEmitter, OnInit, NgZone, ElementRef, Renderer2, OnDestroy } from '@angular/core';\nimport { keycodes } from 'ngx-tethys/util';\n\n/**\n * 与 (keydown.enter) 区别是支持组合键,当按 Ctrl + Enter 或者 Command + Enter 也会触发\n * @name thyEnter\n */\n@Directive({\n selector: '[thyEnter]',\n standalone: true\n})\nexport class ThyEnterDirective implements OnInit, OnDestroy {\n @Output() thyEnter = new EventEmitter();\n\n onKeydown = (event: KeyboardEvent) => {\n const keyCode = event.which || event.keyCode;\n if (keyCode === keycodes.ENTER) {\n this.ngZone.run(() => {\n this.thyEnter.emit(event);\n });\n }\n };\n\n private removeKeydownListenerFn: VoidFunction;\n\n constructor(private ngZone: NgZone, private elementRef: ElementRef, private renderer: Renderer2) {}\n\n ngOnInit(): void {\n this.ngZone.runOutsideAngular(() => {\n this.removeKeydownListenerFn = this.renderer.listen(this.elementRef.nativeElement, 'keydown', this.onKeydown);\n });\n }\n\n ngOnDestroy(): void {\n this.removeKeydownListenerFn();\n }\n}\n","import { Directive, Output, ElementRef, EventEmitter, OnInit, NgZone, Renderer2, OnDestroy } from '@angular/core';\nimport { keycodes } from 'ngx-tethys/util';\n\n/**\n * @name thyCtrlEnter\n */\n@Directive({\n selector: '[thyCtrlEnter]',\n standalone: true\n})\nexport class ThyCtrlEnterDirective implements OnInit, OnDestroy {\n @Output() thyCtrlEnter = new EventEmitter();\n\n private removeKeydownListenerFn: VoidFunction;\n\n constructor(private ngZone: NgZone, private elementRef: ElementRef, private renderer: Renderer2) {}\n\n onKeydown = (event: KeyboardEvent) => {\n const keyCode = event.which || event.keyCode;\n if ((event.ctrlKey || event.metaKey) && keyCode === keycodes.ENTER) {\n event.preventDefault();\n this.ngZone.run(() => {\n this.thyCtrlEnter.emit(event);\n });\n }\n };\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n this.removeKeydownListenerFn = this.renderer.listen(this.elementRef.nativeElement, 'keydown', this.onKeydown);\n });\n }\n\n ngOnDestroy(): void {\n this.removeKeydownListenerFn();\n }\n}\n","import { Directive, Renderer2, Input, ElementRef, Output, EventEmitter, OnDestroy, NgZone } from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * @name thyShow\n */\n@Directive({\n selector: '[thyShow]',\n standalone: true\n})\nexport class ThyShowDirective implements OnDestroy {\n @Output() thyShowChange = new EventEmitter();\n\n private hostRenderer = useHostRenderer();\n\n private unListenEvent: () => void;\n\n private unListenDocument() {\n if (this.unListenEvent) {\n this.unListenEvent();\n this.unListenEvent = null;\n }\n }\n\n @Input({ transform: coerceBooleanProperty })\n set thyShow(condition: boolean) {\n if (condition) {\n this.hostRenderer.setStyle('display', 'block');\n this.ngZone.runOutsideAngular(() =>\n setTimeout(() => {\n this.unListenEvent = this.renderer.listen('document', 'click', event => {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n if (this.thyShowChange.observers.length) {\n this.ngZone.run(() => this.thyShowChange.emit(false));\n }\n this.unListenDocument();\n }\n });\n })\n );\n } else {\n this.hostRenderer.setStyle('display', 'none');\n this.unListenDocument();\n }\n }\n\n constructor(private elementRef: ElementRef<HTMLElement>, private renderer: Renderer2, private ngZone: NgZone) {}\n\n ngOnDestroy() {\n this.unListenDocument();\n }\n}\n","import { Directive, ElementRef, Input, NgZone, OnDestroy } from '@angular/core';\nimport { fromEvent, Observable, Subject } from 'rxjs';\nimport { startWith, switchMap, takeUntil } from 'rxjs/operators';\n\n/**\n * 阻止事件冒泡\n * @name thyStopPropagation\n */\n@Directive({\n selector: '[thyStopPropagation]',\n standalone: true\n})\nexport class ThyStopPropagationDirective implements OnDestroy {\n private _eventName = 'click';\n\n private _shouldStopPropagation = true;\n\n @Input()\n set thyStopPropagation(value: string | boolean) {\n if (value === false || value === 'false') {\n this._shouldStopPropagation = false;\n } else {\n this._shouldStopPropagation = true;\n if (!value || value === true || value === 'true') {\n this._eventName = 'click';\n } else {\n this._eventName = value as string;\n }\n }\n\n this._changes$.next();\n }\n\n private _changes$ = new Subject<void>();\n private _destroy$ = new Subject<void>();\n\n constructor(_host: ElementRef<HTMLElement>, _ngZone: NgZone) {\n this._changes$\n .pipe(\n // Note: we start the stream immediately since the `thyStopPropagation` setter may never be reached.\n startWith<null, null>(null),\n switchMap(\n () =>\n new Observable<Event>(subscriber =>\n _ngZone.runOutsideAngular(() => fromEvent(_host.nativeElement, this._eventName).subscribe(subscriber))\n )\n ),\n takeUntil(this._destroy$)\n )\n .subscribe(event => {\n if (this._shouldStopPropagation) {\n event.stopPropagation();\n }\n });\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n }\n}\n","import { Directive, Output, ElementRef, EventEmitter, OnInit, NgZone, Renderer2, HostListener, OnDestroy } from '@angular/core';\n\n/**\n * @name thyContextMenu\n */\n@Directive({\n selector: '[thyContextMenu]',\n standalone: true\n})\nexport class ThyContextMenuDirective implements OnInit, OnDestroy {\n @Output() thyContextMenu = new EventEmitter();\n\n private removeContextListenerFn: VoidFunction;\n\n constructor(private ngZone: NgZone, private elementRef: ElementRef, private renderer: Renderer2) {}\n\n rightClick = (event: Event) => {\n event.preventDefault();\n this.ngZone.run(() => {\n this.thyContextMenu.emit(event);\n });\n };\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n this.removeContextListenerFn = this.renderer.listen(this.elementRef.nativeElement, 'contextmenu', this.rightClick);\n });\n }\n\n ngOnDestroy(): void {\n this.removeContextListenerFn();\n }\n}\n","import { Directive, ElementRef, OnInit, NgZone, OnDestroy, Output, EventEmitter, Input } from '@angular/core';\nimport { Subject, Observable, Observer, fromEvent, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { normalizePassiveListenerOptions } from '@angular/cdk/platform';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nconst passiveEventListenerOptions = <AddEventListenerOptions>normalizePassiveListenerOptions({ passive: true });\n\n/**\n * @name thyScroll\n */\n@Directive({\n selector: '[thyScroll]',\n standalone: true\n})\nexport class ThyScrollDirective implements OnInit, OnDestroy {\n private _destroyed = new Subject<void>();\n private _enable = true;\n private _initialled = false;\n private _subscription: Subscription;\n\n private _elementScrolled: Observable<Event> = new Observable((observer: Observer<Event>) =>\n this.ngZone.runOutsideAngular(() =>\n fromEvent(this.elementRef.nativeElement, 'scroll', passiveEventListenerOptions)\n .pipe(takeUntil(this._destroyed))\n .subscribe(observer)\n )\n );\n\n @Input({ transform: coerceBooleanProperty })\n set thyEnable(value: boolean) {\n this._enable = value;\n if (this._initialled) {\n if (this._enable && this._subscription === null) {\n this._subscription = this._elementScrolled.subscribe(() => this.thyOnScrolled.emit(this.elementRef));\n } else {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n }\n }\n\n /**\n * @description\n *\n * Note: the `thyOnScrolled` emits outside of the Angular zone since the `scroll` listener\n * is installed within the `<root>` zone.\n *\n * Consumers need to re-enter the Angular zone theirselves when the change detection is needeed to be run:\n * ```ts\n * @Component({\n * template: '<div thyScroll (thyOnScrolled)=\"onScrolled()\"></div>'\n * })\n * class ThyScrollComponent {\n * onScrolled(): void {\n * console.log(Zone.current); // <root>\n * console.log(NgZone.isInAngularZone()); // false\n * }\n * }\n * ```\n */\n @Output() thyOnScrolled: EventEmitter<ElementRef> = new EventEmitter<ElementRef>();\n\n constructor(private elementRef: ElementRef<any>, private ngZone: NgZone) {}\n\n ngOnInit() {\n if (this._enable) {\n this._subscription = this._elementScrolled.subscribe(() => this.thyOnScrolled.emit(this.elementRef));\n }\n this._initialled = true;\n }\n\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n getElementRef(): ElementRef<HTMLElement> {\n return this.elementRef;\n }\n}\n","import { Directive, AfterContentInit, ContentChildren, QueryList, OnDestroy } from '@angular/core';\nimport { CdkDrag } from '@angular/cdk/drag-drop';\nimport { merge, Subject } from 'rxjs';\nimport { takeUntil, startWith } from 'rxjs/operators';\n\n/**\n * @private\n */\n@Directive({\n selector: '[thyDragDrop]',\n standalone: true\n})\nexport class ThyDragDropDirective implements AfterContentInit, OnDestroy {\n @ContentChildren(CdkDrag, { descendants: true }) draggables: QueryList<CdkDrag>;\n\n private ngUnsubscribe$ = new Subject();\n\n constructor() {}\n\n ngAfterContentInit() {\n if (this.draggables) {\n this.draggables.changes.pipe(startWith(this.draggables)).subscribe(() => {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n\n this.ngUnsubscribe$ = new Subject();\n merge(\n ...this.draggables.toArray().map(dragRef => {\n return dragRef.started;\n })\n )\n .pipe(takeUntil(this.ngUnsubscribe$))\n .subscribe(() => {\n document.body.classList.add('thy-dragging-body');\n });\n\n merge(...this.draggables.toArray().map(dragRef => dragRef.released))\n .pipe(takeUntil(this.ngUnsubscribe$))\n .subscribe(() => {\n document.body.classList.remove('thy-dragging-body');\n });\n });\n }\n }\n\n ngOnDestroy(): void {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n }\n}\n","import { Directive, EmbeddedViewRef, Input, OnChanges, Renderer2, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { isTemplateRef } from 'ngx-tethys/util';\n\n/**\n * @name thyStringOrTemplateOutlet\n */\n@Directive({\n selector: '[thyStringOrTemplateOutlet]',\n exportAs: 'thyStringOrTemplateOutlet',\n standalone: true\n})\nexport class ThyStringOrTemplateOutletDirective implements OnChanges {\n private viewRef: EmbeddedViewRef<any>;\n\n private textNode: Text;\n\n @Input() thyStringOrTemplateOutletContext: any;\n\n @Input() thyStringOrTemplateOutlet: any | TemplateRef<any>;\n\n constructor(private viewContainerRef: ViewContainerRef, private renderer: Renderer2) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['thyStringOrTemplateOutlet']) {\n this.updateView();\n } else if (this.viewRef && changes['thyStringOrTemplateOutletContext'] && this.thyStringOrTemplateOutletContext) {\n this.viewRef.context = this.thyStringOrTemplateOutletContext;\n }\n }\n\n private updateView() {\n this.clear();\n\n if (this.thyStringOrTemplateOutlet) {\n if (isTemplateRef(this.thyStringOrTemplateOutlet)) {\n this.viewRef = this.viewContainerRef.createEmbeddedView(\n this.thyStringOrTemplateOutlet,\n this.thyStringOrTemplateOutletContext\n );\n } else {\n this.textNode = this.renderer.createText(this.thyStringOrTemplateOutlet + '');\n const element = this.viewContainerRef.element.nativeElement as HTMLElement;\n this.renderer.insertBefore(element.parentNode, this.textNode, element);\n }\n } else {\n this.viewRef = null;\n }\n }\n\n private clear() {\n this.viewContainerRef.clear();\n if (this.textNode) {\n this.renderer.removeChild(this.textNode.parentNode, this.textNode);\n }\n }\n}\n","import {\n ComponentRef,\n Directive,\n Input,\n ChangeDetectorRef,\n EmbeddedViewRef,\n OnChanges,\n SimpleChanges,\n Type,\n ViewContainerRef,\n TemplateRef,\n KeyValueDiffer,\n KeyValueDiffers\n} from '@angular/core';\nimport { SafeAny } from 'ngx-tethys/types';\n\nfunction hasInput(componentRef: ComponentRef<unknown>, inputKey: string) {\n return componentRef['_tNode'].inputs?.[inputKey];\n}\n\n/**\n * 视图 Outlet 组件,取代 NgComponentOutlet 和 NgTemplateOutlet\n * @name thyViewOutlet\n * @order 10\n */\n@Directive({\n selector: '[thyViewOutlet]',\n standalone: true\n})\nexport class ThyViewOutletDirective implements OnChanges {\n private componentRef: ComponentRef<SafeAny> | undefined;\n\n private embeddedViewRef: EmbeddedViewRef<SafeAny> | undefined;\n\n /**\n * 组件或者模板 TemplateRef\n */\n @Input() thyViewOutlet: Type<SafeAny> | TemplateRef<SafeAny> | null = null;\n\n /**\n * 组件和模板上下文传递数据\n */\n @Input() thyViewOutletContext?: SafeAny;\n\n private keyValueDiffer: KeyValueDiffer<SafeAny, SafeAny>;\n\n constructor(private viewContainerRef: ViewContainerRef, private keyValueDiffers: KeyValueDiffers) {}\n\n ngOnChanges(changes: SimpleChanges) {\n const { viewContainerRef: viewContainerRef } = this;\n if (changes['thyViewOutlet']) {\n viewContainerRef.clear();\n this.componentRef = undefined;\n this.embeddedViewRef = undefined;\n\n if (this.thyViewOutlet) {\n if (this.thyViewOutlet instanceof TemplateRef) {\n this.embeddedViewRef = viewContainerRef.createEmbeddedView(this.thyViewOutlet, this.thyViewOutletContext);\n } else {\n this.componentRef = viewContainerRef.createComponent(this.thyViewOutlet, {\n index: viewContainerRef.length\n });\n }\n }\n }\n\n if (changes['thyViewOutletContext']) {\n let updatedKeys: string[] = [];\n if (changes['thyViewOutletContext'].isFirstChange()) {\n this.keyValueDiffer = this.keyValueDiffers.find(this.thyViewOutletContext).create();\n this.keyValueDiffer.diff(this.thyViewOutletContext);\n updatedKeys = Object.keys(this.thyViewOutletContext);\n } else {\n const diffChanges = this.keyValueDiffer.diff(this.thyViewOutletContext);\n diffChanges?.forEachChangedItem(item => {\n updatedKeys.push(item.key);\n });\n }\n if (this.componentRef) {\n this.updateContext(this.componentRef.instance, updatedKeys);\n this.componentRef.injector.get(ChangeDetectorRef).markForCheck();\n } else if (this.embeddedViewRef) {\n this.updateContext(this.embeddedViewRef.context, updatedKeys);\n this.embeddedViewRef.markForCheck();\n }\n }\n }\n\n private updateContext(context: SafeAny, updatedKeys: string[]) {\n updatedKeys.forEach(key => {\n // 兼容组件输入属性没有通过 @Input,设置了 @Input 采用 setInput,否则直接赋值,setInput 会触发 Angular 组件的 onChanges\n if (this.componentRef && hasInput(this.componentRef, key)) {\n this.componentRef.setInput(key, this.thyViewOutletContext[key]);\n } else {\n context[key] = this.thyViewOutletContext[key];\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ThyTranscludeDirective } from './ng-transclude.directive';\nimport { ThyAutofocusDirective } from './directives/thy-autofocus.directive';\nimport { ThyEnterDirective } from './directives/thy-enter.directive';\nimport { ThyCtrlEnterDirective } from './directives/thy-ctrl-enter.directive';\nimport { ThyShowDirective } from './directives/thy-show';\nimport { ThyStopPropagationDirective } from './directives/thy-stop-propagation.directive';\nimport { ThyContextMenuDirective } from './directives/thy-contextmenu.directive';\nimport { ThyScrollDirective } from './directives/thy-scroll.directive';\nimport { ThyDragDropDirective } from './directives/thy-drag-drop.directive';\nimport { ThyStringOrTemplateOutletDirective } from './directives/string-or-template-outlet.directive';\nimport { ThyViewOutletDirective } from './directives/view-outlet.directive';\n\n@NgModule({\n imports: [\n ThyViewOutletDirective,\n ThyTranscludeDirective,\n ThyAutofocusDirective,\n ThyEnterDirective,\n ThyCtrlEnterDirective,\n ThyShowDirective,\n ThyStopPropagationDirective,\n ThyContextMenuDirective,\n ThyScrollDirective,\n ThyDragDropDirective,\n ThyStringOrTemplateOutletDirective\n ],\n exports: [\n ThyTranscludeDirective,\n ThyAutofocusDirective,\n ThyEnterDirective,\n ThyCtrlEnterDirective,\n ThyShowDirective,\n ThyStopPropagationDirective,\n ThyContextMenuDirective,\n ThyScrollDirective,\n ThyDragDropDirective,\n ThyStringOrTemplateOutletDirective,\n ThyViewOutletDirective\n ],\n providers: []\n})\nexport class ThySharedModule {}\n","import { ControlValueAccessor } from '@angular/forms';\nimport { HostBinding, Input, ChangeDetectorRef, Directive } from '@angular/core';\nimport { ThyTranslate, TabIndexDisabledControlValueAccessorMixin } from 'ngx-tethys/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nconst noop = () => {};\n\n/**\n * @private\n */\n@Directive()\nexport class ThyFormCheckBaseComponent extends TabIndexDisabledControlValueAccessorMixin implements ControlValueAccessor {\n // The internal data model\n _innerValue: boolean = null;\n\n _disabled = false;\n\n private onTouchedCallback: () => void = noop;\n\n private onChangeCallback: (_: any) => void = noop;\n\n _labelText: string;\n\n @HostBinding('class.form-check') _isFormCheck = true;\n\n @HostBinding('class.form-check-inline') _isFormCheckInline = false;\n\n @HostBinding('class.form-check-checked') _isChecked = false;\n\n @HostBinding('class.form-check-inline-no-label-text') get _isNoText() {\n return this._isFormCheckInline && !this._labelText;\n }\n\n /**\n * 是否同一行展示\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyInline(value: boolean) {\n this._isFormCheckInline = value;\n }\n\n /**\n * Label 展示文本\n */\n @Input()\n set thyLabelText(value: string) {\n this._labelText = value;\n }\n\n /**\n * Label 文本多语言 key\n */\n @Input()\n set thyLabelTextTranslateKey(value: string) {\n if (value) {\n this._labelText = this.thyTranslate.instant(value);\n } else {\n this._labelText = '';\n }\n }\n\n disabled = false;\n\n /**\n * 是否禁用\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n override set thyDisabled(value: boolean) {\n this.disabled = value;\n this.setDisabledState(this.disabled);\n }\n\n override get thyDisabled() {\n return this.disabled;\n }\n\n writeValue(obj: boolean): void {\n if (obj !== this._innerValue) {\n this._innerValue = obj;\n this._isChecked = !!this._innerValue;\n }\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this._disabled = isDisabled;\n this.markForCheck();\n }\n\n updateValue(value: boolean): void {\n this._innerValue = value;\n this._isChecked = !!this._innerValue;\n this.onChangeCallback(value);\n this.markForCheck();\n }\n\n constructor(protected thyTranslate: ThyTranslate, protected changeDetectorRef?: ChangeDetectorRef) {\n super();\n }\n\n change() {\n this.updateValue(!this._innerValue);\n }\n\n markForCheck() {\n if (this.changeDetectorRef) {\n this.changeDetectorRef.markForCheck();\n }\n }\n}\n","import { ThyTagSize } from 'ngx-tethys/tag';\nimport { coerceBooleanProperty, isUndefinedOrNull } from 'ngx-tethys/util';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnInit,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n numberAttribute\n} from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\n\nimport { NgClass, NgFor, NgIf, NgStyle, NgTemplateOutlet } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ThyGridModule } from 'ngx-tethys/grid';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { ThyTag } from 'ngx-tethys/tag';\nimport { SelectOptionBase } from '../../option/select-option-base';\n\nexport type SelectControlSize = 'xs' | 'sm' | 'md' | 'lg' | '';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-select-control,[thySelectControl]',\n templateUrl: './select-control.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [FormsModule, NgClass, NgIf, NgStyle, NgFor, ThyTag, NgTemplateOutlet, ThyIcon, ThyGridModule],\n host: {\n '[class.select-control-borderless]': 'thyBorderless'\n }\n})\nexport class ThySelectControl implements OnInit {\n inputValue = '';\n\n isComposing = false;\n\n panelOpened = false;\n\n isMultiple = false;\n\n showSearch = false;\n\n disabled = false;\n\n size: SelectControlSize;\n\n selectedOptions: SelectOptionBase | SelectOptionBase[];\n\n searchInputControlClass: { [key: string]: boolean };\n\n tagSize: ThyTagSize;\n\n private hostRenderer = useHostRenderer();\n\n @Input({ transform: coerceBooleanProperty })\n get thyPanelOpened(): boolean {\n return this.panelOpened;\n }\n\n set thyPanelOpened(value: boolean) {\n this.panelOpened = value;\n if (this.panelOpened && this.thyShowSearch) {\n Promise.resolve(null).then(() => {\n this.inputElement.nativeElement.focus();\n });\n }\n if (!this.panelOpened && this.thyShowSearch) {\n Promise.resolve(null).then(() => {\n this.setInputValue('');\n });\n }\n this.setSelectControlClass();\n }\n\n @Input({ transform: coerceBooleanProperty })\n get thyIsMultiple(): boolean {\n return this.isMultiple;\n }\n\n set thyIsMultiple(value: boolean) {\n this.isMultiple = value;\n this.setSelectControlClass();\n }\n\n @Input({ transform: coerceBooleanProperty })\n get thyShowSearch(): boolean {\n return this.showSearch;\n }\n\n set thyShowSearch(value: boolean) {\n this.showSearch = value;\n this.setSelectControlClass();\n }\n\n @Input()\n get thySelectedOptions(): SelectOptionBase | SelectOptionBase[] {\n return this.selectedOptions;\n }\n\n set thySelectedOptions(value: SelectOptionBase | SelectOptionBase[]) {\n let sameValue = false;\n const oldValue = this.selectedOptions;\n if (this.isMultiple) {\n if (oldValue instanceof Array && value instanceof Array && oldValue.length === value.length) {\n sameValue = value.every((option, index) => option.thyValue === oldValue[index].thyValue);\n }\n } else {\n if (oldValue && value) {\n sameValue = (oldValue as SelectOptionBase).thyValue === (value as SelectOptionBase).thyValue;\n }\n }\n this.selectedOptions = value;\n if (this.panelOpened && this.thyShowSearch) {\n if (!sameValue) {\n Promise.resolve(null).then(() => {\n this.setInputValue('');\n });\n }\n //等待组件渲染好再聚焦\n setTimeout(() => {\n if (this.panelOpened) {\n this.inputElement.nativeElement.focus();\n }\n }, 200);\n }\n }\n\n @Input({ transform: coerceBooleanProperty })\n get thyDisabled(): boolean {\n return this.disabled;\n }\n\n set thyDisabled(value: boolean) {\n this.disabled = value;\n this.setSelectControlClass();\n }\n\n @Input()\n customDisplayTemplate: TemplateRef<any>;\n\n @Input({ transform: coerceBooleanProperty })\n thyAllowClear = false;\n\n @Input()\n thyPlaceholder = '';\n\n @Input()\n get thySize(): SelectControlSize {\n return this.size;\n }\n\n set thySize(value: SelectControlSize) {\n this.size = value;\n this.setSelectControlClass();\n\n if (value === 'xs' || value === 'sm') {\n this.tagSize = 'sm';\n } else if (value === 'lg') {\n this.tagSize = 'lg';\n } else {\n this.tagSize = 'md';\n }\n }\n\n @Input({ transform: numberAttribute }) thyMaxTagCount = 0;\n\n @Input({ transform: coerceBooleanProperty }) thyBorderless = false;\n\n @Input() thyPreset: string = '';\n\n @Output()\n thyOnSearch = new EventEmitter<string>();\n\n @Output()\n public thyOnRemove = new EventEmitter<{ item: SelectOptionBase; $eventOrigin: Event }>();\n\n @Output()\n public thyOnClear = new EventEmitter<Event>();\n\n @Output()\n public thyOnBlur = new EventEmitter<Event>();\n\n @ViewChild('inputElement')\n inputElement: ElementRef;\n\n get selectedValueStyle(): { [key: string]: string } {\n let showSelectedValue = false;\n if (this.showSearch) {\n if (this.panelOpened) {\n showSelectedValue = !(this.isComposing || this.inputValue);\n } else {\n showSelectedValue = true;\n }\n } else {\n showSelectedValue = true;\n }\n return { display: showSelectedValue ? 'flex' : 'none' };\n }\n\n get placeholderStyle(): { [key: string]: string } {\n let placeholder = true;\n if (this.isSelectedValue) {\n placeholder = false;\n }\n if (!this.thyPlaceholder) {\n placeholder = false;\n }\n if (this.isComposing || this.inputValue) {\n placeholder = false;\n }\n return { display: placeholder ? 'block' : 'none' };\n }\n\n get selectedValue(): any {\n return this.thySelectedOptions;\n }\n\n get multipleSelectedValue(): any {\n return this.thySelectedOptions;\n }\n\n get maxSelectedTags() {\n if (this.thyMaxTagCount > 0 && this.thySelectedOptions instanceof Array && this.thySelectedOptions.length > this.thyMaxTagCount) {\n return this.thySelectedOptions.slice(0, this.thyMaxTagCount - 1);\n }\n return this.thySelectedOptions as SelectOptionBase[];\n }\n\n get showClearIcon(): boolean {\n return this.thyAllowClear && this.isSelectedValue;\n }\n\n get isSelectedValue(): boolean {\n return (\n (!this.isMultiple && !isUndefinedOrNull(this.thySelectedOptions)) ||\n (this.isMultiple && (<SelectOptionBase[]>this.thySelectedOptions).length > 0)\n );\n }\n\n constructor(private renderer: Renderer2) {}\n\n ngOnInit() {\n this.setSelectControlClass();\n }\n\n setSelectControlClass() {\n const modeType = this.isMultiple ? 'multiple' : 'single';\n const selectControlClass = {\n [`form-control`]: true,\n [`form-control-${this.thySize}`]: !!this.thySize,\n [`form-control-custom`]: true,\n [`select-control`]: true,\n [`select-control-${modeType}`]: true,\n [`select-control-show-search`]: this.showSearch,\n [`panel-is-opened`]: this.panelOpened,\n [`disabled`]: this.disabled\n };\n this.hostRenderer.updateClassByMap(selectControlClass);\n this.searchInputControlClass = {\n [`form-control`]: true,\n [`form-control-${this.thySize}`]: !!this.thySize,\n [`search-input-field`]: true,\n [`hidden`]: !this.thyShowSearch\n };\n }\n\n setInputValue(value: string) {\n if (value !== this.inputValue) {\n this.inputValue = value;\n this.updateWidth();\n this.thyOnSearch.emit(this.inputValue);\n }\n }\n\n handleBackspace(event: Event) {\n if ((event as KeyboardEvent).isComposing) {\n return;\n }\n if (this.inputValue.length === 0 && this.selectedOptions instanceof Array) {\n if (this.selectedOptions.length > 0) {\n this.removeHandle(this.selectedOptions[this.selectedOptions.length - 1], event);\n }\n }\n }\n\n updateWidth() {\n if (this.isMultiple && this.thyShowSearch) {\n if (this.inputValue || this.isComposing) {\n this.renderer.setStyle(this.inputElement.nativeElement, 'width', `${this.inputElement.nativeElement.scrollWidth}px`);\n } else {\n this.renderer.removeStyle(this.inputElement.nativeElement, 'width');\n }\n }\n }\n\n removeHandle(item: SelectOptionBase, $event: Event) {\n this.thyOnRemove.emit({ item: item, $eventOrigin: $event });\n }\n\n clearHandle($event: Event) {\n this.thyOnClear.emit($event);\n }\n\n trackValue(_index: number, option: SelectOptionBase): any {\n return option.thyValue;\n }\n\n onBlur(event: Event) {\n this.thyOnBlur.emit(event);\n }\n}\n","<ng-template #inputTemplate>\n <input\n #inputElement\n [tabindex]=\"-1\"\n (compositionstart)=\"isComposing = true\"\n (compositionend)=\"isComposing = false\"\n autocomplete=\"something-new\"\n [ngClass]=\"searchInputControlClass\"\n (input)=\"updateWidth()\"\n [ngModel]=\"inputValue\"\n (ngModelChange)=\"setInputValue($event)\"\n (keydown.backspace)=\"handleBackspace($event)\"\n [disabled]=\"thyDisabled\"\n (blur)=\"onBlur($event)\" />\n</ng-template>\n\n<div class=\"select-control-rendered\">\n <div class=\"text-placeholder text-truncate\" *ngIf=\"!isSelectedValue\" [ngStyle]=\"placeholderStyle\">\n {{ thyPlaceholder }}\n </div>\n <ng-container *ngIf=\"isMultiple; else single\">\n <div thyFlex thyWrap=\"wrap\" thyGap=\"4\" thyAlignItems=\"center\" class=\"w-100\">\n <ng-container *ngIf=\"thyPreset === 'tag'; else default\">\n <div thyFlexItem class=\"custom-choice-item text-truncate\" *ngFor=\"let item of maxSelectedTags; trackBy: trackValue\">\n <ng-template\n [ngTemplateOutlet]=\"customDisplayTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item.thyRawValue || item.thyValue || item }\">\n </ng-template>\n <div *ngIf=\"!disabled\" class=\"choice-remove-link ml-1\" (click)=\"removeHandle(item, $event)\">\n <span>\n <thy-icon thyIconName=\"close\" class=\"font-size-sm\"></thy-icon>\n </span>\n </div>\n </div>\n </ng-container>\n\n <ng-template #default>\n <div\n thyFlexItem\n thyTag\n class=\"choice-item\"\n [ngClass]=\"{ disabled: disabled === true }\"\n [thySize]=\"tagSize\"\n *ngFor=\"let item of maxSelectedTags; trackBy: trackValue\">\n <div class=\"text-truncate h-100\">\n <ng-template\n #customDisplay\n [ngTemplateOutlet]=\"customDisplayTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item.thyRawValue || item.thyValue || item }\"></ng-template>\n <ng-container *ngIf=\"!customDisplayTemplate; else customDisplay\">\n {{ item.thyLabelText }}\n </ng-container>\n </div>\n <div *ngIf=\"!disabled\" class=\"choice-remove-link ml-1\" (click)=\"removeHandle(item, $event)\">\n <span>\n <thy-icon thyIconName=\"close\" class=\"font-size-sm\"></thy-icon>\n </span>\n </div>\n </div>\n </ng-template>\n\n <div\n thyFlexItem\n class=\"choice-item max-tag-count-choice\"\n *ngIf=\"thyMaxTagCount && multipleSelectedValue.length > thyMaxTagCount\"\n thyTag\n [thySize]=\"tagSize\"\n [ngClass]=\"{ disabled: disabled === true }\">\n <div class=\"text-truncate\">+{{ multipleSelectedValue.length - thyMaxTagCount + 1 }}...</div>\n </div>\n <div thyFlexItem class=\"select-control-search\">\n <ng-template [ngTemplateOutlet]=\"inputTemplate\"></ng-template>\n </div>\n </div>\n </ng-container>\n <ng-template #single>\n <ng-container *ngIf=\"isSelectedValue\">\n <div class=\"selected-value text-truncate\" [ngStyle]=\"selectedValueStyle\">\n <ng-template\n #customDisplay\n [ngTemplateOutlet]=\"customDisplayTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: selectedValue.thyRawValue || selectedValue.thyValue || selectedValue\n }\"></ng-template>\n <ng-container *ngIf=\"!customDisplayTemplate; else customDisplay\">\n <span class=\"text-truncate\">{{ selectedValue?.thyLabelText }}</span>\n </ng-container>\n </div>\n </ng-container>\n <div class=\"select-control-search\">\n <ng-template [ngTemplateOutlet]=\"inputTemplate\"></ng-template>\n </div>\n </ng-template>\n</div>\n<span class=\"select-control-arrow\">\n <thy-icon thyIconName=\"angle-down\" class=\"font-size-base\"></thy-icon>\n</span>\n<span class=\"select-control-clear remove-link\" *ngIf=\"showClearIcon\" (click)=\"clearHandle($event)\">\n <thy-icon class=\"remove-link-icon font-size-base\" thyIconName=\"close-circle-bold-fill\"></thy-icon>\n</span>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyTagModule } from 'ngx-tethys/tag';\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { ThySelectControl } from './select-control/select-control.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, ThyIconModule, ThyTagModule, ThySelectControl],\n exports: [ThySelectControl]\n})\nexport class ThySelectCommonModule {}\n","import { InjectionToken } from '@angular/core';\nimport { ThySelectOptionGroup } from './group/option-group.component';\nimport { ThyListLayout, ThyListOption } from './list-option/list-option.component';\n\nexport interface IThyOptionParentComponent {\n isMultiple: boolean;\n}\n\nexport interface IThyOptionGroupComponent {\n hidden: boolean;\n}\n\nexport interface IThyListOptionParentComponent {\n multiple?: boolean;\n layout?: ThyListLayout;\n // 选择,取消选择 option\n toggleOption(option: ThyListOption, event?: Event): void;\n // 设置当前选项为激活状态,即 hover 状态\n setActiveOption(option: ThyListOption, event?: Event): void;\n // 滚动到当前的选项\n scrollIntoView(option: ThyListOption): void;\n isSelected(option: ThyListOption): boolean;\n}\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const THY_OPTION_PARENT_COMPONENT = new InjectionToken<IThyOptionParentComponent>('THY_OPTION_PARENT_COMPONENT');\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const THY_OPTION_GROUP_COMPONENT = new InjectionToken<ThySelectOptionGroup>('THY_OPTION_GROUP_COMPONENT');\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const THY_LIST_OPTION_PARENT_COMPONENT = new InjectionToken<IThyListOptionParentComponent>('THY_LIST_OPTION_PARENT_COMPONENT');\n","import { Component, Input, HostBinding, ElementRef, ChangeDetectorRef, Inject, HostListener, Optional } from '@angular/core';\nimport { Highlightable } from '@angular/cdk/a11y';\nimport { IThyListOptionParentComponent, THY_LIST_OPTION_PARENT_COMPONENT } from '../option.token';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgIf } from '@angular/common';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nlet _uniqueIdCounter = 0;\n\nexport type ThyListLayout = 'list' | 'grid';\n\n/**\n * @private\n * @order 30\n */\n@Component({\n selector: 'thy-list-option,[thy-list-option]',\n templateUrl: './list-option.component.html',\n standalone: true,\n imports: [NgIf, ThyIcon]\n})\nexport class ThyListOption implements Highlightable {\n @HostBinding(`class.thy-list-option`)\n get _isListOption() {\n return this.parentSelectionList.layout === 'list';\n }\n\n @HostBinding(`class.thy-grid-option`)\n get _parentLayout() {\n return this.parentSelectionList.layout === 'grid';\n }\n\n @HostBinding(`attr.role`) _role = 'option';\n\n @HostBinding(`attr.tabindex`) _tabIndex = -1;\n\n @Input() id = `thy-list-option-${_uniqueIdCounter++}`;\n\n @Input() thyValue: any;\n\n @Input({ transform: coerceBooleanProperty })\n set thyDisabled(value: boolean) {\n this.disabled = value;\n }\n\n @HostBinding(`class.disabled`) disabled?: boolean;\n\n /** Whether the option is selected. */\n @HostBinding(`class.active`)\n get selected() {\n return this.parentSelectionList.isSelected(this);\n }\n\n constructor(\n public element: ElementRef<HTMLElement>,\n private changeDetector: ChangeDetectorRef,\n /** @docs-private */\n @Optional() @Inject(THY_LIST_OPTION_PARENT_COMPONENT) public parentSelectionList: IThyListOptionParentComponent\n ) {}\n\n @HostListener('click', ['$event'])\n onClick(event: Event) {\n if (this.parentSelectionList.multiple || !this.parentSelectionList.isSelected(this)) {\n this.parentSelectionList.toggleOption(this, event);\n this.parentSelectionList.setActiveOption(this);\n }\n }\n\n // @HostListener('focus', ['$event'])\n // onFocus(event: Event) {\n // this.parentSelectionList.setFocusedOption(this, event);\n // }\n\n /** Allows for programmatic focusing of the option. */\n // focus(origin?: FocusOrigin): void {\n // this.element.nativeElement.focus();\n // }\n\n setActiveStyles(): void {\n this.element.nativeElement.classList.add('hover');\n this.parentSelectionList.scrollIntoView(this);\n }\n\n setInactiveStyles(): void {\n this.element.nativeElement.classList.remove('hover');\n }\n\n /**\n * Returns the list item's text label. Implemented as a part of the FocusKeyManager.\n * @docs-private\n */\n getLabel() {\n return '';\n }\n}\n","<ng-content></ng-content>\n<span class=\"checked-icon\" *ngIf=\"parentSelectionList.multiple && parentSelectionList.layout === 'list'\">\n <thy-icon thyIconName=\"check\"></thy-icon>\n</span>\n<span *ngIf=\"parentSelectionList.layout === 'grid'\" class=\"checked-icon\">\n <thy-icon thyIconName=\"check-circle-fill\"></thy-icon>\n</span>\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\nimport { ThyCanDisable, mixinDisabled, ThyCanDisableCtor, MixinBase } from 'ngx-tethys/core';\n\nconst _MixinBase: ThyCanDisableCtor & typeof MixinBase = mixinDisabled(MixinBase);\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-list-option-group,[thy-list-option-group]',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyOptionGroup extends _MixinBase implements ThyCanDisable {\n set thyDisabled(value: any) {\n this.thyDisabled = value;\n }\n}\n","export abstract class SelectOptionBase {\n thyLabelText: string;\n thyRawValue: any;\n thyValue: any;\n}\n","import {\n Component,\n Input,\n TemplateRef,\n ViewChild,\n ChangeDetectionStrategy,\n HostBinding,\n HostListener,\n ElementRef,\n ChangeDetectorRef,\n EventEmitter,\n OnDestroy,\n Output,\n Inject,\n Optional\n} from '@angular/core';\nimport { Highlightable } from '@angular/cdk/a11y';\nimport { SelectOptionBase } from './select-option-base';\nimport { ENTER, SPACE, coerceBooleanProperty, hasModifierKey } from 'ngx-tethys/util';\nimport {\n IThyOptionGroupComponent,\n IThyOptionParentComponent,\n THY_OPTION_GROUP_COMPONENT,\n THY_OPTION_PARENT_COMPONENT\n} from './option.token';\nimport { NgIf } from '@angular/common';\nimport { ThyIcon } from 'ngx-tethys/icon';\n\nexport class ThyOptionSelectionChangeEvent {\n constructor(public option: ThyOption, public isUserInput = false) {}\n}\n\nexport class ThyOptionVisibleChangeEvent {\n option: ThyOption;\n}\n\n/**\n * @private\n * @order 20\n */\n@Component({\n selector: 'thy-option',\n templateUrl: './option.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [NgIf, ThyIcon]\n})\nexport class ThyOption extends SelectOptionBase implements OnDestroy, Highlightable {\n private _selected = false;\n private _hidden = false;\n private _disabled = false;\n\n @Input() thyValue: any;\n\n @Input() thyRawValue: any;\n\n @Input() thyLabelText: string;\n\n @Input() thyShowOptionCustom: boolean;\n\n @Input() thySearchKey: string;\n\n @HostBinding('class.thy-option-item') _isOptionItem = true;\n\n @ViewChild(TemplateRef, { static: true }) template: TemplateRef<any>;\n\n @Input({ transform: coerceBooleanProperty })\n @HostBinding(`class.disabled`)\n set thyDisabled(value: boolean) {\n this._disabled = value;\n }\n\n get thyDisabled(): boolean {\n return this._disabled;\n }\n\n get disabled(): boolean {\n return this.hidden || this._disabled;\n }\n\n @HostBinding('class.hidden')\n get hidden(): boolean {\n return this._hidden;\n }\n\n @HostBinding('attr.tabindex')\n get tabIndex(): string {\n return this.disabled ? '-1' : '0';\n }\n\n @HostBinding(`class.active`)\n get selected(): boolean {\n return this._selected;\n }\n\n @Output() readonly selectionChange: EventEmitter<ThyOptionSelectionChangeEvent> = new EventEmitter();\n @Output() readonly visibleChange: EventEmitter<ThyOptionVisibleChangeEvent> = new EventEmitter();\n\n constructor(\n public element: ElementRef<HTMLElement>,\n @Optional() @Inject(THY_OPTION_PARENT_COMPONENT) public parent: IThyOptionParentComponent,\n @Optional() @Inject(THY_OPTION_GROUP_COMPONENT) public group: IThyOptionGroupComponent,\n private cdr: ChangeDetectorRef\n ) {\n super();\n }\n\n getHostElement(): HTMLElement {\n return this.element.nativeElement;\n }\n\n @HostListener('click', ['$event'])\n onClick(event: Event) {\n this.selectViaInteraction();\n }\n\n @HostListener('keydown', ['$event'])\n handleKeydown(event: KeyboardEvent): void {\n if ((event.keyCode === ENTER || event.keyCode === SPACE) && !hasModifierKey(event)) {\n this.selectViaInteraction();\n event.preventDefault();\n }\n }\n\n selectViaInteraction(): void {\n if (!this.disabled) {\n this._selected = this.parent.isMultiple ? !this._selected : true;\n this.cdr.markForCheck();\n this.emitSelectionChangeEvent(true);\n }\n }\n\n select(event?: Event): void {\n if (!this.disabled) {\n if (!this._selected) {\n this._selected = true;\n this.emitSelectionChangeEvent();\n this.cdr.markForCheck();\n }\n }\n }\n\n deselect(): void {\n if (this._selected || this.disabled) {\n this._selected = false;\n this.emitSelectionChangeEvent();\n this.cdr.markForCheck();\n }\n }\n\n hideOption() {\n if (!this._hidden) {\n this._hidden = true;\n this.visibleChange.emit({ option: this });\n this.cdr.markForCheck();\n }\n }\n\n showOption() {\n if (this._hidden) {\n this._hidden = false;\n this.visibleChange.emit({ option: this });\n this.cdr.markForCheck();\n }\n }\n\n matchSearchText(searchText: string): boolean {\n if (this.thySearchKey) {\n if (this.thySearchKey.toLowerCase().indexOf(searchText.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n } else {\n if (this.thyLabelText.toLowerCase().indexOf(searchText.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n }\n\n setActiveStyles(): void {\n this.getHostElement().classList.add('hover');\n this.cdr.markForCheck();\n }\n\n setInactiveStyles(): void {\n this.getHostElement().classList.remove('hover');\n this.cdr.markForCheck();\n }\n\n getLabel(): string {\n return '';\n }\n\n private emitSelectionChangeEvent(isUserInput = false): void {\n this.selectionChange.emit(new ThyOptionSelectionChangeEvent(this, isUserInput));\n }\n\n ngOnDestroy() {}\n}\n","<ng-container *ngIf=\"thyShowOptionCustom; else defaultOption\">\n <ng-content></ng-content>\n <thy-icon class=\"checked-icon\" thyIconName=\"check\"></thy-icon>\n</ng-container>\n<ng-template #defaultOption>\n <span class=\"text-truncate\">{{ thyLabelText }}</span>\n <thy-icon class=\"checked-icon\" thyIconName=\"check\"></thy-icon>\n</ng-template>\n","import {\n Component,\n HostBinding,\n Input,\n ContentChildren,\n QueryList,\n NgZone,\n OnDestroy,\n AfterContentInit,\n ChangeDetectorRef\n} from '@angular/core';\nimport { Observable, defer, Subject, merge } from 'rxjs';\nimport { ThyOptionVisibleChangeEvent, ThyOption } from '../option.component';\nimport { take, switchMap, startWith, takeUntil, debounceTime, map } from 'rxjs/operators';\nimport { THY_OPTION_GROUP_COMPONENT } from '../option.token';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-option-group',\n templateUrl: './option-group.component.html',\n providers: [\n {\n provide: THY_OPTION_GROUP_COMPONENT,\n useExisting: ThySelectOptionGroup\n }\n ],\n standalone: true\n})\nexport class ThySelectOptionGroup implements OnDestroy, AfterContentInit {\n _hidden = false;\n @Input({ transform: coerceBooleanProperty })\n @HostBinding(`class.disabled`)\n thyDisabled: boolean;\n\n @HostBinding('class.thy-option-item-group') _isOptionGroup = true;\n\n @HostBinding('class.thy-select-option-group-hidden')\n get hidden(): boolean {\n return this._hidden;\n }\n\n @Input() thyGroupLabel: string;\n\n @ContentChildren(ThyOption) options: QueryList<ThyOption>;\n\n _destroy$: Subject<void> = new Subject<void>();\n\n optionVisibleChanges: Observable<ThyOptionVisibleChangeEvent> = defer(() => {\n if (this.options) {\n return merge(...this.options.map(option => option.visibleChange));\n }\n return this._ngZone.onStable.asObservable().pipe(\n take(1),\n switchMap(() => this.optionVisibleChanges)\n );\n }) as Observable<ThyOptionVisibleChangeEvent>;\n\n constructor(private _ngZone: NgZone, private cdr: ChangeDetectorRef) {}\n\n ngAfterContentInit() {\n this.options.changes.pipe(startWith(null), takeUntil(this._destroy$)).subscribe(() => {\n this._resetOptions();\n });\n }\n\n _resetOptions() {\n const changedOrDestroyed$ = merge(this.options.changes, this._destroy$);\n merge(...this.options.map(option => option.visibleChange))\n .pipe(\n takeUntil(changedOrDestroyed$),\n debounceTime(10),\n map((event: ThyOptionVisibleChangeEvent) => {\n const hasOption = this.options.find(option => {\n if (!option.hidden) {\n return true;\n }\n });\n if (hasOption) {\n return false;\n } else {\n return true;\n }\n })\n )\n .subscribe((data: boolean) => {\n this._hidden = data;\n this.cdr.markForCheck();\n });\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n }\n}\n","<span class=\"group-name text-truncate\">{{ thyGroupLabel }}</span>\n<ng-content></ng-content>\n","import { ChangeDetectionStrategy, Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'thy-options-container',\n template: `\n <ng-template #options>\n <ng-content></ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyOptionsContainer implements OnInit {\n @ViewChild('options') optionsTemplate: TemplateRef<any>;\n\n constructor() {}\n\n ngOnInit(): void {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ThyListOption } from './list-option/list-option.component';\nimport { ThyOptionGroup } from './option-group.component';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyOption } from './option.component';\nimport { ThySelectOptionGroup } from './group/option-group.component';\nimport { ThyOptionsContainer } from './options-container.component';\n\n@NgModule({\n imports: [CommonModule, ThyIconModule, ThyListOption, ThyOptionGroup, ThyOption, ThySelectOptionGroup, ThyOptionsContainer],\n exports: [ThyListOption, ThyOptionGroup, ThyOption, ThySelectOptionGroup, ThyOptionsContainer]\n})\nexport class ThyOptionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-shared.mjs","sources":["../../../src/shared/ng-transclude.directive.ts","../../../src/shared/directives/thy-autofocus.directive.ts","../../../src/shared/directives/thy-enter.directive.ts","../../../src/shared/directives/thy-ctrl-enter.directive.ts","../../../src/shared/directives/thy-show.ts","../../../src/shared/directives/thy-stop-propagation.directive.ts","../../../src/shared/directives/thy-contextmenu.directive.ts","../../../src/shared/directives/thy-scroll.directive.ts","../../../src/shared/directives/thy-drag-drop.directive.ts","../../../src/shared/directives/string-or-template-outlet.directive.ts","../../../src/shared/directives/view-outlet.directive.ts","../../../src/shared/shared.module.ts","../../../src/shared/base-form-check.component.ts","../../../src/shared/select/select-control/select-control.component.ts","../../../src/shared/select/select-control/select-control.component.html","../../../src/shared/select/module.ts","../../../src/shared/option/option.token.ts","../../../src/shared/option/list-option/list-option.component.ts","../../../src/shared/option/list-option/list-option.component.html","../../../src/shared/option/option-group.component.ts","../../../src/shared/option/select-option-base.ts","../../../src/shared/option/option.component.ts","../../../src/shared/option/option.component.html","../../../src/shared/option/group/option-group.component.ts","../../../src/shared/option/group/option-group.component.html","../../../src/shared/option/options-container.component.ts","../../../src/shared/option/module.ts","../../../src/shared/ngx-tethys-shared.ts"],"sourcesContent":["import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\n\n/**\n * @private\n */\n@Directive({\n selector: '[thyTransclude]',\n standalone: true\n})\nexport class ThyTranscludeDirective {\n viewRef: ViewContainerRef;\n\n protected _viewRef: ViewContainerRef;\n protected _ngTransclude: TemplateRef<any>;\n\n @Input()\n set thyTransclude(templateRef: TemplateRef<any>) {\n this._ngTransclude = templateRef;\n if (templateRef) {\n this.viewRef.createEmbeddedView(templateRef);\n }\n }\n\n get thyTransclude(): TemplateRef<any> {\n return this._ngTransclude;\n }\n\n constructor(viewRef: ViewContainerRef) {\n this.viewRef = viewRef;\n }\n}\n","import { Directive, Input, ElementRef, NgZone } from '@angular/core';\nimport { reqAnimFrame } from 'ngx-tethys/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n/**\n * 自动聚焦指令\n * @name input[thyAutofocus],textarea[thyAutofocus]\n */\n@Directive({\n selector: 'input[thyAutofocus],textarea[thyAutofocus]',\n standalone: true\n})\nexport class ThyAutofocusDirective {\n // 自动选择,用于只读的 input 输入框,方便复制粘贴\n private _autoSelect = false;\n\n /**\n * 是否自动聚焦\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyAutofocus(value: boolean) {\n if (value) {\n // Note: this is being run outside of the Angular zone because `element.focus()` doesn't require\n // running change detection.\n this.ngZone.runOutsideAngular(() =>\n // Note: `element.focus()` causes re-layout and this may lead to frame drop on slower devices.\n // https://gist.github.com/paulirish/5d52fb081b3570c81e3a#setting-focus\n // `setTimeout` is a macrotask and macrotasks are executed within the current rendering frame.\n // Animation tasks are executed within the next rendering frame.\n reqAnimFrame(() => {\n this.elementRef.nativeElement.focus();\n if (this._autoSelect && this.elementRef.nativeElement.select) {\n this.elementRef.nativeElement.select();\n }\n })\n );\n }\n }\n\n /**\n * 是否自动选择\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyAutoSelect(value: boolean) {\n this._autoSelect = value;\n }\n\n constructor(\n private elementRef: ElementRef,\n private ngZone: NgZone\n ) {}\n}\n","import { Directive, Output, EventEmitter, OnInit, NgZone, ElementRef, Renderer2, OnDestroy } from '@angular/core';\nimport { keycodes } from 'ngx-tethys/util';\n\n/**\n * 与 (keydown.enter) 区别是支持组合键,当按 Ctrl + Enter 或者 Command + Enter 也会触发\n * @name thyEnter\n */\n@Directive({\n selector: '[thyEnter]',\n standalone: true\n})\nexport class ThyEnterDirective implements OnInit, OnDestroy {\n @Output() thyEnter = new EventEmitter();\n\n onKeydown = (event: KeyboardEvent) => {\n const keyCode = event.which || event.keyCode;\n if (keyCode === keycodes.ENTER) {\n this.ngZone.run(() => {\n this.thyEnter.emit(event);\n });\n }\n };\n\n private removeKeydownListenerFn: VoidFunction;\n\n constructor(\n private ngZone: NgZone,\n private elementRef: ElementRef,\n private renderer: Renderer2\n ) {}\n\n ngOnInit(): void {\n this.ngZone.runOutsideAngular(() => {\n this.removeKeydownListenerFn = this.renderer.listen(this.elementRef.nativeElement, 'keydown', this.onKeydown);\n });\n }\n\n ngOnDestroy(): void {\n this.removeKeydownListenerFn();\n }\n}\n","import { Directive, Output, ElementRef, EventEmitter, OnInit, NgZone, Renderer2, OnDestroy } from '@angular/core';\nimport { keycodes } from 'ngx-tethys/util';\n\n/**\n * @name thyCtrlEnter\n */\n@Directive({\n selector: '[thyCtrlEnter]',\n standalone: true\n})\nexport class ThyCtrlEnterDirective implements OnInit, OnDestroy {\n @Output() thyCtrlEnter = new EventEmitter();\n\n private removeKeydownListenerFn: VoidFunction;\n\n constructor(\n private ngZone: NgZone,\n private elementRef: ElementRef,\n private renderer: Renderer2\n ) {}\n\n onKeydown = (event: KeyboardEvent) => {\n const keyCode = event.which || event.keyCode;\n if ((event.ctrlKey || event.metaKey) && keyCode === keycodes.ENTER) {\n event.preventDefault();\n this.ngZone.run(() => {\n this.thyCtrlEnter.emit(event);\n });\n }\n };\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n this.removeKeydownListenerFn = this.renderer.listen(this.elementRef.nativeElement, 'keydown', this.onKeydown);\n });\n }\n\n ngOnDestroy(): void {\n this.removeKeydownListenerFn();\n }\n}\n","import { Directive, Renderer2, Input, ElementRef, Output, EventEmitter, OnDestroy, NgZone } from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * @name thyShow\n */\n@Directive({\n selector: '[thyShow]',\n standalone: true\n})\nexport class ThyShowDirective implements OnDestroy {\n @Output() thyShowChange = new EventEmitter();\n\n private hostRenderer = useHostRenderer();\n\n private unListenEvent: () => void;\n\n private unListenDocument() {\n if (this.unListenEvent) {\n this.unListenEvent();\n this.unListenEvent = null;\n }\n }\n\n @Input({ transform: coerceBooleanProperty })\n set thyShow(condition: boolean) {\n if (condition) {\n this.hostRenderer.setStyle('display', 'block');\n this.ngZone.runOutsideAngular(() =>\n setTimeout(() => {\n this.unListenEvent = this.renderer.listen('document', 'click', event => {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n if (this.thyShowChange.observers.length) {\n this.ngZone.run(() => this.thyShowChange.emit(false));\n }\n this.unListenDocument();\n }\n });\n })\n );\n } else {\n this.hostRenderer.setStyle('display', 'none');\n this.unListenDocument();\n }\n }\n\n constructor(\n private elementRef: ElementRef<HTMLElement>,\n private renderer: Renderer2,\n private ngZone: NgZone\n ) {}\n\n ngOnDestroy() {\n this.unListenDocument();\n }\n}\n","import { Directive, ElementRef, Input, NgZone, OnDestroy } from '@angular/core';\nimport { fromEvent, Observable, Subject } from 'rxjs';\nimport { startWith, switchMap, takeUntil } from 'rxjs/operators';\n\n/**\n * 阻止事件冒泡\n * @name thyStopPropagation\n */\n@Directive({\n selector: '[thyStopPropagation]',\n standalone: true\n})\nexport class ThyStopPropagationDirective implements OnDestroy {\n private _eventName = 'click';\n\n private _shouldStopPropagation = true;\n\n @Input()\n set thyStopPropagation(value: string | boolean) {\n if (value === false || value === 'false') {\n this._shouldStopPropagation = false;\n } else {\n this._shouldStopPropagation = true;\n if (!value || value === true || value === 'true') {\n this._eventName = 'click';\n } else {\n this._eventName = value as string;\n }\n }\n\n this._changes$.next();\n }\n\n private _changes$ = new Subject<void>();\n private _destroy$ = new Subject<void>();\n\n constructor(_host: ElementRef<HTMLElement>, _ngZone: NgZone) {\n this._changes$\n .pipe(\n // Note: we start the stream immediately since the `thyStopPropagation` setter may never be reached.\n startWith<null, null>(null),\n switchMap(\n () =>\n new Observable<Event>(subscriber =>\n _ngZone.runOutsideAngular(() => fromEvent(_host.nativeElement, this._eventName).subscribe(subscriber))\n )\n ),\n takeUntil(this._destroy$)\n )\n .subscribe(event => {\n if (this._shouldStopPropagation) {\n event.stopPropagation();\n }\n });\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n }\n}\n","import { Directive, Output, ElementRef, EventEmitter, OnInit, NgZone, Renderer2, HostListener, OnDestroy } from '@angular/core';\n\n/**\n * @name thyContextMenu\n */\n@Directive({\n selector: '[thyContextMenu]',\n standalone: true\n})\nexport class ThyContextMenuDirective implements OnInit, OnDestroy {\n @Output() thyContextMenu = new EventEmitter();\n\n private removeContextListenerFn: VoidFunction;\n\n constructor(\n private ngZone: NgZone,\n private elementRef: ElementRef,\n private renderer: Renderer2\n ) {}\n\n rightClick = (event: Event) => {\n event.preventDefault();\n this.ngZone.run(() => {\n this.thyContextMenu.emit(event);\n });\n };\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n this.removeContextListenerFn = this.renderer.listen(this.elementRef.nativeElement, 'contextmenu', this.rightClick);\n });\n }\n\n ngOnDestroy(): void {\n this.removeContextListenerFn();\n }\n}\n","import { Directive, ElementRef, OnInit, NgZone, OnDestroy, Output, EventEmitter, Input } from '@angular/core';\nimport { Subject, Observable, Observer, fromEvent, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { normalizePassiveListenerOptions } from '@angular/cdk/platform';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nconst passiveEventListenerOptions = <AddEventListenerOptions>normalizePassiveListenerOptions({ passive: true });\n\n/**\n * @name thyScroll\n */\n@Directive({\n selector: '[thyScroll]',\n standalone: true\n})\nexport class ThyScrollDirective implements OnInit, OnDestroy {\n private _destroyed = new Subject<void>();\n private _enable = true;\n private _initialled = false;\n private _subscription: Subscription;\n\n private _elementScrolled: Observable<Event> = new Observable((observer: Observer<Event>) =>\n this.ngZone.runOutsideAngular(() =>\n fromEvent(this.elementRef.nativeElement, 'scroll', passiveEventListenerOptions)\n .pipe(takeUntil(this._destroyed))\n .subscribe(observer)\n )\n );\n\n @Input({ transform: coerceBooleanProperty })\n set thyEnable(value: boolean) {\n this._enable = value;\n if (this._initialled) {\n if (this._enable && this._subscription === null) {\n this._subscription = this._elementScrolled.subscribe(() => this.thyOnScrolled.emit(this.elementRef));\n } else {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n }\n }\n\n /**\n * @description\n *\n * Note: the `thyOnScrolled` emits outside of the Angular zone since the `scroll` listener\n * is installed within the `<root>` zone.\n *\n * Consumers need to re-enter the Angular zone theirselves when the change detection is needeed to be run:\n * ```ts\n * @Component({\n * template: '<div thyScroll (thyOnScrolled)=\"onScrolled()\"></div>'\n * })\n * class ThyScrollComponent {\n * onScrolled(): void {\n * console.log(Zone.current); // <root>\n * console.log(NgZone.isInAngularZone()); // false\n * }\n * }\n * ```\n */\n @Output() thyOnScrolled: EventEmitter<ElementRef> = new EventEmitter<ElementRef>();\n\n constructor(\n private elementRef: ElementRef<any>,\n private ngZone: NgZone\n ) {}\n\n ngOnInit() {\n if (this._enable) {\n this._subscription = this._elementScrolled.subscribe(() => this.thyOnScrolled.emit(this.elementRef));\n }\n this._initialled = true;\n }\n\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n getElementRef(): ElementRef<HTMLElement> {\n return this.elementRef;\n }\n}\n","import { Directive, AfterContentInit, ContentChildren, QueryList, OnDestroy } from '@angular/core';\nimport { CdkDrag } from '@angular/cdk/drag-drop';\nimport { merge, Subject } from 'rxjs';\nimport { takeUntil, startWith } from 'rxjs/operators';\n\n/**\n * @private\n */\n@Directive({\n selector: '[thyDragDrop]',\n standalone: true\n})\nexport class ThyDragDropDirective implements AfterContentInit, OnDestroy {\n @ContentChildren(CdkDrag, { descendants: true }) draggables: QueryList<CdkDrag>;\n\n private ngUnsubscribe$ = new Subject<void>();\n\n constructor() {}\n\n ngAfterContentInit() {\n if (this.draggables) {\n this.draggables.changes.pipe(startWith(this.draggables)).subscribe(() => {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n\n this.ngUnsubscribe$ = new Subject();\n merge(\n ...this.draggables.toArray().map(dragRef => {\n return dragRef.started;\n })\n )\n .pipe(takeUntil(this.ngUnsubscribe$))\n .subscribe(() => {\n document.body.classList.add('thy-dragging-body');\n });\n\n merge(...this.draggables.toArray().map(dragRef => dragRef.released))\n .pipe(takeUntil(this.ngUnsubscribe$))\n .subscribe(() => {\n document.body.classList.remove('thy-dragging-body');\n });\n });\n }\n }\n\n ngOnDestroy(): void {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n }\n}\n","import { Directive, EmbeddedViewRef, Input, OnChanges, Renderer2, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { isTemplateRef } from 'ngx-tethys/util';\n\n/**\n * @name thyStringOrTemplateOutlet\n */\n@Directive({\n selector: '[thyStringOrTemplateOutlet]',\n exportAs: 'thyStringOrTemplateOutlet',\n standalone: true\n})\nexport class ThyStringOrTemplateOutletDirective implements OnChanges {\n private viewRef: EmbeddedViewRef<any>;\n\n private textNode: Text;\n\n @Input() thyStringOrTemplateOutletContext: any;\n\n @Input() thyStringOrTemplateOutlet: any | TemplateRef<any>;\n\n constructor(\n private viewContainerRef: ViewContainerRef,\n private renderer: Renderer2\n ) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['thyStringOrTemplateOutlet']) {\n this.updateView();\n } else if (this.viewRef && changes['thyStringOrTemplateOutletContext'] && this.thyStringOrTemplateOutletContext) {\n this.viewRef.context = this.thyStringOrTemplateOutletContext;\n }\n }\n\n private updateView() {\n this.clear();\n\n if (this.thyStringOrTemplateOutlet) {\n if (isTemplateRef(this.thyStringOrTemplateOutlet)) {\n this.viewRef = this.viewContainerRef.createEmbeddedView(\n this.thyStringOrTemplateOutlet,\n this.thyStringOrTemplateOutletContext\n );\n } else {\n this.textNode = this.renderer.createText(this.thyStringOrTemplateOutlet + '');\n const element = this.viewContainerRef.element.nativeElement as HTMLElement;\n this.renderer.insertBefore(element.parentNode, this.textNode, element);\n }\n } else {\n this.viewRef = null;\n }\n }\n\n private clear() {\n this.viewContainerRef.clear();\n if (this.textNode) {\n this.renderer.removeChild(this.textNode.parentNode, this.textNode);\n }\n }\n}\n","import {\n ComponentRef,\n Directive,\n Input,\n ChangeDetectorRef,\n EmbeddedViewRef,\n OnChanges,\n SimpleChanges,\n Type,\n ViewContainerRef,\n TemplateRef,\n KeyValueDiffer,\n KeyValueDiffers\n} from '@angular/core';\nimport { SafeAny } from 'ngx-tethys/types';\n\nfunction hasInput(componentRef: ComponentRef<unknown>, inputKey: string) {\n return componentRef['_tNode'].inputs?.[inputKey];\n}\n\n/**\n * 视图 Outlet 组件,取代 NgComponentOutlet 和 NgTemplateOutlet\n * @name thyViewOutlet\n * @order 10\n */\n@Directive({\n selector: '[thyViewOutlet]',\n standalone: true\n})\nexport class ThyViewOutletDirective implements OnChanges {\n private componentRef: ComponentRef<SafeAny> | undefined;\n\n private embeddedViewRef: EmbeddedViewRef<SafeAny> | undefined;\n\n /**\n * 组件或者模板 TemplateRef\n */\n @Input() thyViewOutlet: Type<SafeAny> | TemplateRef<SafeAny> | null = null;\n\n /**\n * 组件和模板上下文传递数据\n */\n @Input() thyViewOutletContext?: SafeAny;\n\n private keyValueDiffer: KeyValueDiffer<SafeAny, SafeAny>;\n\n constructor(\n private viewContainerRef: ViewContainerRef,\n private keyValueDiffers: KeyValueDiffers\n ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n const { viewContainerRef: viewContainerRef } = this;\n if (changes['thyViewOutlet']) {\n viewContainerRef.clear();\n this.componentRef = undefined;\n this.embeddedViewRef = undefined;\n\n if (this.thyViewOutlet) {\n if (this.thyViewOutlet instanceof TemplateRef) {\n this.embeddedViewRef = viewContainerRef.createEmbeddedView(this.thyViewOutlet, this.thyViewOutletContext);\n } else {\n this.componentRef = viewContainerRef.createComponent(this.thyViewOutlet, {\n index: viewContainerRef.length\n });\n }\n }\n }\n\n if (changes['thyViewOutletContext']) {\n let updatedKeys: string[] = [];\n if (changes['thyViewOutletContext'].isFirstChange()) {\n this.keyValueDiffer = this.keyValueDiffers.find(this.thyViewOutletContext).create();\n this.keyValueDiffer.diff(this.thyViewOutletContext);\n updatedKeys = Object.keys(this.thyViewOutletContext);\n } else {\n const diffChanges = this.keyValueDiffer.diff(this.thyViewOutletContext);\n diffChanges?.forEachChangedItem(item => {\n updatedKeys.push(item.key);\n });\n }\n if (this.componentRef) {\n this.updateContext(this.componentRef.instance, updatedKeys);\n this.componentRef.injector.get(ChangeDetectorRef).markForCheck();\n } else if (this.embeddedViewRef) {\n this.updateContext(this.embeddedViewRef.context, updatedKeys);\n this.embeddedViewRef.markForCheck();\n }\n }\n }\n\n private updateContext(context: SafeAny, updatedKeys: string[]) {\n updatedKeys.forEach(key => {\n // 兼容组件输入属性没有通过 @Input,设置了 @Input 采用 setInput,否则直接赋值,setInput 会触发 Angular 组件的 onChanges\n if (this.componentRef && hasInput(this.componentRef, key)) {\n this.componentRef.setInput(key, this.thyViewOutletContext[key]);\n } else {\n context[key] = this.thyViewOutletContext[key];\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ThyTranscludeDirective } from './ng-transclude.directive';\nimport { ThyAutofocusDirective } from './directives/thy-autofocus.directive';\nimport { ThyEnterDirective } from './directives/thy-enter.directive';\nimport { ThyCtrlEnterDirective } from './directives/thy-ctrl-enter.directive';\nimport { ThyShowDirective } from './directives/thy-show';\nimport { ThyStopPropagationDirective } from './directives/thy-stop-propagation.directive';\nimport { ThyContextMenuDirective } from './directives/thy-contextmenu.directive';\nimport { ThyScrollDirective } from './directives/thy-scroll.directive';\nimport { ThyDragDropDirective } from './directives/thy-drag-drop.directive';\nimport { ThyStringOrTemplateOutletDirective } from './directives/string-or-template-outlet.directive';\nimport { ThyViewOutletDirective } from './directives/view-outlet.directive';\n\n@NgModule({\n imports: [\n ThyViewOutletDirective,\n ThyTranscludeDirective,\n ThyAutofocusDirective,\n ThyEnterDirective,\n ThyCtrlEnterDirective,\n ThyShowDirective,\n ThyStopPropagationDirective,\n ThyContextMenuDirective,\n ThyScrollDirective,\n ThyDragDropDirective,\n ThyStringOrTemplateOutletDirective\n ],\n exports: [\n ThyTranscludeDirective,\n ThyAutofocusDirective,\n ThyEnterDirective,\n ThyCtrlEnterDirective,\n ThyShowDirective,\n ThyStopPropagationDirective,\n ThyContextMenuDirective,\n ThyScrollDirective,\n ThyDragDropDirective,\n ThyStringOrTemplateOutletDirective,\n ThyViewOutletDirective\n ],\n providers: []\n})\nexport class ThySharedModule {}\n","import { ControlValueAccessor } from '@angular/forms';\nimport { HostBinding, Input, ChangeDetectorRef, Directive } from '@angular/core';\nimport { ThyTranslate, TabIndexDisabledControlValueAccessorMixin } from 'ngx-tethys/core';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nconst noop = () => {};\n\n/**\n * @private\n */\n@Directive()\nexport class ThyFormCheckBaseComponent extends TabIndexDisabledControlValueAccessorMixin implements ControlValueAccessor {\n // The internal data model\n _innerValue: boolean = null;\n\n _disabled = false;\n\n private onTouchedCallback: () => void = noop;\n\n private onChangeCallback: (_: any) => void = noop;\n\n _labelText: string;\n\n @HostBinding('class.form-check') _isFormCheck = true;\n\n @HostBinding('class.form-check-inline') _isFormCheckInline = false;\n\n @HostBinding('class.form-check-checked') _isChecked = false;\n\n @HostBinding('class.form-check-inline-no-label-text') get _isNoText() {\n return this._isFormCheckInline && !this._labelText;\n }\n\n /**\n * 是否同一行展示\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n set thyInline(value: boolean) {\n this._isFormCheckInline = value;\n }\n\n /**\n * Label 展示文本\n */\n @Input()\n set thyLabelText(value: string) {\n this._labelText = value;\n }\n\n /**\n * Label 文本多语言 key\n */\n @Input()\n set thyLabelTextTranslateKey(value: string) {\n if (value) {\n this._labelText = this.thyTranslate.instant(value);\n } else {\n this._labelText = '';\n }\n }\n\n disabled = false;\n\n /**\n * 是否禁用\n * @default false\n */\n @Input({ transform: coerceBooleanProperty })\n override set thyDisabled(value: boolean) {\n this.disabled = value;\n this.setDisabledState(this.disabled);\n }\n\n override get thyDisabled() {\n return this.disabled;\n }\n\n writeValue(obj: boolean): void {\n if (obj !== this._innerValue) {\n this._innerValue = obj;\n this._isChecked = !!this._innerValue;\n }\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this._disabled = isDisabled;\n this.markForCheck();\n }\n\n updateValue(value: boolean): void {\n this._innerValue = value;\n this._isChecked = !!this._innerValue;\n this.onChangeCallback(value);\n this.markForCheck();\n }\n\n constructor(\n protected thyTranslate: ThyTranslate,\n protected changeDetectorRef?: ChangeDetectorRef\n ) {\n super();\n }\n\n change() {\n this.updateValue(!this._innerValue);\n }\n\n markForCheck() {\n if (this.changeDetectorRef) {\n this.changeDetectorRef.markForCheck();\n }\n }\n}\n","import { ThyTagSize } from 'ngx-tethys/tag';\nimport { coerceBooleanProperty, isUndefinedOrNull } from 'ngx-tethys/util';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnInit,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n numberAttribute\n} from '@angular/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\n\nimport { NgClass, NgFor, NgIf, NgStyle, NgTemplateOutlet } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ThyGridModule } from 'ngx-tethys/grid';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { ThyTag } from 'ngx-tethys/tag';\nimport { SelectOptionBase } from '../../option/select-option-base';\n\nexport type SelectControlSize = 'xs' | 'sm' | 'md' | 'lg' | '';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-select-control,[thySelectControl]',\n templateUrl: './select-control.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [FormsModule, NgClass, NgIf, NgStyle, NgFor, ThyTag, NgTemplateOutlet, ThyIcon, ThyGridModule],\n host: {\n '[class.select-control-borderless]': 'thyBorderless'\n }\n})\nexport class ThySelectControl implements OnInit {\n inputValue = '';\n\n isComposing = false;\n\n panelOpened = false;\n\n isMultiple = false;\n\n showSearch = false;\n\n disabled = false;\n\n size: SelectControlSize;\n\n selectedOptions: SelectOptionBase | SelectOptionBase[];\n\n searchInputControlClass: { [key: string]: boolean };\n\n tagSize: ThyTagSize;\n\n private hostRenderer = useHostRenderer();\n\n @Input({ transform: coerceBooleanProperty })\n get thyPanelOpened(): boolean {\n return this.panelOpened;\n }\n\n set thyPanelOpened(value: boolean) {\n this.panelOpened = value;\n if (this.panelOpened && this.thyShowSearch) {\n Promise.resolve(null).then(() => {\n this.inputElement.nativeElement.focus();\n });\n }\n if (!this.panelOpened && this.thyShowSearch) {\n Promise.resolve(null).then(() => {\n this.setInputValue('');\n });\n }\n this.setSelectControlClass();\n }\n\n @Input({ transform: coerceBooleanProperty })\n get thyIsMultiple(): boolean {\n return this.isMultiple;\n }\n\n set thyIsMultiple(value: boolean) {\n this.isMultiple = value;\n this.setSelectControlClass();\n }\n\n @Input({ transform: coerceBooleanProperty })\n get thyShowSearch(): boolean {\n return this.showSearch;\n }\n\n set thyShowSearch(value: boolean) {\n this.showSearch = value;\n this.setSelectControlClass();\n }\n\n @Input()\n get thySelectedOptions(): SelectOptionBase | SelectOptionBase[] {\n return this.selectedOptions;\n }\n\n set thySelectedOptions(value: SelectOptionBase | SelectOptionBase[]) {\n let sameValue = false;\n const oldValue = this.selectedOptions;\n if (this.isMultiple) {\n if (oldValue instanceof Array && value instanceof Array && oldValue.length === value.length) {\n sameValue = value.every((option, index) => option.thyValue === oldValue[index].thyValue);\n }\n } else {\n if (oldValue && value) {\n sameValue = (oldValue as SelectOptionBase).thyValue === (value as SelectOptionBase).thyValue;\n }\n }\n this.selectedOptions = value;\n if (this.panelOpened && this.thyShowSearch) {\n if (!sameValue) {\n Promise.resolve(null).then(() => {\n this.setInputValue('');\n });\n }\n //等待组件渲染好再聚焦\n setTimeout(() => {\n if (this.panelOpened) {\n this.inputElement.nativeElement.focus();\n }\n }, 200);\n }\n }\n\n @Input({ transform: coerceBooleanProperty })\n get thyDisabled(): boolean {\n return this.disabled;\n }\n\n set thyDisabled(value: boolean) {\n this.disabled = value;\n this.setSelectControlClass();\n }\n\n @Input()\n customDisplayTemplate: TemplateRef<any>;\n\n @Input({ transform: coerceBooleanProperty })\n thyAllowClear = false;\n\n @Input()\n thyPlaceholder = '';\n\n @Input()\n get thySize(): SelectControlSize {\n return this.size;\n }\n\n set thySize(value: SelectControlSize) {\n this.size = value;\n this.setSelectControlClass();\n\n if (value === 'xs' || value === 'sm') {\n this.tagSize = 'sm';\n } else if (value === 'lg') {\n this.tagSize = 'lg';\n } else {\n this.tagSize = 'md';\n }\n }\n\n @Input({ transform: numberAttribute }) thyMaxTagCount = 0;\n\n @Input({ transform: coerceBooleanProperty }) thyBorderless = false;\n\n @Input() thyPreset: string = '';\n\n @Output()\n thyOnSearch = new EventEmitter<string>();\n\n @Output()\n public thyOnRemove = new EventEmitter<{ item: SelectOptionBase; $eventOrigin: Event }>();\n\n @Output()\n public thyOnClear = new EventEmitter<Event>();\n\n @Output()\n public thyOnBlur = new EventEmitter<Event>();\n\n @ViewChild('inputElement')\n inputElement: ElementRef;\n\n get selectedValueStyle(): { [key: string]: string } {\n let showSelectedValue = false;\n if (this.showSearch) {\n if (this.panelOpened) {\n showSelectedValue = !(this.isComposing || this.inputValue);\n } else {\n showSelectedValue = true;\n }\n } else {\n showSelectedValue = true;\n }\n return { display: showSelectedValue ? 'flex' : 'none' };\n }\n\n get placeholderStyle(): { [key: string]: string } {\n let placeholder = true;\n if (this.isSelectedValue) {\n placeholder = false;\n }\n if (!this.thyPlaceholder) {\n placeholder = false;\n }\n if (this.isComposing || this.inputValue) {\n placeholder = false;\n }\n return { display: placeholder ? 'block' : 'none' };\n }\n\n get selectedValue(): any {\n return this.thySelectedOptions;\n }\n\n get multipleSelectedValue(): any {\n return this.thySelectedOptions;\n }\n\n get maxSelectedTags() {\n if (this.thyMaxTagCount > 0 && this.thySelectedOptions instanceof Array && this.thySelectedOptions.length > this.thyMaxTagCount) {\n return this.thySelectedOptions.slice(0, this.thyMaxTagCount - 1);\n }\n return this.thySelectedOptions as SelectOptionBase[];\n }\n\n get showClearIcon(): boolean {\n return this.thyAllowClear && this.isSelectedValue;\n }\n\n get isSelectedValue(): boolean {\n return (\n (!this.isMultiple && !isUndefinedOrNull(this.thySelectedOptions)) ||\n (this.isMultiple && (<SelectOptionBase[]>this.thySelectedOptions).length > 0)\n );\n }\n\n constructor(private renderer: Renderer2) {}\n\n ngOnInit() {\n this.setSelectControlClass();\n }\n\n setSelectControlClass() {\n const modeType = this.isMultiple ? 'multiple' : 'single';\n const selectControlClass = {\n [`form-control`]: true,\n [`form-control-${this.thySize}`]: !!this.thySize,\n [`form-control-custom`]: true,\n [`select-control`]: true,\n [`select-control-${modeType}`]: true,\n [`select-control-show-search`]: this.showSearch,\n [`panel-is-opened`]: this.panelOpened,\n [`disabled`]: this.disabled\n };\n this.hostRenderer.updateClassByMap(selectControlClass);\n this.searchInputControlClass = {\n [`form-control`]: true,\n [`form-control-${this.thySize}`]: !!this.thySize,\n [`search-input-field`]: true,\n [`hidden`]: !this.thyShowSearch\n };\n }\n\n setInputValue(value: string) {\n if (value !== this.inputValue) {\n this.inputValue = value;\n this.updateWidth();\n this.thyOnSearch.emit(this.inputValue);\n }\n }\n\n handleBackspace(event: Event) {\n if ((event as KeyboardEvent).isComposing) {\n return;\n }\n if (this.inputValue.length === 0 && this.selectedOptions instanceof Array) {\n if (this.selectedOptions.length > 0) {\n this.removeHandle(this.selectedOptions[this.selectedOptions.length - 1], event);\n }\n }\n }\n\n updateWidth() {\n if (this.isMultiple && this.thyShowSearch) {\n if (this.inputValue || this.isComposing) {\n this.renderer.setStyle(this.inputElement.nativeElement, 'width', `${this.inputElement.nativeElement.scrollWidth}px`);\n } else {\n this.renderer.removeStyle(this.inputElement.nativeElement, 'width');\n }\n }\n }\n\n removeHandle(item: SelectOptionBase, $event: Event) {\n this.thyOnRemove.emit({ item: item, $eventOrigin: $event });\n }\n\n clearHandle($event: Event) {\n this.thyOnClear.emit($event);\n }\n\n trackValue(_index: number, option: SelectOptionBase): any {\n return option.thyValue;\n }\n\n onBlur(event: Event) {\n this.thyOnBlur.emit(event);\n }\n}\n","<ng-template #inputTemplate>\n <input\n #inputElement\n [tabindex]=\"-1\"\n (compositionstart)=\"isComposing = true\"\n (compositionend)=\"isComposing = false\"\n autocomplete=\"something-new\"\n [ngClass]=\"searchInputControlClass\"\n (input)=\"updateWidth()\"\n [ngModel]=\"inputValue\"\n (ngModelChange)=\"setInputValue($event)\"\n (keydown.backspace)=\"handleBackspace($event)\"\n [disabled]=\"thyDisabled\"\n (blur)=\"onBlur($event)\" />\n</ng-template>\n\n<div class=\"select-control-rendered\">\n <div class=\"text-placeholder text-truncate\" *ngIf=\"!isSelectedValue\" [ngStyle]=\"placeholderStyle\">\n {{ thyPlaceholder }}\n </div>\n <ng-container *ngIf=\"isMultiple; else single\">\n <div thyFlex thyWrap=\"wrap\" thyGap=\"4\" thyAlignItems=\"center\" class=\"w-100\">\n <ng-container *ngIf=\"thyPreset === 'tag'; else default\">\n <div thyFlexItem class=\"custom-choice-item text-truncate\" *ngFor=\"let item of maxSelectedTags; trackBy: trackValue\">\n <ng-template\n [ngTemplateOutlet]=\"customDisplayTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item.thyRawValue || item.thyValue || item }\">\n </ng-template>\n <div *ngIf=\"!disabled\" class=\"choice-remove-link ml-1\" (click)=\"removeHandle(item, $event)\">\n <span>\n <thy-icon thyIconName=\"close\" class=\"font-size-sm\"></thy-icon>\n </span>\n </div>\n </div>\n </ng-container>\n\n <ng-template #default>\n <div\n thyFlexItem\n thyTag\n class=\"choice-item\"\n [ngClass]=\"{ disabled: disabled === true }\"\n [thySize]=\"tagSize\"\n *ngFor=\"let item of maxSelectedTags; trackBy: trackValue\">\n <div class=\"text-truncate h-100\">\n <ng-template\n #customDisplay\n [ngTemplateOutlet]=\"customDisplayTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item.thyRawValue || item.thyValue || item }\"></ng-template>\n <ng-container *ngIf=\"!customDisplayTemplate; else customDisplay\">\n {{ item.thyLabelText }}\n </ng-container>\n </div>\n <div *ngIf=\"!disabled\" class=\"choice-remove-link ml-1\" (click)=\"removeHandle(item, $event)\">\n <span>\n <thy-icon thyIconName=\"close\" class=\"font-size-sm\"></thy-icon>\n </span>\n </div>\n </div>\n </ng-template>\n\n <div\n thyFlexItem\n class=\"choice-item max-tag-count-choice\"\n *ngIf=\"thyMaxTagCount && multipleSelectedValue.length > thyMaxTagCount\"\n thyTag\n [thySize]=\"tagSize\"\n [ngClass]=\"{ disabled: disabled === true }\">\n <div class=\"text-truncate\">+{{ multipleSelectedValue.length - thyMaxTagCount + 1 }}...</div>\n </div>\n <div thyFlexItem class=\"select-control-search\">\n <ng-template [ngTemplateOutlet]=\"inputTemplate\"></ng-template>\n </div>\n </div>\n </ng-container>\n <ng-template #single>\n <ng-container *ngIf=\"isSelectedValue\">\n <div class=\"selected-value text-truncate\" [ngStyle]=\"selectedValueStyle\">\n <ng-template\n #customDisplay\n [ngTemplateOutlet]=\"customDisplayTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: selectedValue.thyRawValue || selectedValue.thyValue || selectedValue\n }\"></ng-template>\n <ng-container *ngIf=\"!customDisplayTemplate; else customDisplay\">\n <span class=\"text-truncate\">{{ selectedValue?.thyLabelText }}</span>\n </ng-container>\n </div>\n </ng-container>\n <div class=\"select-control-search\">\n <ng-template [ngTemplateOutlet]=\"inputTemplate\"></ng-template>\n </div>\n </ng-template>\n</div>\n<span class=\"select-control-arrow\">\n <thy-icon thyIconName=\"angle-down\" class=\"font-size-base\"></thy-icon>\n</span>\n<span class=\"select-control-clear remove-link\" *ngIf=\"showClearIcon\" (click)=\"clearHandle($event)\">\n <thy-icon class=\"remove-link-icon font-size-base\" thyIconName=\"close-circle-bold-fill\"></thy-icon>\n</span>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyTagModule } from 'ngx-tethys/tag';\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { ThySelectControl } from './select-control/select-control.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, ThyIconModule, ThyTagModule, ThySelectControl],\n exports: [ThySelectControl]\n})\nexport class ThySelectCommonModule {}\n","import { InjectionToken } from '@angular/core';\nimport { ThySelectOptionGroup } from './group/option-group.component';\nimport { ThyListLayout, ThyListOption } from './list-option/list-option.component';\n\nexport interface IThyOptionParentComponent {\n isMultiple: boolean;\n}\n\nexport interface IThyOptionGroupComponent {\n hidden: boolean;\n}\n\nexport interface IThyListOptionParentComponent {\n multiple?: boolean;\n layout?: ThyListLayout;\n // 选择,取消选择 option\n toggleOption(option: ThyListOption, event?: Event): void;\n // 设置当前选项为激活状态,即 hover 状态\n setActiveOption(option: ThyListOption, event?: Event): void;\n // 滚动到当前的选项\n scrollIntoView(option: ThyListOption): void;\n isSelected(option: ThyListOption): boolean;\n}\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const THY_OPTION_PARENT_COMPONENT = new InjectionToken<IThyOptionParentComponent>('THY_OPTION_PARENT_COMPONENT');\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const THY_OPTION_GROUP_COMPONENT = new InjectionToken<ThySelectOptionGroup>('THY_OPTION_GROUP_COMPONENT');\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const THY_LIST_OPTION_PARENT_COMPONENT = new InjectionToken<IThyListOptionParentComponent>('THY_LIST_OPTION_PARENT_COMPONENT');\n","import { Component, Input, HostBinding, ElementRef, ChangeDetectorRef, Inject, HostListener, Optional } from '@angular/core';\nimport { Highlightable } from '@angular/cdk/a11y';\nimport { IThyListOptionParentComponent, THY_LIST_OPTION_PARENT_COMPONENT } from '../option.token';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgIf } from '@angular/common';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nlet _uniqueIdCounter = 0;\n\nexport type ThyListLayout = 'list' | 'grid';\n\n/**\n * @private\n * @order 30\n */\n@Component({\n selector: 'thy-list-option,[thy-list-option]',\n templateUrl: './list-option.component.html',\n standalone: true,\n imports: [NgIf, ThyIcon]\n})\nexport class ThyListOption implements Highlightable {\n @HostBinding(`class.thy-list-option`)\n get _isListOption() {\n return this.parentSelectionList.layout === 'list';\n }\n\n @HostBinding(`class.thy-grid-option`)\n get _parentLayout() {\n return this.parentSelectionList.layout === 'grid';\n }\n\n @HostBinding(`attr.role`) _role = 'option';\n\n @HostBinding(`attr.tabindex`) _tabIndex = -1;\n\n @Input() id = `thy-list-option-${_uniqueIdCounter++}`;\n\n @Input() thyValue: any;\n\n @Input({ transform: coerceBooleanProperty })\n set thyDisabled(value: boolean) {\n this.disabled = value;\n }\n\n @HostBinding(`class.disabled`) disabled?: boolean;\n\n /** Whether the option is selected. */\n @HostBinding(`class.active`)\n get selected() {\n return this.parentSelectionList.isSelected(this);\n }\n\n constructor(\n public element: ElementRef<HTMLElement>,\n private changeDetector: ChangeDetectorRef,\n /** @docs-private */\n @Optional() @Inject(THY_LIST_OPTION_PARENT_COMPONENT) public parentSelectionList: IThyListOptionParentComponent\n ) {}\n\n @HostListener('click', ['$event'])\n onClick(event: Event) {\n if (this.parentSelectionList.multiple || !this.parentSelectionList.isSelected(this)) {\n this.parentSelectionList.toggleOption(this, event);\n this.parentSelectionList.setActiveOption(this);\n }\n }\n\n // @HostListener('focus', ['$event'])\n // onFocus(event: Event) {\n // this.parentSelectionList.setFocusedOption(this, event);\n // }\n\n /** Allows for programmatic focusing of the option. */\n // focus(origin?: FocusOrigin): void {\n // this.element.nativeElement.focus();\n // }\n\n setActiveStyles(): void {\n this.element.nativeElement.classList.add('hover');\n this.parentSelectionList.scrollIntoView(this);\n }\n\n setInactiveStyles(): void {\n this.element.nativeElement.classList.remove('hover');\n }\n\n /**\n * Returns the list item's text label. Implemented as a part of the FocusKeyManager.\n * @docs-private\n */\n getLabel() {\n return '';\n }\n}\n","<ng-content></ng-content>\n<span class=\"checked-icon\" *ngIf=\"parentSelectionList.multiple && parentSelectionList.layout === 'list'\">\n <thy-icon thyIconName=\"check\"></thy-icon>\n</span>\n<span *ngIf=\"parentSelectionList.layout === 'grid'\" class=\"checked-icon\">\n <thy-icon thyIconName=\"check-circle-fill\"></thy-icon>\n</span>\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\nimport { ThyCanDisable, mixinDisabled, ThyCanDisableCtor, MixinBase } from 'ngx-tethys/core';\n\nconst _MixinBase: ThyCanDisableCtor & typeof MixinBase = mixinDisabled(MixinBase);\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-list-option-group,[thy-list-option-group]',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyOptionGroup extends _MixinBase implements ThyCanDisable {\n set thyDisabled(value: any) {\n this.thyDisabled = value;\n }\n}\n","export abstract class SelectOptionBase {\n thyLabelText: string;\n thyRawValue: any;\n thyValue: any;\n}\n","import {\n Component,\n Input,\n TemplateRef,\n ViewChild,\n ChangeDetectionStrategy,\n HostBinding,\n HostListener,\n ElementRef,\n ChangeDetectorRef,\n EventEmitter,\n OnDestroy,\n Output,\n Inject,\n Optional\n} from '@angular/core';\nimport { Highlightable } from '@angular/cdk/a11y';\nimport { SelectOptionBase } from './select-option-base';\nimport { ENTER, SPACE, coerceBooleanProperty, hasModifierKey } from 'ngx-tethys/util';\nimport {\n IThyOptionGroupComponent,\n IThyOptionParentComponent,\n THY_OPTION_GROUP_COMPONENT,\n THY_OPTION_PARENT_COMPONENT\n} from './option.token';\nimport { NgIf } from '@angular/common';\nimport { ThyIcon } from 'ngx-tethys/icon';\n\nexport class ThyOptionSelectionChangeEvent {\n constructor(\n public option: ThyOption,\n public isUserInput = false\n ) {}\n}\n\nexport class ThyOptionVisibleChangeEvent {\n option: ThyOption;\n}\n\n/**\n * @private\n * @order 20\n */\n@Component({\n selector: 'thy-option',\n templateUrl: './option.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [NgIf, ThyIcon]\n})\nexport class ThyOption extends SelectOptionBase implements OnDestroy, Highlightable {\n private _selected = false;\n private _hidden = false;\n private _disabled = false;\n\n @Input() thyValue: any;\n\n @Input() thyRawValue: any;\n\n @Input() thyLabelText: string;\n\n @Input() thyShowOptionCustom: boolean;\n\n @Input() thySearchKey: string;\n\n @HostBinding('class.thy-option-item') _isOptionItem = true;\n\n @ViewChild(TemplateRef, { static: true }) template: TemplateRef<any>;\n\n @Input({ transform: coerceBooleanProperty })\n @HostBinding(`class.disabled`)\n set thyDisabled(value: boolean) {\n this._disabled = value;\n }\n\n get thyDisabled(): boolean {\n return this._disabled;\n }\n\n get disabled(): boolean {\n return this.hidden || this._disabled;\n }\n\n @HostBinding('class.hidden')\n get hidden(): boolean {\n return this._hidden;\n }\n\n @HostBinding('attr.tabindex')\n get tabIndex(): string {\n return this.disabled ? '-1' : '0';\n }\n\n @HostBinding(`class.active`)\n get selected(): boolean {\n return this._selected;\n }\n\n @Output() readonly selectionChange: EventEmitter<ThyOptionSelectionChangeEvent> = new EventEmitter();\n @Output() readonly visibleChange: EventEmitter<ThyOptionVisibleChangeEvent> = new EventEmitter();\n\n constructor(\n public element: ElementRef<HTMLElement>,\n @Optional() @Inject(THY_OPTION_PARENT_COMPONENT) public parent: IThyOptionParentComponent,\n @Optional() @Inject(THY_OPTION_GROUP_COMPONENT) public group: IThyOptionGroupComponent,\n private cdr: ChangeDetectorRef\n ) {\n super();\n }\n\n getHostElement(): HTMLElement {\n return this.element.nativeElement;\n }\n\n @HostListener('click', ['$event'])\n onClick(event: Event) {\n this.selectViaInteraction();\n }\n\n @HostListener('keydown', ['$event'])\n handleKeydown(event: KeyboardEvent): void {\n if ((event.keyCode === ENTER || event.keyCode === SPACE) && !hasModifierKey(event)) {\n this.selectViaInteraction();\n event.preventDefault();\n }\n }\n\n selectViaInteraction(): void {\n if (!this.disabled) {\n this._selected = this.parent.isMultiple ? !this._selected : true;\n this.cdr.markForCheck();\n this.emitSelectionChangeEvent(true);\n }\n }\n\n select(event?: Event): void {\n if (!this.disabled) {\n if (!this._selected) {\n this._selected = true;\n this.emitSelectionChangeEvent();\n this.cdr.markForCheck();\n }\n }\n }\n\n deselect(): void {\n if (this._selected || this.disabled) {\n this._selected = false;\n this.emitSelectionChangeEvent();\n this.cdr.markForCheck();\n }\n }\n\n hideOption() {\n if (!this._hidden) {\n this._hidden = true;\n this.visibleChange.emit({ option: this });\n this.cdr.markForCheck();\n }\n }\n\n showOption() {\n if (this._hidden) {\n this._hidden = false;\n this.visibleChange.emit({ option: this });\n this.cdr.markForCheck();\n }\n }\n\n matchSearchText(searchText: string): boolean {\n if (this.thySearchKey) {\n if (this.thySearchKey.toLowerCase().indexOf(searchText.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n } else {\n if (this.thyLabelText.toLowerCase().indexOf(searchText.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n }\n\n setActiveStyles(): void {\n this.getHostElement().classList.add('hover');\n this.cdr.markForCheck();\n }\n\n setInactiveStyles(): void {\n this.getHostElement().classList.remove('hover');\n this.cdr.markForCheck();\n }\n\n getLabel(): string {\n return '';\n }\n\n private emitSelectionChangeEvent(isUserInput = false): void {\n this.selectionChange.emit(new ThyOptionSelectionChangeEvent(this, isUserInput));\n }\n\n ngOnDestroy() {}\n}\n","<ng-container *ngIf=\"thyShowOptionCustom; else defaultOption\">\n <ng-content></ng-content>\n <thy-icon class=\"checked-icon\" thyIconName=\"check\"></thy-icon>\n</ng-container>\n<ng-template #defaultOption>\n <span class=\"text-truncate\">{{ thyLabelText }}</span>\n <thy-icon class=\"checked-icon\" thyIconName=\"check\"></thy-icon>\n</ng-template>\n","import {\n Component,\n HostBinding,\n Input,\n ContentChildren,\n QueryList,\n NgZone,\n OnDestroy,\n AfterContentInit,\n ChangeDetectorRef\n} from '@angular/core';\nimport { Observable, defer, Subject, merge } from 'rxjs';\nimport { ThyOptionVisibleChangeEvent, ThyOption } from '../option.component';\nimport { take, switchMap, startWith, takeUntil, debounceTime, map } from 'rxjs/operators';\nimport { THY_OPTION_GROUP_COMPONENT } from '../option.token';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-option-group',\n templateUrl: './option-group.component.html',\n providers: [\n {\n provide: THY_OPTION_GROUP_COMPONENT,\n useExisting: ThySelectOptionGroup\n }\n ],\n standalone: true\n})\nexport class ThySelectOptionGroup implements OnDestroy, AfterContentInit {\n _hidden = false;\n @Input({ transform: coerceBooleanProperty })\n @HostBinding(`class.disabled`)\n thyDisabled: boolean;\n\n @HostBinding('class.thy-option-item-group') _isOptionGroup = true;\n\n @HostBinding('class.thy-select-option-group-hidden')\n get hidden(): boolean {\n return this._hidden;\n }\n\n @Input() thyGroupLabel: string;\n\n @ContentChildren(ThyOption) options: QueryList<ThyOption>;\n\n _destroy$: Subject<void> = new Subject<void>();\n\n optionVisibleChanges: Observable<ThyOptionVisibleChangeEvent> = defer(() => {\n if (this.options) {\n return merge(...this.options.map(option => option.visibleChange));\n }\n return this._ngZone.onStable.asObservable().pipe(\n take(1),\n switchMap(() => this.optionVisibleChanges)\n );\n }) as Observable<ThyOptionVisibleChangeEvent>;\n\n constructor(\n private _ngZone: NgZone,\n private cdr: ChangeDetectorRef\n ) {}\n\n ngAfterContentInit() {\n this.options.changes.pipe(startWith(null), takeUntil(this._destroy$)).subscribe(() => {\n this._resetOptions();\n });\n }\n\n _resetOptions() {\n const changedOrDestroyed$ = merge(this.options.changes, this._destroy$);\n merge(...this.options.map(option => option.visibleChange))\n .pipe(\n takeUntil(changedOrDestroyed$),\n debounceTime(10),\n map((event: ThyOptionVisibleChangeEvent) => {\n const hasOption = this.options.find(option => {\n if (!option.hidden) {\n return true;\n }\n });\n if (hasOption) {\n return false;\n } else {\n return true;\n }\n })\n )\n .subscribe((data: boolean) => {\n this._hidden = data;\n this.cdr.markForCheck();\n });\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n }\n}\n","<span class=\"group-name text-truncate\">{{ thyGroupLabel }}</span>\n<ng-content></ng-content>\n","import { ChangeDetectionStrategy, Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'thy-options-container',\n template: `\n <ng-template #options>\n <ng-content></ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ThyOptionsContainer implements OnInit {\n @ViewChild('options') optionsTemplate: TemplateRef<any>;\n\n constructor() {}\n\n ngOnInit(): void {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ThyListOption } from './list-option/list-option.component';\nimport { ThyOptionGroup } from './option-group.component';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyOption } from './option.component';\nimport { ThySelectOptionGroup } from './group/option-group.component';\nimport { ThyOptionsContainer } from './options-container.component';\n\n@NgModule({\n imports: [CommonModule, ThyIconModule, ThyListOption, ThyOptionGroup, ThyOption, ThySelectOptionGroup, ThyOptionsContainer],\n exports: [ThyListOption, ThyOptionGroup, ThyOption, ThySelectOptionGroup, ThyOptionsContainer]\n})\nexport class ThyOptionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}