ngx-tethys 18.2.6 → 19.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (950) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/badge/badge.component.d.ts +21 -3
  3. package/cascader/cascader-search-option.component.d.ts +6 -3
  4. package/core/store/store.d.ts +1 -1
  5. package/date-picker/abstract-picker.component.d.ts +1 -1
  6. package/date-picker/abstract-picker.directive.d.ts +1 -1
  7. package/date-picker/lib/calendar/calendar-header.component.d.ts +1 -1
  8. package/date-picker/lib/calendar/calendar-table.component.d.ts +1 -1
  9. package/date-range/date-range.component.d.ts +12 -2
  10. package/divider/divider.component.d.ts +2 -8
  11. package/dropdown/dropdown-menu.component.d.ts +1 -1
  12. package/empty/empty.component.d.ts +1 -4
  13. package/fesm2022/ngx-tethys-action.mjs +12 -12
  14. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  15. package/fesm2022/ngx-tethys-affix.mjs +8 -8
  16. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  17. package/fesm2022/ngx-tethys-alert.mjs +12 -12
  18. package/fesm2022/ngx-tethys-alert.mjs.map +1 -1
  19. package/fesm2022/ngx-tethys-anchor.mjs +11 -13
  20. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  21. package/fesm2022/ngx-tethys-arrow-switcher.mjs +9 -9
  22. package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
  23. package/fesm2022/ngx-tethys-autocomplete.mjs +20 -20
  24. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  25. package/fesm2022/ngx-tethys-avatar.mjs +26 -26
  26. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  27. package/fesm2022/ngx-tethys-back-top.mjs +10 -10
  28. package/fesm2022/ngx-tethys-back-top.mjs.map +1 -1
  29. package/fesm2022/ngx-tethys-badge.mjs +9 -9
  30. package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
  31. package/fesm2022/ngx-tethys-breadcrumb.mjs +13 -15
  32. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  33. package/fesm2022/ngx-tethys-button.mjs +16 -16
  34. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  35. package/fesm2022/ngx-tethys-calendar.mjs +20 -20
  36. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  37. package/fesm2022/ngx-tethys-card.mjs +15 -15
  38. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  39. package/fesm2022/ngx-tethys-carousel.mjs +15 -15
  40. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  41. package/fesm2022/ngx-tethys-cascader.mjs +23 -24
  42. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  43. package/fesm2022/ngx-tethys-checkbox.mjs +9 -9
  44. package/fesm2022/ngx-tethys-checkbox.mjs.map +1 -1
  45. package/fesm2022/ngx-tethys-collapse.mjs +12 -12
  46. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  47. package/fesm2022/ngx-tethys-color-picker.mjs +38 -38
  48. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  49. package/fesm2022/ngx-tethys-comment.mjs +15 -15
  50. package/fesm2022/ngx-tethys-comment.mjs.map +1 -1
  51. package/fesm2022/ngx-tethys-copy.mjs +8 -8
  52. package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
  53. package/fesm2022/ngx-tethys-core.mjs +21 -21
  54. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  55. package/fesm2022/ngx-tethys-date-picker.mjs +141 -141
  56. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  57. package/fesm2022/ngx-tethys-date-range.mjs +14 -14
  58. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  59. package/fesm2022/ngx-tethys-dialog.mjs +27 -28
  60. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  61. package/fesm2022/ngx-tethys-divider.mjs +8 -9
  62. package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
  63. package/fesm2022/ngx-tethys-dot.mjs +8 -8
  64. package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
  65. package/fesm2022/ngx-tethys-drag-drop.mjs +20 -20
  66. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  67. package/fesm2022/ngx-tethys-dropdown.mjs +47 -48
  68. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  69. package/fesm2022/ngx-tethys-empty.mjs +12 -12
  70. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  71. package/fesm2022/ngx-tethys-flexible-text.mjs +8 -8
  72. package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
  73. package/fesm2022/ngx-tethys-form.mjs +44 -44
  74. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  75. package/fesm2022/ngx-tethys-fullscreen.mjs +14 -14
  76. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  77. package/fesm2022/ngx-tethys-grid.mjs +35 -38
  78. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  79. package/fesm2022/ngx-tethys-guider.mjs +18 -18
  80. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  81. package/fesm2022/ngx-tethys-i18n.mjs +23 -3
  82. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  83. package/fesm2022/ngx-tethys-icon.mjs +11 -11
  84. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  85. package/fesm2022/ngx-tethys-image.mjs +19 -19
  86. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  87. package/fesm2022/ngx-tethys-input-number.mjs +11 -11
  88. package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
  89. package/fesm2022/ngx-tethys-input.mjs +23 -23
  90. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  91. package/fesm2022/ngx-tethys-layout.mjs +66 -65
  92. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  93. package/fesm2022/ngx-tethys-list.mjs +19 -19
  94. package/fesm2022/ngx-tethys-list.mjs.map +1 -1
  95. package/fesm2022/ngx-tethys-loading.mjs +9 -9
  96. package/fesm2022/ngx-tethys-loading.mjs.map +1 -1
  97. package/fesm2022/ngx-tethys-mention.mjs +12 -12
  98. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  99. package/fesm2022/ngx-tethys-menu.mjs +29 -29
  100. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  101. package/fesm2022/ngx-tethys-message.mjs +25 -26
  102. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  103. package/fesm2022/ngx-tethys-nav.mjs +24 -25
  104. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  105. package/fesm2022/ngx-tethys-notify.mjs +20 -20
  106. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  107. package/fesm2022/ngx-tethys-pagination.mjs +15 -15
  108. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  109. package/fesm2022/ngx-tethys-popover.mjs +23 -23
  110. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  111. package/fesm2022/ngx-tethys-progress.mjs +17 -17
  112. package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
  113. package/fesm2022/ngx-tethys-property-operation.mjs +12 -12
  114. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  115. package/fesm2022/ngx-tethys-property.mjs +12 -12
  116. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  117. package/fesm2022/ngx-tethys-radio.mjs +15 -15
  118. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  119. package/fesm2022/ngx-tethys-rate.mjs +12 -13
  120. package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
  121. package/fesm2022/ngx-tethys-resizable.mjs +17 -19
  122. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  123. package/fesm2022/ngx-tethys-result.mjs +9 -9
  124. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  125. package/fesm2022/ngx-tethys-segment.mjs +13 -13
  126. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  127. package/fesm2022/ngx-tethys-select.mjs +16 -16
  128. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  129. package/fesm2022/ngx-tethys-shared.mjs +70 -70
  130. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  131. package/fesm2022/ngx-tethys-skeleton.mjs +23 -28
  132. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  133. package/fesm2022/ngx-tethys-slide.mjs +34 -35
  134. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  135. package/fesm2022/ngx-tethys-slider.mjs +9 -9
  136. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  137. package/fesm2022/ngx-tethys-space.mjs +12 -12
  138. package/fesm2022/ngx-tethys-space.mjs.map +1 -1
  139. package/fesm2022/ngx-tethys-statistic.mjs +9 -9
  140. package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
  141. package/fesm2022/ngx-tethys-stepper.mjs +22 -22
  142. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  143. package/fesm2022/ngx-tethys-strength.mjs +8 -8
  144. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  145. package/fesm2022/ngx-tethys-switch.mjs +9 -9
  146. package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
  147. package/fesm2022/ngx-tethys-table.mjs +23 -23
  148. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  149. package/fesm2022/ngx-tethys-tabs.mjs +15 -16
  150. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  151. package/fesm2022/ngx-tethys-tag.mjs +11 -11
  152. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  153. package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
  154. package/fesm2022/ngx-tethys-time-picker.mjs +24 -24
  155. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  156. package/fesm2022/ngx-tethys-timeline.mjs +15 -16
  157. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  158. package/fesm2022/ngx-tethys-tooltip.mjs +16 -16
  159. package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
  160. package/fesm2022/ngx-tethys-transfer.mjs +13 -13
  161. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  162. package/fesm2022/ngx-tethys-tree-select.mjs +13 -13
  163. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  164. package/fesm2022/ngx-tethys-tree.mjs +19 -19
  165. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  166. package/fesm2022/ngx-tethys-typography.mjs +15 -15
  167. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  168. package/fesm2022/ngx-tethys-upload.mjs +17 -17
  169. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  170. package/fesm2022/ngx-tethys-util.mjs +2 -18
  171. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  172. package/fesm2022/ngx-tethys-vote.mjs +9 -9
  173. package/fesm2022/ngx-tethys-vote.mjs.map +1 -1
  174. package/fesm2022/ngx-tethys-watermark.mjs +8 -8
  175. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  176. package/fesm2022/ngx-tethys.mjs +1 -1
  177. package/fesm2022/ngx-tethys.mjs.map +1 -1
  178. package/i18n/i18n.d.ts +6 -1
  179. package/i18n/locales/de-de.d.ts +4 -0
  180. package/i18n/locales/en-us.d.ts +4 -0
  181. package/i18n/locales/ja-jp.d.ts +4 -0
  182. package/i18n/locales/zh-hans.d.ts +4 -0
  183. package/i18n/locales/zh-hant.d.ts +4 -0
  184. package/input/input.component.d.ts +1 -1
  185. package/layout/header.component.d.ts +21 -3
  186. package/layout/sidebar.component.d.ts +8 -42
  187. package/menu/group/menu-group.component.d.ts +6 -30
  188. package/message/abstract/abstract-message-container.component.d.ts +1 -1
  189. package/message/abstract/abstract-message.component.d.ts +1 -1
  190. package/nav/nav.component.d.ts +2 -2
  191. package/package.json +1 -169
  192. package/pagination/pagination.component.d.ts +45 -5
  193. package/property/property-item.component.d.ts +4 -2
  194. package/schematics/dependencies.js +3 -3
  195. package/schematics/ng-add/index.js +7 -3
  196. package/schematics/ng-update/core/complete.js +1 -2
  197. package/schematics/ng-update/migration-collection.json +4 -4
  198. package/schematics/ng-update/{update-18 → update-19}/index.js +4 -5
  199. package/schematics/ng-update/{update-18 → update-19}/index.spec.js +4 -4
  200. package/schematics/testing/get-json-content.js +1 -2
  201. package/schematics/testing/test-app.js +1 -2
  202. package/schematics/testing/test-project.js +1 -2
  203. package/schematics/testing/test-workspace.d.ts +0 -2
  204. package/schematics/testing/test-workspace.js +2 -2
  205. package/schematics/utils/create-tree-compiler-host.js +1 -2
  206. package/schematics/utils/create-tree-ts-parse-config-host.js +2 -2
  207. package/schematics/utils/get-angular-json.js +1 -2
  208. package/schematics/utils/get-project.js +1 -2
  209. package/schematics/utils/get-workspace-tsconfig.js +1 -2
  210. package/schematics/utils/package-config.js +2 -3
  211. package/schematics/utils/update-file.service.js +2 -2
  212. package/schematics/version.d.ts +1 -1
  213. package/schematics/version.js +1 -1
  214. package/shared/base-form-check.component.d.ts +1 -1
  215. package/shared/option/list-option/list-option.component.d.ts +1 -4
  216. package/shared/select/styles/select.mixin.scss +2 -1
  217. package/skeleton/skeleton-rectangle.component.d.ts +1 -4
  218. package/skeleton/stylized/bullet-list.component.d.ts +1 -9
  219. package/styles/bootstrap/utilities/_background.scss +2 -1
  220. package/styles/bootstrap/utilities/_text.scss +1 -1
  221. package/table/table.component.d.ts +1 -1
  222. package/upload/file-select-base.d.ts +1 -1
  223. package/esm2022/action/action.component.mjs +0 -174
  224. package/esm2022/action/action.module.mjs +0 -19
  225. package/esm2022/action/actions.component.mjs +0 -57
  226. package/esm2022/action/index.mjs +0 -4
  227. package/esm2022/action/ngx-tethys-action.mjs +0 -5
  228. package/esm2022/affix/affix.component.mjs +0 -243
  229. package/esm2022/affix/affix.module.mjs +0 -18
  230. package/esm2022/affix/index.mjs +0 -3
  231. package/esm2022/affix/ngx-tethys-affix.mjs +0 -5
  232. package/esm2022/affix/respond-events.mjs +0 -11
  233. package/esm2022/alert/alert.component.mjs +0 -98
  234. package/esm2022/alert/alert.directive.mjs +0 -25
  235. package/esm2022/alert/alert.module.mjs +0 -19
  236. package/esm2022/alert/index.mjs +0 -4
  237. package/esm2022/alert/ngx-tethys-alert.mjs +0 -5
  238. package/esm2022/anchor/anchor-link.component.mjs +0 -106
  239. package/esm2022/anchor/anchor.component.mjs +0 -266
  240. package/esm2022/anchor/anchor.module.mjs +0 -20
  241. package/esm2022/anchor/index.mjs +0 -4
  242. package/esm2022/anchor/ngx-tethys-anchor.mjs +0 -5
  243. package/esm2022/arrow-switcher/arrow-switcher.component.mjs +0 -130
  244. package/esm2022/arrow-switcher/index.mjs +0 -3
  245. package/esm2022/arrow-switcher/module.mjs +0 -21
  246. package/esm2022/arrow-switcher/ngx-tethys-arrow-switcher.mjs +0 -5
  247. package/esm2022/autocomplete/autocomplete.component.mjs +0 -182
  248. package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +0 -275
  249. package/esm2022/autocomplete/index.mjs +0 -8
  250. package/esm2022/autocomplete/module.mjs +0 -67
  251. package/esm2022/autocomplete/ngx-tethys-autocomplete.mjs +0 -5
  252. package/esm2022/autocomplete/overlay/autocomplete-animations.mjs +0 -10
  253. package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +0 -64
  254. package/esm2022/autocomplete/overlay/autocomplete-ref.mjs +0 -18
  255. package/esm2022/autocomplete/overlay/autocomplete.config.mjs +0 -18
  256. package/esm2022/autocomplete/overlay/autocomplete.options.mjs +0 -6
  257. package/esm2022/autocomplete/overlay/autocomplete.service.mjs +0 -127
  258. package/esm2022/avatar/avatar-list/avatar-list.component.mjs +0 -76
  259. package/esm2022/avatar/avatar.component.mjs +0 -179
  260. package/esm2022/avatar/avatar.module.mjs +0 -33
  261. package/esm2022/avatar/avatar.pipe.mjs +0 -91
  262. package/esm2022/avatar/avatar.service.mjs +0 -27
  263. package/esm2022/avatar/index.mjs +0 -6
  264. package/esm2022/avatar/ngx-tethys-avatar.mjs +0 -5
  265. package/esm2022/back-top/back-top.component.mjs +0 -126
  266. package/esm2022/back-top/back-top.module.mjs +0 -18
  267. package/esm2022/back-top/index.mjs +0 -3
  268. package/esm2022/back-top/ngx-tethys-back-top.mjs +0 -5
  269. package/esm2022/badge/badge.component.mjs +0 -238
  270. package/esm2022/badge/badge.module.mjs +0 -18
  271. package/esm2022/badge/index.mjs +0 -3
  272. package/esm2022/badge/ngx-tethys-badge.mjs +0 -5
  273. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +0 -49
  274. package/esm2022/breadcrumb/breadcrumb.component.mjs +0 -115
  275. package/esm2022/breadcrumb/index.mjs +0 -4
  276. package/esm2022/breadcrumb/module.mjs +0 -21
  277. package/esm2022/breadcrumb/ngx-tethys-breadcrumb.mjs +0 -5
  278. package/esm2022/button/button-group.component.mjs +0 -90
  279. package/esm2022/button/button-icon.component.mjs +0 -166
  280. package/esm2022/button/button.component.mjs +0 -216
  281. package/esm2022/button/button.module.mjs +0 -20
  282. package/esm2022/button/index.mjs +0 -5
  283. package/esm2022/button/ngx-tethys-button.mjs +0 -5
  284. package/esm2022/calendar/calendar-cells.mjs +0 -35
  285. package/esm2022/calendar/calendar-header.component.mjs +0 -117
  286. package/esm2022/calendar/calendar.component.mjs +0 -122
  287. package/esm2022/calendar/index.mjs +0 -5
  288. package/esm2022/calendar/module.mjs +0 -63
  289. package/esm2022/calendar/ngx-tethys-calendar.mjs +0 -5
  290. package/esm2022/card/card.component.mjs +0 -48
  291. package/esm2022/card/card.module.mjs +0 -19
  292. package/esm2022/card/content.component.mjs +0 -58
  293. package/esm2022/card/header.component.mjs +0 -42
  294. package/esm2022/card/index.mjs +0 -5
  295. package/esm2022/card/ngx-tethys-card.mjs +0 -5
  296. package/esm2022/carousel/carousel-item.directive.mjs +0 -37
  297. package/esm2022/carousel/carousel.component.mjs +0 -290
  298. package/esm2022/carousel/carousel.service.mjs +0 -74
  299. package/esm2022/carousel/engine/carousel-base.mjs +0 -43
  300. package/esm2022/carousel/engine/carousel-fade.mjs +0 -46
  301. package/esm2022/carousel/engine/carousel-noop.mjs +0 -28
  302. package/esm2022/carousel/engine/carousel-slide.mjs +0 -62
  303. package/esm2022/carousel/engine/index.mjs +0 -5
  304. package/esm2022/carousel/index.mjs +0 -5
  305. package/esm2022/carousel/module.mjs +0 -21
  306. package/esm2022/carousel/ngx-tethys-carousel.mjs +0 -5
  307. package/esm2022/carousel/typings.mjs +0 -2
  308. package/esm2022/cascader/cascader-li.component.mjs +0 -81
  309. package/esm2022/cascader/cascader-search-option.component.mjs +0 -73
  310. package/esm2022/cascader/cascader.component.mjs +0 -768
  311. package/esm2022/cascader/cascader.service.mjs +0 -558
  312. package/esm2022/cascader/index.mjs +0 -5
  313. package/esm2022/cascader/module.mjs +0 -62
  314. package/esm2022/cascader/ngx-tethys-cascader.mjs +0 -5
  315. package/esm2022/cascader/types.mjs +0 -2
  316. package/esm2022/checkbox/checkbox.component.mjs +0 -51
  317. package/esm2022/checkbox/index.mjs +0 -4
  318. package/esm2022/checkbox/module.mjs +0 -18
  319. package/esm2022/checkbox/ngx-tethys-checkbox.mjs +0 -5
  320. package/esm2022/collapse/collapse-item.component.mjs +0 -88
  321. package/esm2022/collapse/collapse.component.mjs +0 -79
  322. package/esm2022/collapse/index.mjs +0 -4
  323. package/esm2022/collapse/module.mjs +0 -22
  324. package/esm2022/collapse/ngx-tethys-collapse.mjs +0 -5
  325. package/esm2022/color-picker/color-picker-custom-panel.component.mjs +0 -38
  326. package/esm2022/color-picker/color-picker-panel.component.mjs +0 -100
  327. package/esm2022/color-picker/color-picker.component.mjs +0 -289
  328. package/esm2022/color-picker/constant.mjs +0 -73
  329. package/esm2022/color-picker/coordinates.directive.mjs +0 -73
  330. package/esm2022/color-picker/helpers/color.class.mjs +0 -281
  331. package/esm2022/color-picker/helpers/colors-table.class.mjs +0 -155
  332. package/esm2022/color-picker/helpers/rgba.class.mjs +0 -34
  333. package/esm2022/color-picker/index.mjs +0 -14
  334. package/esm2022/color-picker/module.mjs +0 -72
  335. package/esm2022/color-picker/ngx-tethys-color-picker.mjs +0 -5
  336. package/esm2022/color-picker/parts/alpha/alpha.component.mjs +0 -64
  337. package/esm2022/color-picker/parts/hue/hue.component.mjs +0 -54
  338. package/esm2022/color-picker/parts/indicator/indicator.component.mjs +0 -26
  339. package/esm2022/color-picker/parts/inputs/inputs.component.mjs +0 -61
  340. package/esm2022/color-picker/parts/saturation/saturation.component.mjs +0 -68
  341. package/esm2022/comment/comment-actions.directive.mjs +0 -19
  342. package/esm2022/comment/comment-content.directive.mjs +0 -19
  343. package/esm2022/comment/comment.component.mjs +0 -30
  344. package/esm2022/comment/comment.module.mjs +0 -41
  345. package/esm2022/comment/index.mjs +0 -5
  346. package/esm2022/comment/ngx-tethys-comment.mjs +0 -5
  347. package/esm2022/copy/copy.directive.mjs +0 -101
  348. package/esm2022/copy/index.mjs +0 -3
  349. package/esm2022/copy/module.mjs +0 -18
  350. package/esm2022/copy/ngx-tethys-copy.mjs +0 -5
  351. package/esm2022/core/animation/animation-consts.mjs +0 -23
  352. package/esm2022/core/animation/collapse.mjs +0 -12
  353. package/esm2022/core/animation/fade.mjs +0 -7
  354. package/esm2022/core/animation/index.mjs +0 -2
  355. package/esm2022/core/animation/public-api.mjs +0 -6
  356. package/esm2022/core/animation/thumb.mjs +0 -12
  357. package/esm2022/core/animation/zoom.mjs +0 -66
  358. package/esm2022/core/behaviors/constructor.mjs +0 -5
  359. package/esm2022/core/behaviors/control-value-accessor.mjs +0 -17
  360. package/esm2022/core/behaviors/decorators.mjs +0 -47
  361. package/esm2022/core/behaviors/disabled.mjs +0 -17
  362. package/esm2022/core/behaviors/focus-control.mjs +0 -31
  363. package/esm2022/core/behaviors/index.mjs +0 -11
  364. package/esm2022/core/behaviors/initialized.mjs +0 -12
  365. package/esm2022/core/behaviors/loading-done.mjs +0 -12
  366. package/esm2022/core/behaviors/mixin.mjs +0 -5
  367. package/esm2022/core/behaviors/tabindex.mjs +0 -21
  368. package/esm2022/core/behaviors/unsubscribe.mjs +0 -23
  369. package/esm2022/core/click-positioner.mjs +0 -36
  370. package/esm2022/core/color/color.mjs +0 -13
  371. package/esm2022/core/color/index.mjs +0 -2
  372. package/esm2022/core/debounce-time.mjs +0 -11
  373. package/esm2022/core/event-dispatchers/index.mjs +0 -2
  374. package/esm2022/core/index.mjs +0 -16
  375. package/esm2022/core/ngx-tethys-core.mjs +0 -5
  376. package/esm2022/core/overlay/abstract-overlay-container.mjs +0 -53
  377. package/esm2022/core/overlay/abstract-overlay-ref.mjs +0 -160
  378. package/esm2022/core/overlay/abstract-overlay.config.mjs +0 -70
  379. package/esm2022/core/overlay/abstract-overlay.service.mjs +0 -158
  380. package/esm2022/core/overlay/index.mjs +0 -10
  381. package/esm2022/core/overlay/interface.mjs +0 -2
  382. package/esm2022/core/overlay/overlay-position-map.mjs +0 -88
  383. package/esm2022/core/overlay/overlay.directive.mjs +0 -175
  384. package/esm2022/core/overlay/portal-directives.mjs +0 -47
  385. package/esm2022/core/overlay/utils.mjs +0 -69
  386. package/esm2022/core/request-animation.mjs +0 -41
  387. package/esm2022/core/scroll-to.service.mjs +0 -33
  388. package/esm2022/core/scroll.mjs +0 -83
  389. package/esm2022/core/spacing/index.mjs +0 -2
  390. package/esm2022/core/spacing/spacing.mjs +0 -17
  391. package/esm2022/core/store/action-state.mjs +0 -11
  392. package/esm2022/core/store/action.mjs +0 -48
  393. package/esm2022/core/store/actions-stream.mjs +0 -2
  394. package/esm2022/core/store/index.mjs +0 -4
  395. package/esm2022/core/store/store.mjs +0 -125
  396. package/esm2022/core/store/types.mjs +0 -6
  397. package/esm2022/core/store/utils.mjs +0 -14
  398. package/esm2022/core/theme/index.mjs +0 -3
  399. package/esm2022/core/theme/store.mjs +0 -42
  400. package/esm2022/core/theme/theme.mjs +0 -9
  401. package/esm2022/core/translate.mjs +0 -22
  402. package/esm2022/core/update-host-class.service.mjs +0 -60
  403. package/esm2022/date-picker/abstract-picker.component.mjs +0 -318
  404. package/esm2022/date-picker/abstract-picker.directive.mjs +0 -218
  405. package/esm2022/date-picker/base-picker.component.mjs +0 -249
  406. package/esm2022/date-picker/date-helper.service.mjs +0 -37
  407. package/esm2022/date-picker/date-picker.component.mjs +0 -41
  408. package/esm2022/date-picker/date-picker.config.mjs +0 -103
  409. package/esm2022/date-picker/date-picker.directive.mjs +0 -39
  410. package/esm2022/date-picker/date-picker.module.mjs +0 -117
  411. package/esm2022/date-picker/date-picker.service.mjs +0 -31
  412. package/esm2022/date-picker/index.mjs +0 -37
  413. package/esm2022/date-picker/inner-types.mjs +0 -2
  414. package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +0 -98
  415. package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +0 -92
  416. package/esm2022/date-picker/lib/calendar/calendar-table.component.mjs +0 -105
  417. package/esm2022/date-picker/lib/date/date-header.component.mjs +0 -35
  418. package/esm2022/date-picker/lib/date/date-table-cell.component.mjs +0 -24
  419. package/esm2022/date-picker/lib/date/date-table.component.mjs +0 -149
  420. package/esm2022/date-picker/lib/date/types.mjs +0 -2
  421. package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +0 -388
  422. package/esm2022/date-picker/lib/decade/decade-header.component.mjs +0 -42
  423. package/esm2022/date-picker/lib/decade/decade-table.component.mjs +0 -81
  424. package/esm2022/date-picker/lib/lib-packer.module.mjs +0 -123
  425. package/esm2022/date-picker/lib/month/month-header.component.mjs +0 -27
  426. package/esm2022/date-picker/lib/month/month-table.component.mjs +0 -97
  427. package/esm2022/date-picker/lib/popups/date-popup.component.mjs +0 -566
  428. package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +0 -196
  429. package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +0 -98
  430. package/esm2022/date-picker/lib/year/year-header.component.mjs +0 -39
  431. package/esm2022/date-picker/lib/year/year-table.component.mjs +0 -100
  432. package/esm2022/date-picker/month-picker.component.mjs +0 -45
  433. package/esm2022/date-picker/ngx-tethys-date-picker.mjs +0 -5
  434. package/esm2022/date-picker/picker.component.mjs +0 -273
  435. package/esm2022/date-picker/picker.pipes.mjs +0 -112
  436. package/esm2022/date-picker/picker.util.mjs +0 -220
  437. package/esm2022/date-picker/picker.validators.mjs +0 -79
  438. package/esm2022/date-picker/quarter-picker.component.mjs +0 -48
  439. package/esm2022/date-picker/range-picker.component.mjs +0 -39
  440. package/esm2022/date-picker/range-picker.directive.mjs +0 -39
  441. package/esm2022/date-picker/standard-types.mjs +0 -2
  442. package/esm2022/date-picker/week-picker.component.mjs +0 -40
  443. package/esm2022/date-picker/year-picker.component.mjs +0 -48
  444. package/esm2022/date-range/date-range.class.mjs +0 -6
  445. package/esm2022/date-range/date-range.component.mjs +0 -255
  446. package/esm2022/date-range/index.mjs +0 -5
  447. package/esm2022/date-range/module.mjs +0 -50
  448. package/esm2022/date-range/ngx-tethys-date-range.mjs +0 -5
  449. package/esm2022/date-range/optional-dates/optional-dates.component.mjs +0 -50
  450. package/esm2022/dialog/body/dialog-body.component.mjs +0 -49
  451. package/esm2022/dialog/confirm/confirm.component.mjs +0 -77
  452. package/esm2022/dialog/confirm/token.mjs +0 -3
  453. package/esm2022/dialog/confirm.config.mjs +0 -29
  454. package/esm2022/dialog/dialog-animations.mjs +0 -19
  455. package/esm2022/dialog/dialog-container.component.mjs +0 -169
  456. package/esm2022/dialog/dialog-ref.mjs +0 -35
  457. package/esm2022/dialog/dialog.config.mjs +0 -62
  458. package/esm2022/dialog/dialog.module.mjs +0 -91
  459. package/esm2022/dialog/dialog.options.mjs +0 -6
  460. package/esm2022/dialog/dialog.service.mjs +0 -145
  461. package/esm2022/dialog/footer/dialog-footer.component.mjs +0 -51
  462. package/esm2022/dialog/header/dialog-header.component.mjs +0 -87
  463. package/esm2022/dialog/index.mjs +0 -12
  464. package/esm2022/dialog/ngx-tethys-dialog.mjs +0 -5
  465. package/esm2022/divider/divider.component.mjs +0 -117
  466. package/esm2022/divider/divider.module.mjs +0 -20
  467. package/esm2022/divider/index.mjs +0 -3
  468. package/esm2022/divider/ngx-tethys-divider.mjs +0 -5
  469. package/esm2022/dot/dot.component.mjs +0 -111
  470. package/esm2022/dot/dot.module.mjs +0 -17
  471. package/esm2022/dot/index.mjs +0 -3
  472. package/esm2022/dot/ngx-tethys-dot.mjs +0 -5
  473. package/esm2022/drag-drop/drag-content.directive.mjs +0 -32
  474. package/esm2022/drag-drop/drag-drop.class.mjs +0 -7
  475. package/esm2022/drag-drop/drag-drop.service.mjs +0 -23
  476. package/esm2022/drag-drop/drag-handle.directive.mjs +0 -43
  477. package/esm2022/drag-drop/drag-ref.mjs +0 -225
  478. package/esm2022/drag-drop/drag.directive.mjs +0 -71
  479. package/esm2022/drag-drop/drop-container.class.mjs +0 -6
  480. package/esm2022/drag-drop/drop-container.directive.mjs +0 -129
  481. package/esm2022/drag-drop/index.mjs +0 -10
  482. package/esm2022/drag-drop/module.mjs +0 -27
  483. package/esm2022/drag-drop/ngx-tethys-drag-drop.mjs +0 -5
  484. package/esm2022/dropdown/dropdown-active.directive.mjs +0 -66
  485. package/esm2022/dropdown/dropdown-menu-item.directive.mjs +0 -210
  486. package/esm2022/dropdown/dropdown-menu.component.mjs +0 -156
  487. package/esm2022/dropdown/dropdown-submenu.component.mjs +0 -83
  488. package/esm2022/dropdown/dropdown.directive.mjs +0 -189
  489. package/esm2022/dropdown/index.mjs +0 -7
  490. package/esm2022/dropdown/module.mjs +0 -79
  491. package/esm2022/dropdown/ngx-tethys-dropdown.mjs +0 -5
  492. package/esm2022/empty/empty.component.mjs +0 -183
  493. package/esm2022/empty/empty.config.mjs +0 -17
  494. package/esm2022/empty/empty.module.mjs +0 -21
  495. package/esm2022/empty/index.mjs +0 -4
  496. package/esm2022/empty/ngx-tethys-empty.mjs +0 -5
  497. package/esm2022/empty/svgs.mjs +0 -207
  498. package/esm2022/flexible-text/flexible-text.component.mjs +0 -157
  499. package/esm2022/flexible-text/flexible-text.module.mjs +0 -19
  500. package/esm2022/flexible-text/index.mjs +0 -3
  501. package/esm2022/flexible-text/ngx-tethys-flexible-text.mjs +0 -5
  502. package/esm2022/form/form-group-error/form-group-error.component.mjs +0 -53
  503. package/esm2022/form/form-group-label.directive.mjs +0 -49
  504. package/esm2022/form/form-group.component.mjs +0 -145
  505. package/esm2022/form/form-submit.directive.mjs +0 -40
  506. package/esm2022/form/form-validator-loader.mjs +0 -134
  507. package/esm2022/form/form-validator.service.mjs +0 -252
  508. package/esm2022/form/form.class.mjs +0 -8
  509. package/esm2022/form/form.directive.mjs +0 -158
  510. package/esm2022/form/from-group-footer/form-group-footer.component.mjs +0 -53
  511. package/esm2022/form/index.mjs +0 -12
  512. package/esm2022/form/module.mjs +0 -104
  513. package/esm2022/form/ngx-tethys-form.mjs +0 -5
  514. package/esm2022/form/validator/confirm-validator.directive.mjs +0 -33
  515. package/esm2022/form/validator/index.mjs +0 -5
  516. package/esm2022/form/validator/max-validator.directive.mjs +0 -41
  517. package/esm2022/form/validator/min-validator.directive.mjs +0 -41
  518. package/esm2022/form/validator/unique-validator.directive.mjs +0 -52
  519. package/esm2022/fullscreen/fullscreen-launch.directive.mjs +0 -18
  520. package/esm2022/fullscreen/fullscreen-ref.mjs +0 -151
  521. package/esm2022/fullscreen/fullscreen.component.mjs +0 -78
  522. package/esm2022/fullscreen/fullscreen.config.mjs +0 -6
  523. package/esm2022/fullscreen/fullscreen.module.mjs +0 -17
  524. package/esm2022/fullscreen/fullscreen.service.mjs +0 -47
  525. package/esm2022/fullscreen/index.mjs +0 -7
  526. package/esm2022/fullscreen/ngx-tethys-fullscreen.mjs +0 -5
  527. package/esm2022/grid/flex.mjs +0 -179
  528. package/esm2022/grid/grid.token.mjs +0 -5
  529. package/esm2022/grid/index.mjs +0 -7
  530. package/esm2022/grid/module.mjs +0 -56
  531. package/esm2022/grid/ngx-tethys-grid.mjs +0 -5
  532. package/esm2022/grid/thy-col.directive.mjs +0 -66
  533. package/esm2022/grid/thy-grid-item.component.mjs +0 -60
  534. package/esm2022/grid/thy-grid.component.mjs +0 -256
  535. package/esm2022/grid/thy-row.directive.mjs +0 -59
  536. package/esm2022/guider/guider-hint/guider-hint.component.mjs +0 -52
  537. package/esm2022/guider/guider-manager.mjs +0 -39
  538. package/esm2022/guider/guider-ref.mjs +0 -133
  539. package/esm2022/guider/guider-step-ref.mjs +0 -242
  540. package/esm2022/guider/guider.class.mjs +0 -15
  541. package/esm2022/guider/guider.directive.mjs +0 -50
  542. package/esm2022/guider/guider.module.mjs +0 -24
  543. package/esm2022/guider/guider.service.mjs +0 -76
  544. package/esm2022/guider/index.mjs +0 -9
  545. package/esm2022/guider/ngx-tethys-guider.mjs +0 -5
  546. package/esm2022/guider/utils.mjs +0 -10
  547. package/esm2022/i18n/i18n.mjs +0 -9
  548. package/esm2022/i18n/i18n.service.mjs +0 -45
  549. package/esm2022/i18n/i18n.token.mjs +0 -10
  550. package/esm2022/i18n/index.mjs +0 -10
  551. package/esm2022/i18n/locale.mjs +0 -13
  552. package/esm2022/i18n/locales/de-de.mjs +0 -130
  553. package/esm2022/i18n/locales/en-us.mjs +0 -151
  554. package/esm2022/i18n/locales/ja-jp.mjs +0 -130
  555. package/esm2022/i18n/locales/zh-hans.mjs +0 -130
  556. package/esm2022/i18n/locales/zh-hant.mjs +0 -130
  557. package/esm2022/i18n/ngx-tethys-i18n.mjs +0 -5
  558. package/esm2022/icon/config.mjs +0 -8
  559. package/esm2022/icon/icon-registry.mjs +0 -340
  560. package/esm2022/icon/icon.component.mjs +0 -198
  561. package/esm2022/icon/icon.module.mjs +0 -20
  562. package/esm2022/icon/index.mjs +0 -5
  563. package/esm2022/icon/ngx-tethys-icon.mjs +0 -5
  564. package/esm2022/image/image-group.component.mjs +0 -32
  565. package/esm2022/image/image.class.mjs +0 -2
  566. package/esm2022/image/image.config.mjs +0 -21
  567. package/esm2022/image/image.directive.mjs +0 -130
  568. package/esm2022/image/image.service.mjs +0 -58
  569. package/esm2022/image/index.mjs +0 -9
  570. package/esm2022/image/module.mjs +0 -67
  571. package/esm2022/image/ngx-tethys-image.mjs +0 -5
  572. package/esm2022/image/preview/image-preview-ref.mjs +0 -32
  573. package/esm2022/image/preview/image-preview.component.mjs +0 -413
  574. package/esm2022/image/utils.mjs +0 -13
  575. package/esm2022/input/index.mjs +0 -7
  576. package/esm2022/input/input-count.component.mjs +0 -68
  577. package/esm2022/input/input-group.component.mjs +0 -161
  578. package/esm2022/input/input-search.component.mjs +0 -152
  579. package/esm2022/input/input.component.mjs +0 -142
  580. package/esm2022/input/input.directive.mjs +0 -63
  581. package/esm2022/input/module.mjs +0 -51
  582. package/esm2022/input/ngx-tethys-input.mjs +0 -5
  583. package/esm2022/input-number/index.mjs +0 -3
  584. package/esm2022/input-number/input-number.component.mjs +0 -362
  585. package/esm2022/input-number/module.mjs +0 -22
  586. package/esm2022/input-number/ngx-tethys-input-number.mjs +0 -5
  587. package/esm2022/layout/content-main.component.mjs +0 -42
  588. package/esm2022/layout/content-section.component.mjs +0 -42
  589. package/esm2022/layout/content.component.mjs +0 -42
  590. package/esm2022/layout/header.component.mjs +0 -125
  591. package/esm2022/layout/index.mjs +0 -11
  592. package/esm2022/layout/layout.component.mjs +0 -47
  593. package/esm2022/layout/layout.module.mjs +0 -121
  594. package/esm2022/layout/ngx-tethys-layout.mjs +0 -5
  595. package/esm2022/layout/sidebar-content.component.mjs +0 -41
  596. package/esm2022/layout/sidebar-footer.component.mjs +0 -41
  597. package/esm2022/layout/sidebar-header.component.mjs +0 -54
  598. package/esm2022/layout/sidebar.component.mjs +0 -403
  599. package/esm2022/list/index.mjs +0 -7
  600. package/esm2022/list/list-item-meta.component.mjs +0 -38
  601. package/esm2022/list/list-item.component.mjs +0 -25
  602. package/esm2022/list/list.component.mjs +0 -41
  603. package/esm2022/list/list.module.mjs +0 -22
  604. package/esm2022/list/ngx-tethys-list.mjs +0 -5
  605. package/esm2022/list/selection/selection-list.mjs +0 -393
  606. package/esm2022/list/selection/selection.interface.mjs +0 -2
  607. package/esm2022/loading/index.mjs +0 -3
  608. package/esm2022/loading/loading.component.mjs +0 -54
  609. package/esm2022/loading/loading.module.mjs +0 -17
  610. package/esm2022/loading/ngx-tethys-loading.mjs +0 -5
  611. package/esm2022/mention/adapter/adapter.mjs +0 -20
  612. package/esm2022/mention/adapter/editable.adapter.mjs +0 -48
  613. package/esm2022/mention/adapter/index.mjs +0 -16
  614. package/esm2022/mention/adapter/textarea.adapter.mjs +0 -58
  615. package/esm2022/mention/caret-positioner.mjs +0 -194
  616. package/esm2022/mention/index.mjs +0 -5
  617. package/esm2022/mention/interfaces.mjs +0 -2
  618. package/esm2022/mention/mention.directive.mjs +0 -160
  619. package/esm2022/mention/mention.module.mjs +0 -23
  620. package/esm2022/mention/ngx-tethys-mention.mjs +0 -5
  621. package/esm2022/mention/suggestions/suggestions.component.mjs +0 -80
  622. package/esm2022/menu/divider/menu-divider.component.mjs +0 -21
  623. package/esm2022/menu/group/menu-group.component.mjs +0 -187
  624. package/esm2022/menu/index.mjs +0 -9
  625. package/esm2022/menu/item/action/menu-item-action.component.mjs +0 -75
  626. package/esm2022/menu/item/icon/menu-item-icon.component.mjs +0 -33
  627. package/esm2022/menu/item/menu-item.component.mjs +0 -42
  628. package/esm2022/menu/item/name/menu-item-name.component.mjs +0 -32
  629. package/esm2022/menu/menu.component.mjs +0 -39
  630. package/esm2022/menu/menu.module.mjs +0 -49
  631. package/esm2022/menu/ngx-tethys-menu.mjs +0 -5
  632. package/esm2022/message/abstract/abstract-message-container.component.mjs +0 -26
  633. package/esm2022/message/abstract/abstract-message-queue.service.mjs +0 -34
  634. package/esm2022/message/abstract/abstract-message-ref.mjs +0 -22
  635. package/esm2022/message/abstract/abstract-message.component.mjs +0 -76
  636. package/esm2022/message/abstract/abstract-message.service.mjs +0 -29
  637. package/esm2022/message/abstract/index.mjs +0 -6
  638. package/esm2022/message/index.mjs +0 -9
  639. package/esm2022/message/message-container.component.mjs +0 -45
  640. package/esm2022/message/message-queue.service.mjs +0 -25
  641. package/esm2022/message/message-ref.mjs +0 -4
  642. package/esm2022/message/message.component.mjs +0 -61
  643. package/esm2022/message/message.config.mjs +0 -14
  644. package/esm2022/message/message.service.mjs +0 -92
  645. package/esm2022/message/module.mjs +0 -24
  646. package/esm2022/message/ngx-tethys-message.mjs +0 -5
  647. package/esm2022/nav/icon-nav/icon-nav-link.directive.mjs +0 -43
  648. package/esm2022/nav/icon-nav/icon-nav.component.mjs +0 -45
  649. package/esm2022/nav/index.mjs +0 -7
  650. package/esm2022/nav/nav-ink-bar.directive.mjs +0 -79
  651. package/esm2022/nav/nav-item.directive.mjs +0 -98
  652. package/esm2022/nav/nav.component.mjs +0 -410
  653. package/esm2022/nav/nav.module.mjs +0 -54
  654. package/esm2022/nav/nav.pipe.mjs +0 -24
  655. package/esm2022/nav/ngx-tethys-nav.mjs +0 -5
  656. package/esm2022/ngx-tethys.mjs +0 -5
  657. package/esm2022/notify/index.mjs +0 -8
  658. package/esm2022/notify/module.mjs +0 -24
  659. package/esm2022/notify/ngx-tethys-notify.mjs +0 -5
  660. package/esm2022/notify/notify-container.component.mjs +0 -31
  661. package/esm2022/notify/notify-queue.service.mjs +0 -30
  662. package/esm2022/notify/notify-ref.mjs +0 -4
  663. package/esm2022/notify/notify.component.mjs +0 -99
  664. package/esm2022/notify/notify.config.mjs +0 -14
  665. package/esm2022/notify/notify.service.mjs +0 -97
  666. package/esm2022/pagination/index.mjs +0 -6
  667. package/esm2022/pagination/ngx-tethys-pagination.mjs +0 -5
  668. package/esm2022/pagination/pagination.class.mjs +0 -2
  669. package/esm2022/pagination/pagination.component.mjs +0 -366
  670. package/esm2022/pagination/pagination.config.mjs +0 -30
  671. package/esm2022/pagination/pagination.module.mjs +0 -43
  672. package/esm2022/pagination/pagination.pipe.mjs +0 -53
  673. package/esm2022/popover/body/popover-body.component.mjs +0 -25
  674. package/esm2022/popover/header/popover-header.component.mjs +0 -54
  675. package/esm2022/popover/index.mjs +0 -10
  676. package/esm2022/popover/module.mjs +0 -47
  677. package/esm2022/popover/ngx-tethys-popover.mjs +0 -5
  678. package/esm2022/popover/popover-animations.mjs +0 -22
  679. package/esm2022/popover/popover-container.component.mjs +0 -125
  680. package/esm2022/popover/popover-ref.mjs +0 -25
  681. package/esm2022/popover/popover.config.mjs +0 -38
  682. package/esm2022/popover/popover.directive.mjs +0 -157
  683. package/esm2022/popover/popover.options.mjs +0 -6
  684. package/esm2022/popover/popover.service.mjs +0 -201
  685. package/esm2022/progress/index.mjs +0 -6
  686. package/esm2022/progress/interfaces.mjs +0 -2
  687. package/esm2022/progress/ngx-tethys-progress.mjs +0 -5
  688. package/esm2022/progress/progress-circle.component.mjs +0 -136
  689. package/esm2022/progress/progress-strip.component.mjs +0 -54
  690. package/esm2022/progress/progress.component.mjs +0 -142
  691. package/esm2022/progress/progress.module.mjs +0 -20
  692. package/esm2022/property/index.mjs +0 -4
  693. package/esm2022/property/module.mjs +0 -20
  694. package/esm2022/property/ngx-tethys-property.mjs +0 -5
  695. package/esm2022/property/properties.component.mjs +0 -59
  696. package/esm2022/property/property-item.component.mjs +0 -175
  697. package/esm2022/property-operation/group/property-operation-group.component.mjs +0 -20
  698. package/esm2022/property-operation/index.mjs +0 -4
  699. package/esm2022/property-operation/module.mjs +0 -21
  700. package/esm2022/property-operation/ngx-tethys-property-operation.mjs +0 -5
  701. package/esm2022/property-operation/property-operation.component.mjs +0 -183
  702. package/esm2022/public-api.mjs +0 -2
  703. package/esm2022/radio/button/radio-button.component.mjs +0 -56
  704. package/esm2022/radio/group/radio-group.component.mjs +0 -138
  705. package/esm2022/radio/index.mjs +0 -5
  706. package/esm2022/radio/module.mjs +0 -20
  707. package/esm2022/radio/ngx-tethys-radio.mjs +0 -5
  708. package/esm2022/radio/radio.component.mjs +0 -58
  709. package/esm2022/rate/index.mjs +0 -4
  710. package/esm2022/rate/module.mjs +0 -23
  711. package/esm2022/rate/ngx-tethys-rate.mjs +0 -5
  712. package/esm2022/rate/rate-item.component.mjs +0 -76
  713. package/esm2022/rate/rate.component.mjs +0 -244
  714. package/esm2022/resizable/index.mjs +0 -8
  715. package/esm2022/resizable/interface.mjs +0 -2
  716. package/esm2022/resizable/module.mjs +0 -19
  717. package/esm2022/resizable/ngx-tethys-resizable.mjs +0 -5
  718. package/esm2022/resizable/resizable.directive.mjs +0 -363
  719. package/esm2022/resizable/resizable.service.mjs +0 -69
  720. package/esm2022/resizable/resize-handle.component.mjs +0 -104
  721. package/esm2022/resizable/resize-handles.component.mjs +0 -64
  722. package/esm2022/resizable/utils.mjs +0 -14
  723. package/esm2022/result/index.mjs +0 -3
  724. package/esm2022/result/ngx-tethys-result.mjs +0 -5
  725. package/esm2022/result/result.component.mjs +0 -43
  726. package/esm2022/result/result.module.mjs +0 -17
  727. package/esm2022/segment/index.mjs +0 -5
  728. package/esm2022/segment/ngx-tethys-segment.mjs +0 -5
  729. package/esm2022/segment/segment-item.component.mjs +0 -87
  730. package/esm2022/segment/segment.component.mjs +0 -143
  731. package/esm2022/segment/segment.module.mjs +0 -20
  732. package/esm2022/segment/segment.token.mjs +0 -3
  733. package/esm2022/segment/types.mjs +0 -2
  734. package/esm2022/select/custom-select/custom-select.component.mjs +0 -904
  735. package/esm2022/select/index.mjs +0 -5
  736. package/esm2022/select/module.mjs +0 -62
  737. package/esm2022/select/native-select/native-select.component.mjs +0 -98
  738. package/esm2022/select/ngx-tethys-select.mjs +0 -5
  739. package/esm2022/select/select.config.mjs +0 -21
  740. package/esm2022/shared/base-form-check.component.mjs +0 -120
  741. package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +0 -57
  742. package/esm2022/shared/directives/thy-autofocus.directive.mjs +0 -60
  743. package/esm2022/shared/directives/thy-contextmenu.directive.mjs +0 -39
  744. package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +0 -43
  745. package/esm2022/shared/directives/thy-drag-drop.directive.mjs +0 -51
  746. package/esm2022/shared/directives/thy-enter.directive.mjs +0 -43
  747. package/esm2022/shared/directives/thy-scroll.directive.mjs +0 -84
  748. package/esm2022/shared/directives/thy-show.mjs +0 -59
  749. package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +0 -57
  750. package/esm2022/shared/directives/view-outlet.directive.mjs +0 -85
  751. package/esm2022/shared/index.mjs +0 -16
  752. package/esm2022/shared/ng-transclude.directive.mjs +0 -32
  753. package/esm2022/shared/ngx-tethys-shared.mjs +0 -5
  754. package/esm2022/shared/option/group/option-group.component.mjs +0 -92
  755. package/esm2022/shared/option/index.mjs +0 -9
  756. package/esm2022/shared/option/list-option/list-option.component.mjs +0 -96
  757. package/esm2022/shared/option/module.mjs +0 -29
  758. package/esm2022/shared/option/option-group.component.mjs +0 -25
  759. package/esm2022/shared/option/option.component.mjs +0 -181
  760. package/esm2022/shared/option/option.token.mjs +0 -14
  761. package/esm2022/shared/option/options-container.component.mjs +0 -29
  762. package/esm2022/shared/option/select-option-base.mjs +0 -3
  763. package/esm2022/shared/select/index.mjs +0 -3
  764. package/esm2022/shared/select/module.mjs +0 -27
  765. package/esm2022/shared/select/select-control/select-control.component.mjs +0 -280
  766. package/esm2022/shared/shared.module.mjs +0 -71
  767. package/esm2022/skeleton/index.mjs +0 -9
  768. package/esm2022/skeleton/module.mjs +0 -27
  769. package/esm2022/skeleton/ngx-tethys-skeleton.mjs +0 -5
  770. package/esm2022/skeleton/skeleton-circle.component.mjs +0 -92
  771. package/esm2022/skeleton/skeleton-rectangle.component.mjs +0 -100
  772. package/esm2022/skeleton/skeleton.component.mjs +0 -32
  773. package/esm2022/skeleton/skeleton.config.mjs +0 -8
  774. package/esm2022/skeleton/stylized/bullet-list.component.mjs +0 -124
  775. package/esm2022/skeleton/stylized/list.component.mjs +0 -95
  776. package/esm2022/skeleton/stylized/paragraph.component.mjs +0 -107
  777. package/esm2022/slide/drawer/drawer-container.directive.mjs +0 -21
  778. package/esm2022/slide/index.mjs +0 -13
  779. package/esm2022/slide/ngx-tethys-slide.mjs +0 -5
  780. package/esm2022/slide/slide-animations.mjs +0 -24
  781. package/esm2022/slide/slide-body/slide-body-section.component.mjs +0 -41
  782. package/esm2022/slide/slide-body/slide-body.component.mjs +0 -25
  783. package/esm2022/slide/slide-container.component.mjs +0 -192
  784. package/esm2022/slide/slide-footer/slide-footer.component.mjs +0 -26
  785. package/esm2022/slide/slide-header/slide-header.component.mjs +0 -59
  786. package/esm2022/slide/slide-layout/slide-layout.component.mjs +0 -27
  787. package/esm2022/slide/slide-ref.service.mjs +0 -32
  788. package/esm2022/slide/slide.config.mjs +0 -38
  789. package/esm2022/slide/slide.module.mjs +0 -65
  790. package/esm2022/slide/slide.service.mjs +0 -104
  791. package/esm2022/slider/index.mjs +0 -3
  792. package/esm2022/slider/ngx-tethys-slider.mjs +0 -5
  793. package/esm2022/slider/slider.component.mjs +0 -346
  794. package/esm2022/slider/slider.module.mjs +0 -19
  795. package/esm2022/space/index.mjs +0 -3
  796. package/esm2022/space/ngx-tethys-space.mjs +0 -5
  797. package/esm2022/space/space.component.mjs +0 -88
  798. package/esm2022/space/space.module.mjs +0 -17
  799. package/esm2022/statistic/index.mjs +0 -3
  800. package/esm2022/statistic/ngx-tethys-statistic.mjs +0 -5
  801. package/esm2022/statistic/statistic.component.mjs +0 -184
  802. package/esm2022/statistic/statistic.module.mjs +0 -20
  803. package/esm2022/stepper/index.mjs +0 -6
  804. package/esm2022/stepper/ngx-tethys-stepper.mjs +0 -5
  805. package/esm2022/stepper/step-header.component.mjs +0 -40
  806. package/esm2022/stepper/step.component.mjs +0 -32
  807. package/esm2022/stepper/stepper-button.directive.mjs +0 -56
  808. package/esm2022/stepper/stepper.component.mjs +0 -105
  809. package/esm2022/stepper/stepper.module.mjs +0 -21
  810. package/esm2022/strength/index.mjs +0 -3
  811. package/esm2022/strength/ngx-tethys-strength.mjs +0 -5
  812. package/esm2022/strength/strength.component.mjs +0 -122
  813. package/esm2022/strength/strength.module.mjs +0 -17
  814. package/esm2022/switch/index.mjs +0 -3
  815. package/esm2022/switch/ngx-tethys-switch.mjs +0 -5
  816. package/esm2022/switch/switch.component.mjs +0 -181
  817. package/esm2022/switch/switch.module.mjs +0 -17
  818. package/esm2022/table/enums/column-skeleton-type.mjs +0 -8
  819. package/esm2022/table/enums/index.mjs +0 -2
  820. package/esm2022/table/index.mjs +0 -9
  821. package/esm2022/table/ngx-tethys-table.mjs +0 -5
  822. package/esm2022/table/pipes/drag.pipe.mjs +0 -20
  823. package/esm2022/table/pipes/table.pipe.mjs +0 -20
  824. package/esm2022/table/table-column.component.mjs +0 -200
  825. package/esm2022/table/table-skeleton.component.mjs +0 -165
  826. package/esm2022/table/table.component.mjs +0 -966
  827. package/esm2022/table/table.interface.mjs +0 -7
  828. package/esm2022/table/table.module.mjs +0 -75
  829. package/esm2022/tabs/index.mjs +0 -5
  830. package/esm2022/tabs/ngx-tethys-tabs.mjs +0 -5
  831. package/esm2022/tabs/tab-content.component.mjs +0 -52
  832. package/esm2022/tabs/tab.component.mjs +0 -36
  833. package/esm2022/tabs/tabs.component.mjs +0 -139
  834. package/esm2022/tabs/tabs.module.mjs +0 -21
  835. package/esm2022/tabs/types.mjs +0 -2
  836. package/esm2022/tag/index.mjs +0 -4
  837. package/esm2022/tag/ngx-tethys-tag.mjs +0 -5
  838. package/esm2022/tag/tag.component.mjs +0 -109
  839. package/esm2022/tag/tag.module.mjs +0 -19
  840. package/esm2022/tag/tags.component.mjs +0 -24
  841. package/esm2022/testing/data-transfer.mjs +0 -55
  842. package/esm2022/testing/dispatcher-events.mjs +0 -46
  843. package/esm2022/testing/element-focus.mjs +0 -18
  844. package/esm2022/testing/events.mjs +0 -145
  845. package/esm2022/testing/index.mjs +0 -8
  846. package/esm2022/testing/ngx-tethys-testing.mjs +0 -5
  847. package/esm2022/testing/thy-icon.mjs +0 -50
  848. package/esm2022/testing/type-in-element.mjs +0 -20
  849. package/esm2022/testing/xhr-mock.mjs +0 -100
  850. package/esm2022/time-picker/index.mjs +0 -8
  851. package/esm2022/time-picker/inner/inner-time-picker.class.mjs +0 -2
  852. package/esm2022/time-picker/inner/inner-time-picker.component.mjs +0 -239
  853. package/esm2022/time-picker/inner/inner-time-picker.config.mjs +0 -45
  854. package/esm2022/time-picker/inner/inner-time-picker.store.mjs +0 -134
  855. package/esm2022/time-picker/ngx-tethys-time-picker.mjs +0 -5
  856. package/esm2022/time-picker/time-picker-controls.util.mjs +0 -118
  857. package/esm2022/time-picker/time-picker-panel.component.mjs +0 -265
  858. package/esm2022/time-picker/time-picker.component.mjs +0 -363
  859. package/esm2022/time-picker/time-picker.module.mjs +0 -54
  860. package/esm2022/time-picker/time-picker.utils.mjs +0 -131
  861. package/esm2022/timeline/index.mjs +0 -5
  862. package/esm2022/timeline/ngx-tethys-timeline.mjs +0 -5
  863. package/esm2022/timeline/timeline-item.component.mjs +0 -59
  864. package/esm2022/timeline/timeline.component.mjs +0 -156
  865. package/esm2022/timeline/timeline.module.mjs +0 -21
  866. package/esm2022/timeline/timeline.service.mjs +0 -17
  867. package/esm2022/tooltip/index.mjs +0 -9
  868. package/esm2022/tooltip/interface.mjs +0 -2
  869. package/esm2022/tooltip/ngx-tethys-tooltip.mjs +0 -5
  870. package/esm2022/tooltip/tooltip-animations.mjs +0 -23
  871. package/esm2022/tooltip/tooltip-ref.mjs +0 -147
  872. package/esm2022/tooltip/tooltip.component.mjs +0 -103
  873. package/esm2022/tooltip/tooltip.config.mjs +0 -17
  874. package/esm2022/tooltip/tooltip.directive.mjs +0 -150
  875. package/esm2022/tooltip/tooltip.module.mjs +0 -22
  876. package/esm2022/tooltip/tooltip.service.mjs +0 -28
  877. package/esm2022/transfer/index.mjs +0 -5
  878. package/esm2022/transfer/ngx-tethys-transfer.mjs +0 -5
  879. package/esm2022/transfer/transfer-list.component.mjs +0 -154
  880. package/esm2022/transfer/transfer.component.mjs +0 -180
  881. package/esm2022/transfer/transfer.interface.mjs +0 -6
  882. package/esm2022/transfer/transfer.module.mjs +0 -50
  883. package/esm2022/tree/index.mjs +0 -7
  884. package/esm2022/tree/ngx-tethys-tree.mjs +0 -5
  885. package/esm2022/tree/tree-abstract.mjs +0 -3
  886. package/esm2022/tree/tree-node.class.mjs +0 -93
  887. package/esm2022/tree/tree-node.component.mjs +0 -212
  888. package/esm2022/tree/tree.class.mjs +0 -15
  889. package/esm2022/tree/tree.component.mjs +0 -648
  890. package/esm2022/tree/tree.module.mjs +0 -74
  891. package/esm2022/tree/tree.pipe.mjs +0 -26
  892. package/esm2022/tree/tree.service.mjs +0 -187
  893. package/esm2022/tree-select/index.mjs +0 -4
  894. package/esm2022/tree-select/module.mjs +0 -52
  895. package/esm2022/tree-select/ngx-tethys-tree-select.mjs +0 -5
  896. package/esm2022/tree-select/tree-select.class.mjs +0 -2
  897. package/esm2022/tree-select/tree-select.component.mjs +0 -653
  898. package/esm2022/types/common.mjs +0 -2
  899. package/esm2022/types/dictionary.mjs +0 -2
  900. package/esm2022/types/index.mjs +0 -4
  901. package/esm2022/types/ngx-tethys-types.mjs +0 -5
  902. package/esm2022/types/pagination.mjs +0 -2
  903. package/esm2022/typography/bg-color.directive.mjs +0 -51
  904. package/esm2022/typography/index.mjs +0 -5
  905. package/esm2022/typography/module.mjs +0 -21
  906. package/esm2022/typography/ngx-tethys-typography.mjs +0 -5
  907. package/esm2022/typography/text/text.component.mjs +0 -23
  908. package/esm2022/typography/text-color.directive.mjs +0 -52
  909. package/esm2022/upload/constant.mjs +0 -75
  910. package/esm2022/upload/file-drop.directive.mjs +0 -166
  911. package/esm2022/upload/file-select-base.mjs +0 -75
  912. package/esm2022/upload/file-select.component.mjs +0 -98
  913. package/esm2022/upload/index.mjs +0 -7
  914. package/esm2022/upload/module.mjs +0 -22
  915. package/esm2022/upload/ngx-tethys-upload.mjs +0 -5
  916. package/esm2022/upload/types.mjs +0 -2
  917. package/esm2022/upload/upload.config.mjs +0 -21
  918. package/esm2022/upload/upload.service.mjs +0 -169
  919. package/esm2022/upload/util.mjs +0 -27
  920. package/esm2022/util/date/functions.mjs +0 -84
  921. package/esm2022/util/date/tiny-date.mjs +0 -362
  922. package/esm2022/util/dom.mjs +0 -247
  923. package/esm2022/util/helpers/helpers.mjs +0 -293
  924. package/esm2022/util/helpers/index.mjs +0 -2
  925. package/esm2022/util/immutable.mjs +0 -108
  926. package/esm2022/util/index.mjs +0 -16
  927. package/esm2022/util/keycodes.mjs +0 -2
  928. package/esm2022/util/logger/index.mjs +0 -2
  929. package/esm2022/util/logger/logger.mjs +0 -42
  930. package/esm2022/util/ng.mjs +0 -7
  931. package/esm2022/util/ngx-tethys-util.mjs +0 -5
  932. package/esm2022/util/references.mjs +0 -84
  933. package/esm2022/version.mjs +0 -3
  934. package/esm2022/vote/index.mjs +0 -3
  935. package/esm2022/vote/ngx-tethys-vote.mjs +0 -5
  936. package/esm2022/vote/vote.component.mjs +0 -130
  937. package/esm2022/vote/vote.module.mjs +0 -20
  938. package/esm2022/watermark/config.mjs +0 -20
  939. package/esm2022/watermark/index.mjs +0 -3
  940. package/esm2022/watermark/ngx-tethys-watermark.mjs +0 -5
  941. package/esm2022/watermark/watermark.directive.mjs +0 -178
  942. package/esm2022/watermark/watermark.module.mjs +0 -19
  943. package/schematics/ng-update/update-18/complete.d.ts +0 -3
  944. package/schematics/ng-update/update-18/complete.js +0 -13
  945. /package/schematics/ng-update/{update-18 → update-19}/class-name-migration.d.ts +0 -0
  946. /package/schematics/ng-update/{update-18 → update-19}/class-name-migration.js +0 -0
  947. /package/schematics/ng-update/{update-18 → update-19}/index.d.ts +0 -0
  948. /package/schematics/ng-update/{update-18 → update-19}/index.spec.d.ts +0 -0
  949. /package/schematics/ng-update/{update-18 → update-19}/update-data.d.ts +0 -0
  950. /package/schematics/ng-update/{update-18 → update-19}/update-data.js +0 -0
@@ -1,45 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, forwardRef, Input } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { useHostRenderer } from '@tethys/cdk/dom';
4
- import { BasePicker } from './base-picker.component';
5
- import { DatePopup } from './lib/popups/date-popup.component';
6
- import { ThyPicker } from './picker.component';
7
- import * as i0 from "@angular/core";
8
- /**
9
- * 月份选择组件
10
- * @name thy-month-picker
11
- * @order 40
12
- */
13
- export class ThyMonthPicker extends BasePicker {
14
- constructor() {
15
- super();
16
- /**
17
- * 展示的月份格式
18
- */
19
- this.thyFormat = 'yyyy-MM';
20
- this.hostRenderer = useHostRenderer();
21
- this.hostRenderer.addClass('thy-calendar-picker');
22
- this.thyMode = 'month';
23
- }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyMonthPicker, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyMonthPicker, isStandalone: true, selector: "thy-month-picker", inputs: { thyFormat: "thyFormat" }, providers: [
26
- {
27
- provide: NG_VALUE_ACCESSOR,
28
- multi: true,
29
- useExisting: forwardRef(() => ThyMonthPicker)
30
- }
31
- ], exportAs: ["thyMonthPicker"], usesInheritance: true, ngImport: i0, template: "<thy-picker\n #thyPicker\n [isRange]=\"isRange\"\n [value]=\"thyValue\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n (valueChange)=\"onInputValueChange($event)\"\n [open]=\"thyOpen\"\n [disabled]=\"thyDisabled\"\n [format]=\"thyFormat\"\n [mode]=\"thyMode\"\n [allowClear]=\"thyAllowClear\"\n [className]=\"thyOriginClassName\"\n [autoFocus]=\"thyAutoFocus\"\n [placeholder]=\"thyPlaceHolder\"\n [readonly]=\"thyReadonly\"\n [size]=\"thySize\"\n [suffixIcon]=\"thySuffixIcon\"\n [placement]=\"thyPlacement\"\n [hasBackdrop]=\"thyHasBackdrop\"\n (openChange)=\"onOpenChange($event)\"\n (blur)=\"onBlur($event)\"\n (inputChange)=\"onInputDate($event)\">\n @if (isShowDatePopup) {\n <date-popup\n [attr.tabindex]=\"-1\"\n [isRange]=\"isRange\"\n [showWeek]=\"showWeek\"\n [panelMode]=\"panelMode\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n [defaultPickerValue]=\"thyDefaultPickerValue\"\n (panelModeChange)=\"thyOnPanelChange.emit($event)\"\n (showTimePickerChange)=\"onShowTimePickerChange($event)\"\n [value]=\"thyValue\"\n (valueChange)=\"onValueChange($event)\"\n (calendarChange)=\"onCalendarChange($event)\"\n [showTime]=\"thyShowTime\"\n [mustShowTime]=\"withTime\"\n [format]=\"thyFormat\"\n [dateRender]=\"thyDateRender\"\n [disabledDate]=\"thyDisabledDate\"\n [minDate]=\"thyMinDate\"\n [maxDate]=\"thyMaxDate\"\n [showShortcut]=\"thyShowShortcut\"\n [shortcutPresets]=\"shortcutPresets\"\n [shortcutPosition]=\"shortcutPosition\"\n [timestampPrecision]=\"thyTimestampPrecision\"\n (dateValueChange)=\"onDateValueChange($event)\"\n [className]=\"thyPanelClassName\"\n (resultOk)=\"onResultOk()\"></date-popup>\n }\n</thy-picker>\n", dependencies: [{ kind: "component", type: ThyPicker, selector: "thy-picker", inputs: ["isRange", "open", "disabled", "placeholder", "readonly", "allowClear", "autoFocus", "className", "size", "suffixIcon", "placement", "flexible", "mode", "hasBackdrop", "format", "flexibleDateGranularity", "value"], outputs: ["blur", "valueChange", "openChange", "inputChange"], exportAs: ["thyPicker"] }, { kind: "component", type: DatePopup, selector: "date-popup", inputs: ["isRange", "showWeek", "format", "disabledDate", "minDate", "maxDate", "showToday", "showTime", "mustShowTime", "dateRender", "className", "panelMode", "value", "defaultPickerValue", "showShortcut", "shortcutPresets", "shortcutPosition", "flexible", "flexibleDateGranularity", "timestampPrecision"], outputs: ["panelModeChange", "calendarChange", "valueChange", "resultOk", "showTimePickerChange", "dateValueChange"], exportAs: ["datePopup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
- }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyMonthPicker, decorators: [{
34
- type: Component,
35
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'thy-month-picker', exportAs: 'thyMonthPicker', providers: [
36
- {
37
- provide: NG_VALUE_ACCESSOR,
38
- multi: true,
39
- useExisting: forwardRef(() => ThyMonthPicker)
40
- }
41
- ], standalone: true, imports: [ThyPicker, DatePopup], template: "<thy-picker\n #thyPicker\n [isRange]=\"isRange\"\n [value]=\"thyValue\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n (valueChange)=\"onInputValueChange($event)\"\n [open]=\"thyOpen\"\n [disabled]=\"thyDisabled\"\n [format]=\"thyFormat\"\n [mode]=\"thyMode\"\n [allowClear]=\"thyAllowClear\"\n [className]=\"thyOriginClassName\"\n [autoFocus]=\"thyAutoFocus\"\n [placeholder]=\"thyPlaceHolder\"\n [readonly]=\"thyReadonly\"\n [size]=\"thySize\"\n [suffixIcon]=\"thySuffixIcon\"\n [placement]=\"thyPlacement\"\n [hasBackdrop]=\"thyHasBackdrop\"\n (openChange)=\"onOpenChange($event)\"\n (blur)=\"onBlur($event)\"\n (inputChange)=\"onInputDate($event)\">\n @if (isShowDatePopup) {\n <date-popup\n [attr.tabindex]=\"-1\"\n [isRange]=\"isRange\"\n [showWeek]=\"showWeek\"\n [panelMode]=\"panelMode\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n [defaultPickerValue]=\"thyDefaultPickerValue\"\n (panelModeChange)=\"thyOnPanelChange.emit($event)\"\n (showTimePickerChange)=\"onShowTimePickerChange($event)\"\n [value]=\"thyValue\"\n (valueChange)=\"onValueChange($event)\"\n (calendarChange)=\"onCalendarChange($event)\"\n [showTime]=\"thyShowTime\"\n [mustShowTime]=\"withTime\"\n [format]=\"thyFormat\"\n [dateRender]=\"thyDateRender\"\n [disabledDate]=\"thyDisabledDate\"\n [minDate]=\"thyMinDate\"\n [maxDate]=\"thyMaxDate\"\n [showShortcut]=\"thyShowShortcut\"\n [shortcutPresets]=\"shortcutPresets\"\n [shortcutPosition]=\"shortcutPosition\"\n [timestampPrecision]=\"thyTimestampPrecision\"\n (dateValueChange)=\"onDateValueChange($event)\"\n [className]=\"thyPanelClassName\"\n (resultOk)=\"onResultOk()\"></date-popup>\n }\n</thy-picker>\n" }]
42
- }], ctorParameters: () => [], propDecorators: { thyFormat: [{
43
- type: Input
44
- }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGgtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9tb250aC1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2Jhc2UtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWMsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRS9DOzs7O0dBSUc7QUFnQkgsTUFBTSxPQUFPLGNBQWUsU0FBUSxVQUFVO0lBVTFDO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFSWjs7V0FFRztRQUNNLGNBQVMsR0FBRyxTQUFTLENBQUM7UUFFdkIsaUJBQVksR0FBRyxlQUFlLEVBQUUsQ0FBQztRQUtyQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQzNCLENBQUM7K0dBZlEsY0FBYzttR0FBZCxjQUFjLG1HQVZaO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7YUFDaEQ7U0FDSiwrRUN4QkwsbTFEQXFEQSw0Q0QzQmMsU0FBUywrV0FBRSxTQUFTOzs0RkFFckIsY0FBYztrQkFmMUIsU0FBUztzQ0FDVyx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGtCQUFrQixZQUNsQixnQkFBZ0IsYUFFZjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUM7eUJBQ2hEO3FCQUNKLGNBQ1csSUFBSSxXQUNQLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQzt3REFRdEIsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHVzZUhvc3RSZW5kZXJlciB9IGZyb20gJ0B0ZXRoeXMvY2RrL2RvbSc7XG5cbmltcG9ydCB7IEJhc2VQaWNrZXIgfSBmcm9tICcuL2Jhc2UtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlUG9wdXAgfSBmcm9tICcuL2xpYi9wb3B1cHMvZGF0ZS1wb3B1cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGh5UGlja2VyIH0gZnJvbSAnLi9waWNrZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiDmnIjku73pgInmi6nnu4Tku7ZcbiAqIEBuYW1lIHRoeS1tb250aC1waWNrZXJcbiAqIEBvcmRlciA0MFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzZWxlY3RvcjogJ3RoeS1tb250aC1waWNrZXInLFxuICAgIGV4cG9ydEFzOiAndGh5TW9udGhQaWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXNlLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaHlNb250aFBpY2tlcilcbiAgICAgICAgfVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVGh5UGlja2VyLCBEYXRlUG9wdXBdXG59KVxuZXhwb3J0IGNsYXNzIFRoeU1vbnRoUGlja2VyIGV4dGVuZHMgQmFzZVBpY2tlciB7XG4gICAgcHJvdGVjdGVkIGVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICAvKipcbiAgICAgKiDlsZXnpLrnmoTmnIjku73moLzlvI9cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlGb3JtYXQgPSAneXl5eS1NTSc7XG5cbiAgICBwcml2YXRlIGhvc3RSZW5kZXJlciA9IHVzZUhvc3RSZW5kZXJlcigpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuYWRkQ2xhc3MoJ3RoeS1jYWxlbmRhci1waWNrZXInKTtcbiAgICAgICAgdGhpcy50aHlNb2RlID0gJ21vbnRoJztcbiAgICB9XG59XG4iLCI8dGh5LXBpY2tlclxuICAjdGh5UGlja2VyXG4gIFtpc1JhbmdlXT1cImlzUmFuZ2VcIlxuICBbdmFsdWVdPVwidGh5VmFsdWVcIlxuICBbZmxleGlibGVdPVwiZmxleGlibGVcIlxuICBbZmxleGlibGVEYXRlR3JhbnVsYXJpdHldPVwiZmxleGlibGVEYXRlR3JhbnVsYXJpdHlcIlxuICAodmFsdWVDaGFuZ2UpPVwib25JbnB1dFZhbHVlQ2hhbmdlKCRldmVudClcIlxuICBbb3Blbl09XCJ0aHlPcGVuXCJcbiAgW2Rpc2FibGVkXT1cInRoeURpc2FibGVkXCJcbiAgW2Zvcm1hdF09XCJ0aHlGb3JtYXRcIlxuICBbbW9kZV09XCJ0aHlNb2RlXCJcbiAgW2FsbG93Q2xlYXJdPVwidGh5QWxsb3dDbGVhclwiXG4gIFtjbGFzc05hbWVdPVwidGh5T3JpZ2luQ2xhc3NOYW1lXCJcbiAgW2F1dG9Gb2N1c109XCJ0aHlBdXRvRm9jdXNcIlxuICBbcGxhY2Vob2xkZXJdPVwidGh5UGxhY2VIb2xkZXJcIlxuICBbcmVhZG9ubHldPVwidGh5UmVhZG9ubHlcIlxuICBbc2l6ZV09XCJ0aHlTaXplXCJcbiAgW3N1ZmZpeEljb25dPVwidGh5U3VmZml4SWNvblwiXG4gIFtwbGFjZW1lbnRdPVwidGh5UGxhY2VtZW50XCJcbiAgW2hhc0JhY2tkcm9wXT1cInRoeUhhc0JhY2tkcm9wXCJcbiAgKG9wZW5DaGFuZ2UpPVwib25PcGVuQ2hhbmdlKCRldmVudClcIlxuICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gIChpbnB1dENoYW5nZSk9XCJvbklucHV0RGF0ZSgkZXZlbnQpXCI+XG4gIEBpZiAoaXNTaG93RGF0ZVBvcHVwKSB7XG4gICAgPGRhdGUtcG9wdXBcbiAgICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCJcbiAgICAgIFtpc1JhbmdlXT1cImlzUmFuZ2VcIlxuICAgICAgW3Nob3dXZWVrXT1cInNob3dXZWVrXCJcbiAgICAgIFtwYW5lbE1vZGVdPVwicGFuZWxNb2RlXCJcbiAgICAgIFtmbGV4aWJsZV09XCJmbGV4aWJsZVwiXG4gICAgICBbZmxleGlibGVEYXRlR3JhbnVsYXJpdHldPVwiZmxleGlibGVEYXRlR3JhbnVsYXJpdHlcIlxuICAgICAgW2RlZmF1bHRQaWNrZXJWYWx1ZV09XCJ0aHlEZWZhdWx0UGlja2VyVmFsdWVcIlxuICAgICAgKHBhbmVsTW9kZUNoYW5nZSk9XCJ0aHlPblBhbmVsQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXG4gICAgICAoc2hvd1RpbWVQaWNrZXJDaGFuZ2UpPVwib25TaG93VGltZVBpY2tlckNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIFt2YWx1ZV09XCJ0aHlWYWx1ZVwiXG4gICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChjYWxlbmRhckNoYW5nZSk9XCJvbkNhbGVuZGFyQ2hhbmdlKCRldmVudClcIlxuICAgICAgW3Nob3dUaW1lXT1cInRoeVNob3dUaW1lXCJcbiAgICAgIFttdXN0U2hvd1RpbWVdPVwid2l0aFRpbWVcIlxuICAgICAgW2Zvcm1hdF09XCJ0aHlGb3JtYXRcIlxuICAgICAgW2RhdGVSZW5kZXJdPVwidGh5RGF0ZVJlbmRlclwiXG4gICAgICBbZGlzYWJsZWREYXRlXT1cInRoeURpc2FibGVkRGF0ZVwiXG4gICAgICBbbWluRGF0ZV09XCJ0aHlNaW5EYXRlXCJcbiAgICAgIFttYXhEYXRlXT1cInRoeU1heERhdGVcIlxuICAgICAgW3Nob3dTaG9ydGN1dF09XCJ0aHlTaG93U2hvcnRjdXRcIlxuICAgICAgW3Nob3J0Y3V0UHJlc2V0c109XCJzaG9ydGN1dFByZXNldHNcIlxuICAgICAgW3Nob3J0Y3V0UG9zaXRpb25dPVwic2hvcnRjdXRQb3NpdGlvblwiXG4gICAgICBbdGltZXN0YW1wUHJlY2lzaW9uXT1cInRoeVRpbWVzdGFtcFByZWNpc2lvblwiXG4gICAgICAoZGF0ZVZhbHVlQ2hhbmdlKT1cIm9uRGF0ZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgW2NsYXNzTmFtZV09XCJ0aHlQYW5lbENsYXNzTmFtZVwiXG4gICAgKHJlc3VsdE9rKT1cIm9uUmVzdWx0T2soKVwiPjwvZGF0ZS1wb3B1cD5cbiAgfVxuPC90aHktcGlja2VyPlxuIl19
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXRldGh5cy1kYXRlLXBpY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9uZ3gtdGV0aHlzLWRhdGUtcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -1,273 +0,0 @@
1
- import { getFlexiblePositions } from 'ngx-tethys/core';
2
- import { coerceBooleanProperty, TinyDate } from 'ngx-tethys/util';
3
- import { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
4
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, inject, Input, Output, ViewChild } from '@angular/core';
5
- import { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';
6
- import { scaleMotion, scaleXMotion, scaleYMotion } from 'ngx-tethys/core';
7
- import { ThyIcon } from 'ngx-tethys/icon';
8
- import { ThyInputDirective } from 'ngx-tethys/input';
9
- import { ThyEnterDirective } from 'ngx-tethys/shared';
10
- import { DateHelperService } from './date-helper.service';
11
- import { getFlexibleAdvancedReadableValue } from './picker.util';
12
- import * as i0 from "@angular/core";
13
- /**
14
- * @private
15
- */
16
- export class ThyPicker {
17
- constructor() {
18
- this.changeDetector = inject(ChangeDetectorRef);
19
- this.dateHelper = inject(DateHelperService);
20
- this.isRange = false;
21
- this.open = undefined;
22
- this.placement = 'bottomLeft';
23
- this.flexible = false;
24
- this.blur = new EventEmitter();
25
- this.valueChange = new EventEmitter();
26
- this.openChange = new EventEmitter(); // Emitted when overlay's open state change
27
- this.inputChange = new EventEmitter();
28
- this.entering = false;
29
- this.prefixCls = 'thy-calendar';
30
- this.isShowDatePopup = false;
31
- this.overlayOpen = false; // Available when "open"=undefined
32
- this.overlayPositions = getFlexiblePositions(this.placement, 4);
33
- }
34
- get format() {
35
- return this.innerFormat;
36
- }
37
- set format(value) {
38
- this.innerFormat = value;
39
- this.updateReadableDate(this.innerValue);
40
- }
41
- get flexibleDateGranularity() {
42
- return this.innerflexibleDateGranularity;
43
- }
44
- set flexibleDateGranularity(granularity) {
45
- this.innerflexibleDateGranularity = granularity;
46
- this.updateReadableDate(this.innerValue);
47
- }
48
- get value() {
49
- return this.innerValue;
50
- }
51
- set value(value) {
52
- this.innerValue = value;
53
- if (!this.entering) {
54
- this.updateReadableDate(this.innerValue);
55
- }
56
- }
57
- get realOpenState() {
58
- // The value that really decide the open state of overlay
59
- return this.isOpenHandledByUser() ? !!this.open : this.overlayOpen;
60
- }
61
- get readonlyState() {
62
- return this.isRange || this.readonly || this.mode !== 'date';
63
- }
64
- ngOnChanges(changes) {
65
- // open by user
66
- if (changes.open && changes.open.currentValue !== undefined) {
67
- if (changes.open.currentValue) {
68
- this.showDatePopup();
69
- }
70
- else {
71
- this.closeDatePopup();
72
- }
73
- }
74
- }
75
- ngAfterViewInit() {
76
- this.overlayPositions = getFlexiblePositions(this.placement, 4);
77
- if (this.autoFocus) {
78
- this.focus();
79
- }
80
- }
81
- focus() {
82
- this.pickerInput.nativeElement.focus();
83
- }
84
- onBlur(event) {
85
- this.blur.emit(event);
86
- if (this.entering) {
87
- this.valueChange.emit(this.pickerInput.nativeElement.value);
88
- }
89
- this.entering = false;
90
- }
91
- onInput(event) {
92
- this.entering = true;
93
- const inputValue = event.target['value'];
94
- this.inputChange.emit(inputValue);
95
- }
96
- onEnter() {
97
- if (this.readonlyState) {
98
- return;
99
- }
100
- this.valueChange.emit(this.pickerInput.nativeElement.value || this.getReadableValue(new TinyDate()));
101
- this.entering = false;
102
- }
103
- showOverlay() {
104
- if (!this.realOpenState) {
105
- this.overlayOpen = true;
106
- this.showDatePopup();
107
- this.openChange.emit(this.overlayOpen);
108
- setTimeout(() => {
109
- if (this.cdkConnectedOverlay && this.cdkConnectedOverlay.overlayRef) {
110
- this.cdkConnectedOverlay.overlayRef.updatePosition();
111
- }
112
- });
113
- }
114
- }
115
- hideOverlay() {
116
- if (this.realOpenState) {
117
- this.overlayOpen = false;
118
- this.closeDatePopup();
119
- this.openChange.emit(this.overlayOpen);
120
- this.focus();
121
- }
122
- }
123
- showDatePopup() {
124
- this.isShowDatePopup = true;
125
- this.changeDetector.markForCheck();
126
- }
127
- closeDatePopup() {
128
- // Delay 200ms before destroying the date-popup, otherwise you will not see the closing animation.
129
- setTimeout(() => {
130
- this.isShowDatePopup = false;
131
- this.changeDetector.markForCheck();
132
- }, 200);
133
- }
134
- onClickInputBox() {
135
- if (!this.disabled && !this.readonly && !this.isOpenHandledByUser()) {
136
- this.showOverlay();
137
- }
138
- }
139
- onClickBackdrop() {
140
- this.hideOverlay();
141
- }
142
- onOverlayDetach() {
143
- this.hideOverlay();
144
- }
145
- onPositionChange(position) {
146
- this.changeDetector.detectChanges();
147
- }
148
- onClickClear(event) {
149
- event.preventDefault();
150
- event.stopPropagation();
151
- this.innerValue = this.isRange ? [] : null;
152
- this.valueChange.emit(this.innerValue);
153
- }
154
- getPartTypeIndex(partType) {
155
- return { left: 0, right: 1 }[partType];
156
- }
157
- isEmptyValue(value) {
158
- if (value === null) {
159
- return true;
160
- }
161
- else if (this.isRange) {
162
- return !value || !Array.isArray(value) || value.every(val => !val);
163
- }
164
- else {
165
- return !value;
166
- }
167
- }
168
- // Whether open state is permanently controlled by user himself
169
- isOpenHandledByUser() {
170
- return this.open !== undefined;
171
- }
172
- getReadableValue(tinyDate) {
173
- let value;
174
- if (this.isRange) {
175
- if (this.flexible && this.innerflexibleDateGranularity !== 'day') {
176
- return getFlexibleAdvancedReadableValue(tinyDate, this.innerflexibleDateGranularity);
177
- }
178
- else {
179
- const start = tinyDate[0] ? this.formatDate(tinyDate[0]) : '';
180
- const end = tinyDate[1] ? this.formatDate(tinyDate[1]) : '';
181
- return start && end ? `${start} ~ ${end}` : null;
182
- }
183
- }
184
- else {
185
- value = tinyDate;
186
- return value ? this.formatDate(value) : null;
187
- }
188
- }
189
- formatDate(value) {
190
- // dateHelper.format() 使用的是 angular 的 format,不支持季度,修改的话,改动比较大。
191
- // 此处通过对 innerFormat 做下判断,如果是季度的 format,使用 date-fns 的 format()
192
- if (this.innerFormat && (this.innerFormat.includes('q') || this.innerFormat.includes('Q'))) {
193
- return value.format(this.innerFormat);
194
- }
195
- else {
196
- return this.dateHelper.format(value.nativeDate, this.innerFormat);
197
- }
198
- }
199
- getPlaceholder() {
200
- return this.isRange && this.placeholder && Array.isArray(this.placeholder)
201
- ? this.placeholder.join(' ~ ')
202
- : this.placeholder;
203
- }
204
- updateReadableDate(setValue) {
205
- const readableValue = this.getReadableValue(setValue);
206
- if (readableValue === this.pickerInput.nativeElement['value']) {
207
- return;
208
- }
209
- this.pickerInput.nativeElement.value = readableValue;
210
- }
211
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyPicker, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
212
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyPicker, isStandalone: true, selector: "thy-picker", inputs: { isRange: "isRange", open: "open", disabled: "disabled", placeholder: "placeholder", readonly: "readonly", allowClear: "allowClear", autoFocus: "autoFocus", className: "className", size: "size", suffixIcon: "suffixIcon", placement: "placement", flexible: "flexible", mode: "mode", hasBackdrop: ["hasBackdrop", "hasBackdrop", coerceBooleanProperty], format: "format", flexibleDateGranularity: "flexibleDateGranularity", value: "value" }, outputs: { blur: "blur", valueChange: "valueChange", openChange: "openChange", inputChange: "inputChange" }, viewQueries: [{ propertyName: "origin", first: true, predicate: ["origin"], descendants: true, static: true }, { propertyName: "cdkConnectedOverlay", first: true, predicate: CdkConnectedOverlay, descendants: true, static: true }, { propertyName: "pickerInput", first: true, predicate: ["pickerInput"], descendants: true, static: true }, { propertyName: "overlayContainer", first: true, predicate: ["overlayContainer"], descendants: true }], exportAs: ["thyPicker"], usesOnChanges: true, ngImport: i0, template: "<span\n cdkOverlayOrigin\n #origin=\"cdkOverlayOrigin\"\n class=\"{{ prefixCls }}-picker {{ size ? prefixCls + '-picker-' + size : '' }} {{ className }}\"\n (click)=\"onClickInputBox()\">\n <ng-container>\n <input\n #pickerInput\n thyInput\n class=\"form-control-{{ size }} form-control {{ prefixCls }}-picker-input\"\n [ngClass]=\"{ 'panel-is-opened': realOpenState }\"\n [thySize]=\"size\"\n [tabindex]=\"-1\"\n [class.thy-input-disabled]=\"disabled\"\n [class.thy-input-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonlyState\"\n (blur)=\"onBlur($event)\"\n (input)=\"onInput($event)\"\n placeholder=\"{{ getPlaceholder() }}\"\n thyEnter\n (thyEnter)=\"onEnter()\" />\n <ng-container *ngTemplateOutlet=\"tplRightRest\"></ng-container>\n </ng-container>\n</span>\n\n<!-- Right operator icons -->\n<ng-template #tplRightRest>\n <span class=\"{{ prefixCls }}-picker-clear\">\n @if (!disabled && !isEmptyValue(value) && allowClear && !readonly) {\n <thy-icon\n thyIconName=\"close-circle-bold-fill\"\n (click)=\"onClickClear($event)\"\n ngClass=\"remove-link remove-link-{{ size }}\"></thy-icon>\n }\n </span>\n <span class=\"{{ prefixCls }}-picker-icon\">\n <thy-icon [thyIconName]=\"suffixIcon\" ngClass=\"remove-link-{{ size ? size : 'default' }}\"></thy-icon>\n </span>\n</ng-template>\n\n<!-- Overlay -->\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"realOpenState\"\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayPositions]=\"overlayPositions\"\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n cdkConnectedOverlayTransformOriginOn=\".thy-picker-container\"\n (positionChange)=\"onPositionChange($event)\"\n (backdropClick)=\"onClickBackdrop()\"\n (detach)=\"onOverlayDetach()\">\n <div\n #overlayContainer\n style=\"position: relative\"\n class=\"thy-picker-container\"\n [@scaleXMotion]=\"placement === 'left' || placement === 'right' ? 'enter' : 'void'\"\n [@scaleYMotion]=\"placement === 'top' || placement === 'bottom' ? 'enter' : 'void'\"\n [@scaleMotion]=\"placement !== 'left' && placement !== 'right' && placement !== 'top' && placement !== 'bottom' ? 'enter' : 'void'\">\n <!-- Compatible for overlay that not support offset dynamically and immediately -->\n <ng-content></ng-content>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: ThyInputDirective, selector: "input[thyInput], select[thyInput], textarea[thyInput]", inputs: ["thySize"], exportAs: ["thyInput"] }, { kind: "directive", type: ThyEnterDirective, selector: "[thyEnter]", outputs: ["thyEnter"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }], animations: [scaleXMotion, scaleYMotion, scaleMotion], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
213
- }
214
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyPicker, decorators: [{
215
- type: Component,
216
- args: [{ selector: 'thy-picker', exportAs: 'thyPicker', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CdkOverlayOrigin, ThyInputDirective, ThyEnterDirective, AsyncPipe, NgTemplateOutlet, ThyIcon, NgClass, CdkConnectedOverlay], animations: [scaleXMotion, scaleYMotion, scaleMotion], template: "<span\n cdkOverlayOrigin\n #origin=\"cdkOverlayOrigin\"\n class=\"{{ prefixCls }}-picker {{ size ? prefixCls + '-picker-' + size : '' }} {{ className }}\"\n (click)=\"onClickInputBox()\">\n <ng-container>\n <input\n #pickerInput\n thyInput\n class=\"form-control-{{ size }} form-control {{ prefixCls }}-picker-input\"\n [ngClass]=\"{ 'panel-is-opened': realOpenState }\"\n [thySize]=\"size\"\n [tabindex]=\"-1\"\n [class.thy-input-disabled]=\"disabled\"\n [class.thy-input-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonlyState\"\n (blur)=\"onBlur($event)\"\n (input)=\"onInput($event)\"\n placeholder=\"{{ getPlaceholder() }}\"\n thyEnter\n (thyEnter)=\"onEnter()\" />\n <ng-container *ngTemplateOutlet=\"tplRightRest\"></ng-container>\n </ng-container>\n</span>\n\n<!-- Right operator icons -->\n<ng-template #tplRightRest>\n <span class=\"{{ prefixCls }}-picker-clear\">\n @if (!disabled && !isEmptyValue(value) && allowClear && !readonly) {\n <thy-icon\n thyIconName=\"close-circle-bold-fill\"\n (click)=\"onClickClear($event)\"\n ngClass=\"remove-link remove-link-{{ size }}\"></thy-icon>\n }\n </span>\n <span class=\"{{ prefixCls }}-picker-icon\">\n <thy-icon [thyIconName]=\"suffixIcon\" ngClass=\"remove-link-{{ size ? size : 'default' }}\"></thy-icon>\n </span>\n</ng-template>\n\n<!-- Overlay -->\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"realOpenState\"\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayPositions]=\"overlayPositions\"\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n cdkConnectedOverlayTransformOriginOn=\".thy-picker-container\"\n (positionChange)=\"onPositionChange($event)\"\n (backdropClick)=\"onClickBackdrop()\"\n (detach)=\"onOverlayDetach()\">\n <div\n #overlayContainer\n style=\"position: relative\"\n class=\"thy-picker-container\"\n [@scaleXMotion]=\"placement === 'left' || placement === 'right' ? 'enter' : 'void'\"\n [@scaleYMotion]=\"placement === 'top' || placement === 'bottom' ? 'enter' : 'void'\"\n [@scaleMotion]=\"placement !== 'left' && placement !== 'right' && placement !== 'top' && placement !== 'bottom' ? 'enter' : 'void'\">\n <!-- Compatible for overlay that not support offset dynamically and immediately -->\n <ng-content></ng-content>\n </div>\n</ng-template>\n" }]
217
- }], propDecorators: { isRange: [{
218
- type: Input
219
- }], open: [{
220
- type: Input
221
- }], disabled: [{
222
- type: Input
223
- }], placeholder: [{
224
- type: Input
225
- }], readonly: [{
226
- type: Input
227
- }], allowClear: [{
228
- type: Input
229
- }], autoFocus: [{
230
- type: Input
231
- }], className: [{
232
- type: Input
233
- }], size: [{
234
- type: Input
235
- }], suffixIcon: [{
236
- type: Input
237
- }], placement: [{
238
- type: Input
239
- }], flexible: [{
240
- type: Input
241
- }], mode: [{
242
- type: Input
243
- }], hasBackdrop: [{
244
- type: Input,
245
- args: [{ transform: coerceBooleanProperty }]
246
- }], blur: [{
247
- type: Output
248
- }], valueChange: [{
249
- type: Output
250
- }], openChange: [{
251
- type: Output
252
- }], inputChange: [{
253
- type: Output
254
- }], origin: [{
255
- type: ViewChild,
256
- args: ['origin', { static: true }]
257
- }], cdkConnectedOverlay: [{
258
- type: ViewChild,
259
- args: [CdkConnectedOverlay, { static: true }]
260
- }], pickerInput: [{
261
- type: ViewChild,
262
- args: ['pickerInput', { static: true }]
263
- }], overlayContainer: [{
264
- type: ViewChild,
265
- args: ['overlayContainer', { static: false }]
266
- }], format: [{
267
- type: Input
268
- }], flexibleDateGranularity: [{
269
- type: Input
270
- }], value: [{
271
- type: Input
272
- }] } });
273
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL3BpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBa0MsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUdqRTs7R0FFRztBQVVILE1BQU0sT0FBTyxTQUFTO0lBVHRCO1FBVVksbUJBQWMsR0FBRyxNQUFNLENBQUMsaUJBQWlC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QXVCO3NCQUQxQixLQUFLO2dCQVdGLEtBQUs7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEZsZXhpYmxlUG9zaXRpb25zLCBUaHlQbGFjZW1lbnQgfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbmltcG9ydCB7IENka0Nvbm5lY3RlZE92ZXJsYXksIENka092ZXJsYXlPcmlnaW4sIENvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbkNoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBzY2FsZU1vdGlvbiwgc2NhbGVYTW90aW9uLCBzY2FsZVlNb3Rpb24gfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5pbXBvcnQgeyBUaHlJbnB1dERpcmVjdGl2ZSB9IGZyb20gJ25neC10ZXRoeXMvaW5wdXQnO1xuaW1wb3J0IHsgVGh5RW50ZXJEaXJlY3RpdmUgfSBmcm9tICduZ3gtdGV0aHlzL3NoYXJlZCc7XG5pbXBvcnQgeyBEYXRlSGVscGVyU2VydmljZSB9IGZyb20gJy4vZGF0ZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBDb21wYXRpYmxlVmFsdWUsIFJhbmdlUGFydFR5cGUgfSBmcm9tICcuL2lubmVyLXR5cGVzJztcbmltcG9ydCB7IGdldEZsZXhpYmxlQWR2YW5jZWRSZWFkYWJsZVZhbHVlIH0gZnJvbSAnLi9waWNrZXIudXRpbCc7XG5pbXBvcnQgeyBUaHlEYXRlR3JhbnVsYXJpdHkgfSBmcm9tICcuL3N0YW5kYXJkLXR5cGVzJztcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS1waWNrZXInLFxuICAgIGV4cG9ydEFzOiAndGh5UGlja2VyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDZGtPdmVybGF5T3JpZ2luLCBUaHlJbnB1dERpcmVjdGl2ZSwgVGh5RW50ZXJEaXJlY3RpdmUsIEFzeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgVGh5SWNvbiwgTmdDbGFzcywgQ2RrQ29ubmVjdGVkT3ZlcmxheV0sXG4gICAgYW5pbWF0aW9uczogW3NjYWxlWE1vdGlvbiwgc2NhbGVZTW90aW9uLCBzY2FsZU1vdGlvbl1cbn0pXG5leHBvcnQgY2xhc3MgVGh5UGlja2VyIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIGRhdGVIZWxwZXIgPSBpbmplY3QoRGF0ZUhlbHBlclNlcnZpY2UpO1xuXG4gICAgQElucHV0KCkgaXNSYW5nZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIG9wZW46IGJvb2xlYW4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyB8IHN0cmluZ1tdO1xuICAgIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGFsbG93Q2xlYXI6IGJvb2xlYW47XG4gICAgQElucHV0KCkgYXV0b0ZvY3VzOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGNsYXNzTmFtZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHNpemU6ICdzbScgfCAneHMnIHwgJ2xnJyB8ICdtZCcgfCAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgc3VmZml4SWNvbjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHBsYWNlbWVudDogVGh5UGxhY2VtZW50ID0gJ2JvdHRvbUxlZnQnO1xuICAgIEBJbnB1dCgpIGZsZXhpYmxlOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgbW9kZTogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIGhhc0JhY2tkcm9wOiBib29sZWFuO1xuICAgIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRpbnlEYXRlIHwgVGlueURhdGVbXSB8IG51bGw+KCk7XG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IG9wZW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7IC8vIEVtaXR0ZWQgd2hlbiBvdmVybGF5J3Mgb3BlbiBzdGF0ZSBjaGFuZ2VcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgaW5wdXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ29yaWdpbicsIHsgc3RhdGljOiB0cnVlIH0pIG9yaWdpbjogQ2RrT3ZlcmxheU9yaWdpbjtcbiAgICBAVmlld0NoaWxkKENka0Nvbm5lY3RlZE92ZXJsYXksIHsgc3RhdGljOiB0cnVlIH0pIGNka0Nvbm5lY3RlZE92ZXJsYXk6IENka0Nvbm5lY3RlZE92ZXJsYXk7XG4gICAgQFZpZXdDaGlsZCgncGlja2VySW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBwaWNrZXJJbnB1dDogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkKCdvdmVybGF5Q29udGFpbmVyJywgeyBzdGF0aWM6IGZhbHNlIH0pIG92ZXJsYXlDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgZm9ybWF0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbm5lckZvcm1hdDtcbiAgICB9XG5cbiAgICBzZXQgZm9ybWF0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5pbm5lckZvcm1hdCA9IHZhbHVlO1xuICAgICAgICB0aGlzLnVwZGF0ZVJlYWRhYmxlRGF0ZSh0aGlzLmlubmVyVmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbm5lcmZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5O1xuICAgIH1cblxuICAgIHNldCBmbGV4aWJsZURhdGVHcmFudWxhcml0eShncmFudWxhcml0eTogVGh5RGF0ZUdyYW51bGFyaXR5KSB7XG4gICAgICAgIHRoaXMuaW5uZXJmbGV4aWJsZURhdGVHcmFudWxhcml0eSA9IGdyYW51bGFyaXR5O1xuICAgICAgICB0aGlzLnVwZGF0ZVJlYWRhYmxlRGF0ZSh0aGlzLmlubmVyVmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbm5lclZhbHVlO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZSh2YWx1ZTogVGlueURhdGUgfCBUaW55RGF0ZVtdIHwgbnVsbCkge1xuICAgICAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgaWYgKCF0aGlzLmVudGVyaW5nKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVJlYWRhYmxlRGF0ZSh0aGlzLmlubmVyVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbm5lcmZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5OiBUaHlEYXRlR3JhbnVsYXJpdHk7XG5cbiAgICBwcml2YXRlIGlubmVyRm9ybWF0OiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIGlubmVyVmFsdWU6IFRpbnlEYXRlIHwgVGlueURhdGVbXSB8IG51bGw7XG5cbiAgICBlbnRlcmluZyA9IGZhbHNlO1xuXG4gICAgcHJlZml4Q2xzID0gJ3RoeS1jYWxlbmRhcic7XG5cbiAgICBpc1Nob3dEYXRlUG9wdXAgPSBmYWxzZTtcblxuICAgIG92ZXJsYXlPcGVuID0gZmFsc2U7IC8vIEF2YWlsYWJsZSB3aGVuIFwib3BlblwiPXVuZGVmaW5lZFxuXG4gICAgb3ZlcmxheVBvc2l0aW9ucyA9IGdldEZsZXhpYmxlUG9zaXRpb25zKHRoaXMucGxhY2VtZW50LCA0KTtcblxuICAgIGdldCByZWFsT3BlblN0YXRlKCk6IGJvb2xlYW4ge1xuICAgICAgICAvLyBUaGUgdmFsdWUgdGhhdCByZWFsbHkgZGVjaWRlIHRoZSBvcGVuIHN0YXRlIG9mIG92ZXJsYXlcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNPcGVuSGFuZGxlZEJ5VXNlcigpID8gISF0aGlzLm9wZW4gOiB0aGlzLm92ZXJsYXlPcGVuO1xuICAgIH1cblxuICAgIGdldCByZWFkb25seVN0YXRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1JhbmdlIHx8IHRoaXMucmVhZG9ubHkgfHwgdGhpcy5tb2RlICE9PSAnZGF0ZSc7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICAvLyBvcGVuIGJ5IHVzZXJcbiAgICAgICAgaWYgKGNoYW5nZXMub3BlbiAmJiBjaGFuZ2VzLm9wZW4uY3VycmVudFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmIChjaGFuZ2VzLm9wZW4uY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zaG93RGF0ZVBvcHVwKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2VEYXRlUG9wdXAoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vdmVybGF5UG9zaXRpb25zID0gZ2V0RmxleGlibGVQb3NpdGlvbnModGhpcy5wbGFjZW1lbnQsIDQpO1xuICAgICAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBpY2tlcklucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICAgICAgICBpZiAodGhpcy5lbnRlcmluZykge1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMucGlja2VySW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5lbnRlcmluZyA9IGZhbHNlO1xuICAgIH1cblxuICAgIG9uSW5wdXQoZXZlbnQ6IElucHV0RXZlbnQpIHtcbiAgICAgICAgdGhpcy5lbnRlcmluZyA9IHRydWU7XG4gICAgICAgIGNvbnN0IGlucHV0VmFsdWUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KVsndmFsdWUnXTtcbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5lbWl0KGlucHV0VmFsdWUpO1xuICAgIH1cblxuICAgIG9uRW50ZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLnJlYWRvbmx5U3RhdGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy5waWNrZXJJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlIHx8IHRoaXMuZ2V0UmVhZGFibGVWYWx1ZShuZXcgVGlueURhdGUoKSkpO1xuICAgICAgICB0aGlzLmVudGVyaW5nID0gZmFsc2U7XG4gICAgfVxuXG4gICAgc2hvd092ZXJsYXkoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5yZWFsT3BlblN0YXRlKSB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlPcGVuID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuc2hvd0RhdGVQb3B1cCgpO1xuXG4gICAgICAgICAgICB0aGlzLm9wZW5DaGFuZ2UuZW1pdCh0aGlzLm92ZXJsYXlPcGVuKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNka0Nvbm5lY3RlZE92ZXJsYXkgJiYgdGhpcy5jZGtDb25uZWN0ZWRPdmVybGF5Lm92ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jZGtDb25uZWN0ZWRPdmVybGF5Lm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhpZGVPdmVybGF5KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZWFsT3BlblN0YXRlKSB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlPcGVuID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmNsb3NlRGF0ZVBvcHVwKCk7XG5cbiAgICAgICAgICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KHRoaXMub3ZlcmxheU9wZW4pO1xuICAgICAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2hvd0RhdGVQb3B1cCgpIHtcbiAgICAgICAgdGhpcy5pc1Nob3dEYXRlUG9wdXAgPSB0cnVlO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGNsb3NlRGF0ZVBvcHVwKCkge1xuICAgICAgICAvLyBEZWxheSAyMDBtcyBiZWZvcmUgZGVzdHJveWluZyB0aGUgZGF0ZS1wb3B1cCwgb3RoZXJ3aXNlIHlvdSB3aWxsIG5vdCBzZWUgdGhlIGNsb3NpbmcgYW5pbWF0aW9uLlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNTaG93RGF0ZVBvcHVwID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9LCAyMDApO1xuICAgIH1cblxuICAgIG9uQ2xpY2tJbnB1dEJveCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICF0aGlzLnJlYWRvbmx5ICYmICF0aGlzLmlzT3BlbkhhbmRsZWRCeVVzZXIoKSkge1xuICAgICAgICAgICAgdGhpcy5zaG93T3ZlcmxheSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25DbGlja0JhY2tkcm9wKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVPdmVybGF5KCk7XG4gICAgfVxuXG4gICAgb25PdmVybGF5RGV0YWNoKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVPdmVybGF5KCk7XG4gICAgfVxuXG4gICAgb25Qb3NpdGlvbkNoYW5nZShwb3NpdGlvbjogQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIG9uQ2xpY2tDbGVhcihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmlubmVyVmFsdWUgPSB0aGlzLmlzUmFuZ2UgPyBbXSA6IG51bGw7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLmlubmVyVmFsdWUpO1xuICAgIH1cblxuICAgIGdldFBhcnRUeXBlSW5kZXgocGFydFR5cGU6IFJhbmdlUGFydFR5cGUpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4geyBsZWZ0OiAwLCByaWdodDogMSB9W3BhcnRUeXBlXTtcbiAgICB9XG5cbiAgICBpc0VtcHR5VmFsdWUodmFsdWU6IENvbXBhdGlibGVWYWx1ZSB8IG51bGwpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgICAgICAgIHJldHVybiAhdmFsdWUgfHwgIUFycmF5LmlzQXJyYXkodmFsdWUpIHx8IHZhbHVlLmV2ZXJ5KHZhbCA9PiAhdmFsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAhdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXaGV0aGVyIG9wZW4gc3RhdGUgaXMgcGVybWFuZW50bHkgY29udHJvbGxlZCBieSB1c2VyIGhpbXNlbGZcbiAgICBpc09wZW5IYW5kbGVkQnlVc2VyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuICE9PSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgZ2V0UmVhZGFibGVWYWx1ZSh0aW55RGF0ZTogVGlueURhdGUgfCBUaW55RGF0ZVtdKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGxldCB2YWx1ZTogVGlueURhdGU7XG4gICAgICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZsZXhpYmxlICYmIHRoaXMuaW5uZXJmbGV4aWJsZURhdGVHcmFudWxhcml0eSAhPT0gJ2RheScpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZ2V0RmxleGlibGVBZHZhbmNlZFJlYWRhYmxlVmFsdWUodGlueURhdGUgYXMgVGlueURhdGVbXSwgdGhpcy5pbm5lcmZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB0aW55RGF0ZVswXSA/IHRoaXMuZm9ybWF0RGF0ZSh0aW55RGF0ZVswXSkgOiAnJztcbiAgICAgICAgICAgICAgICBjb25zdCBlbmQgPSB0aW55RGF0ZVsxXSA/IHRoaXMuZm9ybWF0RGF0ZSh0aW55RGF0ZVsxXSkgOiAnJztcbiAgICAgICAgICAgICAgICByZXR1cm4gc3RhcnQgJiYgZW5kID8gYCR7c3RhcnR9IH4gJHtlbmR9YCA6IG51bGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB2YWx1ZSA9IHRpbnlEYXRlIGFzIFRpbnlEYXRlO1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlID8gdGhpcy5mb3JtYXREYXRlKHZhbHVlKSA6IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmb3JtYXREYXRlKHZhbHVlOiBUaW55RGF0ZSkge1xuICAgICAgICAvLyBkYXRlSGVscGVyLmZvcm1hdCgpIOS9v+eUqOeahOaYryBhbmd1bGFyIOeahCBmb3JtYXTvvIzkuI3mlK/mjIHlraPluqbvvIzkv67mlLnnmoTor53vvIzmlLnliqjmr5TovoPlpKfjgIJcbiAgICAgICAgLy8g5q2k5aSE6YCa6L+H5a+5IGlubmVyRm9ybWF0IOWBmuS4i+WIpOaWre+8jOWmguaenOaYr+Wto+W6pueahCBmb3JtYXTvvIzkvb/nlKggZGF0ZS1mbnMg55qEIGZvcm1hdCgpXG4gICAgICAgIGlmICh0aGlzLmlubmVyRm9ybWF0ICYmICh0aGlzLmlubmVyRm9ybWF0LmluY2x1ZGVzKCdxJykgfHwgdGhpcy5pbm5lckZvcm1hdC5pbmNsdWRlcygnUScpKSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLmZvcm1hdCh0aGlzLmlubmVyRm9ybWF0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRhdGVIZWxwZXIuZm9ybWF0KHZhbHVlLm5hdGl2ZURhdGUsIHRoaXMuaW5uZXJGb3JtYXQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0UGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNSYW5nZSAmJiB0aGlzLnBsYWNlaG9sZGVyICYmIEFycmF5LmlzQXJyYXkodGhpcy5wbGFjZWhvbGRlcilcbiAgICAgICAgICAgID8gKHRoaXMucGxhY2Vob2xkZXIgYXMgc3RyaW5nW10pLmpvaW4oJyB+ICcpXG4gICAgICAgICAgICA6ICh0aGlzLnBsYWNlaG9sZGVyIGFzIHN0cmluZyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVSZWFkYWJsZURhdGUoc2V0VmFsdWU6IFRpbnlEYXRlIHwgVGlueURhdGVbXSB8IG51bGwpIHtcbiAgICAgICAgY29uc3QgcmVhZGFibGVWYWx1ZSA9IHRoaXMuZ2V0UmVhZGFibGVWYWx1ZShzZXRWYWx1ZSk7XG4gICAgICAgIGlmIChyZWFkYWJsZVZhbHVlID09PSB0aGlzLnBpY2tlcklucHV0Lm5hdGl2ZUVsZW1lbnRbJ3ZhbHVlJ10pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucGlja2VySW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IHJlYWRhYmxlVmFsdWU7XG4gICAgfVxufVxuIiwiPHNwYW5cbiAgY2RrT3ZlcmxheU9yaWdpblxuICAjb3JpZ2luPVwiY2RrT3ZlcmxheU9yaWdpblwiXG4gIGNsYXNzPVwie3sgcHJlZml4Q2xzIH19LXBpY2tlciB7eyBzaXplID8gcHJlZml4Q2xzICsgJy1waWNrZXItJyArIHNpemUgOiAnJyB9fSB7eyBjbGFzc05hbWUgfX1cIlxuICAoY2xpY2spPVwib25DbGlja0lucHV0Qm94KClcIj5cbiAgPG5nLWNvbnRhaW5lcj5cbiAgICA8aW5wdXRcbiAgICAgICNwaWNrZXJJbnB1dFxuICAgICAgdGh5SW5wdXRcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sLXt7IHNpemUgfX0gZm9ybS1jb250cm9sIHt7IHByZWZpeENscyB9fS1waWNrZXItaW5wdXRcIlxuICAgICAgW25nQ2xhc3NdPVwieyAncGFuZWwtaXMtb3BlbmVkJzogcmVhbE9wZW5TdGF0ZSB9XCJcbiAgICAgIFt0aHlTaXplXT1cInNpemVcIlxuICAgICAgW3RhYmluZGV4XT1cIi0xXCJcbiAgICAgIFtjbGFzcy50aHktaW5wdXQtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2NsYXNzLnRoeS1pbnB1dC1yZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5U3RhdGVcIlxuICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICBwbGFjZWhvbGRlcj1cInt7IGdldFBsYWNlaG9sZGVyKCkgfX1cIlxuICAgICAgdGh5RW50ZXJcbiAgICAgICh0aHlFbnRlcik9XCJvbkVudGVyKClcIiAvPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0cGxSaWdodFJlc3RcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L3NwYW4+XG5cbjwhLS0gUmlnaHQgb3BlcmF0b3IgaWNvbnMgLS0+XG48bmctdGVtcGxhdGUgI3RwbFJpZ2h0UmVzdD5cbiAgPHNwYW4gY2xhc3M9XCJ7eyBwcmVmaXhDbHMgfX0tcGlja2VyLWNsZWFyXCI+XG4gICAgQGlmICghZGlzYWJsZWQgJiYgIWlzRW1wdHlWYWx1ZSh2YWx1ZSkgJiYgYWxsb3dDbGVhciAmJiAhcmVhZG9ubHkpIHtcbiAgICAgIDx0aHktaWNvblxuICAgICAgICB0aHlJY29uTmFtZT1cImNsb3NlLWNpcmNsZS1ib2xkLWZpbGxcIlxuICAgICAgICAoY2xpY2spPVwib25DbGlja0NsZWFyKCRldmVudClcIlxuICAgICAgbmdDbGFzcz1cInJlbW92ZS1saW5rIHJlbW92ZS1saW5rLXt7IHNpemUgfX1cIj48L3RoeS1pY29uPlxuICAgIH1cbiAgPC9zcGFuPlxuICA8c3BhbiBjbGFzcz1cInt7IHByZWZpeENscyB9fS1waWNrZXItaWNvblwiPlxuICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwic3VmZml4SWNvblwiIG5nQ2xhc3M9XCJyZW1vdmUtbGluay17eyBzaXplID8gc2l6ZSA6ICdkZWZhdWx0JyB9fVwiPjwvdGh5LWljb24+XG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS0gT3ZlcmxheSAtLT5cbjxuZy10ZW1wbGF0ZVxuICBjZGtDb25uZWN0ZWRPdmVybGF5XG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm9yaWdpblwiXG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJyZWFsT3BlblN0YXRlXCJcbiAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlIYXNCYWNrZHJvcF09XCJoYXNCYWNrZHJvcFwiXG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25zXT1cIm92ZXJsYXlQb3NpdGlvbnNcIlxuICBjZGtDb25uZWN0ZWRPdmVybGF5QmFja2Ryb3BDbGFzcz1cImNkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wXCJcbiAgY2RrQ29ubmVjdGVkT3ZlcmxheVRyYW5zZm9ybU9yaWdpbk9uPVwiLnRoeS1waWNrZXItY29udGFpbmVyXCJcbiAgKHBvc2l0aW9uQ2hhbmdlKT1cIm9uUG9zaXRpb25DaGFuZ2UoJGV2ZW50KVwiXG4gIChiYWNrZHJvcENsaWNrKT1cIm9uQ2xpY2tCYWNrZHJvcCgpXCJcbiAgKGRldGFjaCk9XCJvbk92ZXJsYXlEZXRhY2goKVwiPlxuICA8ZGl2XG4gICAgI292ZXJsYXlDb250YWluZXJcbiAgICBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZVwiXG4gICAgY2xhc3M9XCJ0aHktcGlja2VyLWNvbnRhaW5lclwiXG4gICAgW0BzY2FsZVhNb3Rpb25dPVwicGxhY2VtZW50ID09PSAnbGVmdCcgfHwgcGxhY2VtZW50ID09PSAncmlnaHQnID8gJ2VudGVyJyA6ICd2b2lkJ1wiXG4gICAgW0BzY2FsZVlNb3Rpb25dPVwicGxhY2VtZW50ID09PSAndG9wJyB8fCBwbGFjZW1lbnQgPT09ICdib3R0b20nID8gJ2VudGVyJyA6ICd2b2lkJ1wiXG4gICAgW0BzY2FsZU1vdGlvbl09XCJwbGFjZW1lbnQgIT09ICdsZWZ0JyAmJiBwbGFjZW1lbnQgIT09ICdyaWdodCcgJiYgcGxhY2VtZW50ICE9PSAndG9wJyAmJiBwbGFjZW1lbnQgIT09ICdib3R0b20nID8gJ2VudGVyJyA6ICd2b2lkJ1wiPlxuICAgIDwhLS0gQ29tcGF0aWJsZSBmb3Igb3ZlcmxheSB0aGF0IG5vdCBzdXBwb3J0IG9mZnNldCBkeW5hbWljYWxseSBhbmQgaW1tZWRpYXRlbHkgLS0+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,112 +0,0 @@
1
- import { Pipe, inject } from '@angular/core';
2
- import { TinyDate } from 'ngx-tethys/util';
3
- import { DateHelperService } from './date-helper.service';
4
- import { getFlexibleAdvancedReadableValue, transformDateValue } from './picker.util';
5
- import * as i0 from "@angular/core";
6
- /**
7
- * @private
8
- */
9
- export class ThyDatePickerFormatPipe {
10
- constructor() {
11
- this.dateHelper = inject(DateHelperService);
12
- }
13
- transform(originalValue, formatStr) {
14
- const { value, withTime, flexibleDateGranularity } = transformDateValue(originalValue);
15
- if (!formatStr) {
16
- formatStr = withTime ? 'yyyy-MM-dd HH:mm' : 'yyyy-MM-dd';
17
- }
18
- if (!Array.isArray(value)) {
19
- return this.dateHelper.format(value, formatStr);
20
- }
21
- else {
22
- if (flexibleDateGranularity && flexibleDateGranularity !== 'day') {
23
- const tinyDates = [new TinyDate(value[0]), new TinyDate(value[1])];
24
- return getFlexibleAdvancedReadableValue(tinyDates, flexibleDateGranularity);
25
- }
26
- else {
27
- return value.map(date => this.dateHelper.format(date, formatStr)).join(' ~ ');
28
- }
29
- }
30
- }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePickerFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
32
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePickerFormatPipe, isStandalone: true, name: "thyDatePickerFormat" }); }
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePickerFormatPipe, decorators: [{
35
- type: Pipe,
36
- args: [{
37
- name: 'thyDatePickerFormat',
38
- standalone: true
39
- }]
40
- }] });
41
- export class ThyQuarterPickerFormatPipe {
42
- transform(originalValue, formatStr) {
43
- const { value, withTime } = transformDateValue(originalValue);
44
- if (!formatStr) {
45
- formatStr = 'yyyy-qqq';
46
- }
47
- if (!value) {
48
- return;
49
- }
50
- if (!Array.isArray(value)) {
51
- const _value = new TinyDate(value);
52
- return _value.format(formatStr);
53
- }
54
- else {
55
- return value
56
- .map(date => {
57
- const _date = new TinyDate(date);
58
- return _date.format(formatStr);
59
- })
60
- .join(' ~ ');
61
- }
62
- }
63
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyQuarterPickerFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
64
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ThyQuarterPickerFormatPipe, isStandalone: true, name: "thyQuarterPickerFormat" }); }
65
- }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyQuarterPickerFormatPipe, decorators: [{
67
- type: Pipe,
68
- args: [{
69
- name: 'thyQuarterPickerFormat',
70
- standalone: true
71
- }]
72
- }] });
73
- /**
74
- * @private
75
- */
76
- export class ThyDatePickerFormatStringPipe {
77
- constructor() {
78
- this.dateHelper = inject(DateHelperService);
79
- }
80
- transform(originalValue) {
81
- const { withTime } = transformDateValue(originalValue);
82
- return withTime ? 'yyyy-MM-dd HH:mm' : 'yyyy-MM-dd';
83
- }
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePickerFormatStringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
85
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePickerFormatStringPipe, isStandalone: true, name: "thyDatePickerFormatString" }); }
86
- }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePickerFormatStringPipe, decorators: [{
88
- type: Pipe,
89
- args: [{
90
- name: 'thyDatePickerFormatString',
91
- standalone: true
92
- }]
93
- }] });
94
- /**
95
- * @private
96
- */
97
- export class DatePickerAdvancedShowYearTipPipe {
98
- constructor() { }
99
- transform(value, type) {
100
- return type !== 'year' && value.startValue.isSameDay(value.startValue.startOfYear());
101
- }
102
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatePickerAdvancedShowYearTipPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
103
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DatePickerAdvancedShowYearTipPipe, isStandalone: true, name: "showYearTip" }); }
104
- }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatePickerAdvancedShowYearTipPipe, decorators: [{
106
- type: Pipe,
107
- args: [{
108
- name: 'showYearTip',
109
- standalone: true
110
- }]
111
- }], ctorParameters: () => [] });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2VyLnBpcGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL3BpY2tlci5waXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHckY7O0dBRUc7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO0lBSnBDO1FBS1ksZUFBVSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0tBb0JsRDtJQWxCRyxTQUFTLENBQUMsYUFBNkQsRUFBRSxTQUFrQjtRQUN2RixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRSxHQUFHLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXZGLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNiLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDN0QsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEQsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLHVCQUF1QixJQUFJLHVCQUF1QixLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUMvRCxNQUFNLFNBQVMsR0FBRyxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxF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aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBEYXRlSGVscGVyU2VydmljZSB9IGZyb20gJy4vZGF0ZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBZHZhbmNlZFNlbGVjdGFibGVDZWxsIH0gZnJvbSAnLi9pbm5lci10eXBlcyc7XG5pbXBvcnQgeyBnZXRGbGV4aWJsZUFkdmFuY2VkUmVhZGFibGVWYWx1ZSwgdHJhbnNmb3JtRGF0ZVZhbHVlIH0gZnJvbSAnLi9waWNrZXIudXRpbCc7XG5pbXBvcnQgeyBDb21wYXRpYmxlRGF0ZSwgRGF0ZUVudHJ5LCBUaHlEYXRlR3JhbnVsYXJpdHksIFRoeURhdGVSYW5nZUVudHJ5IH0gZnJvbSAnLi9zdGFuZGFyZC10eXBlcyc7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICd0aHlEYXRlUGlja2VyRm9ybWF0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeURhdGVQaWNrZXJGb3JtYXRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHJpdmF0ZSBkYXRlSGVscGVyID0gaW5qZWN0KERhdGVIZWxwZXJTZXJ2aWNlKTtcblxuICAgIHRyYW5zZm9ybShvcmlnaW5hbFZhbHVlOiBDb21wYXRpYmxlRGF0ZSB8IERhdGVFbnRyeSB8IFRoeURhdGVSYW5nZUVudHJ5LCBmb3JtYXRTdHI/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCB7IHZhbHVlLCB3aXRoVGltZSwgZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgfSA9IHRyYW5zZm9ybURhdGVWYWx1ZShvcmlnaW5hbFZhbHVlKTtcblxuICAgICAgICBpZiAoIWZvcm1hdFN0cikge1xuICAgICAgICAgICAgZm9ybWF0U3RyID0gd2l0aFRpbWUgPyAneXl5eS1NTS1kZCBISDptbScgOiAneXl5eS1NTS1kZCc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRlSGVscGVyLmZvcm1hdCh2YWx1ZSwgZm9ybWF0U3RyKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChmbGV4aWJsZURhdGVHcmFudWxhcml0eSAmJiBmbGV4aWJsZURhdGVHcmFudWxhcml0eSAhPT0gJ2RheScpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aW55RGF0ZXMgPSBbbmV3IFRpbnlEYXRlKHZhbHVlWzBdKSwgbmV3IFRpbnlEYXRlKHZhbHVlWzFdKV07XG4gICAgICAgICAgICAgICAgcmV0dXJuIGdldEZsZXhpYmxlQWR2YW5jZWRSZWFkYWJsZVZhbHVlKHRpbnlEYXRlcywgZmxleGlibGVEYXRlR3JhbnVsYXJpdHkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUubWFwKGRhdGUgPT4gdGhpcy5kYXRlSGVscGVyLmZvcm1hdChkYXRlLCBmb3JtYXRTdHIpKS5qb2luKCcgfiAnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQFBpcGUoe1xuICAgIG5hbWU6ICd0aHlRdWFydGVyUGlja2VyRm9ybWF0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeVF1YXJ0ZXJQaWNrZXJGb3JtYXRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKG9yaWdpbmFsVmFsdWU6IENvbXBhdGlibGVEYXRlIHwgRGF0ZUVudHJ5IHwgVGh5RGF0ZVJhbmdlRW50cnksIGZvcm1hdFN0cj86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHsgdmFsdWUsIHdpdGhUaW1lIH0gPSB0cmFuc2Zvcm1EYXRlVmFsdWUob3JpZ2luYWxWYWx1ZSk7XG5cbiAgICAgICAgaWYgKCFmb3JtYXRTdHIpIHtcbiAgICAgICAgICAgIGZvcm1hdFN0ciA9ICd5eXl5LXFxcSc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICBjb25zdCBfdmFsdWUgPSBuZXcgVGlueURhdGUodmFsdWUpO1xuICAgICAgICAgICAgcmV0dXJuIF92YWx1ZS5mb3JtYXQoZm9ybWF0U3RyKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAgICAgICAgIC5tYXAoZGF0ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IF9kYXRlID0gbmV3IFRpbnlEYXRlKGRhdGUpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2RhdGUuZm9ybWF0KGZvcm1hdFN0cik7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuam9pbignIH4gJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICd0aHlEYXRlUGlja2VyRm9ybWF0U3RyaW5nJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeURhdGVQaWNrZXJGb3JtYXRTdHJpbmdQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHJpdmF0ZSBkYXRlSGVscGVyID0gaW5qZWN0KERhdGVIZWxwZXJTZXJ2aWNlKTtcblxuICAgIHRyYW5zZm9ybShvcmlnaW5hbFZhbHVlOiBDb21wYXRpYmxlRGF0ZSB8IERhdGVFbnRyeSB8IFRoeURhdGVSYW5nZUVudHJ5KTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgeyB3aXRoVGltZSB9ID0gdHJhbnNmb3JtRGF0ZVZhbHVlKG9yaWdpbmFsVmFsdWUpO1xuXG4gICAgICAgIHJldHVybiB3aXRoVGltZSA/ICd5eXl5LU1NLWRkIEhIOm1tJyA6ICd5eXl5LU1NLWRkJztcbiAgICB9XG59XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICdzaG93WWVhclRpcCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYXRlUGlja2VyQWR2YW5jZWRTaG93WWVhclRpcFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBjb25zdHJ1Y3RvcigpIHt9XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBBZHZhbmNlZFNlbGVjdGFibGVDZWxsLCB0eXBlOiBUaHlEYXRlR3JhbnVsYXJpdHkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR5cGUgIT09ICd5ZWFyJyAmJiB2YWx1ZS5zdGFydFZhbHVlLmlzU2FtZURheSh2YWx1ZS5zdGFydFZhbHVlLnN0YXJ0T2ZZZWFyKCkpO1xuICAgIH1cbn1cbiJdfQ==