@tetacom/ng-components 1.4.22 → 1.5.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 (324) hide show
  1. package/.eslintrc.json +3 -5
  2. package/component/dropdown/dropdown-base.d.ts +1 -1
  3. package/directive/dynamic-content-base.directive.d.ts +1 -1
  4. package/fesm2022/tetacom-ng-components.mjs +515 -489
  5. package/fesm2022/tetacom-ng-components.mjs.map +1 -1
  6. package/package.json +3 -5
  7. package/pipe/prepend-zero/prepend-zero.pipe.d.ts +7 -0
  8. package/pipe/prepend-zero/public-api.d.ts +1 -0
  9. package/pipe/public-api.d.ts +1 -0
  10. package/style/badge.scss +6 -4
  11. package/style/checkbox.scss +3 -1
  12. package/style/chips.scss +3 -1
  13. package/style/icon.scss +3 -1
  14. package/style/message.scss +3 -1
  15. package/style/navigation.scss +3 -1
  16. package/style/presets/view-types.scss +3 -1
  17. package/style/toggle.scss +3 -1
  18. package/style/toolbar.scss +3 -1
  19. package/esm2022/common/contract/auto-close-ignore-case.mjs +0 -2
  20. package/esm2022/common/contract/constructor-type.mjs +0 -2
  21. package/esm2022/common/contract/dynamic-data.mjs +0 -10
  22. package/esm2022/common/contract/i-dictionary.mjs +0 -2
  23. package/esm2022/common/contract/i-id-name.mjs +0 -2
  24. package/esm2022/common/contract/i-id.mjs +0 -2
  25. package/esm2022/common/contract/i-rect.mjs +0 -2
  26. package/esm2022/common/contract/i-tree-data.mjs +0 -2
  27. package/esm2022/common/contract/public-api.mjs +0 -10
  28. package/esm2022/common/contract/teta-content-ref.mjs +0 -8
  29. package/esm2022/common/enum/align.enum.mjs +0 -13
  30. package/esm2022/common/enum/public-api.mjs +0 -4
  31. package/esm2022/common/enum/teta-size.enum.mjs +0 -9
  32. package/esm2022/common/enum/vertical-align.enum.mjs +0 -11
  33. package/esm2022/common/model/public-api.mjs +0 -2
  34. package/esm2022/common/model/view-type.model.mjs +0 -2
  35. package/esm2022/common/public-api.mjs +0 -6
  36. package/esm2022/common/service/click.service.mjs +0 -23
  37. package/esm2022/common/service/dynamic-component.service.mjs +0 -93
  38. package/esm2022/common/service/overlay-container.service.mjs +0 -41
  39. package/esm2022/common/service/public-api.mjs +0 -4
  40. package/esm2022/common/util/array-util.mjs +0 -121
  41. package/esm2022/common/util/dom-util.mjs +0 -19
  42. package/esm2022/common/util/position-util.mjs +0 -136
  43. package/esm2022/common/util/public-api.mjs +0 -4
  44. package/esm2022/component/accordion/accordion/accordion.component.mjs +0 -17
  45. package/esm2022/component/accordion/accordion-content.directive.mjs +0 -17
  46. package/esm2022/component/accordion/accordion-head/accordion-head.component.mjs +0 -51
  47. package/esm2022/component/accordion/accordion-item/accordion-item.component.mjs +0 -62
  48. package/esm2022/component/accordion/public-api.mjs +0 -5
  49. package/esm2022/component/autocomplete/autocomplete/autocomplete.component.mjs +0 -13
  50. package/esm2022/component/autocomplete/public-api.mjs +0 -2
  51. package/esm2022/component/avatar/avatar/avatar.component.mjs +0 -55
  52. package/esm2022/component/avatar/model/avatar-color.enum.mjs +0 -22
  53. package/esm2022/component/avatar/public-api.mjs +0 -2
  54. package/esm2022/component/button/button/button.component.mjs +0 -67
  55. package/esm2022/component/button/public-api.mjs +0 -2
  56. package/esm2022/component/chart-3d/chart3d/chart3d.component.mjs +0 -241
  57. package/esm2022/component/chart-3d/model/base-3d-point.mjs +0 -2
  58. package/esm2022/component/chart-3d/model/chart-3d-options.mjs +0 -7
  59. package/esm2022/component/chart-3d/model/public-api.mjs +0 -3
  60. package/esm2022/component/chart-3d/model/series-3d.mjs +0 -7
  61. package/esm2022/component/chart-3d/public-api.mjs +0 -3
  62. package/esm2022/component/checkbox/checkbox/checkbox.component.mjs +0 -137
  63. package/esm2022/component/checkbox/public-api.mjs +0 -2
  64. package/esm2022/component/date-picker/base-calendar.mjs +0 -121
  65. package/esm2022/component/date-picker/base-picker.mjs +0 -109
  66. package/esm2022/component/date-picker/date-picker/date-calendar/date-calendar.component.mjs +0 -50
  67. package/esm2022/component/date-picker/date-picker/date-picker.component.mjs +0 -228
  68. package/esm2022/component/date-picker/date-range/date-range.component.mjs +0 -233
  69. package/esm2022/component/date-picker/date-range/range-calendar/range-calendar.component.mjs +0 -118
  70. package/esm2022/component/date-picker/day-picker/day-item/day-item.component.mjs +0 -15
  71. package/esm2022/component/date-picker/day-picker/day-picker.component.mjs +0 -118
  72. package/esm2022/component/date-picker/model/date-period.mjs +0 -7
  73. package/esm2022/component/date-picker/model/date-picker-mode.enum.mjs +0 -7
  74. package/esm2022/component/date-picker/model/day-model.mjs +0 -13
  75. package/esm2022/component/date-picker/model/from-to.model.mjs +0 -2
  76. package/esm2022/component/date-picker/model/min-max-date.model.mjs +0 -2
  77. package/esm2022/component/date-picker/model/public-api.mjs +0 -6
  78. package/esm2022/component/date-picker/month-picker/month-picker.component.mjs +0 -47
  79. package/esm2022/component/date-picker/public-api.mjs +0 -6
  80. package/esm2022/component/date-picker/year-picker/scroll-to-selected-year.directive.mjs +0 -27
  81. package/esm2022/component/date-picker/year-picker/year-picker.component.mjs +0 -48
  82. package/esm2022/component/delimiter/delimiter/delimiter.component.mjs +0 -63
  83. package/esm2022/component/delimiter/public-api.mjs +0 -2
  84. package/esm2022/component/divider/divider/divider.component.mjs +0 -18
  85. package/esm2022/component/divider/public-api.mjs +0 -2
  86. package/esm2022/component/dropdown/dropdown/dropdown.component.mjs +0 -30
  87. package/esm2022/component/dropdown/dropdown-base.mjs +0 -224
  88. package/esm2022/component/dropdown/dropdown-content.directive.mjs +0 -18
  89. package/esm2022/component/dropdown/dropdown-head.directive.mjs +0 -19
  90. package/esm2022/component/dropdown/dropdown.directive.mjs +0 -38
  91. package/esm2022/component/dropdown/public-api.mjs +0 -5
  92. package/esm2022/component/dynamic-component/popup-content/popup-content.component.mjs +0 -53
  93. package/esm2022/component/dynamic-component/public-api.mjs +0 -2
  94. package/esm2022/component/expand-card/expand-card/expand-card.component.mjs +0 -34
  95. package/esm2022/component/expand-card/expand-item/expand-item.component.mjs +0 -25
  96. package/esm2022/component/expand-card/public-api.mjs +0 -3
  97. package/esm2022/component/expand-panel/expand-panel/expand-panel.component.mjs +0 -65
  98. package/esm2022/component/expand-panel/expand-panel-content.directive.mjs +0 -17
  99. package/esm2022/component/expand-panel/expand-panel-head.directive.mjs +0 -17
  100. package/esm2022/component/expand-panel/public-api.mjs +0 -4
  101. package/esm2022/component/file-upload/file-item/file-item.component.mjs +0 -13
  102. package/esm2022/component/file-upload/file-upload-area/file-upload-area.component.mjs +0 -87
  103. package/esm2022/component/file-upload/public-api.mjs +0 -3
  104. package/esm2022/component/filter/base/filter-base.mjs +0 -10
  105. package/esm2022/component/filter/base/filter-component-base.mjs +0 -3
  106. package/esm2022/component/filter/boolean-filter/boolean-filter.component.mjs +0 -63
  107. package/esm2022/component/filter/contarct/boolean-filter.mjs +0 -8
  108. package/esm2022/component/filter/contarct/date-filter-value.mjs +0 -9
  109. package/esm2022/component/filter/contarct/date-filter.mjs +0 -11
  110. package/esm2022/component/filter/contarct/filter-component-map.mjs +0 -15
  111. package/esm2022/component/filter/contarct/filter-item.mjs +0 -34
  112. package/esm2022/component/filter/contarct/filter-state.mjs +0 -145
  113. package/esm2022/component/filter/contarct/i-filter.mjs +0 -2
  114. package/esm2022/component/filter/contarct/list-filter.mjs +0 -12
  115. package/esm2022/component/filter/contarct/numeric-filter-value.mjs +0 -10
  116. package/esm2022/component/filter/contarct/numeric-filter.mjs +0 -9
  117. package/esm2022/component/filter/contarct/sort-param.mjs +0 -14
  118. package/esm2022/component/filter/contarct/string-filter.mjs +0 -12
  119. package/esm2022/component/filter/date-filter/date-filter.component.mjs +0 -64
  120. package/esm2022/component/filter/enum/filter-type.enum.mjs +0 -10
  121. package/esm2022/component/filter/enum/list-filter-type.enum.mjs +0 -6
  122. package/esm2022/component/filter/enum/string-filter-type.enum.mjs +0 -20
  123. package/esm2022/component/filter/filter-host/filter-host.component.mjs +0 -79
  124. package/esm2022/component/filter/list-filter/list-filter.component.mjs +0 -96
  125. package/esm2022/component/filter/numeric-filter/numeric-filter.component.mjs +0 -64
  126. package/esm2022/component/filter/public-api.mjs +0 -23
  127. package/esm2022/component/filter/string-filter/string-filter.component.mjs +0 -64
  128. package/esm2022/component/icon/icon/icon.component.mjs +0 -54
  129. package/esm2022/component/icon/icon-file/icon-file.component.mjs +0 -27
  130. package/esm2022/component/icon/icon-sprite.directive.mjs +0 -34
  131. package/esm2022/component/icon/icon.service.mjs +0 -58
  132. package/esm2022/component/icon/public-api.mjs +0 -5
  133. package/esm2022/component/input/color-input/color-input.component.mjs +0 -71
  134. package/esm2022/component/input/form-group-title/form-group-title.component.mjs +0 -18
  135. package/esm2022/component/input/input/input.component.mjs +0 -38
  136. package/esm2022/component/input/public-api.mjs +0 -6
  137. package/esm2022/component/input/text-field/text-field.component.mjs +0 -94
  138. package/esm2022/component/message/message/message.component.mjs +0 -76
  139. package/esm2022/component/message/message-host/message-host.component.mjs +0 -84
  140. package/esm2022/component/message/message.service.mjs +0 -35
  141. package/esm2022/component/message/model/message.mjs +0 -23
  142. package/esm2022/component/message/public-api.mjs +0 -5
  143. package/esm2022/component/modal/dialog/dialog.component.mjs +0 -46
  144. package/esm2022/component/modal/dialog.service.mjs +0 -40
  145. package/esm2022/component/modal/modal-container/modal-container.component.mjs +0 -77
  146. package/esm2022/component/modal/modal.module.mjs +0 -32
  147. package/esm2022/component/modal/modal.service.mjs +0 -122
  148. package/esm2022/component/modal/model/current-modal.mjs +0 -3
  149. package/esm2022/component/modal/model/i-modal-config.mjs +0 -2
  150. package/esm2022/component/modal/model/i-modal-result.mjs +0 -2
  151. package/esm2022/component/modal/model/modal-close-reason.enum.mjs +0 -8
  152. package/esm2022/component/modal/model/modal-instance.mjs +0 -34
  153. package/esm2022/component/modal/public-api.mjs +0 -11
  154. package/esm2022/component/pager/model/pager-state.mjs +0 -51
  155. package/esm2022/component/pager/pager/pager.component.mjs +0 -13
  156. package/esm2022/component/pager/public-api.mjs +0 -4
  157. package/esm2022/component/pager/util/pager-util.mjs +0 -6
  158. package/esm2022/component/panel/panel/panel.component.mjs +0 -45
  159. package/esm2022/component/panel/public-api.mjs +0 -2
  160. package/esm2022/component/progress-bar/progress-bar/progress-bar.component.mjs +0 -130
  161. package/esm2022/component/progress-bar/public-api.mjs +0 -2
  162. package/esm2022/component/property-grid/property-grid/property-grid-group/property-grid-group.component.mjs +0 -24
  163. package/esm2022/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +0 -133
  164. package/esm2022/component/property-grid/property-grid/property-grid-item-description.directive.mjs +0 -20
  165. package/esm2022/component/property-grid/property-grid/property-grid.component.mjs +0 -97
  166. package/esm2022/component/property-grid/public-api.mjs +0 -4
  167. package/esm2022/component/public-api.mjs +0 -72
  168. package/esm2022/component/radio/public-api.mjs +0 -3
  169. package/esm2022/component/radio/radio/radio.component.mjs +0 -240
  170. package/esm2022/component/radio/radio-button/radio-button.component.mjs +0 -63
  171. package/esm2022/component/resize-panel/public-api.mjs +0 -2
  172. package/esm2022/component/resize-panel/resize-panel/resize-panel.component.mjs +0 -166
  173. package/esm2022/component/select/public-api.mjs +0 -4
  174. package/esm2022/component/select/select/select.component.mjs +0 -272
  175. package/esm2022/component/select/select-option.directive.mjs +0 -17
  176. package/esm2022/component/select/select-value.directive.mjs +0 -17
  177. package/esm2022/component/sidebar/public-api.mjs +0 -3
  178. package/esm2022/component/sidebar/sidebar/sidebar.component.mjs +0 -48
  179. package/esm2022/component/sidebar/sidebar-position.enum.mjs +0 -8
  180. package/esm2022/component/stepper/public-api.mjs +0 -2
  181. package/esm2022/component/stepper/stepper/stepper.component.mjs +0 -16
  182. package/esm2022/component/switch/public-api.mjs +0 -3
  183. package/esm2022/component/switch/switch/switch.component.mjs +0 -61
  184. package/esm2022/component/switch/switch-button/switch-button.component.mjs +0 -47
  185. package/esm2022/component/switch/switch.service.mjs +0 -21
  186. package/esm2022/component/table/base/cell-component-base.mjs +0 -158
  187. package/esm2022/component/table/base/detail-component-base.mjs +0 -3
  188. package/esm2022/component/table/base/head-cell-component-base.mjs +0 -18
  189. package/esm2022/component/table/cell/cell.component.mjs +0 -28
  190. package/esm2022/component/table/cell-host/cell-host.component.mjs +0 -56
  191. package/esm2022/component/table/contract/cell-components-map.mjs +0 -15
  192. package/esm2022/component/table/contract/column-reorder-event.mjs +0 -7
  193. package/esm2022/component/table/contract/column-resize-event.mjs +0 -7
  194. package/esm2022/component/table/contract/head-dropdown-tab.mjs +0 -2
  195. package/esm2022/component/table/contract/i-cell-coordinates.mjs +0 -2
  196. package/esm2022/component/table/contract/i-cell-event.mjs +0 -2
  197. package/esm2022/component/table/contract/i-cell-instance.mjs +0 -2
  198. package/esm2022/component/table/contract/i-cell-value.mjs +0 -2
  199. package/esm2022/component/table/contract/public-api.mjs +0 -13
  200. package/esm2022/component/table/contract/sort-event.mjs +0 -7
  201. package/esm2022/component/table/contract/table-column-store.mjs +0 -12
  202. package/esm2022/component/table/contract/table-column.mjs +0 -44
  203. package/esm2022/component/table/contract/table-row.mjs +0 -7
  204. package/esm2022/component/table/default/boolean-cell/boolean-cell.component.mjs +0 -39
  205. package/esm2022/component/table/default/date-cell/date-cell.component.mjs +0 -40
  206. package/esm2022/component/table/default/date-time-cell/date-time-cell.component.mjs +0 -40
  207. package/esm2022/component/table/default/default-head-cell/default-head-cell.component.mjs +0 -49
  208. package/esm2022/component/table/default/list-cell/list-cell.component.mjs +0 -60
  209. package/esm2022/component/table/default/numeric-cell/numeric-cell.component.mjs +0 -39
  210. package/esm2022/component/table/default/string-cell/string-cell.component.mjs +0 -40
  211. package/esm2022/component/table/enum/aggregation-type.enum.mjs +0 -9
  212. package/esm2022/component/table/enum/edit-event.enum.mjs +0 -7
  213. package/esm2022/component/table/enum/edit-type.enum.mjs +0 -7
  214. package/esm2022/component/table/enum/public-api.mjs +0 -5
  215. package/esm2022/component/table/enum/select-type.enum.mjs +0 -7
  216. package/esm2022/component/table/head-cell/head-cell.component.mjs +0 -204
  217. package/esm2022/component/table/head-cell-dropdown/head-cell-dropdown.component.mjs +0 -50
  218. package/esm2022/component/table/head-cell-host/head-cell-host.component.mjs +0 -60
  219. package/esm2022/component/table/public-api.mjs +0 -42
  220. package/esm2022/component/table/selection-cell/selection-cell.component.mjs +0 -46
  221. package/esm2022/component/table/selection-head-cell/selection-head-cell.component.mjs +0 -45
  222. package/esm2022/component/table/service/table.service.mjs +0 -650
  223. package/esm2022/component/table/table/table.component.mjs +0 -470
  224. package/esm2022/component/table/table-body/table-body.component.mjs +0 -210
  225. package/esm2022/component/table/table-head/filter-dropdown-tab/filter-dropdown-tab.component.mjs +0 -57
  226. package/esm2022/component/table/table-head/main-dropdown-tab/main-dropdown-tab.component.mjs +0 -89
  227. package/esm2022/component/table/table-head/table-head.component.mjs +0 -76
  228. package/esm2022/component/table/table-head/visibility-dropdown-tab/visibility-dropdown-tab.component.mjs +0 -154
  229. package/esm2022/component/table/table-head-group/table-head-group.component.mjs +0 -72
  230. package/esm2022/component/table/table-row/table-row.component.mjs +0 -42
  231. package/esm2022/component/table/util/public-api.mjs +0 -3
  232. package/esm2022/component/table/util/state-util.mjs +0 -146
  233. package/esm2022/component/table/util/table-util.mjs +0 -133
  234. package/esm2022/component/tabs/public-api.mjs +0 -11
  235. package/esm2022/component/tabs/tab/tab.component.mjs +0 -42
  236. package/esm2022/component/tabs/tab-content.directive.mjs +0 -17
  237. package/esm2022/component/tabs/tab-title.directive.mjs +0 -17
  238. package/esm2022/component/tabs/tabs/tabs.component.mjs +0 -82
  239. package/esm2022/component/theme-switch/public-api.mjs +0 -3
  240. package/esm2022/component/theme-switch/theme-switch/theme-switch.component.mjs +0 -30
  241. package/esm2022/component/theme-switch/theme-switch.service.mjs +0 -34
  242. package/esm2022/component/toggle/public-api.mjs +0 -2
  243. package/esm2022/component/toggle/toggle/toggle.component.mjs +0 -79
  244. package/esm2022/component/toolbar/public-api.mjs +0 -5
  245. package/esm2022/component/toolbar/toolbar/toolbar.component.mjs +0 -26
  246. package/esm2022/component/tree/public-api.mjs +0 -4
  247. package/esm2022/component/tree/tree/tree.component.mjs +0 -143
  248. package/esm2022/component/tree/tree-item/tree-item.component.mjs +0 -75
  249. package/esm2022/component/tree/tree-item-toggle/tree-item-toggle.component.mjs +0 -28
  250. package/esm2022/component/tree/tree.service.mjs +0 -40
  251. package/esm2022/directive/auto-position/auto-position.directive.mjs +0 -71
  252. package/esm2022/directive/auto-position/public-api.mjs +0 -2
  253. package/esm2022/directive/click-outside/click-outside.directive.mjs +0 -66
  254. package/esm2022/directive/click-outside/public-api.mjs +0 -2
  255. package/esm2022/directive/context-menu/context-menu.directive.mjs +0 -119
  256. package/esm2022/directive/context-menu/public-api.mjs +0 -2
  257. package/esm2022/directive/disable-control/disable-control.directive.mjs +0 -35
  258. package/esm2022/directive/disable-control/public-api.mjs +0 -2
  259. package/esm2022/directive/drag-drop/drag-container.directive.mjs +0 -92
  260. package/esm2022/directive/drag-drop/drag-drop.service.mjs +0 -145
  261. package/esm2022/directive/drag-drop/drag-placeholder.directive.mjs +0 -15
  262. package/esm2022/directive/drag-drop/drag-preview.directive.mjs +0 -17
  263. package/esm2022/directive/drag-drop/drag.directive.mjs +0 -138
  264. package/esm2022/directive/drag-drop/model/drag-container-instance.mjs +0 -8
  265. package/esm2022/directive/drag-drop/model/drag-instance.mjs +0 -7
  266. package/esm2022/directive/drag-drop/model/drag-process.mjs +0 -2
  267. package/esm2022/directive/drag-drop/model/drag-selection.mjs +0 -2
  268. package/esm2022/directive/drag-drop/model/drop-event.mjs +0 -2
  269. package/esm2022/directive/drag-drop/model/drop-target.mjs +0 -2
  270. package/esm2022/directive/drag-drop/model/point.mjs +0 -2
  271. package/esm2022/directive/drag-drop/model/public-api.mjs +0 -8
  272. package/esm2022/directive/drag-drop/public-api.mjs +0 -7
  273. package/esm2022/directive/drag-sort/drag-sort-container.directive.mjs +0 -65
  274. package/esm2022/directive/drag-sort/drag-sort-event.mjs +0 -2
  275. package/esm2022/directive/drag-sort/drag-sort-item.directive.mjs +0 -111
  276. package/esm2022/directive/drag-sort/public-api.mjs +0 -4
  277. package/esm2022/directive/dynamic-content-base.directive.mjs +0 -80
  278. package/esm2022/directive/highlight/highlight.directive.mjs +0 -72
  279. package/esm2022/directive/highlight/public-api.mjs +0 -2
  280. package/esm2022/directive/hint/hint.directive.mjs +0 -102
  281. package/esm2022/directive/hint/public-api.mjs +0 -2
  282. package/esm2022/directive/let/let.directive.mjs +0 -39
  283. package/esm2022/directive/let/public-api.mjs +0 -2
  284. package/esm2022/directive/loader/loader.directive.mjs +0 -85
  285. package/esm2022/directive/loader/public-api.mjs +0 -2
  286. package/esm2022/directive/no-autofill/no-autofill.directive.mjs +0 -31
  287. package/esm2022/directive/no-autofill/public-api.mjs +0 -2
  288. package/esm2022/directive/only-number/only-number.directive.mjs +0 -184
  289. package/esm2022/directive/only-number/public-api.mjs +0 -2
  290. package/esm2022/directive/public-api.mjs +0 -19
  291. package/esm2022/directive/resize-drag/public-api.mjs +0 -2
  292. package/esm2022/directive/resize-drag/resize-drag.directive.mjs +0 -72
  293. package/esm2022/directive/scroll-into-view/public-api.mjs +0 -2
  294. package/esm2022/directive/scroll-into-view/scroll-into-view.directive.mjs +0 -41
  295. package/esm2022/directive/scrollable/public-api.mjs +0 -3
  296. package/esm2022/directive/scrollable/scrollable/scrollable.component.mjs +0 -98
  297. package/esm2022/directive/scrollable/scrollable.directive.mjs +0 -20
  298. package/esm2022/directive/teta-template/public-api.mjs +0 -2
  299. package/esm2022/directive/teta-template/teta-template.directive.mjs +0 -23
  300. package/esm2022/directive/tooltip/public-api.mjs +0 -2
  301. package/esm2022/directive/tooltip/tooltip.directive.mjs +0 -81
  302. package/esm2022/index.mjs +0 -22
  303. package/esm2022/locale/en.mjs +0 -50
  304. package/esm2022/locale/public-api.mjs +0 -5
  305. package/esm2022/locale/ru.mjs +0 -50
  306. package/esm2022/locale/teta-config.service.mjs +0 -28
  307. package/esm2022/locale/teta-localisation.mjs +0 -2
  308. package/esm2022/observable/animation-frame.mjs +0 -30
  309. package/esm2022/observable/public-api.mjs +0 -3
  310. package/esm2022/observable/zone-observable.mjs +0 -15
  311. package/esm2022/pipe/date-pipe/public-api.mjs +0 -2
  312. package/esm2022/pipe/date-pipe/teta-date.pipe.mjs +0 -43
  313. package/esm2022/pipe/number-pipe/number.pipe.mjs +0 -28
  314. package/esm2022/pipe/number-pipe/public-api.mjs +0 -2
  315. package/esm2022/pipe/public-api.mjs +0 -4
  316. package/esm2022/pipe/util/number-helper.mjs +0 -25
  317. package/esm2022/tetacom-ng-components.mjs +0 -5
  318. package/esm2022/util/bool-or-func.mjs +0 -13
  319. package/esm2022/util/date-util.mjs +0 -231
  320. package/esm2022/util/export-dom-image.mjs +0 -22
  321. package/esm2022/util/forms-util.mjs +0 -85
  322. package/esm2022/util/is-function.mjs +0 -4
  323. package/esm2022/util/public-api.mjs +0 -7
  324. package/esm2022/util/string-util.mjs +0 -9
@@ -1,121 +0,0 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, } from '@angular/core';
2
- import dayjs from 'dayjs';
3
- import { BehaviorSubject, ReplaySubject } from 'rxjs';
4
- import { DayModel } from './model/day-model';
5
- import * as i0 from "@angular/core";
6
- export class BaseCalendar {
7
- constructor(_cdr) {
8
- this._cdr = _cdr;
9
- this.currentMonth = new ReplaySubject(1);
10
- this.minMax = new ReplaySubject(1);
11
- this.currentYear = new ReplaySubject(1);
12
- this.selectedPicker = new BehaviorSubject('day');
13
- this.alive = true;
14
- this.scrollMonth = (e, month, year) => {
15
- const delta = e?.deltaY ?? e;
16
- if (e instanceof WheelEvent) {
17
- e.preventDefault();
18
- }
19
- if (delta > 0) {
20
- this.changeMonth(month - 1, year);
21
- }
22
- else {
23
- this.changeMonth(month + 1, year);
24
- }
25
- };
26
- }
27
- generateCalendar(selectedDate, year, month, minMax) {
28
- const calendarStartDay = selectedDate.set('year', year).set('month', month).set('date', 1).startOf('week');
29
- const calendar = new Array(42).fill(1).map((v, i) => {
30
- return calendarStartDay.add(i, 'day');
31
- });
32
- return calendar.map((d) => {
33
- return new DayModel({
34
- date: new Date(d.toDate()),
35
- isCurrentMonth: month === d.month(),
36
- disabled: !this.isSuitableMinDate(d.toDate(), minMax.min) || !this.isSuitableMaxDate(d.toDate(), minMax.max),
37
- selected: this.isSelected(d.toDate(), selectedDate.toDate()),
38
- });
39
- });
40
- }
41
- isSuitableMinDate(d, minDate) {
42
- return dayjs(new Date(minDate)).startOf('date').toDate() <= new Date(d) || !minDate;
43
- }
44
- isSuitableMaxDate(d, maxDate) {
45
- return new Date(d) < dayjs(new Date(maxDate)).endOf('date').toDate() || !maxDate;
46
- }
47
- isSelected(date, selectedDate) {
48
- const isSelectedDate = date.getDate() === selectedDate?.getDate();
49
- const isSelectedYear = date.getFullYear() === selectedDate?.getFullYear();
50
- const isSelectedMonth = date.getMonth() === selectedDate?.getMonth();
51
- return isSelectedDate && isSelectedMonth && isSelectedYear && !this.isDateNull;
52
- }
53
- ngOnDestroy() {
54
- this.alive = false;
55
- }
56
- selectPicker(entity) {
57
- this.selectedPicker.next(entity);
58
- }
59
- selectMonth(month) {
60
- this.currentMonth.next(month);
61
- this.selectPicker('day');
62
- }
63
- selectYear(year) {
64
- this.setYear(year);
65
- this.selectPicker('day');
66
- }
67
- ngOnChanges(changes) {
68
- this.changeCalendarData(this.selectedDate);
69
- if (changes['open']) {
70
- this.selectedPicker.next('day');
71
- }
72
- }
73
- changeCalendarData(selectedDate) {
74
- let date;
75
- if (!this.isSuitableMinDate(new Date(selectedDate), this.min)) {
76
- date = this.min;
77
- }
78
- else if (!this.isSuitableMaxDate(new Date(selectedDate), this.max)) {
79
- date = this.max;
80
- }
81
- else {
82
- date = selectedDate ? selectedDate : this.min ? this.min : this.max ? this.max : new Date();
83
- }
84
- this.currentMonth.next(new Date(date).getMonth());
85
- this.currentYear.next(new Date(date).getFullYear());
86
- this.minMax.next({ min: this.min, max: this.max });
87
- }
88
- setYear(year) {
89
- this.currentYear.next(year);
90
- }
91
- changeMonth(month, year) {
92
- const { availableYear, availableMonth } = this.getAvailableMonthYear(month, year);
93
- this.currentMonth.next(availableMonth);
94
- this.currentYear.next(availableYear);
95
- }
96
- getAvailableMonthYear(month, year) {
97
- if (month > 11) {
98
- return { availableMonth: month - 12, availableYear: year + 1 };
99
- }
100
- if (month < 0) {
101
- return { availableMonth: 12 + month, availableYear: year - 1 };
102
- }
103
- return { availableMonth: month, availableYear: year };
104
- }
105
- getMothName(month) {
106
- return this.locale.months[month];
107
- }
108
- selectDate(date) {
109
- this.setDate.emit(date);
110
- }
111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: BaseCalendar, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
112
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: BaseCalendar, selector: "ng-component", usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
113
- }
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: BaseCalendar, decorators: [{
115
- type: Component,
116
- args: [{
117
- template: '',
118
- changeDetection: ChangeDetectionStrategy.OnPush,
119
- }]
120
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jYWxlbmRhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvZGF0ZS1waWNrZXIvYmFzZS1jYWxlbmRhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBS1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFnQixNQUFNLE9BQU8sQ0FBQztBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBUTdDLE1BQU0sT0FBZ0IsWUFBWTtJQW1CaEMsWUFBZ0MsSUFBdUI7UUFBdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFWaEQsaUJBQVksR0FBMEIsSUFBSSxhQUFhLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDbkUsV0FBTSxHQUFtQyxJQUFJLGFBQWEsQ0FBa0IsQ0FBQyxDQUFDLENBQUM7UUFDL0UsZ0JBQVcsR0FBMEIsSUFBSSxhQUFhLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDbEUsbUJBQWMsR0FBOEMsSUFBSSxlQUFlLENBQ3BGLEtBQUssQ0FDTixDQUFDO1FBR0ssVUFBSyxHQUFHLElBQUksQ0FBQztRQXFHcEIsZ0JBQVcsR0FBRyxDQUFDLENBQU0sRUFBRSxLQUFhLEVBQUUsSUFBWSxFQUFFLEVBQUU7WUFDcEQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLFlBQVksVUFBVSxFQUFFLENBQUM7Z0JBQzVCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLElBQUks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LEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNkLE9BQU8sRUFBRSxjQUFjLEVBQUUsRUFBRSxHQUFHLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pFLENBQUM7UUFDRCxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFVO1FBQ25CLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7OEdBcEhtQixZQUFZO2tHQUFaLFlBQVkseUVBSHRCLEVBQUU7OzJGQUdRLFlBQVk7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzLCB7IERheWpzIH0gZnJvbSAnZGF5anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHZpZXdUeXBlIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3ZpZXctdHlwZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXlNb2RlbCB9IGZyb20gJy4vbW9kZWwvZGF5LW1vZGVsJztcbmltcG9ydCB7IE1pbk1heERhdGVNb2RlbCB9IGZyb20gJy4vbW9kZWwvbWluLW1heC1kYXRlLm1vZGVsJztcbmltcG9ydCB7IFRldGFMb2NhbGlzYXRpb24gfSBmcm9tICcuLi8uLi9sb2NhbGUvdGV0YS1sb2NhbGlzYXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNhbGVuZGFyIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBhYnN0cmFjdCBzZWxlY3RlZERhdGU7XG4gIGFic3RyYWN0IGxvY2FsZTogVGV0YUxvY2FsaXNhdGlvbjtcbiAgYWJzdHJhY3Qgb3BlbjogYm9vbGVhbjtcbiAgYWJzdHJhY3Qgdmlld1R5cGU6IHZpZXdUeXBlO1xuICBhYnN0cmFjdCBtaW46IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gIGFic3RyYWN0IGlzRGF0ZU51bGw6IGJvb2xlYW47XG4gIGFic3RyYWN0IG1heDogRGF0ZSB8IHN0cmluZyB8IG51bWJlcjtcbiAgYWJzdHJhY3Qgc2V0RGF0ZTogRXZlbnRFbWl0dGVyPERhdGU+O1xuICBwdWJsaWMgY3VycmVudE1vbnRoOiBSZXBsYXlTdWJqZWN0PG51bWJlcj4gPSBuZXcgUmVwbGF5U3ViamVjdDxudW1iZXI+KDEpO1xuICBwdWJsaWMgbWluTWF4OiBSZXBsYXlTdWJqZWN0PE1pbk1heERhdGVNb2RlbD4gPSBuZXcgUmVwbGF5U3ViamVjdDxNaW5NYXhEYXRlTW9kZWw+KDEpO1xuICBwdWJsaWMgY3VycmVudFllYXI6IFJlcGxheVN1YmplY3Q8bnVtYmVyPiA9IG5ldyBSZXBsYXlTdWJqZWN0PG51bWJlcj4oMSk7XG4gIHB1YmxpYyBzZWxlY3RlZFBpY2tlcjogQmVoYXZpb3JTdWJqZWN0PCdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PCdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJz4oXG4gICAgJ2RheScsXG4gICk7XG4gIGFic3RyYWN0IGNhbGVuZGFyOiBEYXlNb2RlbFtdIHwgeyBjdXJyZW50TW9udGg6IERheU1vZGVsW107IG5leHRNb250aDogRGF5TW9kZWxbXSB9O1xuXG4gIHB1YmxpYyBhbGl2ZSA9IHRydWU7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBnZW5lcmF0ZUNhbGVuZGFyKHNlbGVjdGVkRGF0ZTogRGF5anMsIHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgbWluTWF4OiBNaW5NYXhEYXRlTW9kZWwpOiBEYXlNb2RlbFtdIHtcbiAgICBjb25zdCBjYWxlbmRhclN0YXJ0RGF5ID0gc2VsZWN0ZWREYXRlLnNldCgneWVhcicsIHllYXIpLnNldCgnbW9udGgnLCBtb250aCkuc2V0KCdkYXRlJywgMSkuc3RhcnRPZignd2VlaycpO1xuICAgIGNvbnN0IGNhbGVuZGFyID0gbmV3IEFycmF5KDQyKS5maWxsKDEpLm1hcCgodiwgaSkgPT4ge1xuICAgICAgcmV0dXJuIGNhbGVuZGFyU3RhcnREYXkuYWRkKGksICdkYXknKTtcbiAgICB9KTtcbiAgICByZXR1cm4gY2FsZW5kYXIubWFwKChkKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IERheU1vZGVsKHtcbiAgICAgICAgZGF0ZTogbmV3IERhdGUoZC50b0RhdGUoKSksXG4gICAgICAgIGlzQ3VycmVudE1vbnRoOiBtb250aCA9PT0gZC5tb250aCgpLFxuICAgICAgICBkaXNhYmxlZDogIXRoaXMuaXNTdWl0YWJsZU1pbkRhdGUoZC50b0RhdGUoKSwgbWluTWF4Lm1pbikgfHwgIXRoaXMuaXNTdWl0YWJsZU1heERhdGUoZC50b0RhdGUoKSwgbWluTWF4Lm1heCksXG4gICAgICAgIHNlbGVjdGVkOiB0aGlzLmlzU2VsZWN0ZWQoZC50b0RhdGUoKSwgc2VsZWN0ZWREYXRlLnRvRGF0ZSgpKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgaXNTdWl0YWJsZU1pbkRhdGUoZDogRGF0ZSwgbWluRGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlcikge1xuICAgIHJldHVybiBkYXlqcyhuZXcgRGF0ZShtaW5EYXRlKSkuc3RhcnRPZignZGF0ZScpLnRvRGF0ZSgpIDw9IG5ldyBEYXRlKGQpIHx8ICFtaW5EYXRlO1xuICB9XG5cbiAgaXNTdWl0YWJsZU1heERhdGUoZDogRGF0ZSwgbWF4RGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlcikge1xuICAgIHJldHVybiBuZXcgRGF0ZShkKSA8IGRheWpzKG5ldyBEYXRlKG1heERhdGUpKS5lbmRPZignZGF0ZScpLnRvRGF0ZSgpIHx8ICFtYXhEYXRlO1xuICB9XG5cbiAgaXNTZWxlY3RlZChkYXRlOiBEYXRlLCBzZWxlY3RlZERhdGU6IERhdGUpIHtcbiAgICBjb25zdCBpc1NlbGVjdGVkRGF0ZSA9IGRhdGUuZ2V0RGF0ZSgpID09PSBzZWxlY3RlZERhdGU/LmdldERhdGUoKTtcbiAgICBjb25zdCBpc1NlbGVjdGVkWWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKSA9PT0gc2VsZWN0ZWREYXRlPy5nZXRGdWxsWWVhcigpO1xuICAgIGNvbnN0IGlzU2VsZWN0ZWRNb250aCA9IGRhdGUuZ2V0TW9udGgoKSA9PT0gc2VsZWN0ZWREYXRlPy5nZXRNb250aCgpO1xuICAgIHJldHVybiBpc1NlbGVjdGVkRGF0ZSAmJiBpc1NlbGVjdGVkTW9udGggJiYgaXNTZWxlY3RlZFllYXIgJiYgIXRoaXMuaXNEYXRlTnVsbDtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYWxpdmUgPSBmYWxzZTtcbiAgfVxuXG4gIHNlbGVjdFBpY2tlcihlbnRpdHk6ICdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJykge1xuICAgIHRoaXMuc2VsZWN0ZWRQaWNrZXIubmV4dChlbnRpdHkpO1xuICB9XG5cbiAgc2VsZWN0TW9udGgobW9udGg6IG51bWJlcikge1xuICAgIHRoaXMuY3VycmVudE1vbnRoLm5leHQobW9udGgpO1xuICAgIHRoaXMuc2VsZWN0UGlja2VyKCdkYXknKTtcbiAgfVxuXG4gIHNlbGVjdFllYXIoeWVhcjogbnVtYmVyKSB7XG4gICAgdGhpcy5zZXRZZWFyKHllYXIpO1xuICAgIHRoaXMuc2VsZWN0UGlja2VyKCdkYXknKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZUNhbGVuZGFyRGF0YSh0aGlzLnNlbGVjdGVkRGF0ZSk7XG4gICAgaWYgKGNoYW5nZXNbJ29wZW4nXSkge1xuICAgICAgdGhpcy5zZWxlY3RlZFBpY2tlci5uZXh0KCdkYXknKTtcbiAgICB9XG4gIH1cblxuICBjaGFuZ2VDYWxlbmRhckRhdGEoc2VsZWN0ZWREYXRlOiBEYXRlIHwgbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgbGV0IGRhdGU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gICAgaWYgKCF0aGlzLmlzU3VpdGFibGVNaW5EYXRlKG5ldyBEYXRlKHNlbGVjdGVkRGF0ZSksIHRoaXMubWluKSkge1xuICAgICAgZGF0ZSA9IHRoaXMubWluO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuaXNTdWl0YWJsZU1heERhdGUobmV3IERhdGUoc2VsZWN0ZWREYXRlKSwgdGhpcy5tYXgpKSB7XG4gICAgICBkYXRlID0gdGhpcy5tYXg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGUgPSBzZWxlY3RlZERhdGUgPyBzZWxlY3RlZERhdGUgOiB0aGlzLm1pbiA/IHRoaXMubWluIDogdGhpcy5tYXggPyB0aGlzLm1heCA6IG5ldyBEYXRlKCk7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoLm5leHQobmV3IERhdGUoZGF0ZSkuZ2V0TW9udGgoKSk7XG4gICAgdGhpcy5jdXJyZW50WWVhci5uZXh0KG5ldyBEYXRlKGRhdGUpLmdldEZ1bGxZZWFyKCkpO1xuICAgIHRoaXMubWluTWF4Lm5leHQoeyBtaW46IHRoaXMubWluLCBtYXg6IHRoaXMubWF4IH0pO1xuICB9XG5cbiAgc2V0WWVhcih5ZWFyOiBudW1iZXIpIHtcbiAgICB0aGlzLmN1cnJlbnRZZWFyLm5leHQoeWVhcik7XG4gIH1cblxuICBjaGFuZ2VNb250aChtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpIHtcbiAgICBjb25zdCB7IGF2YWlsYWJsZVllYXIsIGF2YWlsYWJsZU1vbnRoIH0gPSB0aGlzLmdldEF2YWlsYWJsZU1vbnRoWWVhcihtb250aCwgeWVhcik7XG4gICAgdGhpcy5jdXJyZW50TW9udGgubmV4dChhdmFpbGFibGVNb250aCk7XG4gICAgdGhpcy5jdXJyZW50WWVhci5uZXh0KGF2YWlsYWJsZVllYXIpO1xuICB9XG5cbiAgZ2V0QXZhaWxhYmxlTW9udGhZZWFyKG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcikge1xuICAgIGlmIChtb250aCA+IDExKSB7XG4gICAgICByZXR1cm4geyBhdmFpbGFibGVNb250aDogbW9udGggLSAxMiwgYXZhaWxhYmxlWWVhcjogeWVhciArIDEgfTtcbiAgICB9XG4gICAgaWYgKG1vbnRoIDwgMCkge1xuICAgICAgcmV0dXJuIHsgYXZhaWxhYmxlTW9udGg6IDEyICsgbW9udGgsIGF2YWlsYWJsZVllYXI6IHllYXIgLSAxIH07XG4gICAgfVxuICAgIHJldHVybiB7IGF2YWlsYWJsZU1vbnRoOiBtb250aCwgYXZhaWxhYmxlWWVhcjogeWVhciB9O1xuICB9XG5cbiAgZ2V0TW90aE5hbWUobW9udGg6IG51bWJlcikge1xuICAgIHJldHVybiB0aGlzLmxvY2FsZS5tb250aHNbbW9udGhdO1xuICB9XG5cbiAgc2VsZWN0RGF0ZShkYXRlOiBEYXRlKSB7XG4gICAgdGhpcy5zZXREYXRlLmVtaXQoZGF0ZSk7XG4gIH1cblxuICBzY3JvbGxNb250aCA9IChlOiBhbnksIG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IGRlbHRhID0gZT8uZGVsdGFZID8/IGU7XG4gICAgaWYgKGUgaW5zdGFuY2VvZiBXaGVlbEV2ZW50KSB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIGlmIChkZWx0YSA+IDApIHtcbiAgICAgIHRoaXMuY2hhbmdlTW9udGgobW9udGggLSAxLCB5ZWFyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jaGFuZ2VNb250aChtb250aCArIDEsIHllYXIpO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -1,109 +0,0 @@
1
- import dayjs from 'dayjs';
2
- export class BasePicker {
3
- constructor(_elementRef, _cdr, datePipe) {
4
- this._elementRef = _elementRef;
5
- this._cdr = _cdr;
6
- this.datePipe = datePipe;
7
- this.open = false;
8
- this.placeholder = '';
9
- this.openPicker = (show) => {
10
- if (this.disabled) {
11
- return;
12
- }
13
- this.open = show;
14
- this._cdr.markForCheck();
15
- };
16
- this.inputText = this.checkNull();
17
- }
18
- changeInput(v) {
19
- this.changePlaceholder(v);
20
- }
21
- changePlaceholder(value) {
22
- const val = this.mask.split('');
23
- for (let i = 0; value.length > i; i++) {
24
- val.splice(i, 1, value[i]);
25
- }
26
- this.placeholder = val.join('');
27
- }
28
- openChange(e) {
29
- if (!e) {
30
- this.onBlur();
31
- }
32
- this.open = e;
33
- }
34
- checkNull() {
35
- if (!this.date && this.allowNull) {
36
- return null;
37
- }
38
- return this.datePipe.transform(new Date(), 'dd.MM.yyyy, HH:mm');
39
- }
40
- changeSelectedDate(date, selectedDate) {
41
- this.setDate(date);
42
- this.emitValue(date);
43
- this.open = false;
44
- }
45
- emitValue(value) {
46
- if (this.isValueChange(value)) {
47
- this.date = value;
48
- this.selectDate.emit(value);
49
- this.onChange(value);
50
- }
51
- }
52
- isValueChange(value) {
53
- return new Date(value).getTime() !== new Date(this.date).getTime();
54
- }
55
- checkEnter(e) {
56
- if (e.key === 'Enter') {
57
- this.inputText = e.target.value;
58
- this.onBlur();
59
- }
60
- if (e.key === '-') {
61
- e.preventDefault();
62
- }
63
- this.open = true;
64
- }
65
- isAvailableLength(val, length) {
66
- if (val?.length) {
67
- return val.length === length;
68
- }
69
- return false;
70
- }
71
- getDateFromStr(str, separator = '.') {
72
- const date = str?.split(separator);
73
- const day = this.isAvailableLength(date?.[0], 2) ? Number(date[0]) : null;
74
- const month = this.isAvailableLength(date?.[1], 2) ? Number(date[1]) : null;
75
- const year = this.isAvailableLength(date?.[2], 4) ? Number(date[2]) : null;
76
- return { day, month, year };
77
- }
78
- getTimeFromStr(str, separator = ':') {
79
- const time = str?.trim().split(separator);
80
- const hours = this.isAvailableLength(time?.[0], 2) ? Number(time[0]) : null;
81
- const mins = this.isAvailableLength(time?.[1], 2) ? Number(time[1]) : null;
82
- return { hours, mins };
83
- }
84
- focus() {
85
- this._elementRef.nativeElement.focus();
86
- }
87
- getLocaleString(date) {
88
- return new Date(date).toLocaleString(['ru'], {
89
- year: 'numeric',
90
- month: '2-digit',
91
- day: '2-digit',
92
- hour12: false,
93
- hour: this.showTime ? '2-digit' : undefined,
94
- minute: this.showTime ? '2-digit' : undefined,
95
- });
96
- }
97
- getAvailableDate(min, max, date) {
98
- const minDate = this.showTime ? new Date(min) : dayjs(new Date(min)).startOf('day').toDate();
99
- const maxDate = this.showTime ? new Date(max) : dayjs(new Date(max)).endOf('day').toDate();
100
- if (min && minDate.getTime() >= new Date(date).getTime()) {
101
- return minDate || new Date();
102
- }
103
- if (max && maxDate.getTime() <= new Date(date).getTime()) {
104
- return maxDate;
105
- }
106
- return new Date(date);
107
- }
108
- }
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1waWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2RhdGUtcGlja2VyL2Jhc2UtcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQVMxQixNQUFNLE9BQWdCLFVBQVU7SUF1QjlCLFlBQ1ksV0FBdUIsRUFDdkIsSUFBdUIsRUFDdkIsUUFBa0I7UUFGbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVR2QixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBRWIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUErQ3hCLGVBQVUsR0FBRyxDQUFDLElBQWEsRUFBRSxFQUFFO1lBQzdCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixPQUFPO1lBQ1QsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDO1FBNUNBLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFVRCxXQUFXLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3RDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFF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QztRQUNqQixDQUFDO1FBQ0QsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXNraXRvT3B0aW9ucyB9IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWxpZ24gfSBmcm9tICcuLi8uLi9jb21tb24vZW51bS9hbGlnbi5lbnVtJztcbmltcG9ydCB7IFZlcnRpY2FsQWxpZ24gfSBmcm9tICcuLi8uLi9jb21tb24vZW51bS92ZXJ0aWNhbC1hbGlnbi5lbnVtJztcbmltcG9ydCB7IHZpZXdUeXBlIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3ZpZXctdHlwZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlRnJvbVRvTW9kZWwgfSBmcm9tICcuL21vZGVsL2Zyb20tdG8ubW9kZWwnO1xuaW1wb3J0IHsgVGV0YUxvY2FsaXNhdGlvbiB9IGZyb20gJy4uLy4uL2xvY2FsZS90ZXRhLWxvY2FsaXNhdGlvbic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlUGlja2VyIHtcbiAgYWJzdHJhY3QgbWFzazogc3RyaW5nO1xuICBhYnN0cmFjdCBkYXRlO1xuICBhYnN0cmFjdCBsb2NhbGU6IE9ic2VydmFibGU8VGV0YUxvY2FsaXNhdGlvbj47XG4gIGFic3RyYWN0IHNob3dUaW1lOiBib29sZWFuO1xuICBhYnN0cmFjdCBtaW5EYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyO1xuICBhYnN0cmFjdCBtYXhEYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyO1xuICBhYnN0cmFjdCBpbnZhbGlkOiBib29sZWFuO1xuICBhYnN0cmFjdCBkaXNhYmxlZDogYm9vbGVhbjtcbiAgYWJzdHJhY3QgYWxpZ246IEFsaWduO1xuICBhYnN0cmFjdCB2ZXJ0aWNhbEFsaWduOiBWZXJ0aWNhbEFsaWduO1xuICBhYnN0cmFjdCB2aWV3VHlwZTogdmlld1R5cGU7XG4gIGFic3RyYWN0IGFwcGVuZFRvQm9keTogYm9vbGVhbjtcbiAgYWJzdHJhY3QgYmFja2Ryb3A6IGJvb2xlYW47XG4gIGFic3RyYWN0IGFsbG93TnVsbDogYm9vbGVhbjtcbiAgYWJzdHJhY3QgaW5wdXQ6IEVsZW1lbnRSZWY7XG4gIGFic3RyYWN0IHNlbGVjdERhdGU6IEV2ZW50RW1pdHRlcjxEYXRlPiB8IEV2ZW50RW1pdHRlcjxEYXRlRnJvbVRvTW9kZWw+O1xuICBwdWJsaWMgb3BlbiA9IGZhbHNlO1xuICBhYnN0cmFjdCBzZWxlY3RlZERhdGU6IFJlcGxheVN1YmplY3Q8YW55PjtcbiAgcHVibGljIHBsYWNlaG9sZGVyID0gJyc7XG4gIHB1YmxpYyBpbnB1dFRleHQ6IHN0cmluZztcbiAgcHVibGljIG1hc2tpdG9PcHRpb25zOiBNYXNraXRvT3B0aW9ucztcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcm90ZWN0ZWQgZGF0ZVBpcGU6IERhdGVQaXBlLFxuICApIHtcbiAgICB0aGlzLmlucHV0VGV4dCA9IHRoaXMuY2hlY2tOdWxsKCk7XG4gIH1cblxuICBhYnN0cmFjdCBvbkNoYW5nZShkYXRlOiBEYXRlKTtcblxuICBhYnN0cmFjdCBwcmVwYXJlSW5wdXQoKTtcblxuICBhYnN0cmFjdCBvbkJsdXIoKTtcblxuICBhYnN0cmFjdCBzZXREYXRlKGRhdGUpO1xuXG4gIGNoYW5nZUlucHV0KHYpIHtcbiAgICB0aGlzLmNoYW5nZVBsYWNlaG9sZGVyKHYpO1xuICB9XG5cbiAgY2hhbmdlUGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHZhbCA9IHRoaXMubWFzay5zcGxpdCgnJyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IHZhbHVlLmxlbmd0aCA+IGk7IGkrKykge1xuICAgICAgdmFsLnNwbGljZShpLCAxLCB2YWx1ZVtpXSk7XG4gICAgfVxuXG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHZhbC5qb2luKCcnKTtcbiAgfVxuXG4gIG9wZW5DaGFuZ2UoZTogYm9vbGVhbikge1xuICAgIGlmICghZSkge1xuICAgICAgdGhpcy5vbkJsdXIoKTtcbiAgICB9XG4gICAgdGhpcy5vcGVuID0gZTtcbiAgfVxuXG4gIGNoZWNrTnVsbCgpIHtcbiAgICBpZiAoIXRoaXMuZGF0ZSAmJiB0aGlzLmFsbG93TnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShuZXcgRGF0ZSgpLCAnZGQuTU0ueXl5eSwgSEg6bW0nKTtcbiAgfVxuXG4gIG9wZW5QaWNrZXIgPSAoc2hvdzogYm9vbGVhbikgPT4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub3BlbiA9IHNob3c7XG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9O1xuXG4gIGNoYW5nZVNlbGVjdGVkRGF0ZShkYXRlLCBzZWxlY3RlZERhdGU/KSB7XG4gICAgdGhpcy5zZXREYXRlKGRhdGUpO1xuICAgIHRoaXMuZW1pdFZhbHVlKGRhdGUpO1xuICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICB9XG5cbiAgZW1pdFZhbHVlKHZhbHVlKSB7XG4gICAgaWYgKHRoaXMuaXNWYWx1ZUNoYW5nZSh2YWx1ZSkpIHtcbiAgICAgIHRoaXMuZGF0ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5zZWxlY3REYXRlLmVtaXQodmFsdWUpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgaXNWYWx1ZUNoYW5nZSh2YWx1ZSkge1xuICAgIHJldHVybiBuZXcgRGF0ZSh2YWx1ZSkuZ2V0VGltZSgpICE9PSBuZXcgRGF0ZSh0aGlzLmRhdGUpLmdldFRpbWUoKTtcbiAgfVxuXG4gIGNoZWNrRW50ZXIoZSkge1xuICAgIGlmIChlLmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgdGhpcy5pbnB1dFRleHQgPSBlLnRhcmdldC52YWx1ZTtcbiAgICAgIHRoaXMub25CbHVyKCk7XG4gICAgfVxuICAgIGlmIChlLmtleSA9PT0gJy0nKSB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIHRoaXMub3BlbiA9IHRydWU7XG4gIH1cblxuICBpc0F2YWlsYWJsZUxlbmd0aCh2YWw6IHN0cmluZywgbGVuZ3RoOiBudW1iZXIpIHtcbiAgICBpZiAodmFsPy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiB2YWwubGVuZ3RoID09PSBsZW5ndGg7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGdldERhdGVGcm9tU3RyKHN0cjogc3RyaW5nLCBzZXBhcmF0b3IgPSAnLicpIHtcbiAgICBjb25zdCBkYXRlID0gc3RyPy5zcGxpdChzZXBhcmF0b3IpO1xuICAgIGNvbnN0IGRheSA9IHRoaXMuaXNBdmFpbGFibGVMZW5ndGgoZGF0ZT8uWzBdLCAyKSA/IE51bWJlcihkYXRlWzBdKSA6IG51bGw7XG4gICAgY29uc3QgbW9udGggPSB0aGlzLmlzQXZhaWxhYmxlTGVuZ3RoKGRhdGU/LlsxXSwgMikgPyBOdW1iZXIoZGF0ZVsxXSkgOiBudWxsO1xuICAgIGNvbnN0IHllYXIgPSB0aGlzLmlzQXZhaWxhYmxlTGVuZ3RoKGRhdGU/LlsyXSwgNCkgPyBOdW1iZXIoZGF0ZVsyXSkgOiBudWxsO1xuICAgIHJldHVybiB7IGRheSwgbW9udGgsIHllYXIgfTtcbiAgfVxuXG4gIGdldFRpbWVGcm9tU3RyKHN0cjogc3RyaW5nLCBzZXBhcmF0b3IgPSAnOicpIHtcbiAgICBjb25zdCB0aW1lID0gc3RyPy50cmltKCkuc3BsaXQoc2VwYXJhdG9yKTtcbiAgICBjb25zdCBob3VycyA9IHRoaXMuaXNBdmFpbGFibGVMZW5ndGgodGltZT8uWzBdLCAyKSA/IE51bWJlcih0aW1lWzBdKSA6IG51bGw7XG4gICAgY29uc3QgbWlucyA9IHRoaXMuaXNBdmFpbGFibGVMZW5ndGgodGltZT8uWzFdLCAyKSA/IE51bWJlcih0aW1lWzFdKSA6IG51bGw7XG4gICAgcmV0dXJuIHsgaG91cnMsIG1pbnMgfTtcbiAgfVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgZ2V0TG9jYWxlU3RyaW5nKGRhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSkudG9Mb2NhbGVTdHJpbmcoWydydSddLCB7XG4gICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICBtb250aDogJzItZGlnaXQnLFxuICAgICAgZGF5OiAnMi1kaWdpdCcsXG4gICAgICBob3VyMTI6IGZhbHNlLFxuICAgICAgaG91cjogdGhpcy5zaG93VGltZSA/ICcyLWRpZ2l0JyA6IHVuZGVmaW5lZCxcbiAgICAgIG1pbnV0ZTogdGhpcy5zaG93VGltZSA/ICcyLWRpZ2l0JyA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGdldEF2YWlsYWJsZURhdGUobWluOiBEYXRlIHwgbnVtYmVyIHwgc3RyaW5nLCBtYXg6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcsIGRhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICBjb25zdCBtaW5EYXRlID0gdGhpcy5zaG93VGltZSA/IG5ldyBEYXRlKG1pbikgOiBkYXlqcyhuZXcgRGF0ZShtaW4pKS5zdGFydE9mKCdkYXknKS50b0RhdGUoKTtcbiAgICBjb25zdCBtYXhEYXRlID0gdGhpcy5zaG93VGltZSA/IG5ldyBEYXRlKG1heCkgOiBkYXlqcyhuZXcgRGF0ZShtYXgpKS5lbmRPZignZGF5JykudG9EYXRlKCk7XG4gICAgaWYgKG1pbiAmJiBtaW5EYXRlLmdldFRpbWUoKSA+PSBuZXcgRGF0ZShkYXRlKS5nZXRUaW1lKCkpIHtcbiAgICAgIHJldHVybiBtaW5EYXRlIHx8IG5ldyBEYXRlKCk7XG4gICAgfVxuICAgIGlmIChtYXggJiYgbWF4RGF0ZS5nZXRUaW1lKCkgPD0gbmV3IERhdGUoZGF0ZSkuZ2V0VGltZSgpKSB7XG4gICAgICByZXR1cm4gbWF4RGF0ZTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUpO1xuICB9XG59XG4iXX0=
@@ -1,50 +0,0 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output, } from '@angular/core';
2
- import dayjs from 'dayjs';
3
- import { combineLatest, filter, map, takeWhile } from 'rxjs';
4
- import { BaseCalendar } from '../../base-calendar';
5
- import { AsyncPipe } from '@angular/common';
6
- import { YearPickerComponent } from '../../year-picker/year-picker.component';
7
- import { MonthPickerComponent } from '../../month-picker/month-picker.component';
8
- import { DayPickerComponent } from '../../day-picker/day-picker.component';
9
- import { IconComponent } from '../../../icon/icon/icon.component';
10
- import { ButtonComponent } from '../../../button/button/button.component';
11
- import * as i0 from "@angular/core";
12
- export class DateCalendarComponent extends BaseCalendar {
13
- constructor(_cdr) {
14
- super(_cdr);
15
- this._cdr = _cdr;
16
- this.selectedDate = new Date();
17
- this.setDate = new EventEmitter();
18
- this.calendar = [];
19
- combineLatest([this.currentYear, this.currentMonth, this.minMax])
20
- .pipe(takeWhile(() => this.alive), filter(([currentYear, currentMonth]) => currentMonth !== null && currentYear !== null), map(([year, month, minMax]) => {
21
- return this.generateCalendar(dayjs(new Date(this.selectedDate)).locale('ru', { weekStart: 1 }), year, month, minMax);
22
- }))
23
- .subscribe((_) => {
24
- this.calendar = _;
25
- });
26
- }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: DateCalendarComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: DateCalendarComponent, isStandalone: true, selector: "teta-date-calendar", inputs: { selectedDate: "selectedDate", open: "open", locale: "locale", viewType: "viewType", min: "min", isDateNull: "isDateNull", max: "max" }, outputs: { setDate: "setDate" }, usesInheritance: true, ngImport: i0, template: "@if (\n { currentMonth: currentMonth | async, currentYear: currentYear | async, selectedPicker: selectedPicker | async };\n as data\n) {\n <div class=\"datepicker-content overflow-y-auto\">\n @if (data.selectedPicker === 'day') {\n <div class=\"padding-h-3 padding-v-2\" (wheel)=\"scrollMonth($event, data.currentMonth, data.currentYear)\">\n <div class=\"row align-center justify-content-between\">\n <teta-button\n [class]=\"'change-month-button datepicker_' + viewType\"\n [square]=\"true\"\n (click)=\"changeMonth(data.currentMonth - 1, data.currentYear)\"\n palette=\"text\"\n view=\"ghost\"\n >\n <teta-icon name=\"arrowLeftKey\" [palette]=\"'text'\"></teta-icon>\n </teta-button>\n <div class=\"row gap-4 font-button-2\">\n <button\n [class]=\"'datepicker_' + viewType\"\n teta-button\n view=\"ghost\"\n palette=\"text\"\n (click)=\"selectPicker('month')\"\n >\n {{ getMothName(data.currentMonth) }}\n </button>\n <button\n [class]=\"'datepicker_' + viewType\"\n teta-button\n view=\"ghost\"\n palette=\"text\"\n (click)=\"selectPicker('year')\"\n >\n {{ data.currentYear }}\n </button>\n </div>\n <teta-button\n [square]=\"true\"\n [class]=\"'change-month-button datepicker_' + viewType\"\n (click)=\"changeMonth(data.currentMonth + 1, data.currentYear)\"\n palette=\"text\"\n view=\"ghost\"\n >\n <teta-icon name=\"arrowRightKey\" [palette]=\"'text'\"></teta-icon>\n </teta-button>\n </div>\n <div>\n <teta-day-picker\n [viewType]=\"viewType\"\n (selectDate)=\"selectDate($event)\"\n [locale]=\"locale\"\n [calendar]=\"calendar\"\n ></teta-day-picker>\n </div>\n </div>\n }\n @if (data.selectedPicker === 'month') {\n <teta-month-picker\n [localeMoths]=\"locale.months\"\n [currentYear]=\"data.currentYear\"\n (changeYear)=\"setYear($event)\"\n [selectedMonth]=\"data.currentMonth\"\n [viewType]=\"viewType\"\n (selectMonth)=\"selectMonth($event)\"\n ></teta-month-picker>\n }\n @if (data.selectedPicker === 'year') {\n <teta-year-picker\n [locale]=\"locale\"\n [viewType]=\"viewType\"\n (selectYear)=\"selectYear($event)\"\n [selectedYear]=\"data.currentYear\"\n ></teta-year-picker>\n }\n </div>\n}\n", styles: [".change-month-button{-webkit-user-select:none;user-select:none}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[teta-button], teta-button", inputs: ["palette", "class", "view", "square", "viewType", "size"] }, { kind: "component", type: IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { kind: "component", type: DayPickerComponent, selector: "teta-day-picker", inputs: ["date", "calendar", "viewType", "range", "min", "max", "locale", "hoveredDate"], outputs: ["hoveredDateChange", "selectDate"] }, { kind: "component", type: MonthPickerComponent, selector: "teta-month-picker", inputs: ["selectedMonth", "viewType", "currentYear", "localeMoths"], outputs: ["selectMonth", "changeYear"] }, { kind: "component", type: YearPickerComponent, selector: "teta-year-picker", inputs: ["selectedYear", "viewType", "minMax", "locale"], outputs: ["selectYear"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
- }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: DateCalendarComponent, decorators: [{
31
- type: Component,
32
- args: [{ selector: 'teta-date-calendar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ButtonComponent, IconComponent, DayPickerComponent, MonthPickerComponent, YearPickerComponent, AsyncPipe], template: "@if (\n { currentMonth: currentMonth | async, currentYear: currentYear | async, selectedPicker: selectedPicker | async };\n as data\n) {\n <div class=\"datepicker-content overflow-y-auto\">\n @if (data.selectedPicker === 'day') {\n <div class=\"padding-h-3 padding-v-2\" (wheel)=\"scrollMonth($event, data.currentMonth, data.currentYear)\">\n <div class=\"row align-center justify-content-between\">\n <teta-button\n [class]=\"'change-month-button datepicker_' + viewType\"\n [square]=\"true\"\n (click)=\"changeMonth(data.currentMonth - 1, data.currentYear)\"\n palette=\"text\"\n view=\"ghost\"\n >\n <teta-icon name=\"arrowLeftKey\" [palette]=\"'text'\"></teta-icon>\n </teta-button>\n <div class=\"row gap-4 font-button-2\">\n <button\n [class]=\"'datepicker_' + viewType\"\n teta-button\n view=\"ghost\"\n palette=\"text\"\n (click)=\"selectPicker('month')\"\n >\n {{ getMothName(data.currentMonth) }}\n </button>\n <button\n [class]=\"'datepicker_' + viewType\"\n teta-button\n view=\"ghost\"\n palette=\"text\"\n (click)=\"selectPicker('year')\"\n >\n {{ data.currentYear }}\n </button>\n </div>\n <teta-button\n [square]=\"true\"\n [class]=\"'change-month-button datepicker_' + viewType\"\n (click)=\"changeMonth(data.currentMonth + 1, data.currentYear)\"\n palette=\"text\"\n view=\"ghost\"\n >\n <teta-icon name=\"arrowRightKey\" [palette]=\"'text'\"></teta-icon>\n </teta-button>\n </div>\n <div>\n <teta-day-picker\n [viewType]=\"viewType\"\n (selectDate)=\"selectDate($event)\"\n [locale]=\"locale\"\n [calendar]=\"calendar\"\n ></teta-day-picker>\n </div>\n </div>\n }\n @if (data.selectedPicker === 'month') {\n <teta-month-picker\n [localeMoths]=\"locale.months\"\n [currentYear]=\"data.currentYear\"\n (changeYear)=\"setYear($event)\"\n [selectedMonth]=\"data.currentMonth\"\n [viewType]=\"viewType\"\n (selectMonth)=\"selectMonth($event)\"\n ></teta-month-picker>\n }\n @if (data.selectedPicker === 'year') {\n <teta-year-picker\n [locale]=\"locale\"\n [viewType]=\"viewType\"\n (selectYear)=\"selectYear($event)\"\n [selectedYear]=\"data.currentYear\"\n ></teta-year-picker>\n }\n </div>\n}\n", styles: [".change-month-button{-webkit-user-select:none;user-select:none}\n"] }]
33
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { selectedDate: [{
34
- type: Input
35
- }], open: [{
36
- type: Input
37
- }], locale: [{
38
- type: Input
39
- }], viewType: [{
40
- type: Input
41
- }], min: [{
42
- type: Input
43
- }], isDateNull: [{
44
- type: Input
45
- }], max: [{
46
- type: Input
47
- }], setDate: [{
48
- type: Output
49
- }] } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1jYWxlbmRhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2RhdGUtcGlja2VyL2RhdGUtcGlja2VyL2RhdGUtY2FsZW5kYXIvZGF0ZS1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2RhdGUtcGlja2VyL2RhdGUtcGlja2VyL2RhdGUtY2FsZW5kYXIvZGF0ZS1jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOztBQVUxRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsWUFBWTtJQVdyRCxZQUFxQixJQUF1QjtRQUMxQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFETyxTQUFJLEdBQUosSUFBSSxDQUFtQjtRQVZuQyxpQkFBWSxHQUEyQixJQUFJLElBQUksRUFBRSxDQUFDO1FBT2pELFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUMxRCxhQUFRLEdBQWUsRUFBRSxDQUFDO1FBSS9CLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDOUQsSUFBSSxDQUNILFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQzNCLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxZQUFZLEtBQUssSUFBSSxJQUFJLFdBQVcsS0FBSyxJQUFJLENBQUMsRUFDdEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQzFCLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQ2pFLElBQUksRUFDSixLQUFLLEVBQ0wsTUFBTSxDQUNQLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTdCVSxxQkFBcUI7a0dBQXJCLHFCQUFxQix3UkNqQ2xDLCtyRkE2RUEsMkhEOUNZLGVBQWUsaUpBQUUsYUFBYSxvR0FBRSxrQkFBa0Isb01BQUUsb0JBQW9CLDJLQUFFLG1CQUFtQiwySUFBRSxTQUFTOzsyRkFFdkcscUJBQXFCO2tCQVJqQyxTQUFTOytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxDQUFDO3NGQUcxRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIG1hcCwgdGFrZVdoaWxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHZpZXdUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL21vZGVsL3ZpZXctdHlwZS5tb2RlbCc7XG5pbXBvcnQgeyBCYXNlQ2FsZW5kYXIgfSBmcm9tICcuLi8uLi9iYXNlLWNhbGVuZGFyJztcbmltcG9ydCB7IERheU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWwvZGF5LW1vZGVsJztcbmltcG9ydCB7IFRldGFMb2NhbGlzYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9sb2NhbGUvdGV0YS1sb2NhbGlzYXRpb24nO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFllYXJQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi95ZWFyLXBpY2tlci95ZWFyLXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9udGhQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb250aC1waWNrZXIvbW9udGgtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXlQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9kYXktcGlja2VyL2RheS1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9pY29uL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vYnV0dG9uL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0YS1kYXRlLWNhbGVuZGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRlLWNhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQnV0dG9uQ29tcG9uZW50LCBJY29uQ29tcG9uZW50LCBEYXlQaWNrZXJDb21wb25lbnQsIE1vbnRoUGlja2VyQ29tcG9uZW50LCBZZWFyUGlja2VyQ29tcG9uZW50LCBBc3luY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRlQ2FsZW5kYXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ2FsZW5kYXIgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHNlbGVjdGVkRGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlciA9IG5ldyBEYXRlKCk7XG4gIEBJbnB1dCgpIG9wZW46IGJvb2xlYW47XG4gIEBJbnB1dCgpIGxvY2FsZTogVGV0YUxvY2FsaXNhdGlvbjtcbiAgQElucHV0KCkgdmlld1R5cGU6IHZpZXdUeXBlO1xuICBASW5wdXQoKSBtaW46IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gIEBJbnB1dCgpIGlzRGF0ZU51bGw6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG1heDogRGF0ZSB8IHN0cmluZyB8IG51bWJlcjtcbiAgQE91dHB1dCgpIHNldERhdGU6IEV2ZW50RW1pdHRlcjxEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcbiAgcHVibGljIGNhbGVuZGFyOiBEYXlNb2RlbFtdID0gW107XG5cbiAgY29uc3RydWN0b3Iob3ZlcnJpZGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihfY2RyKTtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmN1cnJlbnRZZWFyLCB0aGlzLmN1cnJlbnRNb250aCwgdGhpcy5taW5NYXhdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLmFsaXZlKSxcbiAgICAgICAgZmlsdGVyKChbY3VycmVudFllYXIsIGN1cnJlbnRNb250aF0pID0+IGN1cnJlbnRNb250aCAhPT0gbnVsbCAmJiBjdXJyZW50WWVhciAhPT0gbnVsbCksXG4gICAgICAgIG1hcCgoW3llYXIsIG1vbnRoLCBtaW5NYXhdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2VuZXJhdGVDYWxlbmRhcihcbiAgICAgICAgICAgIGRheWpzKG5ldyBEYXRlKHRoaXMuc2VsZWN0ZWREYXRlKSkubG9jYWxlKCdydScsIHsgd2Vla1N0YXJ0OiAxIH0pLFxuICAgICAgICAgICAgeWVhcixcbiAgICAgICAgICAgIG1vbnRoLFxuICAgICAgICAgICAgbWluTWF4LFxuICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLmNhbGVuZGFyID0gXztcbiAgICAgIH0pO1xuICB9XG59XG4iLCJAaWYgKFxuICB7IGN1cnJlbnRNb250aDogY3VycmVudE1vbnRoIHwgYXN5bmMsIGN1cnJlbnRZZWFyOiBjdXJyZW50WWVhciB8IGFzeW5jLCBzZWxlY3RlZFBpY2tlcjogc2VsZWN0ZWRQaWNrZXIgfCBhc3luYyB9O1xuICBhcyBkYXRhXG4pIHtcbiAgPGRpdiBjbGFzcz1cImRhdGVwaWNrZXItY29udGVudCBvdmVyZmxvdy15LWF1dG9cIj5cbiAgICBAaWYgKGRhdGEuc2VsZWN0ZWRQaWNrZXIgPT09ICdkYXknKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwicGFkZGluZy1oLTMgcGFkZGluZy12LTJcIiAod2hlZWwpPVwic2Nyb2xsTW9udGgoJGV2ZW50LCBkYXRhLmN1cnJlbnRNb250aCwgZGF0YS5jdXJyZW50WWVhcilcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cbiAgICAgICAgICA8dGV0YS1idXR0b25cbiAgICAgICAgICAgIFtjbGFzc109XCInY2hhbmdlLW1vbnRoLWJ1dHRvbiBkYXRlcGlja2VyXycgKyB2aWV3VHlwZVwiXG4gICAgICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZU1vbnRoKGRhdGEuY3VycmVudE1vbnRoIC0gMSwgZGF0YS5jdXJyZW50WWVhcilcIlxuICAgICAgICAgICAgcGFsZXR0ZT1cInRleHRcIlxuICAgICAgICAgICAgdmlldz1cImdob3N0XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8dGV0YS1pY29uIG5hbWU9XCJhcnJvd0xlZnRLZXlcIiBbcGFsZXR0ZV09XCIndGV4dCdcIj48L3RldGEtaWNvbj5cbiAgICAgICAgICA8L3RldGEtYnV0dG9uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZ2FwLTQgZm9udC1idXR0b24tMlwiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2RhdGVwaWNrZXJfJyArIHZpZXdUeXBlXCJcbiAgICAgICAgICAgICAgdGV0YS1idXR0b25cbiAgICAgICAgICAgICAgdmlldz1cImdob3N0XCJcbiAgICAgICAgICAgICAgcGFsZXR0ZT1cInRleHRcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UGlja2VyKCdtb250aCcpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgZ2V0TW90aE5hbWUoZGF0YS5jdXJyZW50TW9udGgpIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgW2NsYXNzXT1cIidkYXRlcGlja2VyXycgKyB2aWV3VHlwZVwiXG4gICAgICAgICAgICAgIHRldGEtYnV0dG9uXG4gICAgICAgICAgICAgIHZpZXc9XCJnaG9zdFwiXG4gICAgICAgICAgICAgIHBhbGV0dGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFBpY2tlcigneWVhcicpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgZGF0YS5jdXJyZW50WWVhciB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHRldGEtYnV0dG9uXG4gICAgICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIidjaGFuZ2UtbW9udGgtYnV0dG9uIGRhdGVwaWNrZXJfJyArIHZpZXdUeXBlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VNb250aChkYXRhLmN1cnJlbnRNb250aCArIDEsIGRhdGEuY3VycmVudFllYXIpXCJcbiAgICAgICAgICAgIHBhbGV0dGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHZpZXc9XCJnaG9zdFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHRldGEtaWNvbiBuYW1lPVwiYXJyb3dSaWdodEtleVwiIFtwYWxldHRlXT1cIid0ZXh0J1wiPjwvdGV0YS1pY29uPlxuICAgICAgICAgIDwvdGV0YS1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDx0ZXRhLWRheS1waWNrZXJcbiAgICAgICAgICAgIFt2aWV3VHlwZV09XCJ2aWV3VHlwZVwiXG4gICAgICAgICAgICAoc2VsZWN0RGF0ZSk9XCJzZWxlY3REYXRlKCRldmVudClcIlxuICAgICAgICAgICAgW2xvY2FsZV09XCJsb2NhbGVcIlxuICAgICAgICAgICAgW2NhbGVuZGFyXT1cImNhbGVuZGFyXCJcbiAgICAgICAgICA+PC90ZXRhLWRheS1waWNrZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICAgIEBpZiAoZGF0YS5zZWxlY3RlZFBpY2tlciA9PT0gJ21vbnRoJykge1xuICAgICAgPHRldGEtbW9udGgtcGlja2VyXG4gICAgICAgIFtsb2NhbGVNb3Roc109XCJsb2NhbGUubW9udGhzXCJcbiAgICAgICAgW2N1cnJlbnRZZWFyXT1cImRhdGEuY3VycmVudFllYXJcIlxuICAgICAgICAoY2hhbmdlWWVhcik9XCJzZXRZZWFyKCRldmVudClcIlxuICAgICAgICBbc2VsZWN0ZWRNb250aF09XCJkYXRhLmN1cnJlbnRNb250aFwiXG4gICAgICAgIFt2aWV3VHlwZV09XCJ2aWV3VHlwZVwiXG4gICAgICAgIChzZWxlY3RNb250aCk9XCJzZWxlY3RNb250aCgkZXZlbnQpXCJcbiAgICAgID48L3RldGEtbW9udGgtcGlja2VyPlxuICAgIH1cbiAgICBAaWYgKGRhdGEuc2VsZWN0ZWRQaWNrZXIgPT09ICd5ZWFyJykge1xuICAgICAgPHRldGEteWVhci1waWNrZXJcbiAgICAgICAgW2xvY2FsZV09XCJsb2NhbGVcIlxuICAgICAgICBbdmlld1R5cGVdPVwidmlld1R5cGVcIlxuICAgICAgICAoc2VsZWN0WWVhcik9XCJzZWxlY3RZZWFyKCRldmVudClcIlxuICAgICAgICBbc2VsZWN0ZWRZZWFyXT1cImRhdGEuY3VycmVudFllYXJcIlxuICAgICAgPjwvdGV0YS15ZWFyLXBpY2tlcj5cbiAgICB9XG4gIDwvZGl2PlxufVxuIl19