@wlcm/angular 17.4.0 → 17.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. package/core/esm2022/index.mjs +12 -0
  2. package/core/esm2022/lib/constants/_index.mjs +3 -0
  3. package/core/esm2022/lib/directives/_index.mjs +2 -0
  4. package/core/esm2022/lib/directives/icon.directive.mjs +49 -0
  5. package/core/esm2022/lib/models/_index.mjs +5 -0
  6. package/{dist/core → core}/fesm2022/wlcm-angular-core.mjs +42 -37
  7. package/core/fesm2022/wlcm-angular-core.mjs.map +1 -0
  8. package/core/index.d.ts +7 -0
  9. package/core/lib/constants/_index.d.ts +2 -0
  10. package/core/lib/directives/_index.d.ts +1 -0
  11. package/{dist/core → core}/lib/directives/icon.directive.d.ts +2 -1
  12. package/core/lib/models/_index.d.ts +4 -0
  13. package/datepicker/README.md +7 -0
  14. package/datepicker/esm2022/index.mjs +10 -0
  15. package/datepicker/esm2022/lib/components/range/date-range-calendar-header/date-range-calendar-header.component.mjs +54 -0
  16. package/datepicker/esm2022/lib/components/range/date-range-picker/date-range-picker.component.mjs +170 -0
  17. package/{dist/date-range-picker/esm2022/lib/components → datepicker/esm2022/lib/components/range}/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.mjs +1 -1
  18. package/datepicker/esm2022/lib/components/range/date-range-picker-input/date-range-picker-input.component.mjs +122 -0
  19. package/datepicker/esm2022/lib/components/single/datepicker-input-container/datepicker-input-container.component.mjs +88 -0
  20. package/datepicker/esm2022/lib/components/single/datepicker-panel/datepicker-panel.component.mjs +27 -0
  21. package/datepicker/esm2022/lib/constants/datepicker.constants.mjs +20 -0
  22. package/datepicker/esm2022/lib/constants/range/date-range-picker.constants.mjs +3 -0
  23. package/datepicker/esm2022/lib/constants/range/date-range-selection-model.constants.mjs +10 -0
  24. package/datepicker/esm2022/lib/constants/range/date-range-trigger-selection-model.constants.mjs +10 -0
  25. package/datepicker/esm2022/lib/datepicker.module.mjs +33 -0
  26. package/datepicker/esm2022/lib/directives/datepicker-input.base.mjs +80 -0
  27. package/datepicker/esm2022/lib/directives/datepicker-trigger.base.mjs +80 -0
  28. package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input-end.directive.mjs +77 -0
  29. package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input-start.directive.mjs +77 -0
  30. package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input.base.mjs +49 -0
  31. package/datepicker/esm2022/lib/directives/ragne/left-calendar.directive.mjs +46 -0
  32. package/datepicker/esm2022/lib/directives/ragne/right-calendar.directive.mjs +59 -0
  33. package/datepicker/esm2022/lib/directives/single/datepicker-input.directive.mjs +67 -0
  34. package/datepicker/esm2022/lib/models/date-picker.models.mjs +27 -0
  35. package/datepicker/esm2022/lib/models/range/data-range-calendar.models.mjs +43 -0
  36. package/datepicker/esm2022/lib/models/range/date-range-picker.models.mjs +2 -0
  37. package/datepicker/esm2022/lib/models/range/date-range-validation.models.mjs +5 -0
  38. package/datepicker/esm2022/lib/utils/range/date-range-input.validators.mjs +16 -0
  39. package/datepicker/esm2022/lib/utils/range/date-range-picker-errors.mjs +9 -0
  40. package/datepicker/esm2022/wlcm-angular-datepicker.mjs +5 -0
  41. package/{dist/date-range-picker/fesm2022/wlcm-angular-date-range-picker.mjs → datepicker/fesm2022/wlcm-angular-datepicker.mjs} +761 -572
  42. package/datepicker/fesm2022/wlcm-angular-datepicker.mjs.map +1 -0
  43. package/datepicker/index.d.ts +9 -0
  44. package/datepicker/lib/components/range/date-range-calendar-header/date-range-calendar-header.component.d.ts +18 -0
  45. package/{dist/date-range-picker/lib/components → datepicker/lib/components/range}/date-range-picker/date-range-picker.component.d.ts +8 -7
  46. package/{dist/date-range-picker/lib/components → datepicker/lib/components/range}/date-range-picker-input/date-range-picker-input.component.d.ts +4 -3
  47. package/datepicker/lib/components/single/datepicker-input-container/datepicker-input-container.component.d.ts +30 -0
  48. package/datepicker/lib/components/single/datepicker-panel/datepicker-panel.component.d.ts +13 -0
  49. package/datepicker/lib/constants/datepicker.constants.d.ts +4 -0
  50. package/datepicker/lib/constants/range/date-range-picker.constants.d.ts +3 -0
  51. package/datepicker/lib/datepicker.module.d.ts +12 -0
  52. package/{dist/date-range-picker/lib/directives/date-range-picker-input-base.directive.d.ts → datepicker/lib/directives/datepicker-input.base.d.ts} +12 -15
  53. package/datepicker/lib/directives/datepicker-trigger.base.d.ts +26 -0
  54. package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/date-range-picker-input-end.directive.d.ts +5 -3
  55. package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/date-range-picker-input-start.directive.d.ts +5 -3
  56. package/datepicker/lib/directives/ragne/date-range-picker-input.base.d.ts +20 -0
  57. package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/left-calendar.directive.d.ts +1 -1
  58. package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/right-calendar.directive.d.ts +1 -1
  59. package/datepicker/lib/directives/single/datepicker-input.directive.d.ts +21 -0
  60. package/datepicker/lib/models/date-picker.models.d.ts +10 -0
  61. package/datepicker/lib/models/range/date-range-picker.models.d.ts +4 -0
  62. package/datepicker/lib/models/range/date-range-validation.models.d.ts +3 -0
  63. package/{dist/forms → forms}/esm2022/lib/forms/components/select/select.component.mjs +3 -3
  64. package/{dist/forms → forms}/fesm2022/wlcm-angular-forms.mjs +2 -2
  65. package/forms/fesm2022/wlcm-angular-forms.mjs.map +1 -0
  66. package/package.json +7 -60
  67. package/phone-input/esm2022/lib/directives/phone-input.directive.mjs +125 -0
  68. package/{dist/phone-input → phone-input}/fesm2022/wlcm-angular-phone-input.mjs +1 -0
  69. package/phone-input/fesm2022/wlcm-angular-phone-input.mjs.map +1 -0
  70. package/shared/calendar/esm2022/index.mjs +4 -0
  71. package/shared/calendar/esm2022/lib/calendar.module.mjs +21 -0
  72. package/shared/calendar/esm2022/lib/components/calendar-header/calendar-header.component.mjs +107 -0
  73. package/shared/calendar/esm2022/lib/directives/calendar.directive.mjs +15 -0
  74. package/shared/calendar/esm2022/wlcm-angular-calendar.mjs +5 -0
  75. package/shared/calendar/index.d.ts +3 -0
  76. package/shared/calendar/lib/calendar.module.d.ts +9 -0
  77. package/shared/calendar/lib/components/calendar-header/calendar-header.component.d.ts +22 -0
  78. package/shared/calendar/lib/directives/calendar.directive.d.ts +5 -0
  79. package/{dist/stepper → stepper}/esm2022/lib/components/step-header/step-header.component.mjs +3 -1
  80. package/{dist/stepper → stepper}/fesm2022/wlcm-angular-stepper.mjs +2 -0
  81. package/stepper/fesm2022/wlcm-angular-stepper.mjs.map +1 -0
  82. package/{dist/styles/components/date-range-picker/_date-range-picker-body.scss → styles/components/calendar/_calendar.scss} +2 -9
  83. package/styles/components/calendar/index.scss +7 -0
  84. package/styles/components/date-range-picker/_date-range-picker-body.scss +13 -0
  85. package/{dist/styles → styles}/components/date-range-picker/index.scss +0 -2
  86. package/styles/components/datepicker/_datepicker-input-container.scss +11 -0
  87. package/styles/components/datepicker/_datepicker-panel.scss +15 -0
  88. package/styles/components/datepicker/index.scss +7 -0
  89. package/{dist/styles → styles}/core/_all-theme.scss +7 -3
  90. package/dist/README.md +0 -62
  91. package/dist/button/.npmignore +0 -2
  92. package/dist/core/.npmignore +0 -2
  93. package/dist/core/esm2022/index.mjs +0 -13
  94. package/dist/core/esm2022/lib/directives/icon.directive.mjs +0 -44
  95. package/dist/core/fesm2022/wlcm-angular-core.mjs.map +0 -1
  96. package/dist/core/index.d.ts +0 -11
  97. package/dist/date-range-picker/.npmignore +0 -2
  98. package/dist/date-range-picker/README.md +0 -7
  99. package/dist/date-range-picker/esm2022/index.mjs +0 -7
  100. package/dist/date-range-picker/esm2022/lib/components/calendar-header/calendar-header.component.mjs +0 -62
  101. package/dist/date-range-picker/esm2022/lib/components/date-range-picker/date-range-picker.component.mjs +0 -157
  102. package/dist/date-range-picker/esm2022/lib/components/date-range-picker-input/date-range-picker-input.component.mjs +0 -122
  103. package/dist/date-range-picker/esm2022/lib/constants/date-range-selection-model.constants.mjs +0 -10
  104. package/dist/date-range-picker/esm2022/lib/constants/date-range-trigger-selection-model.constants.mjs +0 -10
  105. package/dist/date-range-picker/esm2022/lib/date-range-picker.module.mjs +0 -67
  106. package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-input-base.directive.mjs +0 -93
  107. package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-input-end.directive.mjs +0 -65
  108. package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-input-start.directive.mjs +0 -65
  109. package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-trigger.directive.mjs +0 -80
  110. package/dist/date-range-picker/esm2022/lib/directives/left-calendar.directive.mjs +0 -46
  111. package/dist/date-range-picker/esm2022/lib/directives/right-calendar.directive.mjs +0 -59
  112. package/dist/date-range-picker/esm2022/lib/models/data-range-calendar.models.mjs +0 -43
  113. package/dist/date-range-picker/esm2022/lib/models/date-range-validation.models.mjs +0 -5
  114. package/dist/date-range-picker/esm2022/lib/services/date-adapter.service.mjs +0 -23
  115. package/dist/date-range-picker/esm2022/lib/utils/date-range-input.validators.mjs +0 -16
  116. package/dist/date-range-picker/esm2022/lib/utils/date-range-picker-errors.mjs +0 -9
  117. package/dist/date-range-picker/esm2022/wlcm-angular-date-range-picker.mjs +0 -5
  118. package/dist/date-range-picker/fesm2022/wlcm-angular-date-range-picker.mjs.map +0 -1
  119. package/dist/date-range-picker/index.d.ts +0 -6
  120. package/dist/date-range-picker/lib/components/calendar-header/calendar-header.component.d.ts +0 -19
  121. package/dist/date-range-picker/lib/date-range-picker.module.d.ts +0 -12
  122. package/dist/date-range-picker/lib/directives/date-range-picker-trigger.directive.d.ts +0 -26
  123. package/dist/date-range-picker/lib/models/date-range-validation.models.d.ts +0 -3
  124. package/dist/date-range-picker/lib/services/date-adapter.service.d.ts +0 -7
  125. package/dist/filters/.npmignore +0 -2
  126. package/dist/forms/.npmignore +0 -2
  127. package/dist/forms/fesm2022/wlcm-angular-forms.mjs.map +0 -1
  128. package/dist/package.json +0 -92
  129. package/dist/phone-input/.npmignore +0 -2
  130. package/dist/phone-input/esm2022/lib/directives/phone-input.directive.mjs +0 -124
  131. package/dist/phone-input/fesm2022/wlcm-angular-phone-input.mjs.map +0 -1
  132. package/dist/search-field/.npmignore +0 -2
  133. package/dist/stepper/.npmignore +0 -2
  134. package/dist/stepper/fesm2022/wlcm-angular-stepper.mjs.map +0 -1
  135. /package/{dist/button → button}/README.md +0 -0
  136. /package/{dist/button → button}/esm2022/index.mjs +0 -0
  137. /package/{dist/button → button}/esm2022/lib/button.module.mjs +0 -0
  138. /package/{dist/button → button}/esm2022/lib/components/button/button.component.mjs +0 -0
  139. /package/{dist/button → button}/esm2022/lib/models/button.models.mjs +0 -0
  140. /package/{dist/button → button}/esm2022/wlcm-angular-button.mjs +0 -0
  141. /package/{dist/button → button}/fesm2022/wlcm-angular-button.mjs +0 -0
  142. /package/{dist/button → button}/fesm2022/wlcm-angular-button.mjs.map +0 -0
  143. /package/{dist/button → button}/index.d.ts +0 -0
  144. /package/{dist/button → button}/lib/button.module.d.ts +0 -0
  145. /package/{dist/button → button}/lib/components/button/button.component.d.ts +0 -0
  146. /package/{dist/button → button}/lib/models/button.models.d.ts +0 -0
  147. /package/{dist/core → core}/README.md +0 -0
  148. /package/{dist/core → core}/esm2022/lib/components/calendar-icon/calendar-icon.component.mjs +0 -0
  149. /package/{dist/core → core}/esm2022/lib/components/chevron-down-icon/chevron-down-icon.component.mjs +0 -0
  150. /package/{dist/core → core}/esm2022/lib/components/close-icon/close-icon.component.mjs +0 -0
  151. /package/{dist/core → core}/esm2022/lib/components/search-icon/search-icon.component.mjs +0 -0
  152. /package/{dist/core → core}/esm2022/lib/constants/http.constants.mjs +0 -0
  153. /package/{dist/core → core}/esm2022/lib/constants/icon.contants.mjs +0 -0
  154. /package/{dist/core → core}/esm2022/lib/models/icon.models.mjs +0 -0
  155. /package/{dist/core → core}/esm2022/lib/models/option.models.mjs +0 -0
  156. /package/{dist/core → core}/esm2022/lib/models/paginated-data.models.mjs +0 -0
  157. /package/{dist/core → core}/esm2022/lib/models/query-params.models.mjs +0 -0
  158. /package/{dist/core → core}/esm2022/lib/utils/stream.utils.mjs +0 -0
  159. /package/{dist/core → core}/esm2022/wlcm-angular-core.mjs +0 -0
  160. /package/{dist/core → core}/lib/components/calendar-icon/calendar-icon.component.d.ts +0 -0
  161. /package/{dist/core → core}/lib/components/chevron-down-icon/chevron-down-icon.component.d.ts +0 -0
  162. /package/{dist/core → core}/lib/components/close-icon/close-icon.component.d.ts +0 -0
  163. /package/{dist/core → core}/lib/components/search-icon/search-icon.component.d.ts +0 -0
  164. /package/{dist/core → core}/lib/constants/http.constants.d.ts +0 -0
  165. /package/{dist/core → core}/lib/constants/icon.contants.d.ts +0 -0
  166. /package/{dist/core → core}/lib/models/icon.models.d.ts +0 -0
  167. /package/{dist/core → core}/lib/models/option.models.d.ts +0 -0
  168. /package/{dist/core → core}/lib/models/paginated-data.models.d.ts +0 -0
  169. /package/{dist/core → core}/lib/models/query-params.models.d.ts +0 -0
  170. /package/{dist/core → core}/lib/utils/stream.utils.d.ts +0 -0
  171. /package/{dist/date-range-picker/lib/components → datepicker/lib/components/range}/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.d.ts +0 -0
  172. /package/{dist/date-range-picker/lib/constants → datepicker/lib/constants/range}/date-range-selection-model.constants.d.ts +0 -0
  173. /package/{dist/date-range-picker/lib/constants → datepicker/lib/constants/range}/date-range-trigger-selection-model.constants.d.ts +0 -0
  174. /package/{dist/date-range-picker/lib/models → datepicker/lib/models/range}/data-range-calendar.models.d.ts +0 -0
  175. /package/{dist/date-range-picker/lib/utils → datepicker/lib/utils/range}/date-range-input.validators.d.ts +0 -0
  176. /package/{dist/date-range-picker/lib/utils → datepicker/lib/utils/range}/date-range-picker-errors.d.ts +0 -0
  177. /package/{dist/filters → filters}/README.md +0 -0
  178. /package/{dist/filters → filters}/esm2022/index.mjs +0 -0
  179. /package/{dist/filters → filters}/esm2022/lib/filters/components/filters/filters.component.mjs +0 -0
  180. /package/{dist/filters → filters}/esm2022/lib/filters/components/filters-button/filters-button.component.mjs +0 -0
  181. /package/{dist/filters → filters}/esm2022/lib/filters/components/filters-panel/filters-panel.component.mjs +0 -0
  182. /package/{dist/filters → filters}/esm2022/lib/filters/components/filters-unit/filters-unit.component.mjs +0 -0
  183. /package/{dist/filters → filters}/esm2022/lib/filters/directives/filters-content.directive.mjs +0 -0
  184. /package/{dist/filters → filters}/esm2022/lib/filters/directives/filters-trigger.directive.mjs +0 -0
  185. /package/{dist/filters → filters}/esm2022/lib/filters/filters.module.mjs +0 -0
  186. /package/{dist/filters → filters}/esm2022/lib/filters/models/filters-default-selection-model.mjs +0 -0
  187. /package/{dist/filters → filters}/esm2022/lib/filters/models/filters-trigger.base.mjs +0 -0
  188. /package/{dist/filters → filters}/esm2022/lib/filters/models/filters.models.mjs +0 -0
  189. /package/{dist/filters → filters}/esm2022/lib/filters/pipes/is-filters-param-checked.pipe.mjs +0 -0
  190. /package/{dist/filters → filters}/esm2022/lib/filters/pipes/total-filters-applied.pipe.mjs +0 -0
  191. /package/{dist/filters → filters}/esm2022/lib/filters/utils/filters.utils.mjs +0 -0
  192. /package/{dist/filters → filters}/esm2022/wlcm-angular-filters.mjs +0 -0
  193. /package/{dist/filters → filters}/fesm2022/wlcm-angular-filters.mjs +0 -0
  194. /package/{dist/filters → filters}/fesm2022/wlcm-angular-filters.mjs.map +0 -0
  195. /package/{dist/filters → filters}/index.d.ts +0 -0
  196. /package/{dist/filters → filters}/lib/filters/components/filters/filters.component.d.ts +0 -0
  197. /package/{dist/filters → filters}/lib/filters/components/filters-button/filters-button.component.d.ts +0 -0
  198. /package/{dist/filters → filters}/lib/filters/components/filters-panel/filters-panel.component.d.ts +0 -0
  199. /package/{dist/filters → filters}/lib/filters/components/filters-unit/filters-unit.component.d.ts +0 -0
  200. /package/{dist/filters → filters}/lib/filters/directives/filters-content.directive.d.ts +0 -0
  201. /package/{dist/filters → filters}/lib/filters/directives/filters-trigger.directive.d.ts +0 -0
  202. /package/{dist/filters → filters}/lib/filters/filters.module.d.ts +0 -0
  203. /package/{dist/filters → filters}/lib/filters/models/filters-default-selection-model.d.ts +0 -0
  204. /package/{dist/filters → filters}/lib/filters/models/filters-trigger.base.d.ts +0 -0
  205. /package/{dist/filters → filters}/lib/filters/models/filters.models.d.ts +0 -0
  206. /package/{dist/filters → filters}/lib/filters/pipes/is-filters-param-checked.pipe.d.ts +0 -0
  207. /package/{dist/filters → filters}/lib/filters/pipes/total-filters-applied.pipe.d.ts +0 -0
  208. /package/{dist/filters → filters}/lib/filters/utils/filters.utils.d.ts +0 -0
  209. /package/{dist/forms → forms}/README.md +0 -0
  210. /package/{dist/forms → forms}/esm2022/index.mjs +0 -0
  211. /package/{dist/forms → forms}/esm2022/lib/forms/components/autocomplete/autocomplete.component.mjs +0 -0
  212. /package/{dist/forms → forms}/esm2022/lib/forms/components/checkbox/checkbox.component.mjs +0 -0
  213. /package/{dist/forms → forms}/esm2022/lib/forms/components/error/error.component.mjs +0 -0
  214. /package/{dist/forms → forms}/esm2022/lib/forms/components/form-field/form-field.component.mjs +0 -0
  215. /package/{dist/forms → forms}/esm2022/lib/forms/components/index.mjs +0 -0
  216. /package/{dist/forms → forms}/esm2022/lib/forms/components/label/label.component.mjs +0 -0
  217. /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-elements.constants.mjs +0 -0
  218. /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-errors.constants.mjs +0 -0
  219. /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-field.constants.mjs +0 -0
  220. /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-state-handlers.constants.mjs +0 -0
  221. /package/{dist/forms → forms}/esm2022/lib/forms/constants/index.mjs +0 -0
  222. /package/{dist/forms → forms}/esm2022/lib/forms/directives/ac-input-binder.directive.mjs +0 -0
  223. /package/{dist/forms → forms}/esm2022/lib/forms/directives/autocomplete.directive.mjs +0 -0
  224. /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-custom-container.directive.mjs +0 -0
  225. /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-hint.directive.mjs +0 -0
  226. /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-prefix.directive.mjs +0 -0
  227. /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-suffix.directive.mjs +0 -0
  228. /package/{dist/forms → forms}/esm2022/lib/forms/directives/input.directive.mjs +0 -0
  229. /package/{dist/forms → forms}/esm2022/lib/forms/directives/select-input-binder.directive.mjs +0 -0
  230. /package/{dist/forms → forms}/esm2022/lib/forms/forms.module.mjs +0 -0
  231. /package/{dist/forms → forms}/esm2022/lib/forms/models/_index.mjs +0 -0
  232. /package/{dist/forms → forms}/esm2022/lib/forms/models/form-errors.models.mjs +0 -0
  233. /package/{dist/forms → forms}/esm2022/lib/forms/models/form.models.mjs +0 -0
  234. /package/{dist/forms → forms}/esm2022/lib/forms/models/input.models.mjs +0 -0
  235. /package/{dist/forms → forms}/esm2022/lib/forms/pipes/errors-mapper.pipe.mjs +0 -0
  236. /package/{dist/forms → forms}/esm2022/lib/forms/services/form-state-handler.service.mjs +0 -0
  237. /package/{dist/forms → forms}/esm2022/lib/forms/services/index.mjs +0 -0
  238. /package/{dist/forms → forms}/esm2022/wlcm-angular-forms.mjs +0 -0
  239. /package/{dist/forms → forms}/index.d.ts +0 -0
  240. /package/{dist/forms → forms}/lib/forms/components/autocomplete/autocomplete.component.d.ts +0 -0
  241. /package/{dist/forms → forms}/lib/forms/components/checkbox/checkbox.component.d.ts +0 -0
  242. /package/{dist/forms → forms}/lib/forms/components/error/error.component.d.ts +0 -0
  243. /package/{dist/forms → forms}/lib/forms/components/form-field/form-field.component.d.ts +0 -0
  244. /package/{dist/forms → forms}/lib/forms/components/index.d.ts +0 -0
  245. /package/{dist/forms → forms}/lib/forms/components/label/label.component.d.ts +0 -0
  246. /package/{dist/forms → forms}/lib/forms/components/select/select.component.d.ts +0 -0
  247. /package/{dist/forms → forms}/lib/forms/constants/form-elements.constants.d.ts +0 -0
  248. /package/{dist/forms → forms}/lib/forms/constants/form-errors.constants.d.ts +0 -0
  249. /package/{dist/forms → forms}/lib/forms/constants/form-field.constants.d.ts +0 -0
  250. /package/{dist/forms → forms}/lib/forms/constants/form-state-handlers.constants.d.ts +0 -0
  251. /package/{dist/forms → forms}/lib/forms/constants/index.d.ts +0 -0
  252. /package/{dist/forms → forms}/lib/forms/directives/ac-input-binder.directive.d.ts +0 -0
  253. /package/{dist/forms → forms}/lib/forms/directives/autocomplete.directive.d.ts +0 -0
  254. /package/{dist/forms → forms}/lib/forms/directives/form-field-custom-container.directive.d.ts +0 -0
  255. /package/{dist/forms → forms}/lib/forms/directives/form-field-hint.directive.d.ts +0 -0
  256. /package/{dist/forms → forms}/lib/forms/directives/form-field-prefix.directive.d.ts +0 -0
  257. /package/{dist/forms → forms}/lib/forms/directives/form-field-suffix.directive.d.ts +0 -0
  258. /package/{dist/forms → forms}/lib/forms/directives/input.directive.d.ts +0 -0
  259. /package/{dist/forms → forms}/lib/forms/directives/select-input-binder.directive.d.ts +0 -0
  260. /package/{dist/forms → forms}/lib/forms/forms.module.d.ts +0 -0
  261. /package/{dist/forms → forms}/lib/forms/models/_index.d.ts +0 -0
  262. /package/{dist/forms → forms}/lib/forms/models/form-errors.models.d.ts +0 -0
  263. /package/{dist/forms → forms}/lib/forms/models/form.models.d.ts +0 -0
  264. /package/{dist/forms → forms}/lib/forms/models/input.models.d.ts +0 -0
  265. /package/{dist/forms → forms}/lib/forms/pipes/errors-mapper.pipe.d.ts +0 -0
  266. /package/{dist/forms → forms}/lib/forms/services/form-state-handler.service.d.ts +0 -0
  267. /package/{dist/forms → forms}/lib/forms/services/index.d.ts +0 -0
  268. /package/{dist/index.d.ts → index.d.ts} +0 -0
  269. /package/{dist/index.mjs → index.mjs} +0 -0
  270. /package/{dist/phone-input → phone-input}/README.md +0 -0
  271. /package/{dist/phone-input → phone-input}/esm2022/index.mjs +0 -0
  272. /package/{dist/phone-input → phone-input}/esm2022/lib/components/country-code-select/country-code-select.component.mjs +0 -0
  273. /package/{dist/phone-input → phone-input}/esm2022/lib/components/phone-input-container/phone-input-container.component.mjs +0 -0
  274. /package/{dist/phone-input → phone-input}/esm2022/lib/constants/country-code-options.constants.mjs +0 -0
  275. /package/{dist/phone-input → phone-input}/esm2022/lib/constants/phone-adapter.constants.mjs +0 -0
  276. /package/{dist/phone-input → phone-input}/esm2022/lib/models/country-code.models.mjs +0 -0
  277. /package/{dist/phone-input → phone-input}/esm2022/lib/models/phone-adapter.models.mjs +0 -0
  278. /package/{dist/phone-input → phone-input}/esm2022/lib/models/phone.models.mjs +0 -0
  279. /package/{dist/phone-input → phone-input}/esm2022/lib/phone-input.module.mjs +0 -0
  280. /package/{dist/phone-input → phone-input}/esm2022/lib/pipes/phone-code.pipe.mjs +0 -0
  281. /package/{dist/phone-input → phone-input}/esm2022/wlcm-angular-phone-input.mjs +0 -0
  282. /package/{dist/phone-input → phone-input}/index.d.ts +0 -0
  283. /package/{dist/phone-input → phone-input}/lib/components/country-code-select/country-code-select.component.d.ts +0 -0
  284. /package/{dist/phone-input → phone-input}/lib/components/phone-input-container/phone-input-container.component.d.ts +0 -0
  285. /package/{dist/phone-input → phone-input}/lib/constants/country-code-options.constants.d.ts +0 -0
  286. /package/{dist/phone-input → phone-input}/lib/constants/phone-adapter.constants.d.ts +0 -0
  287. /package/{dist/phone-input → phone-input}/lib/directives/phone-input.directive.d.ts +0 -0
  288. /package/{dist/phone-input → phone-input}/lib/models/country-code.models.d.ts +0 -0
  289. /package/{dist/phone-input → phone-input}/lib/models/phone-adapter.models.d.ts +0 -0
  290. /package/{dist/phone-input → phone-input}/lib/models/phone.models.d.ts +0 -0
  291. /package/{dist/phone-input → phone-input}/lib/phone-input.module.d.ts +0 -0
  292. /package/{dist/phone-input → phone-input}/lib/pipes/phone-code.pipe.d.ts +0 -0
  293. /package/{dist/search-field → search-field}/README.md +0 -0
  294. /package/{dist/search-field → search-field}/esm2022/index.mjs +0 -0
  295. /package/{dist/search-field → search-field}/esm2022/lib/components/search-field/search-field.component.mjs +0 -0
  296. /package/{dist/search-field → search-field}/esm2022/lib/search-field.module.mjs +0 -0
  297. /package/{dist/search-field → search-field}/esm2022/wlcm-angular-search-field.mjs +0 -0
  298. /package/{dist/search-field → search-field}/fesm2022/wlcm-angular-search-field.mjs +0 -0
  299. /package/{dist/search-field → search-field}/fesm2022/wlcm-angular-search-field.mjs.map +0 -0
  300. /package/{dist/search-field → search-field}/index.d.ts +0 -0
  301. /package/{dist/search-field → search-field}/lib/components/search-field/search-field.component.d.ts +0 -0
  302. /package/{dist/search-field → search-field}/lib/search-field.module.d.ts +0 -0
  303. /package/{dist/stepper → stepper}/README.md +0 -0
  304. /package/{dist/stepper → stepper}/esm2022/index.mjs +0 -0
  305. /package/{dist/stepper → stepper}/esm2022/lib/components/step/step.component.mjs +0 -0
  306. /package/{dist/stepper → stepper}/esm2022/lib/components/stepper/stepper.component.mjs +0 -0
  307. /package/{dist/stepper → stepper}/esm2022/lib/components/stepper-header/stepper-header.component.mjs +0 -0
  308. /package/{dist/stepper → stepper}/esm2022/lib/constants/step.constants.mjs +0 -0
  309. /package/{dist/stepper → stepper}/esm2022/lib/constants/stepper.stepper.mjs +0 -0
  310. /package/{dist/stepper → stepper}/esm2022/lib/directives/load-on-active-step.directive.mjs +0 -0
  311. /package/{dist/stepper → stepper}/esm2022/lib/models/step.models.mjs +0 -0
  312. /package/{dist/stepper → stepper}/esm2022/lib/models/stepper.models.mjs +0 -0
  313. /package/{dist/stepper → stepper}/esm2022/lib/stepper.module.mjs +0 -0
  314. /package/{dist/stepper → stepper}/esm2022/wlcm-angular-stepper.mjs +0 -0
  315. /package/{dist/stepper → stepper}/index.d.ts +0 -0
  316. /package/{dist/stepper → stepper}/lib/components/step/step.component.d.ts +0 -0
  317. /package/{dist/stepper → stepper}/lib/components/step-header/step-header.component.d.ts +0 -0
  318. /package/{dist/stepper → stepper}/lib/components/stepper/stepper.component.d.ts +0 -0
  319. /package/{dist/stepper → stepper}/lib/components/stepper-header/stepper-header.component.d.ts +0 -0
  320. /package/{dist/stepper → stepper}/lib/constants/step.constants.d.ts +0 -0
  321. /package/{dist/stepper → stepper}/lib/constants/stepper.stepper.d.ts +0 -0
  322. /package/{dist/stepper → stepper}/lib/directives/load-on-active-step.directive.d.ts +0 -0
  323. /package/{dist/stepper → stepper}/lib/models/step.models.d.ts +0 -0
  324. /package/{dist/stepper → stepper}/lib/models/stepper.models.d.ts +0 -0
  325. /package/{dist/stepper → stepper}/lib/stepper.module.d.ts +0 -0
  326. /package/{dist/styles → styles}/components/button/index.scss +0 -0
  327. /package/{dist/styles/components/date-range-picker/_date-range-picker-header.scss → styles/components/calendar/_calendar-header.scss} +0 -0
  328. /package/{dist/styles → styles}/components/common/index.scss +0 -0
  329. /package/{dist/styles → styles}/components/date-range-picker/_date-range-picker-input.scss +0 -0
  330. /package/{dist/styles → styles}/components/date-range-picker/_date-range-picker-panel.scss +0 -0
  331. /package/{dist/styles → styles}/components/filters/_filters-panel.scss +0 -0
  332. /package/{dist/styles → styles}/components/filters/_filters-unit.scss +0 -0
  333. /package/{dist/styles → styles}/components/filters/index.scss +0 -0
  334. /package/{dist/styles → styles}/components/forms/_autocomplete.scss +0 -0
  335. /package/{dist/styles → styles}/components/forms/_checkbox.scss +0 -0
  336. /package/{dist/styles → styles}/components/forms/_error.scss +0 -0
  337. /package/{dist/styles → styles}/components/forms/_form-field.scss +0 -0
  338. /package/{dist/styles → styles}/components/forms/_label.scss +0 -0
  339. /package/{dist/styles → styles}/components/forms/_radio.scss +0 -0
  340. /package/{dist/styles → styles}/components/forms/_select.scss +0 -0
  341. /package/{dist/styles → styles}/components/forms/index.scss +0 -0
  342. /package/{dist/styles → styles}/components/phone-input/_country-code-select.scss +0 -0
  343. /package/{dist/styles → styles}/components/phone-input/_phone-input-container.scss +0 -0
  344. /package/{dist/styles/components/phone-input/indes.scss → styles/components/phone-input/index.scss} +0 -0
  345. /package/{dist/styles → styles}/components/search-field/index.scss +0 -0
  346. /package/{dist/styles → styles}/components/stepper/_step-header.scss +0 -0
  347. /package/{dist/styles → styles}/components/stepper/_step.scss +0 -0
  348. /package/{dist/styles → styles}/components/stepper/_stepper-header.scss +0 -0
  349. /package/{dist/styles → styles}/components/stepper/_stepper.scss +0 -0
  350. /package/{dist/styles/components/stepper/indes.scss → styles/components/stepper/index.scss} +0 -0
  351. /package/{dist/styles → styles}/components/table/_table-head-data.scss +0 -0
  352. /package/{dist/styles → styles}/components/table/_table-head.scss +0 -0
  353. /package/{dist/styles → styles}/components/table/_table-row-data.scss +0 -0
  354. /package/{dist/styles → styles}/components/table/_table-row.scss +0 -0
  355. /package/{dist/styles → styles}/components/table/_table.scss +0 -0
  356. /package/{dist/styles → styles}/components/table/index.scss +0 -0
  357. /package/{dist/styles → styles}/core/_core.scss +0 -0
  358. /package/{dist/styles → styles}/core/_utils.scss +0 -0
  359. /package/{dist/styles → styles}/wlcm.scss +0 -0
@@ -0,0 +1,12 @@
1
+ export * from './lib/utils/stream.utils';
2
+ // Models
3
+ export * from './lib/models/_index';
4
+ // Constants
5
+ export * from './lib/constants/_index';
6
+ // Directives
7
+ export * from './lib/directives/_index';
8
+ // Components
9
+ export * from './lib/components/close-icon/close-icon.component';
10
+ export * from './lib/components/chevron-down-icon/chevron-down-icon.component';
11
+ export * from './lib/components/search-icon/search-icon.component';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb3JlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLFNBQVM7QUFDVCxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLFlBQVk7QUFDWixjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGFBQWE7QUFDYixjQUFjLHlCQUF5QixDQUFDO0FBRXhDLGFBQWE7QUFDYixjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxvREFBb0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzL3N0cmVhbS51dGlscyc7XG5cbi8vIE1vZGVsc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL19pbmRleCc7XG5cbi8vIENvbnN0YW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL19pbmRleCc7XG5cbi8vIERpcmVjdGl2ZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvX2luZGV4JztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jbG9zZS1pY29uL2Nsb3NlLWljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hldnJvbi1kb3duLWljb24vY2hldnJvbi1kb3duLWljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VhcmNoLWljb24vc2VhcmNoLWljb24uY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './http.constants';
2
+ export * from './icon.contants';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2luZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvbGliL2NvbnN0YW50cy9faW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9odHRwLmNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2ljb24uY29udGFudHMnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './icon.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2luZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvX2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ljb24uZGlyZWN0aXZlJztcbiJdfQ==
@@ -0,0 +1,49 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Directive, Inject, ViewContainerRef, input, output, } from '@angular/core';
3
+ import { WLCM_ICONS } from '../constants/icon.contants';
4
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
5
+ import { fromEvent } from 'rxjs';
6
+ import * as i0 from "@angular/core";
7
+ let WlcmIconDirective = class WlcmIconDirective {
8
+ constructor(icons, viewContainer) {
9
+ this.icons = icons;
10
+ this.viewContainer = viewContainer;
11
+ this.name = input.required({ alias: 'wlcmIcon' });
12
+ this.stopPropagation = input(true, { alias: 'wlcmIconStopPropagation' });
13
+ this.clicked = output({ alias: 'wlcmIconClicked' });
14
+ this.handleClick = (ref) => {
15
+ fromEvent(ref.location.nativeElement, 'click', (event) => event)
16
+ .pipe(untilDestroyed(this))
17
+ .subscribe((event) => {
18
+ if (this.stopPropagation())
19
+ event.stopPropagation();
20
+ this.clicked.emit(event);
21
+ });
22
+ };
23
+ }
24
+ ngOnInit() {
25
+ const component = this.icons[this.name()];
26
+ if (component) {
27
+ const ref = this.viewContainer.createComponent(component);
28
+ this.handleClick(ref);
29
+ }
30
+ }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmIconDirective, deps: [{ token: WLCM_ICONS }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
32
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.5", type: WlcmIconDirective, isStandalone: true, selector: "[wlcmIcon]", inputs: { name: { classPropertyName: "name", publicName: "wlcmIcon", isSignal: true, isRequired: true, transformFunction: null }, stopPropagation: { classPropertyName: "stopPropagation", publicName: "wlcmIconStopPropagation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "wlcmIconClicked" }, ngImport: i0 }); }
33
+ };
34
+ WlcmIconDirective = __decorate([
35
+ UntilDestroy(),
36
+ __metadata("design:paramtypes", [Object, ViewContainerRef])
37
+ ], WlcmIconDirective);
38
+ export { WlcmIconDirective };
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmIconDirective, decorators: [{
40
+ type: Directive,
41
+ args: [{
42
+ selector: '[wlcmIcon]',
43
+ standalone: true,
44
+ }]
45
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
46
+ type: Inject,
47
+ args: [WLCM_ICONS]
48
+ }] }, { type: i0.ViewContainerRef }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9pY29uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxNQUFNLEVBSU4sZ0JBQWdCLEVBQ2hCLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXhELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFPMUIsSUFBTSxpQkFBaUIsR0FBdkIsTUFBTSxpQkFBaUI7SUFPNUIsWUFBd0MsS0FBZ0IsRUFBVSxhQUErQjtRQUF6RCxVQUFLLEdBQUwsS0FBSyxDQUFXO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBTmpHLFNBQUksR0FBOEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRXhFLG9CQUFlLEdBQXlCLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO1FBRTFGLFlBQU8sR0FBaUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztRQWNyRSxnQkFBVyxHQUFHLENBQUMsR0FBMEIsRUFBRSxFQUFFO1lBQ25ELFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxLQUFpQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUM7aUJBQ3pFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzFCLFNBQVMsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtnQkFDL0IsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO29CQUFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFFcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUM7SUFwQmtHLENBQUM7SUFFckcsUUFBUTtRQUNOLE1BQU0sU0FBUyxHQUEyQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRWxFLElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxNQUFNLEdBQUcsR0FBMEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFakYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QixDQUFDO0lBQ0gsQ0FBQzs4R0FqQlUsaUJBQWlCLGtCQU9SLFVBQVU7a0dBUG5CLGlCQUFpQjs7QUFBakIsaUJBQWlCO0lBTDdCLFlBQVksRUFBRTs2Q0FZb0UsZ0JBQWdCO0dBUHRGLGlCQUFpQixDQTRCN0I7OzJGQTVCWSxpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBUWMsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBEaXJlY3RpdmUsXG4gIEluamVjdCxcbiAgSW5wdXRTaWduYWwsXG4gIE9uSW5pdCxcbiAgT3V0cHV0RW1pdHRlclJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgaW5wdXQsXG4gIG91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXbGNtSWNvbk5hbWUsIFdsY21JY29ucyB9IGZyb20gJy4uL21vZGVscy9pY29uLm1vZGVscyc7XG5pbXBvcnQgeyBXTENNX0lDT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzL2ljb24uY29udGFudHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcblxuQFVudGlsRGVzdHJveSgpXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbd2xjbUljb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgV2xjbUljb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBuYW1lOiBJbnB1dFNpZ25hbDxXbGNtSWNvbk5hbWU+ID0gaW5wdXQucmVxdWlyZWQoeyBhbGlhczogJ3dsY21JY29uJyB9KTtcblxuICBzdG9wUHJvcGFnYXRpb246IElucHV0U2lnbmFsPGJvb2xlYW4+ID0gaW5wdXQodHJ1ZSwgeyBhbGlhczogJ3dsY21JY29uU3RvcFByb3BhZ2F0aW9uJyB9KTtcblxuICBjbGlja2VkOiBPdXRwdXRFbWl0dGVyUmVmPE1vdXNlRXZlbnQ+ID0gb3V0cHV0KHsgYWxpYXM6ICd3bGNtSWNvbkNsaWNrZWQnIH0pO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoV0xDTV9JQ09OUykgcHJpdmF0ZSBpY29uczogV2xjbUljb25zLCBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPHVua25vd24+ID0gdGhpcy5pY29uc1t0aGlzLm5hbWUoKV07XG5cbiAgICBpZiAoY29tcG9uZW50KSB7XG4gICAgICBjb25zdCByZWY6IENvbXBvbmVudFJlZjx1bmtub3duPiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50KTtcblxuICAgICAgdGhpcy5oYW5kbGVDbGljayhyZWYpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ2xpY2sgPSAocmVmOiBDb21wb25lbnRSZWY8dW5rbm93bj4pID0+IHtcbiAgICBmcm9tRXZlbnQocmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQsICdjbGljaycsIChldmVudDogTW91c2VFdmVudCkgPT4gZXZlbnQpXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnN0b3BQcm9wYWdhdGlvbigpKSBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gICAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './icon.models';
2
+ export * from './paginated-data.models';
3
+ export * from './option.models';
4
+ export * from './query-params.models';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2luZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvbGliL21vZGVscy9faW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ljb24ubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGVkLWRhdGEubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vb3B0aW9uLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXJ5LXBhcmFtcy5tb2RlbHMnO1xuIl19
@@ -1,10 +1,42 @@
1
- import { __decorate, __metadata } from 'tslib';
1
+ import { finalize, tap, audit, of, interval, Observable, fromEvent } from 'rxjs';
2
+ import * as moment from 'moment';
2
3
  import * as i0 from '@angular/core';
3
4
  import { Component, InjectionToken, input, output, ViewContainerRef, Directive, Inject, ChangeDetectionStrategy } from '@angular/core';
4
5
  import { CommonModule } from '@angular/common';
6
+ import { __decorate, __metadata } from 'tslib';
5
7
  import { untilDestroyed, UntilDestroy } from '@ngneat/until-destroy';
6
- import { fromEvent, finalize, tap, audit, of, interval, Observable } from 'rxjs';
7
- import * as moment from 'moment';
8
+
9
+ class WlcmStreamUtils {
10
+ static loadingDetector(subject) {
11
+ subject.next(true);
12
+ return function (source) {
13
+ return source.pipe(finalize(() => subject.next(false)));
14
+ };
15
+ }
16
+ static loadingAudit(time = 800) {
17
+ let startAt;
18
+ return (source) => {
19
+ return source.pipe(tap((isLoading) => isLoading && (startAt = moment().valueOf()))).pipe(audit((isLoading) => {
20
+ if (isLoading)
21
+ return of(null);
22
+ const difference = time - (moment().valueOf() - startAt);
23
+ return interval(difference >= 0 ? difference : 0);
24
+ }));
25
+ };
26
+ }
27
+ static get emptySource() {
28
+ return new Observable((subscriber) => {
29
+ subscriber.next();
30
+ subscriber.complete();
31
+ });
32
+ }
33
+ }
34
+
35
+ var WlcmIconName;
36
+ (function (WlcmIconName) {
37
+ WlcmIconName["CALENDAR"] = "CALENDAR";
38
+ WlcmIconName["CHEVRON_DOWN"] = "CHEVRON_DOWN";
39
+ })(WlcmIconName || (WlcmIconName = {}));
8
40
 
9
41
  class WlcmOption {
10
42
  constructor(value, viewValue) {
@@ -33,12 +65,6 @@ const DEFAULT_QUERY_PARAMS = {
33
65
  limit: 10,
34
66
  };
35
67
 
36
- var WlcmIconName;
37
- (function (WlcmIconName) {
38
- WlcmIconName["CALENDAR"] = "CALENDAR";
39
- WlcmIconName["CHEVRON_DOWN"] = "CHEVRON_DOWN";
40
- })(WlcmIconName || (WlcmIconName = {}));
41
-
42
68
  class ChevronDownIconComponent {
43
69
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ChevronDownIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
70
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: ChevronDownIconComponent, isStandalone: true, selector: "wlcm-chevron-down-icon", ngImport: i0, template: "<svg\n width=\"12px\"\n height=\"7px\"\n viewBox=\"0 0 12 7\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"4-Media-Library\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"4.1.0-Filter-by-type\" transform=\"translate(-303.000000, -73.000000)\">\n <g id=\"Group-7\" transform=\"translate(45.000000, 64.000000)\">\n <g id=\"Group\" transform=\"translate(258.000000, 6.000000)\">\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"12\" height=\"12\"></rect>\n <polyline\n id=\"Path\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"1 4 6 9 11 4\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n</svg>\n", styles: [":host{display:block}:host svg{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
@@ -71,11 +97,16 @@ let WlcmIconDirective = class WlcmIconDirective {
71
97
  this.icons = icons;
72
98
  this.viewContainer = viewContainer;
73
99
  this.name = input.required({ alias: 'wlcmIcon' });
100
+ this.stopPropagation = input(true, { alias: 'wlcmIconStopPropagation' });
74
101
  this.clicked = output({ alias: 'wlcmIconClicked' });
75
102
  this.handleClick = (ref) => {
76
103
  fromEvent(ref.location.nativeElement, 'click', (event) => event)
77
104
  .pipe(untilDestroyed(this))
78
- .subscribe((event) => this.clicked.emit(event));
105
+ .subscribe((event) => {
106
+ if (this.stopPropagation())
107
+ event.stopPropagation();
108
+ this.clicked.emit(event);
109
+ });
79
110
  };
80
111
  }
81
112
  ngOnInit() {
@@ -86,7 +117,7 @@ let WlcmIconDirective = class WlcmIconDirective {
86
117
  }
87
118
  }
88
119
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmIconDirective, deps: [{ token: WLCM_ICONS }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
89
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.5", type: WlcmIconDirective, isStandalone: true, selector: "[wlcmIcon]", inputs: { name: { classPropertyName: "name", publicName: "wlcmIcon", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { clicked: "wlcmIconClicked" }, ngImport: i0 }); }
120
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.5", type: WlcmIconDirective, isStandalone: true, selector: "[wlcmIcon]", inputs: { name: { classPropertyName: "name", publicName: "wlcmIcon", isSignal: true, isRequired: true, transformFunction: null }, stopPropagation: { classPropertyName: "stopPropagation", publicName: "wlcmIconStopPropagation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "wlcmIconClicked" }, ngImport: i0 }); }
90
121
  };
91
122
  WlcmIconDirective = __decorate([
92
123
  UntilDestroy(),
@@ -103,32 +134,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
103
134
  args: [WLCM_ICONS]
104
135
  }] }, { type: i0.ViewContainerRef }] });
105
136
 
106
- class WlcmStreamUtils {
107
- static loadingDetector(subject) {
108
- subject.next(true);
109
- return function (source) {
110
- return source.pipe(finalize(() => subject.next(false)));
111
- };
112
- }
113
- static loadingAudit(time = 800) {
114
- let startAt;
115
- return (source) => {
116
- return source.pipe(tap((isLoading) => isLoading && (startAt = moment().valueOf()))).pipe(audit((isLoading) => {
117
- if (isLoading)
118
- return of(null);
119
- const difference = time - (moment().valueOf() - startAt);
120
- return interval(difference >= 0 ? difference : 0);
121
- }));
122
- };
123
- }
124
- static get emptySource() {
125
- return new Observable((subscriber) => {
126
- subscriber.next();
127
- subscriber.complete();
128
- });
129
- }
130
- }
131
-
132
137
  class CloseIconComponent {
133
138
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: CloseIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
134
139
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: CloseIconComponent, isStandalone: true, selector: "wlcm-close-icon", ngImport: i0, template: "<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"2-User-Management\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n id=\"2.0.1-Export-users-two-filters\"\n transform=\"translate(-310.000000, -54.000000)\"\n >\n <g id=\"icons/close\" transform=\"translate(310.000000, 54.000000)\">\n <rect\n id=\"Rectangle\"\n fill=\"#EDF0F3\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n rx=\"4\"\n ></rect>\n <path\n d=\"M12,4 L4,12 M4,4 L12,12\"\n id=\"Combined-Shape\"\n stroke=\"#4A5056\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n ></path>\n </g>\n </g>\n </g>\n</svg>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wlcm-angular-core.mjs","sources":["../../../core/src/lib/utils/stream.utils.ts","../../../core/src/lib/models/icon.models.ts","../../../core/src/lib/models/option.models.ts","../../../core/src/lib/models/query-params.models.ts","../../../core/src/lib/constants/http.constants.ts","../../../core/src/lib/components/chevron-down-icon/chevron-down-icon.component.ts","../../../core/src/lib/components/chevron-down-icon/chevron-down-icon.component.html","../../../core/src/lib/components/calendar-icon/calendar-icon.component.ts","../../../core/src/lib/components/calendar-icon/calendar-icon.component.html","../../../core/src/lib/constants/icon.contants.ts","../../../core/src/lib/directives/icon.directive.ts","../../../core/src/lib/components/close-icon/close-icon.component.ts","../../../core/src/lib/components/close-icon/close-icon.component.html","../../../core/src/lib/components/search-icon/search-icon.component.ts","../../../core/src/lib/components/search-icon/search-icon.component.html","../../../core/src/wlcm-angular-core.ts"],"sourcesContent":["import { EventEmitter } from '@angular/core';\nimport { Subject, BehaviorSubject, Observable, finalize, audit, interval, of, tap, Subscriber } from 'rxjs';\nimport * as moment from 'moment';\n\nexport class WlcmStreamUtils {\n static loadingDetector(\n subject: Subject<boolean> | BehaviorSubject<boolean> | EventEmitter<boolean>\n ): <T>(source: Observable<T>) => Observable<T> {\n subject.next(true);\n return function <T>(source: Observable<T>): Observable<T> {\n return source.pipe(finalize(() => subject.next(false)));\n };\n }\n\n static loadingAudit(time: number = 800): (source: Observable<boolean>) => Observable<boolean> {\n let startAt: number;\n\n return (source: Observable<boolean>): Observable<boolean> => {\n return source.pipe(tap((isLoading: boolean) => isLoading && (startAt = moment().valueOf()))).pipe(\n audit((isLoading: boolean) => {\n if (isLoading) return of(null);\n\n const difference: number = time - (moment().valueOf() - startAt);\n\n return interval(difference >= 0 ? difference : 0);\n })\n );\n };\n }\n\n static get emptySource(): Observable<void> {\n return new Observable((subscriber: Subscriber<void>) => {\n subscriber.next();\n subscriber.complete();\n });\n }\n}\n","import { ComponentType } from '@angular/cdk/portal';\n\nexport enum WlcmIconName {\n CALENDAR = 'CALENDAR',\n CHEVRON_DOWN = 'CHEVRON_DOWN',\n}\n\nexport type WlcmIcons = {\n [key in WlcmIconName]: ComponentType<unknown>;\n};\n","export class WlcmOption {\n constructor(public value: string | boolean, public viewValue: string) {}\n}\n\nexport class WlcmAutocompleteOption extends WlcmOption {\n constructor(public override value: string, public override viewValue: string, public searchValue: string) {\n super(value, viewValue);\n }\n}\n","export enum Order {\n ASC = 'asc',\n DESC = 'desc',\n}\n\nexport interface QueryFilter {\n equal?: string | boolean;\n\n not?: string | boolean;\n\n arrContains?: string[];\n\n oneOf?: string[];\n\n noneOf?: string[];\n\n from?: Date;\n\n to?: Date;\n\n exist?: boolean;\n}\n\nexport interface QueryFilters {\n [key: string]: QueryFilter;\n}\n\nexport interface QueryParams {\n query: string;\n\n page: number;\n\n limit: number;\n\n order?: Order;\n\n filters?: QueryFilters;\n\n sort?: string;\n\n searchKeys?: string[];\n}\n","import { QueryParams } from '../models/query-params.models';\n\nexport const DEFAULT_QUERY_PARAMS: QueryParams = {\n query: '',\n page: 1,\n limit: 10,\n};\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-chevron-down-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './chevron-down-icon.component.html',\n styleUrl: './chevron-down-icon.component.scss',\n})\nexport class ChevronDownIconComponent {}\n","<svg\n width=\"12px\"\n height=\"7px\"\n viewBox=\"0 0 12 7\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"4-Media-Library\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"4.1.0-Filter-by-type\" transform=\"translate(-303.000000, -73.000000)\">\n <g id=\"Group-7\" transform=\"translate(45.000000, 64.000000)\">\n <g id=\"Group\" transform=\"translate(258.000000, 6.000000)\">\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"12\" height=\"12\"></rect>\n <polyline\n id=\"Path\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"1 4 6 9 11 4\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n</svg>\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-calendar-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './calendar-icon.component.html',\n styleUrl: './calendar-icon.component.scss',\n})\nexport class CalendarIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"icon/date-grey\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M11,0 C11.5522847,0 12,0.44771525 12,1 L14,1 C15.1045695,1 16,1.8954305 16,3 L16,14 C16,15.1045695 15.1045695,16 14,16 L2,16 C0.8954305,16 0,15.1045695 0,14 L0,3 C0,1.8954305 0.8954305,1 2,1 L4,1 C4,0.44771525 4.44771525,0 5,0 C5.55228475,0 6,0.44771525 6,1 L10,1 C10,0.44771525 10.4477153,0 11,0 Z M14,7 L2,7 L2,14 L14,14 L14,7 Z M4,3 L2,3 L2,5 L14,5 L14,3 L12,3 C12,3.55228475 11.5522847,4 11,4 C10.4477153,4 10,3.55228475 10,3 L6,3 C6,3.55228475 5.55228475,4 5,4 C4.44771525,4 4,3.55228475 4,3 Z\"\n id=\"Combined-Shape\"\n fill=\"#8E9498\"\n fill-rule=\"nonzero\"\n ></path>\n <rect\n id=\"Rectangle\"\n fill=\"#8E9498\"\n x=\"9\"\n y=\"9\"\n width=\"3\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n </g>\n</svg>\n","import { InjectionToken } from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { ChevronDownIconComponent } from '../components/chevron-down-icon/chevron-down-icon.component';\nimport { CalendarIconComponent } from '../components/calendar-icon/calendar-icon.component';\n\nexport const DEFAULT_WLCM_ICONS: WlcmIcons = {\n [WlcmIconName.CALENDAR]: CalendarIconComponent,\n [WlcmIconName.CHEVRON_DOWN]: ChevronDownIconComponent,\n};\n\nexport const WLCM_ICONS: InjectionToken<WlcmIcons> = new InjectionToken('WLCM_ICONS', {\n providedIn: 'root',\n factory: () => DEFAULT_WLCM_ICONS,\n});\n","import {\n ComponentRef,\n Directive,\n Inject,\n InputSignal,\n OnInit,\n OutputEmitterRef,\n ViewContainerRef,\n input,\n output,\n} from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { WLCM_ICONS } from '../constants/icon.contants';\nimport { ComponentType } from '@angular/cdk/portal';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { fromEvent } from 'rxjs';\n\n@UntilDestroy()\n@Directive({\n selector: '[wlcmIcon]',\n standalone: true,\n})\nexport class WlcmIconDirective implements OnInit {\n name: InputSignal<WlcmIconName> = input.required({ alias: 'wlcmIcon' });\n\n stopPropagation: InputSignal<boolean> = input(true, { alias: 'wlcmIconStopPropagation' });\n\n clicked: OutputEmitterRef<MouseEvent> = output({ alias: 'wlcmIconClicked' });\n\n constructor(@Inject(WLCM_ICONS) private icons: WlcmIcons, private viewContainer: ViewContainerRef) {}\n\n ngOnInit(): void {\n const component: ComponentType<unknown> = this.icons[this.name()];\n\n if (component) {\n const ref: ComponentRef<unknown> = this.viewContainer.createComponent(component);\n\n this.handleClick(ref);\n }\n }\n\n private handleClick = (ref: ComponentRef<unknown>) => {\n fromEvent(ref.location.nativeElement, 'click', (event: MouseEvent) => event)\n .pipe(untilDestroyed(this))\n .subscribe((event: MouseEvent) => {\n if (this.stopPropagation()) event.stopPropagation();\n\n this.clicked.emit(event);\n });\n };\n}\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-close-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './close-icon.component.html',\n styleUrl: './close-icon.component.scss',\n})\nexport class CloseIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"2-User-Management\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n id=\"2.0.1-Export-users-two-filters\"\n transform=\"translate(-310.000000, -54.000000)\"\n >\n <g id=\"icons/close\" transform=\"translate(310.000000, 54.000000)\">\n <rect\n id=\"Rectangle\"\n fill=\"#EDF0F3\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n rx=\"4\"\n ></rect>\n <path\n d=\"M12,4 L4,12 M4,4 L12,12\"\n id=\"Combined-Shape\"\n stroke=\"#4A5056\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n ></path>\n </g>\n </g>\n </g>\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-search-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './search-icon.component.html',\n styleUrls: ['./search-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SearchIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n style=\"display: block\"\n>\n <g\n id=\"icons/search\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M7,0 C10.8659932,0 14,3.13400675 14,7 C14,8.57234957 13.4815869,10.0236173 12.6063605,11.1922034 L15.1213203,13.7071068 C15.5118446,14.0976311 15.5118446,14.7307961 15.1213203,15.1213203 C14.7307961,15.5118446 14.0976311,15.5118446 13.7071068,15.1213203 L11.1922034,12.6063605 C10.0236173,13.4815869 8.57234957,14 7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 Z M7,2 C4.23857625,2 2,4.23857625 2,7 C2,9.76142375 4.23857625,12 7,12 C9.76142375,12 12,9.76142375 12,7 C12,4.23857625 9.76142375,2 7,2 Z\"\n id=\"Combined-Shape\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n ></path>\n </g>\n</svg>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export * from './lib/utils/stream.utils';
2
+ export * from './lib/models/_index';
3
+ export * from './lib/constants/_index';
4
+ export * from './lib/directives/_index';
5
+ export * from './lib/components/close-icon/close-icon.component';
6
+ export * from './lib/components/chevron-down-icon/chevron-down-icon.component';
7
+ export * from './lib/components/search-icon/search-icon.component';
@@ -0,0 +1,2 @@
1
+ export * from './http.constants';
2
+ export * from './icon.contants';
@@ -0,0 +1 @@
1
+ export * from './icon.directive';
@@ -5,10 +5,11 @@ export declare class WlcmIconDirective implements OnInit {
5
5
  private icons;
6
6
  private viewContainer;
7
7
  name: InputSignal<WlcmIconName>;
8
+ stopPropagation: InputSignal<boolean>;
8
9
  clicked: OutputEmitterRef<MouseEvent>;
9
10
  constructor(icons: WlcmIcons, viewContainer: ViewContainerRef);
10
11
  ngOnInit(): void;
11
12
  private handleClick;
12
13
  static ɵfac: i0.ɵɵFactoryDeclaration<WlcmIconDirective, never>;
13
- static ɵdir: i0.ɵɵDirectiveDeclaration<WlcmIconDirective, "[wlcmIcon]", never, { "name": { "alias": "wlcmIcon"; "required": true; "isSignal": true; }; }, { "clicked": "wlcmIconClicked"; }, never, never, true, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<WlcmIconDirective, "[wlcmIcon]", never, { "name": { "alias": "wlcmIcon"; "required": true; "isSignal": true; }; "stopPropagation": { "alias": "wlcmIconStopPropagation"; "required": false; "isSignal": true; }; }, { "clicked": "wlcmIconClicked"; }, never, never, true, never>;
14
15
  }
@@ -0,0 +1,4 @@
1
+ export * from './icon.models';
2
+ export * from './paginated-data.models';
3
+ export * from './option.models';
4
+ export * from './query-params.models';
@@ -0,0 +1,7 @@
1
+ # datepicker
2
+
3
+ This library was generated with [Nx](https://nx.dev).
4
+
5
+ ## Running unit tests
6
+
7
+ Run `nx test datepicker` to execute the unit tests.
@@ -0,0 +1,10 @@
1
+ export { WlcmDateRangePickerInputComponent } from './lib/components/range/date-range-picker-input/date-range-picker-input.component';
2
+ export { WlcmDatepickerInputContainerComponent } from './lib/components/single/datepicker-input-container/datepicker-input-container.component';
3
+ export { DateRangePickerInputEndDirective } from './lib/directives/ragne/date-range-picker-input-end.directive';
4
+ export { DateRangePickerInputStartDirective } from './lib/directives/ragne/date-range-picker-input-start.directive';
5
+ export { WlcmDatepickerInputDirective } from './lib/directives/single/datepicker-input.directive';
6
+ export { WlcmDateRangeValidation } from './lib/models/range/date-range-validation.models';
7
+ export { WlcmDateRangeInputValidator } from './lib/utils/range/date-range-input.validators';
8
+ export { WlcmDateValidation } from './lib/models/date-picker.models';
9
+ export { WlcmDatepickerModule } from './lib/datepicker.module';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGtGQUFrRixDQUFDO0FBQ3JJLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgV2xjbURhdGVSYW5nZVBpY2tlcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJJbnB1dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2luZ2xlL2RhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyL2RhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJJbnB1dEVuZERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcmFnbmUvZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtZW5kLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJJbnB1dFN0YXJ0RGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9yYWduZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1zdGFydC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2luZ2xlL2RhdGVwaWNrZXItaW5wdXQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFdsY21EYXRlUmFuZ2VWYWxpZGF0aW9uIH0gZnJvbSAnLi9saWIvbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtdmFsaWRhdGlvbi5tb2RlbHMnO1xuZXhwb3J0IHsgV2xjbURhdGVSYW5nZUlucHV0VmFsaWRhdG9yIH0gZnJvbSAnLi9saWIvdXRpbHMvcmFuZ2UvZGF0ZS1yYW5nZS1pbnB1dC52YWxpZGF0b3JzJztcbmV4cG9ydCB7IFdsY21EYXRlVmFsaWRhdGlvbiB9IGZyb20gJy4vbGliL21vZGVscy9kYXRlLXBpY2tlci5tb2RlbHMnO1xuXG5leHBvcnQgeyBXbGNtRGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJy4vbGliL2RhdGVwaWNrZXIubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,54 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Inject, Optional, forwardRef } from '@angular/core';
3
+ import { MAT_DATE_FORMATS } from '@angular/material/core';
4
+ import { WlcmDataRangeCalendar } from '../../../models/range/data-range-calendar.models';
5
+ import { WlcmIconDirective, WlcmIconName } from '@wlcm/angular/core';
6
+ import { WlcmCalendarModule } from '@wlcm/angular/calendar';
7
+ import { MatCalendar } from '@angular/material/datepicker';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../models/range/data-range-calendar.models";
10
+ import * as i2 from "@wlcm/angular/calendar";
11
+ import * as i3 from "@angular/material/datepicker";
12
+ export class WlcmDateRangeCalendarHeaderComponent {
13
+ constructor(rangeCalendar, dateFormats, calendar) {
14
+ this.rangeCalendar = rangeCalendar;
15
+ this.dateFormats = dateFormats;
16
+ this.calendar = calendar;
17
+ this.WlcmIconName = WlcmIconName;
18
+ this.previous = () => {
19
+ if (this.calendar.currentView !== 'month') {
20
+ return this.rangeCalendar.prevYear();
21
+ }
22
+ return this.rangeCalendar.prevMonth();
23
+ };
24
+ this.next = () => {
25
+ if (this.calendar.currentView !== 'month') {
26
+ return this.rangeCalendar.nextYear();
27
+ }
28
+ return this.rangeCalendar.nextMonth();
29
+ };
30
+ }
31
+ get canDisplayLeftArrow() {
32
+ return !this.rangeCalendar || this.rangeCalendar.location === 'left' || this.calendar.currentView !== 'month';
33
+ }
34
+ get canDisplayRightArrow() {
35
+ return !this.rangeCalendar || this.rangeCalendar.location === 'right' || this.calendar.currentView !== 'month';
36
+ }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, deps: [{ token: i1.WlcmDataRangeCalendar, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: forwardRef(() => MatCalendar) }], target: i0.ɵɵFactoryTarget.Component }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangeCalendarHeaderComponent, isStandalone: true, selector: "wlcm-date-range-calendar-header", ngImport: i0, template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmCalendarModule }, { kind: "component", type: i2.WlcmCalendarHeaderComponent, selector: "wlcm-calendar-header", inputs: ["next", "previous", "displayLeftArrow", "displayRightArrow"] }] }); }
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, decorators: [{
41
+ type: Component,
42
+ args: [{ selector: 'wlcm-date-range-calendar-header', standalone: true, imports: [CommonModule, WlcmCalendarModule, WlcmIconDirective], template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n" }]
43
+ }], ctorParameters: () => [{ type: i1.WlcmDataRangeCalendar, decorators: [{
44
+ type: Optional
45
+ }] }, { type: undefined, decorators: [{
46
+ type: Optional
47
+ }, {
48
+ type: Inject,
49
+ args: [MAT_DATE_FORMATS]
50
+ }] }, { type: i3.MatCalendar, decorators: [{
51
+ type: Inject,
52
+ args: [forwardRef(() => MatCalendar)]
53
+ }] }] });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRlcGlja2VyL3NyYy9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBa0IsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQVMzRCxNQUFNLE9BQU8sb0NBQW9DO0lBRy9DLFlBQ3dCLGFBQW9DLEVBQ1YsV0FBMkIsRUFDN0IsUUFBMkI7UUFGbkQsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBQ1YsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzdCLGFBQVEsR0FBUixRQUFRLENBQW1CO1FBTGxFLGlCQUFZLEdBQUcsWUFBWSxDQUFDO1FBUXJDLGFBQVEsR0FBRyxHQUFTLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDeEMsQ0FBQyxDQUFDO1FBRUYsU0FBSSxHQUFHLEdBQVMsRUFBRTtZQUNoQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUMxQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN4QyxDQUFDLENBQUM7SUFoQkMsQ0FBQztJQWtCSixJQUFJLG1CQUFtQjtRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEtBQUssT0FBTyxDQUFDO0lBQ2hILENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEtBQUssT0FBTyxDQUFDO0lBQ2pILENBQUM7OEdBL0JVLG9DQUFvQyx1RUFLekIsZ0JBQWdCLDZCQUM1QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO2tHQU41QixvQ0FBb0MsMkZDZmpELHlQQU1BLHlEREtZLFlBQVksOEJBQUUsa0JBQWtCOzsyRkFJL0Isb0NBQW9DO2tCQVBoRCxTQUFTOytCQUNFLGlDQUFpQyxjQUMvQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7OzBCQVEzRCxRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGdCQUFnQjs7MEJBQ25DLE1BQU07MkJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT3B0aW9uYWwsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9EQVRFX0ZPUk1BVFMsIE1hdERhdGVGb3JtYXRzIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBXbGNtRGF0YVJhbmdlQ2FsZW5kYXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmFuZ2UvZGF0YS1yYW5nZS1jYWxlbmRhci5tb2RlbHMnO1xuaW1wb3J0IHsgV2xjbUljb25EaXJlY3RpdmUsIFdsY21JY29uTmFtZSB9IGZyb20gJ0B3bGNtL2FuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXbGNtQ2FsZW5kYXJNb2R1bGUgfSBmcm9tICdAd2xjbS9hbmd1bGFyL2NhbGVuZGFyJztcbmltcG9ydCB7IE1hdENhbGVuZGFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dsY20tZGF0ZS1yYW5nZS1jYWxlbmRhci1oZWFkZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBXbGNtQ2FsZW5kYXJNb2R1bGUsIFdsY21JY29uRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgV2xjbURhdGVSYW5nZUNhbGVuZGFySGVhZGVyQ29tcG9uZW50IHtcbiAgcmVhZG9ubHkgV2xjbUljb25OYW1lID0gV2xjbUljb25OYW1lO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCByYW5nZUNhbGVuZGFyOiBXbGNtRGF0YVJhbmdlQ2FsZW5kYXIsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNQVRfREFURV9GT1JNQVRTKSBwcm90ZWN0ZWQgZGF0ZUZvcm1hdHM6IE1hdERhdGVGb3JtYXRzLFxuICAgIEBJbmplY3QoZm9yd2FyZFJlZigoKSA9PiBNYXRDYWxlbmRhcikpIHB1YmxpYyBjYWxlbmRhcjogTWF0Q2FsZW5kYXI8RGF0ZT5cbiAgKSB7fVxuXG4gIHByZXZpb3VzID0gKCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYW5nZUNhbGVuZGFyLnByZXZZZWFyKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmFuZ2VDYWxlbmRhci5wcmV2TW9udGgoKTtcbiAgfTtcblxuICBuZXh0ID0gKCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYW5nZUNhbGVuZGFyLm5leHRZZWFyKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmFuZ2VDYWxlbmRhci5uZXh0TW9udGgoKTtcbiAgfTtcblxuICBnZXQgY2FuRGlzcGxheUxlZnRBcnJvdygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMucmFuZ2VDYWxlbmRhciB8fCB0aGlzLnJhbmdlQ2FsZW5kYXIubG9jYXRpb24gPT09ICdsZWZ0JyB8fCB0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnO1xuICB9XG5cbiAgZ2V0IGNhbkRpc3BsYXlSaWdodEFycm93KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5yYW5nZUNhbGVuZGFyIHx8IHRoaXMucmFuZ2VDYWxlbmRhci5sb2NhdGlvbiA9PT0gJ3JpZ2h0JyB8fCB0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnO1xuICB9XG59XG4iLCI8d2xjbS1jYWxlbmRhci1oZWFkZXJcbiAgW25leHRdPVwibmV4dFwiXG4gIFtwcmV2aW91c109XCJwcmV2aW91c1wiXG4gIFtkaXNwbGF5TGVmdEFycm93XT1cImNhbkRpc3BsYXlMZWZ0QXJyb3cgJiYgIXJhbmdlQ2FsZW5kYXIuZGlzYWJsZWQoKVwiXG4gIFtkaXNwbGF5UmlnaHRBcnJvd109XCJjYW5EaXNwbGF5UmlnaHRBcnJvdyAmJiAhcmFuZ2VDYWxlbmRhci5kaXNhYmxlZCgpXCJcbj48L3dsY20tY2FsZW5kYXItaGVhZGVyPlxuIl19
@@ -0,0 +1,170 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Component, ElementRef, Inject, Optional, ViewChild, computed, effect, signal, } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { DefaultMatCalendarRangeStrategy, MAT_DATE_RANGE_SELECTION_STRATEGY, MatCalendar, MatDateSelectionModel, MatDatepickerModule, MatMonthView, } from '@angular/material/datepicker';
5
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
6
+ import { WlcmDateRangePickerBottomPanelComponent } from '../date-range-picker-bottom-panel/date-range-picker-bottom-panel.component';
7
+ import { Subject, startWith, takeUntil, tap } from 'rxjs';
8
+ import { DateAdapter } from '@angular/material/core';
9
+ import { WlcmDateRangeCalendarHeaderComponent } from '../date-range-calendar-header/date-range-calendar-header.component';
10
+ import { WlcmCalendarModule } from '@wlcm/angular/calendar';
11
+ import { WLCM_DATE_RANGE_PICKER_CONFIG } from '../../../constants/range/date-range-picker.constants';
12
+ import { WLCM_DATE_RANGE_SELECTION_MODEL_PROVIDER, WLCM_DATE_RANGE_SELECTION_MODEL, } from '../../../constants/range/date-range-selection-model.constants';
13
+ import { WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL } from '../../../constants/range/date-range-trigger-selection-model.constants';
14
+ import { WlcmLeftCalendarDirective } from '../../../directives/ragne/left-calendar.directive';
15
+ import { WlcmRightCalendarDirective } from '../../../directives/ragne/right-calendar.directive';
16
+ import { WlcmDatepickerTrigger } from '../../../directives/datepicker-trigger.base';
17
+ import * as i0 from "@angular/core";
18
+ import * as i1 from "../../../directives/datepicker-trigger.base";
19
+ import * as i2 from "@angular/material/core";
20
+ import * as i3 from "@wlcm/angular/calendar";
21
+ import * as i4 from "@angular/material/datepicker";
22
+ let WlcmDateRangePickerComponent = class WlcmDateRangePickerComponent {
23
+ constructor(config, rangeSelectionStrategy, localSelectionModel, triggerSelectionModel, trigger, dateAdapter) {
24
+ this.config = config;
25
+ this.rangeSelectionStrategy = rangeSelectionStrategy;
26
+ this.localSelectionModel = localSelectionModel;
27
+ this.triggerSelectionModel = triggerSelectionModel;
28
+ this.trigger = trigger;
29
+ this.dateAdapter = dateAdapter;
30
+ this.headerComponent = WlcmDateRangeCalendarHeaderComponent;
31
+ this._isViewInitialized = false;
32
+ this._isComplete = signal(false);
33
+ this.isComplete = computed(() => this._isComplete());
34
+ this.startDate = signal(new Date());
35
+ this.leftCalendarYearViewActivated = signal(false);
36
+ this.rightCalendarYearViewActivated = signal(false);
37
+ this.handleSelectionChanged();
38
+ this.localSelectionModel.updateSelection(this.triggerSelectionModel.selection, this);
39
+ if (this.triggerSelectionModel.selection.start) {
40
+ this.startDate.set(this.triggerSelectionModel.selection.start);
41
+ }
42
+ if (this.config.headerComponent) {
43
+ this.headerComponent = this.config.headerComponent;
44
+ }
45
+ effect(() => {
46
+ if (!this._isViewInitialized)
47
+ return;
48
+ this.leftCalendar.activeDate = this.startDate();
49
+ this.rightCalendar.activeDate = this.dateAdapter.addCalendarMonths(this.startDate(), 1);
50
+ });
51
+ }
52
+ ngAfterViewInit() {
53
+ this._isViewInitialized = true;
54
+ this.leftCalendar.viewChanged.pipe(untilDestroyed(this)).subscribe((view) => {
55
+ this.leftCalendarYearViewActivated.set(view !== 'month');
56
+ });
57
+ this.rightCalendar.viewChanged.pipe(untilDestroyed(this)).subscribe((view) => {
58
+ this.rightCalendarYearViewActivated.set(view !== 'month');
59
+ });
60
+ this.handleRightCalendarPreviewChange();
61
+ }
62
+ calendarSelection(event) {
63
+ const newSelection = this.rangeSelectionStrategy.selectionFinished(event.value, this.localSelectionModel.selection, event.event);
64
+ this.localSelectionModel.updateSelection(newSelection, this);
65
+ }
66
+ calendarDragDrop(event) {
67
+ this.localSelectionModel.updateSelection(event.value, this);
68
+ }
69
+ apply() {
70
+ this.triggerSelectionModel.updateSelection(this.localSelectionModel.selection, this);
71
+ this.trigger.close();
72
+ }
73
+ reset() {
74
+ this.trigger.close();
75
+ }
76
+ get selected() {
77
+ return this.localSelectionModel.selection;
78
+ }
79
+ get leftCalendarActiveCell() {
80
+ return this.leftCalendarElement.nativeElement.querySelector('.mat-calendar-body-active');
81
+ }
82
+ handleSelectionChanged() {
83
+ this.localSelectionModel.selectionChanged
84
+ .pipe(untilDestroyed(this))
85
+ .subscribe(() => this._isComplete.set(this.localSelectionModel.isComplete()));
86
+ }
87
+ handleRightCalendarPreviewChange() {
88
+ const viewChanged = new Subject();
89
+ this.rightCalendar.viewChanged
90
+ .pipe(untilDestroyed(this))
91
+ .pipe(tap(() => viewChanged.next()))
92
+ .pipe(startWith(this.rightCalendar.currentView))
93
+ .subscribe((view) => {
94
+ if (view !== 'month')
95
+ return;
96
+ this.rightCalendar.monthView._matCalendarBody.previewChange
97
+ .pipe(takeUntil(viewChanged), untilDestroyed(this))
98
+ .subscribe(() => {
99
+ if (this.leftCalendar.currentView !== 'month' || !this.leftCalendar.monthView._rangeStart)
100
+ return;
101
+ this.leftCalendar.monthView._previewStart = this.rightCalendar.monthView._previewStart;
102
+ this.leftCalendar.monthView._previewEnd = this.rightCalendar.monthView._previewEnd;
103
+ const activeCell = this.leftCalendarActiveCell;
104
+ if (activeCell && activeCell === document.activeElement)
105
+ activeCell.blur();
106
+ this.leftCalendar.monthView._changeDetectorRef.markForCheck();
107
+ });
108
+ });
109
+ }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerComponent, deps: [{ token: WLCM_DATE_RANGE_PICKER_CONFIG, optional: true }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY }, { token: WLCM_DATE_RANGE_SELECTION_MODEL }, { token: WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL }, { token: i1.WlcmDatepickerTrigger }, { token: i2.DateAdapter }], target: i0.ɵɵFactoryTarget.Component }); }
111
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangePickerComponent, isStandalone: true, selector: "wlcm-date-range-picker", providers: [
112
+ {
113
+ provide: MAT_DATE_RANGE_SELECTION_STRATEGY,
114
+ useClass: DefaultMatCalendarRangeStrategy,
115
+ },
116
+ WLCM_DATE_RANGE_SELECTION_MODEL_PROVIDER,
117
+ ], viewQueries: [{ propertyName: "leftCalendar", first: true, predicate: WlcmLeftCalendarDirective, descendants: true, read: MatCalendar }, { propertyName: "rightCalendar", first: true, predicate: WlcmRightCalendarDirective, descendants: true, read: MatCalendar }, { propertyName: "leftCalendarElement", first: true, predicate: WlcmLeftCalendarDirective, descendants: true, read: ElementRef }, { propertyName: "monthView", first: true, predicate: MatMonthView, descendants: true }], ngImport: i0, template: "<div class=\"wlcm-date-range-picker-panel\">\n <div class=\"wlcm-date-range-picker-body\">\n <mat-calendar\n wlcmCalendar\n wlcmLeftCalendar\n [selected]=\"selected\"\n [disabled]=\"rightCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n\n <mat-calendar\n wlcmCalendar\n wlcmRightCalendar\n [selected]=\"selected\"\n [disabled]=\"leftCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n </div>\n\n <wlcm-date-range-picker-bottom-panel></wlcm-date-range-picker-bottom-panel>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmCalendarModule }, { kind: "directive", type: i3.WlcmCalendarDirective, selector: "[wlcmCalendar]" }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i4.MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }, { kind: "directive", type: WlcmLeftCalendarDirective, selector: "[wlcmLeftCalendar]" }, { kind: "directive", type: WlcmRightCalendarDirective, selector: "[wlcmRightCalendar]" }, { kind: "component", type: WlcmDateRangePickerBottomPanelComponent, selector: "wlcm-date-range-picker-bottom-panel" }] }); }
118
+ };
119
+ WlcmDateRangePickerComponent = __decorate([
120
+ UntilDestroy(),
121
+ __metadata("design:paramtypes", [Object, Object, MatDateSelectionModel,
122
+ MatDateSelectionModel,
123
+ WlcmDatepickerTrigger,
124
+ DateAdapter])
125
+ ], WlcmDateRangePickerComponent);
126
+ export { WlcmDateRangePickerComponent };
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerComponent, decorators: [{
128
+ type: Component,
129
+ args: [{ selector: 'wlcm-date-range-picker', standalone: true, imports: [
130
+ CommonModule,
131
+ WlcmCalendarModule,
132
+ MatDatepickerModule,
133
+ WlcmLeftCalendarDirective,
134
+ WlcmRightCalendarDirective,
135
+ WlcmDateRangePickerBottomPanelComponent,
136
+ ], providers: [
137
+ {
138
+ provide: MAT_DATE_RANGE_SELECTION_STRATEGY,
139
+ useClass: DefaultMatCalendarRangeStrategy,
140
+ },
141
+ WLCM_DATE_RANGE_SELECTION_MODEL_PROVIDER,
142
+ ], template: "<div class=\"wlcm-date-range-picker-panel\">\n <div class=\"wlcm-date-range-picker-body\">\n <mat-calendar\n wlcmCalendar\n wlcmLeftCalendar\n [selected]=\"selected\"\n [disabled]=\"rightCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n\n <mat-calendar\n wlcmCalendar\n wlcmRightCalendar\n [selected]=\"selected\"\n [disabled]=\"leftCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n </div>\n\n <wlcm-date-range-picker-bottom-panel></wlcm-date-range-picker-bottom-panel>\n</div>\n" }]
143
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
144
+ type: Optional
145
+ }, {
146
+ type: Inject,
147
+ args: [WLCM_DATE_RANGE_PICKER_CONFIG]
148
+ }] }, { type: undefined, decorators: [{
149
+ type: Inject,
150
+ args: [MAT_DATE_RANGE_SELECTION_STRATEGY]
151
+ }] }, { type: i4.MatDateSelectionModel, decorators: [{
152
+ type: Inject,
153
+ args: [WLCM_DATE_RANGE_SELECTION_MODEL]
154
+ }] }, { type: i4.MatDateSelectionModel, decorators: [{
155
+ type: Inject,
156
+ args: [WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL]
157
+ }] }, { type: i1.WlcmDatepickerTrigger }, { type: i2.DateAdapter }], propDecorators: { leftCalendar: [{
158
+ type: ViewChild,
159
+ args: [WlcmLeftCalendarDirective, { read: MatCalendar }]
160
+ }], rightCalendar: [{
161
+ type: ViewChild,
162
+ args: [WlcmRightCalendarDirective, { read: MatCalendar }]
163
+ }], leftCalendarElement: [{
164
+ type: ViewChild,
165
+ args: [WlcmLeftCalendarDirective, { read: ElementRef }]
166
+ }], monthView: [{
167
+ type: ViewChild,
168
+ args: [MatMonthView]
169
+ }] } });
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRlcGlja2VyL3NyYy9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUdSLFNBQVMsRUFFVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVMLCtCQUErQixFQUMvQixpQ0FBaUMsRUFDakMsV0FBVyxFQUlYLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsWUFBWSxHQUNiLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUNySSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUMxSCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0Is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d0JBQ3pCLDBCQUEwQjt3QkFDMUIsdUNBQXVDO3FCQUN4QyxhQUdVO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQ0FBaUM7NEJBQzFDLFFBQVEsRUFBRSwrQkFBK0I7eUJBQzFDO3dCQUNELHdDQUF3QztxQkFDekM7OzBCQVlFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNkJBQTZCOzswQkFDaEQsTUFBTTsyQkFBQyxpQ0FBaUM7OzBCQUV4QyxNQUFNOzJCQUFDLCtCQUErQjs7MEJBRXRDLE1BQU07MkJBQUMsdUNBQXVDO3VHQTBCWSxZQUFZO3NCQUF4RSxTQUFTO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFRyxhQUFhO3NCQUExRSxTQUFTO3VCQUFDLDBCQUEwQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFQSxtQkFBbUI7c0JBQTlFLFNBQVM7dUJBQUMseUJBQXlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUVqQyxTQUFTO3NCQUFqQyxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgT3B0aW9uYWwsXG4gIFNpZ25hbCxcbiAgVHlwZSxcbiAgVmlld0NoaWxkLFxuICBXcml0YWJsZVNpZ25hbCxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBEYXRlUmFuZ2UsXG4gIERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksXG4gIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgTWF0Q2FsZW5kYXIsXG4gIE1hdENhbGVuZGFyVXNlckV2ZW50LFxuICBNYXRDYWxlbmRhclZpZXcsXG4gIE1hdERhdGVSYW5nZVNlbGVjdGlvblN0cmF0ZWd5LFxuICBNYXREYXRlU2VsZWN0aW9uTW9kZWwsXG4gIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gIE1hdE1vbnRoVmlldyxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7IFdsY21EYXRlUmFuZ2VQaWNrZXJCb3R0b21QYW5lbENvbXBvbmVudCB9IGZyb20gJy4uL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC9kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YmplY3QsIHN0YXJ0V2l0aCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhdGVBZGFwdGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBXbGNtRGF0ZVJhbmdlQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2xjbUNhbGVuZGFyTW9kdWxlIH0gZnJvbSAnQHdsY20vYW5ndWxhci9jYWxlbmRhcic7XG5pbXBvcnQgeyBXTENNX0RBVEVfUkFOR0VfUElDS0VSX0NPTkZJRyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci5jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgV0xDTV9EQVRFX1JBTkdFX1NFTEVDVElPTl9NT0RFTF9QUk9WSURFUixcbiAgV0xDTV9EQVRFX1JBTkdFX1NFTEVDVElPTl9NT0RFTCxcbn0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3JhbmdlL2RhdGUtcmFuZ2Utc2VsZWN0aW9uLW1vZGVsLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBXTENNX0RBVEVfUkFOR0VfVFJJR0dFUl9TRUxFQ1RJT05fTU9ERUwgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvcmFuZ2UvZGF0ZS1yYW5nZS10cmlnZ2VyLXNlbGVjdGlvbi1tb2RlbC5jb25zdGFudHMnO1xuaW1wb3J0IHsgV2xjbUxlZnRDYWxlbmRhckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvcmFnbmUvbGVmdC1jYWxlbmRhci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgV2xjbVJpZ2h0Q2FsZW5kYXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL3JhZ25lL3JpZ2h0LWNhbGVuZGFyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBXbGNtRGF0ZVJhbmdlUGlja2VyQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLm1vZGVscyc7XG5pbXBvcnQgeyBXbGNtRGF0ZXBpY2tlclRyaWdnZXIgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2RhdGVwaWNrZXItdHJpZ2dlci5iYXNlJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3bGNtLWRhdGUtcmFuZ2UtcGlja2VyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBXbGNtQ2FsZW5kYXJNb2R1bGUsXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICBXbGNtTGVmdENhbGVuZGFyRGlyZWN0aXZlLFxuICAgIFdsY21SaWdodENhbGVuZGFyRGlyZWN0aXZlLFxuICAgIFdsY21EYXRlUmFuZ2VQaWNrZXJCb3R0b21QYW5lbENvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5zY3NzJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZLFxuICAgICAgdXNlQ2xhc3M6IERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksXG4gICAgfSxcbiAgICBXTENNX0RBVEVfUkFOR0VfU0VMRUNUSU9OX01PREVMX1BST1ZJREVSLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBXbGNtRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIGhlYWRlckNvbXBvbmVudDogVHlwZTx1bmtub3duPiA9IFdsY21EYXRlUmFuZ2VDYWxlbmRhckhlYWRlckNvbXBvbmVudDtcblxuICBwcml2YXRlIF9pc1ZpZXdJbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2lzQ29tcGxldGU6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICByZWFkb25seSBpc0NvbXBsZXRlOiBTaWduYWw8Ym9vbGVhbj4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLl9pc0NvbXBsZXRlKCkpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV0xDTV9EQVRFX1JBTkdFX1BJQ0tFUl9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBXbGNtRGF0ZVJhbmdlUGlja2VyQ29uZmlnLFxuICAgIEBJbmplY3QoTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZKVxuICAgIHByaXZhdGUgcmFuZ2VTZWxlY3Rpb25TdHJhdGVneTogTWF0RGF0ZVJhbmdlU2VsZWN0aW9uU3RyYXRlZ3k8RGF0ZT4sXG4gICAgQEluamVjdChXTENNX0RBVEVfUkFOR0VfU0VMRUNUSU9OX01PREVMKVxuICAgIHByb3RlY3RlZCBsb2NhbFNlbGVjdGlvbk1vZGVsOiBNYXREYXRlU2VsZWN0aW9uTW9kZWw8RGF0ZVJhbmdlPERhdGU+PixcbiAgICBASW5qZWN0KFdMQ01fREFURV9SQU5HRV9UUklHR0VSX1NFTEVDVElPTl9NT0RFTClcbiAgICBwcm90ZWN0ZWQgdHJpZ2dlclNlbGVjdGlvbk1vZGVsOiBNYXREYXRlU2VsZWN0aW9uTW9kZWw8RGF0ZVJhbmdlPERhdGU+PixcbiAgICBwcm90ZWN0ZWQgdHJpZ2dlcjogV2xjbURhdGVwaWNrZXJUcmlnZ2VyPFdsY21EYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQ+LFxuICAgIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8RGF0ZT5cbiAgKSB7XG4gICAgdGhpcy5oYW5kbGVTZWxlY3Rpb25DaGFuZ2VkKCk7XG5cbiAgICB0aGlzLmxvY2FsU2VsZWN0aW9uTW9kZWwudXBkYXRlU2VsZWN0aW9uKHRoaXMudHJpZ2dlclNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbiwgdGhpcyk7XG5cbiAgICBpZiAodGhpcy50cmlnZ2VyU2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLnN0YXJ0KSB7XG4gICAgICB0aGlzLnN0YXJ0RGF0ZS5zZXQodGhpcy50cmlnZ2VyU2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLnN0YXJ0KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb25maWcuaGVhZGVyQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmhlYWRlckNvbXBvbmVudCA9IHRoaXMuY29uZmlnLmhlYWRlckNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLl9pc1ZpZXdJbml0aWFsaXplZCkgcmV0dXJuO1xuXG4gICAgICB0aGlzLmxlZnRDYWxlbmRhci5hY3RpdmVEYXRlID0gdGhpcy5zdGFydERhdGUoKTtcblxuICAgICAgdGhpcy5yaWdodENhbGVuZGFyLmFjdGl2ZURhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLmFkZENhbGVuZGFyTW9udGhzKHRoaXMuc3RhcnREYXRlKCksIDEpO1xuICAgIH0pO1xuICB9XG5cbiAgQFZpZXdDaGlsZChXbGNtTGVmdENhbGVuZGFyRGlyZWN0aXZlLCB7IHJlYWQ6IE1hdENhbGVuZGFyIH0pIGxlZnRDYWxlbmRhciE6IE1hdENhbGVuZGFyPERhdGU+O1xuXG4gIEBWaWV3Q2hpbGQoV2xjbVJpZ2h0Q2FsZW5kYXJEaXJlY3RpdmUsIHsgcmVhZDogTWF0Q2FsZW5kYXIgfSkgcmlnaHRDYWxlbmRhciE6IE1hdENhbGVuZGFyPERhdGU+O1xuXG4gIEBWaWV3Q2hpbGQoV2xjbUxlZnRDYWxlbmRhckRpcmVjdGl2ZSwgeyByZWFkOiBFbGVtZW50UmVmIH0pIGxlZnRDYWxlbmRhckVsZW1lbnQhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKE1hdE1vbnRoVmlldykgbW9udGhWaWV3ITogTWF0TW9udGhWaWV3PGFueT47XG5cbiAgc3RhcnREYXRlOiBXcml0YWJsZVNpZ25hbDxEYXRlPiA9IHNpZ25hbChuZXcgRGF0ZSgpKTtcblxuICBsZWZ0Q2FsZW5kYXJZZWFyVmlld0FjdGl2YXRlZDogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIHJpZ2h0Q2FsZW5kYXJZZWFyVmlld0FjdGl2YXRlZDogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl9pc1ZpZXdJbml0aWFsaXplZCA9IHRydWU7XG5cbiAgICB0aGlzLmxlZnRDYWxlbmRhci52aWV3Q2hhbmdlZC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKHZpZXc6IE1hdENhbGVuZGFyVmlldykgPT4ge1xuICAgICAgdGhpcy5sZWZ0Q2FsZW5kYXJZZWFyVmlld0FjdGl2YXRlZC5zZXQodmlldyAhPT0gJ21vbnRoJyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnJpZ2h0Q2FsZW5kYXIudmlld0NoYW5nZWQucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKCh2aWV3OiBNYXRDYWxlbmRhclZpZXcpID0+IHtcbiAgICAgIHRoaXMucmlnaHRDYWxlbmRhclllYXJWaWV3QWN0aXZhdGVkLnNldCh2aWV3ICE9PSAnbW9udGgnKTtcbiAgICB9KTtcblxuICAgIHRoaXMuaGFuZGxlUmlnaHRDYWxlbmRhclByZXZpZXdDaGFuZ2UoKTtcbiAgfVxuXG4gIGNhbGVuZGFyU2VsZWN0aW9uKGV2ZW50OiBNYXRDYWxlbmRhclVzZXJFdmVudDxEYXRlIHwgbnVsbD4pOiB2b2lkIHtcbiAgICBjb25zdCBuZXdTZWxlY3Rpb246IERhdGVSYW5nZTxEYXRlPiA9IHRoaXMucmFuZ2VTZWxlY3Rpb25TdHJhdGVneS5zZWxlY3Rpb25GaW5pc2hlZChcbiAgICAgIGV2ZW50LnZhbHVlLFxuICAgICAgdGhpcy5sb2NhbFNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbixcbiAgICAgIGV2ZW50LmV2ZW50XG4gICAgKTtcblxuICAgIHRoaXMubG9jYWxTZWxlY3Rpb25Nb2RlbC51cGRhdGVTZWxlY3Rpb24obmV3U2VsZWN0aW9uLCB0aGlzKTtcbiAgfVxuXG4gIGNhbGVuZGFyRHJhZ0Ryb3AoZXZlbnQ6IE1hdENhbGVuZGFyVXNlckV2ZW50PERhdGVSYW5nZTxEYXRlPj4pOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU2VsZWN0aW9uTW9kZWwudXBkYXRlU2VsZWN0aW9uKGV2ZW50LnZhbHVlLCB0aGlzKTtcbiAgfVxuXG4gIGFwcGx5KCk6IHZvaWQge1xuICAgIHRoaXMudHJpZ2dlclNlbGVjdGlvbk1vZGVsLnVwZGF0ZVNlbGVjdGlvbih0aGlzLmxvY2FsU2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLCB0aGlzKTtcblxuICAgIHRoaXMudHJpZ2dlci5jbG9zZSgpO1xuICB9XG5cbiAgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy50cmlnZ2VyLmNsb3NlKCk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWQoKTogRGF0ZVJhbmdlPERhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGxlZnRDYWxlbmRhckFjdGl2ZUNlbGwoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5sZWZ0Q2FsZW5kYXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLm1hdC1jYWxlbmRhci1ib2R5LWFjdGl2ZScpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTZWxlY3Rpb25DaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMubG9jYWxTZWxlY3Rpb25Nb2RlbC5zZWxlY3Rpb25DaGFuZ2VkXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5faXNDb21wbGV0ZS5zZXQodGhpcy5sb2NhbFNlbGVjdGlvbk1vZGVsLmlzQ29tcGxldGUoKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVSaWdodENhbGVuZGFyUHJldmlld0NoYW5nZSgpOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3Q2hhbmdlZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICB0aGlzLnJpZ2h0Q2FsZW5kYXIudmlld0NoYW5nZWRcbiAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnBpcGUodGFwKCgpID0+IHZpZXdDaGFuZ2VkLm5leHQoKSkpXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy5yaWdodENhbGVuZGFyLmN1cnJlbnRWaWV3KSlcbiAgICAgIC5zdWJzY3JpYmUoKHZpZXc6IE1hdENhbGVuZGFyVmlldykgPT4ge1xuICAgICAgICBpZiAodmlldyAhPT0gJ21vbnRoJykgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMucmlnaHRDYWxlbmRhci5tb250aFZpZXcuX21hdENhbGVuZGFyQm9keS5wcmV2aWV3Q2hhbmdlXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHZpZXdDaGFuZ2VkKSwgdW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5sZWZ0Q2FsZW5kYXIuY3VycmVudFZpZXcgIT09ICdtb250aCcgfHwgIXRoaXMubGVmdENhbGVuZGFyLm1vbnRoVmlldy5fcmFuZ2VTdGFydCkgcmV0dXJuO1xuXG4gICAgICAgICAgICB0aGlzLmxlZnRDYWxlbmRhci5tb250aFZpZXcuX3ByZXZpZXdTdGFydCA9IHRoaXMucmlnaHRDYWxlbmRhci5tb250aFZpZXcuX3ByZXZpZXdTdGFydDtcblxuICAgICAgICAgICAgdGhpcy5sZWZ0Q2FsZW5kYXIubW9udGhWaWV3Ll9wcmV2aWV3RW5kID0gdGhpcy5yaWdodENhbGVuZGFyLm1vbnRoVmlldy5fcHJldmlld0VuZDtcblxuICAgICAgICAgICAgY29uc3QgYWN0aXZlQ2VsbCA9IHRoaXMubGVmdENhbGVuZGFyQWN0aXZlQ2VsbDtcblxuICAgICAgICAgICAgaWYgKGFjdGl2ZUNlbGwgJiYgYWN0aXZlQ2VsbCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkgYWN0aXZlQ2VsbC5ibHVyKCk7XG5cbiAgICAgICAgICAgIHRoaXMubGVmdENhbGVuZGFyLm1vbnRoVmlldy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItcGFuZWxcIj5cbiAgPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItYm9keVwiPlxuICAgIDxtYXQtY2FsZW5kYXJcbiAgICAgIHdsY21DYWxlbmRhclxuICAgICAgd2xjbUxlZnRDYWxlbmRhclxuICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdGVkXCJcbiAgICAgIFtkaXNhYmxlZF09XCJyaWdodENhbGVuZGFyWWVhclZpZXdBY3RpdmF0ZWQoKVwiXG4gICAgICBbaGVhZGVyQ29tcG9uZW50XT1cImhlYWRlckNvbXBvbmVudFwiXG4gICAgICAoX3VzZXJTZWxlY3Rpb24pPVwiY2FsZW5kYXJTZWxlY3Rpb24oJGV2ZW50KVwiXG4gICAgICAoX3VzZXJEcmFnRHJvcCk9XCJjYWxlbmRhckRyYWdEcm9wKCRldmVudClcIlxuICAgICAgKGRhdGVDaGFuZ2UpPVwic3RhcnREYXRlLnNldCgkZXZlbnQpXCJcbiAgICA+PC9tYXQtY2FsZW5kYXI+XG5cbiAgICA8bWF0LWNhbGVuZGFyXG4gICAgICB3bGNtQ2FsZW5kYXJcbiAgICAgIHdsY21SaWdodENhbGVuZGFyXG4gICAgICBbc2VsZWN0ZWRdPVwic2VsZWN0ZWRcIlxuICAgICAgW2Rpc2FibGVkXT1cImxlZnRDYWxlbmRhclllYXJWaWV3QWN0aXZhdGVkKClcIlxuICAgICAgW2hlYWRlckNvbXBvbmVudF09XCJoZWFkZXJDb21wb25lbnRcIlxuICAgICAgKF91c2VyU2VsZWN0aW9uKT1cImNhbGVuZGFyU2VsZWN0aW9uKCRldmVudClcIlxuICAgICAgKF91c2VyRHJhZ0Ryb3ApPVwiY2FsZW5kYXJEcmFnRHJvcCgkZXZlbnQpXCJcbiAgICAgIChkYXRlQ2hhbmdlKT1cInN0YXJ0RGF0ZS5zZXQoJGV2ZW50KVwiXG4gICAgPjwvbWF0LWNhbGVuZGFyPlxuICA8L2Rpdj5cblxuICA8d2xjbS1kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWw+PC93bGNtLWRhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbD5cbjwvZGl2PlxuIl19