@dereekb/dbx-form 11.1.8 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/calendar/lib/calendar.module.d.ts +1 -14
  2. package/calendar/lib/calendar.schedule.selection.cell.component.d.ts +8 -5
  3. package/calendar/lib/calendar.schedule.selection.component.d.ts +13 -10
  4. package/calendar/lib/calendar.schedule.selection.d.ts +6 -6
  5. package/calendar/lib/calendar.schedule.selection.days.component.d.ts +1 -1
  6. package/calendar/lib/calendar.schedule.selection.days.form.component.d.ts +1 -1
  7. package/calendar/lib/calendar.schedule.selection.dialog.button.component.d.ts +4 -4
  8. package/calendar/lib/calendar.schedule.selection.dialog.component.d.ts +5 -5
  9. package/calendar/lib/calendar.schedule.selection.popover.button.component.d.ts +4 -2
  10. package/calendar/lib/calendar.schedule.selection.popover.component.d.ts +1 -1
  11. package/calendar/lib/calendar.schedule.selection.popover.content.component.d.ts +1 -1
  12. package/calendar/lib/calendar.schedule.selection.range.component.d.ts +19 -17
  13. package/calendar/lib/calendar.schedule.selection.store.d.ts +2 -2
  14. package/calendar/lib/calendar.schedule.selection.store.provide.d.ts +1 -1
  15. package/calendar/lib/calendar.schedule.selection.toggle.button.component.d.ts +8 -12
  16. package/calendar/lib/field/schedule/calendar.schedule.field.component.d.ts +22 -22
  17. package/calendar/lib/field/schedule/calendar.schedule.module.d.ts +2 -10
  18. package/esm2022/calendar/lib/calendar.module.mjs +19 -101
  19. package/esm2022/calendar/lib/calendar.schedule.selection.cell.component.mjs +27 -28
  20. package/esm2022/calendar/lib/calendar.schedule.selection.component.mjs +38 -55
  21. package/esm2022/calendar/lib/calendar.schedule.selection.days.component.mjs +17 -13
  22. package/esm2022/calendar/lib/calendar.schedule.selection.days.form.component.mjs +11 -12
  23. package/esm2022/calendar/lib/calendar.schedule.selection.dialog.button.component.mjs +18 -21
  24. package/esm2022/calendar/lib/calendar.schedule.selection.dialog.component.mjs +12 -9
  25. package/esm2022/calendar/lib/calendar.schedule.selection.mjs +3 -2
  26. package/esm2022/calendar/lib/calendar.schedule.selection.popover.button.component.mjs +22 -18
  27. package/esm2022/calendar/lib/calendar.schedule.selection.popover.component.mjs +12 -9
  28. package/esm2022/calendar/lib/calendar.schedule.selection.popover.content.component.mjs +13 -10
  29. package/esm2022/calendar/lib/calendar.schedule.selection.range.component.mjs +52 -70
  30. package/esm2022/calendar/lib/calendar.schedule.selection.store.mjs +5 -5
  31. package/esm2022/calendar/lib/calendar.schedule.selection.store.provide.mjs +9 -8
  32. package/esm2022/calendar/lib/calendar.schedule.selection.toggle.button.component.mjs +48 -50
  33. package/esm2022/calendar/lib/field/schedule/calendar.schedule.field.component.mjs +17 -14
  34. package/esm2022/calendar/lib/field/schedule/calendar.schedule.module.mjs +8 -40
  35. package/esm2022/lib/form/action/form.action.directive.mjs +58 -55
  36. package/esm2022/lib/form/action/form.action.module.mjs +9 -9
  37. package/esm2022/lib/form/action/transition/form.action.transition.module.mjs +9 -8
  38. package/esm2022/lib/form/action/transition/form.action.transition.safety.directive.mjs +14 -11
  39. package/esm2022/lib/form/form.mjs +1 -1
  40. package/esm2022/lib/form/form.module.mjs +4 -4
  41. package/esm2022/lib/form/io/form.changes.directive.mjs +11 -16
  42. package/esm2022/lib/form/io/form.input.directive.mjs +24 -38
  43. package/esm2022/lib/form/io/form.io.module.mjs +15 -9
  44. package/esm2022/lib/form/io/form.loading.directive.mjs +22 -42
  45. package/esm2022/lib/form.module.mjs +4 -4
  46. package/esm2022/lib/form.providers.mjs +32 -0
  47. package/esm2022/lib/formly/field/checklist/checklist.field.mjs +5 -5
  48. package/esm2022/lib/formly/field/checklist/checklist.item.field.component.mjs +51 -47
  49. package/esm2022/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +41 -29
  50. package/esm2022/lib/formly/field/checklist/checklist.item.field.mjs +3 -3
  51. package/esm2022/lib/formly/field/checklist/checklist.item.field.module.mjs +8 -45
  52. package/esm2022/lib/formly/field/checklist/checklist.item.mjs +1 -1
  53. package/esm2022/lib/formly/field/component/component.field.component.mjs +11 -8
  54. package/esm2022/lib/formly/field/component/component.field.module.mjs +8 -14
  55. package/esm2022/lib/formly/field/field.mjs +1 -1
  56. package/esm2022/lib/formly/field/form.field.module.mjs +4 -4
  57. package/esm2022/lib/formly/field/selection/list/list.field.component.mjs +17 -14
  58. package/esm2022/lib/formly/field/selection/list/list.field.module.mjs +8 -58
  59. package/esm2022/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +17 -13
  60. package/esm2022/lib/formly/field/selection/pickable/pickable.field.directive.mjs +16 -16
  61. package/esm2022/lib/formly/field/selection/pickable/pickable.field.module.mjs +8 -68
  62. package/esm2022/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +71 -54
  63. package/esm2022/lib/formly/field/selection/pickable/pickable.util.mjs +2 -2
  64. package/esm2022/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +21 -16
  65. package/esm2022/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +51 -49
  66. package/esm2022/lib/formly/field/selection/searchable/searchable.field.directive.mjs +35 -27
  67. package/esm2022/lib/formly/field/selection/searchable/searchable.field.mjs +1 -1
  68. package/esm2022/lib/formly/field/selection/searchable/searchable.field.module.mjs +8 -65
  69. package/esm2022/lib/formly/field/selection/searchable/searchable.mjs +1 -1
  70. package/esm2022/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +48 -30
  71. package/esm2022/lib/formly/field/selection/searchable/text.chip.field.mjs +2 -2
  72. package/esm2022/lib/formly/field/selection/selection.field.mjs +1 -1
  73. package/esm2022/lib/formly/field/selection/selection.mjs +1 -1
  74. package/esm2022/lib/formly/field/selection/selection.module.mjs +4 -4
  75. package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.component.mjs +20 -21
  76. package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.module.mjs +6 -73
  77. package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.mjs +1 -1
  78. package/esm2022/lib/formly/field/texteditor/texteditor.field.component.mjs +37 -22
  79. package/esm2022/lib/formly/field/texteditor/texteditor.field.mjs +2 -2
  80. package/esm2022/lib/formly/field/texteditor/texteditor.field.module.mjs +8 -33
  81. package/esm2022/lib/formly/field/value/array/array.field.component.mjs +72 -50
  82. package/esm2022/lib/formly/field/value/array/array.field.module.mjs +8 -44
  83. package/esm2022/lib/formly/field/value/boolean/boolean.field.mjs +2 -2
  84. package/esm2022/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
  85. package/esm2022/lib/formly/field/value/date/date.field.module.mjs +5 -9
  86. package/esm2022/lib/formly/field/value/date/date.value.mjs +1 -1
  87. package/esm2022/lib/formly/field/value/date/datetime.field.component.mjs +8 -8
  88. package/esm2022/lib/formly/field/value/date/datetime.field.service.mjs +4 -4
  89. package/esm2022/lib/formly/field/value/date/datetime.mjs +1 -1
  90. package/esm2022/lib/formly/field/value/date/fixeddaterange.field.component.mjs +8 -8
  91. package/esm2022/lib/formly/field/value/number/number.field.mjs +1 -1
  92. package/esm2022/lib/formly/field/value/number/number.field.module.mjs +4 -4
  93. package/esm2022/lib/formly/field/value/phone/phone.field.component.mjs +4 -4
  94. package/esm2022/lib/formly/field/value/phone/phone.field.module.mjs +4 -4
  95. package/esm2022/lib/formly/field/value/text/text.address.field.mjs +1 -1
  96. package/esm2022/lib/formly/field/value/text/text.field.mjs +1 -1
  97. package/esm2022/lib/formly/field/value/text/text.field.module.mjs +4 -4
  98. package/esm2022/lib/formly/field/value/value.module.mjs +4 -4
  99. package/esm2022/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +9 -7
  100. package/esm2022/lib/formly/field/wrapper/expand.wrapper.component.mjs +19 -24
  101. package/esm2022/lib/formly/field/wrapper/expand.wrapper.delegate.mjs +7 -4
  102. package/esm2022/lib/formly/field/wrapper/flex.wrapper.component.mjs +11 -8
  103. package/esm2022/lib/formly/field/wrapper/form.wrapper.module.mjs +8 -39
  104. package/esm2022/lib/formly/field/wrapper/index.mjs +2 -1
  105. package/esm2022/lib/formly/field/wrapper/info.wrapper.component.mjs +19 -16
  106. package/esm2022/lib/formly/field/wrapper/section.wrapper.component.mjs +11 -7
  107. package/esm2022/lib/formly/field/wrapper/style.wrapper.component.mjs +16 -11
  108. package/esm2022/lib/formly/field/wrapper/subsection.wrapper.component.mjs +11 -8
  109. package/esm2022/lib/formly/field/wrapper/toggle.wrapper.component.mjs +21 -17
  110. package/esm2022/lib/formly/field/wrapper/working.wrapper.component.mjs +11 -8
  111. package/esm2022/lib/formly/field/wrapper/wrapper.mjs +1 -1
  112. package/esm2022/lib/formly/form/form.form.module.mjs +4 -4
  113. package/esm2022/lib/formly/form/search.form.component.mjs +4 -4
  114. package/esm2022/lib/formly/formly.component.template.mjs +29 -0
  115. package/esm2022/lib/formly/formly.context.directive.mjs +6 -5
  116. package/esm2022/lib/formly/formly.context.mjs +12 -8
  117. package/esm2022/lib/formly/formly.directive.mjs +29 -44
  118. package/esm2022/lib/formly/formly.form.component.mjs +24 -18
  119. package/esm2022/lib/formly/formly.module.mjs +10 -14
  120. package/esm2022/lib/formly/index.mjs +2 -1
  121. package/esm2022/lib/formly/template/login.mjs +1 -1
  122. package/esm2022/lib/formly/template/timezone.mjs +1 -1
  123. package/esm2022/lib/index.mjs +2 -1
  124. package/esm2022/lib/layout/form.layout.module.mjs +4 -4
  125. package/esm2022/lib/layout/form.spacer.component.mjs +3 -3
  126. package/esm2022/lib/validator/available.mjs +1 -1
  127. package/esm2022/lib/validator/boolean.mjs +1 -1
  128. package/esm2022/lib/validator/field.mjs +2 -2
  129. package/esm2022/lib/validator/number.mjs +1 -1
  130. package/esm2022/lib/validator/phone.mjs +1 -1
  131. package/esm2022/mapbox/lib/field/latlng/latlng.field.component.mjs +65 -47
  132. package/esm2022/mapbox/lib/field/latlng/latlng.field.marker.component.mjs +13 -10
  133. package/esm2022/mapbox/lib/field/latlng/latlng.module.mjs +10 -43
  134. package/esm2022/mapbox/lib/field/zoom/zoom.field.component.mjs +32 -26
  135. package/esm2022/mapbox/lib/field/zoom/zoom.module.mjs +8 -36
  136. package/esm2022/mapbox/lib/mapbox.module.mjs +4 -4
  137. package/fesm2022/dereekb-dbx-form-calendar.mjs +340 -457
  138. package/fesm2022/dereekb-dbx-form-calendar.mjs.map +1 -1
  139. package/fesm2022/dereekb-dbx-form-mapbox.mjs +114 -141
  140. package/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
  141. package/fesm2022/dereekb-dbx-form.mjs +935 -1106
  142. package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
  143. package/lib/extension/calendar/_calendar.scss +3 -3
  144. package/lib/form/_form.scss +3 -3
  145. package/lib/form/action/form.action.directive.d.ts +35 -16
  146. package/lib/form/action/form.action.module.d.ts +4 -3
  147. package/lib/form/action/transition/form.action.transition.module.d.ts +4 -2
  148. package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +4 -2
  149. package/lib/form/io/form.changes.directive.d.ts +3 -4
  150. package/lib/form/io/form.input.directive.d.ts +7 -10
  151. package/lib/form/io/form.io.module.d.ts +8 -2
  152. package/lib/form/io/form.loading.directive.d.ts +10 -11
  153. package/lib/form.providers.d.ts +8 -0
  154. package/lib/formly/_formly.scss +3 -3
  155. package/lib/formly/field/checklist/_checklist.scss +3 -3
  156. package/lib/formly/field/checklist/checklist.field.d.ts +7 -7
  157. package/lib/formly/field/checklist/checklist.item.d.ts +7 -9
  158. package/lib/formly/field/checklist/checklist.item.field.component.d.ts +19 -18
  159. package/lib/formly/field/checklist/checklist.item.field.content.default.component.d.ts +5 -5
  160. package/lib/formly/field/checklist/checklist.item.field.d.ts +1 -1
  161. package/lib/formly/field/checklist/checklist.item.field.module.d.ts +3 -11
  162. package/lib/formly/field/component/_component.scss +3 -3
  163. package/lib/formly/field/component/component.field.component.d.ts +1 -1
  164. package/lib/formly/field/component/component.field.module.d.ts +2 -4
  165. package/lib/formly/field/field.d.ts +8 -5
  166. package/lib/formly/field/selection/list/_list.scss +3 -3
  167. package/lib/formly/field/selection/list/list.field.component.d.ts +7 -5
  168. package/lib/formly/field/selection/list/list.field.module.d.ts +2 -12
  169. package/lib/formly/field/selection/pickable/_pickable.scss +3 -3
  170. package/lib/formly/field/selection/pickable/pickable.chip.field.component.d.ts +1 -1
  171. package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +25 -23
  172. package/lib/formly/field/selection/pickable/pickable.field.module.d.ts +2 -13
  173. package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +15 -14
  174. package/lib/formly/field/selection/searchable/_searchable.scss +3 -3
  175. package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +4 -4
  176. package/lib/formly/field/selection/searchable/searchable.d.ts +3 -3
  177. package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +8 -12
  178. package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +30 -25
  179. package/lib/formly/field/selection/searchable/searchable.field.module.d.ts +2 -13
  180. package/lib/formly/field/selection/searchable/searchable.text.field.component.d.ts +6 -8
  181. package/lib/formly/field/selection/selection.d.ts +5 -5
  182. package/lib/formly/field/selection/sourceselect/_sourceselect.scss +3 -3
  183. package/lib/formly/field/selection/sourceselect/sourceselect.d.ts +1 -1
  184. package/lib/formly/field/selection/sourceselect/sourceselect.field.component.d.ts +5 -3
  185. package/lib/formly/field/selection/sourceselect/sourceselect.field.module.d.ts +2 -17
  186. package/lib/formly/field/texteditor/_texteditor.scss +9 -9
  187. package/lib/formly/field/texteditor/texteditor.field.component.d.ts +5 -4
  188. package/lib/formly/field/texteditor/texteditor.field.module.d.ts +2 -8
  189. package/lib/formly/field/value/array/_array.scss +5 -5
  190. package/lib/formly/field/value/array/array.field.component.d.ts +16 -18
  191. package/lib/formly/field/value/array/array.field.d.ts +8 -5
  192. package/lib/formly/field/value/array/array.field.module.d.ts +2 -10
  193. package/lib/formly/field/value/boolean/_boolean.scss +3 -3
  194. package/lib/formly/field/value/date/_date.scss +5 -5
  195. package/lib/formly/field/value/date/date.field.module.d.ts +8 -9
  196. package/lib/formly/field/value/date/datetime.field.service.d.ts +1 -1
  197. package/lib/formly/field/value/date/fixeddaterange.field.component.d.ts +13 -13
  198. package/lib/formly/field/value/number/_number.scss +2 -2
  199. package/lib/formly/field/value/phone/_phone.scss +6 -6
  200. package/lib/formly/field/value/phone/phone.field.component.d.ts +6 -5
  201. package/lib/formly/field/value/text/_text.scss +3 -3
  202. package/lib/formly/field/wrapper/_wrapper.scss +3 -3
  203. package/lib/formly/field/wrapper/autotouch.wrapper.component.d.ts +1 -1
  204. package/lib/formly/field/wrapper/expand.wrapper.component.d.ts +1 -1
  205. package/lib/formly/field/wrapper/expand.wrapper.delegate.d.ts +2 -0
  206. package/lib/formly/field/wrapper/flex.wrapper.component.d.ts +4 -4
  207. package/lib/formly/field/wrapper/form.wrapper.module.d.ts +2 -8
  208. package/lib/formly/field/wrapper/index.d.ts +1 -0
  209. package/lib/formly/field/wrapper/info.wrapper.component.d.ts +2 -2
  210. package/lib/formly/field/wrapper/section.wrapper.component.d.ts +1 -1
  211. package/lib/formly/field/wrapper/style.wrapper.component.d.ts +5 -3
  212. package/lib/formly/field/wrapper/subsection.wrapper.component.d.ts +1 -1
  213. package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +2 -1
  214. package/lib/formly/field/wrapper/working.wrapper.component.d.ts +2 -2
  215. package/lib/formly/form/_form.scss +3 -3
  216. package/lib/formly/formly.component.template.d.ts +19 -0
  217. package/lib/formly/formly.context.d.ts +11 -7
  218. package/lib/formly/formly.context.directive.d.ts +2 -2
  219. package/lib/formly/formly.directive.d.ts +10 -10
  220. package/lib/formly/formly.form.component.d.ts +18 -13
  221. package/lib/formly/formly.module.d.ts +1 -1
  222. package/lib/formly/index.d.ts +1 -0
  223. package/lib/index.d.ts +1 -0
  224. package/lib/layout/_layout.scss +3 -3
  225. package/lib/style/_all-typography.scss +1 -1
  226. package/lib/style/_theming.scss +1 -1
  227. package/mapbox/lib/field/latlng/latlng.field.component.d.ts +25 -23
  228. package/mapbox/lib/field/latlng/latlng.field.marker.component.d.ts +2 -1
  229. package/mapbox/lib/field/latlng/latlng.module.d.ts +2 -11
  230. package/mapbox/lib/field/zoom/zoom.field.component.d.ts +13 -13
  231. package/mapbox/lib/field/zoom/zoom.module.d.ts +3 -10
  232. package/package.json +10 -11
  233. package/mapbox/esm2022/dereekb-dbx-form-mapbox.mjs +0 -5
  234. package/mapbox/esm2022/index.mjs +0 -3
  235. package/mapbox/esm2022/lib/field/index.mjs +0 -3
  236. package/mapbox/esm2022/lib/field/latlng/index.mjs +0 -5
  237. package/mapbox/esm2022/lib/field/latlng/latlng.field.component.mjs +0 -244
  238. package/mapbox/esm2022/lib/field/latlng/latlng.field.marker.component.mjs +0 -31
  239. package/mapbox/esm2022/lib/field/latlng/latlng.field.mjs +0 -35
  240. package/mapbox/esm2022/lib/field/latlng/latlng.module.mjs +0 -59
  241. package/mapbox/esm2022/lib/field/zoom/index.mjs +0 -4
  242. package/mapbox/esm2022/lib/field/zoom/zoom.field.component.mjs +0 -140
  243. package/mapbox/esm2022/lib/field/zoom/zoom.field.mjs +0 -23
  244. package/mapbox/esm2022/lib/field/zoom/zoom.module.mjs +0 -57
  245. package/mapbox/esm2022/lib/mapbox.module.mjs +0 -16
  246. package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs +0 -566
  247. package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs.map +0 -1
  248. package/mapbox/package.json +0 -21
@@ -1,9 +1,9 @@
1
- import * as i2$1 from '@dereekb/dbx-form';
2
- import { formlyField, propsAndConfigForFieldConfig, flexLayoutWrapper, toggleField, AbstractSyncFormlyFormDirective, provideFormlyContext, DbxFormModule, DbxFormlyModule } from '@dereekb/dbx-form';
3
- import * as i1$1 from '@dereekb/dbx-web';
4
- import { AbstractPopoverDirective, DbxPopoverService, AbstractDialogDirective, sanitizeDbxDialogContentConfig, CompactContextStore, DbxContentLayoutModule, DbxTextModule, DbxActionModule, DbxButtonModule, DbxDialogInteractionModule, DbxPopoverInteractionModule } from '@dereekb/dbx-web';
1
+ import * as i1 from '@dereekb/dbx-form';
2
+ import { formlyField, propsAndConfigForFieldConfig, flexLayoutWrapper, toggleField, AbstractSyncFormlyFormDirective, dbxFormlyFormComponentProviders, DbxFormlyFormComponentImportsModule, DBX_FORMLY_FORM_COMPONENT_TEMPLATE, DbxFormSourceDirective, DbxActionFormDirective } from '@dereekb/dbx-form';
3
+ import * as i1$3 from '@dereekb/dbx-web';
4
+ import { DbxActionModule, DbxButtonSpacerDirective, DbxContentContainerDirective, DbxLabelBlockComponent, AbstractPopoverDirective, DbxPopoverInteractionModule, DbxPopoverService, DbxButtonComponent, AbstractDialogDirective, sanitizeDbxDialogContentConfig, DbxDialogInteractionModule, CompactContextStore } from '@dereekb/dbx-web';
5
5
  import * as i0 from '@angular/core';
6
- import { Injectable, inject, Directive, Injector, Optional, SkipSelf, Component, Input, ViewChild, ElementRef, ChangeDetectionStrategy, EventEmitter, Output, InjectionToken, NgZone, NgModule } from '@angular/core';
6
+ import { Injectable, inject, Directive, Injector, Optional, SkipSelf, Component, ChangeDetectionStrategy, viewChild, input, effect, computed, ElementRef, output, InjectionToken, NgModule } from '@angular/core';
7
7
  import { FieldType } from '@ngx-formly/material';
8
8
  import { switchMap, first, tap, map, distinctUntilChanged, shareReplay, of, combineLatestWith, BehaviorSubject, filter, combineLatest, EMPTY, startWith, throttleTime } from 'rxjs';
9
9
  import { filterMaybe, distinctUntilHasDifferentValues, SubscriptionObject, asObservableFromGetter, asObservable } from '@dereekb/rxjs';
@@ -11,30 +11,24 @@ import { DateCellScheduleDayCode, expandDateCellScheduleDayCodesToDayOfWeekSet,
11
11
  import { isInAllowedDaysOfWeekSet, mapValuesToSet, unique, mergeArrays, iterableToArray, isIterable, firstValueFromIterable, minAndMaxNumber, range, toggleInSet, removeFromSet, addToSet, isIndexNumberInIndexRangeFunction, getDaysOfWeekNames, reduceBooleansWithAnd, mergeObjects, KeyValueTypleValueFilter } from '@dereekb/util';
12
12
  import { ComponentStore } from '@ngrx/component-store';
13
13
  import { startOfDay, endOfDay, isBefore, endOfWeek } from 'date-fns';
14
- import * as i1$2 from '@dereekb/dbx-core';
15
- import { switchMapDbxInjectionComponentConfig, DbxInjectionComponentModule, DbxDatePipeModule } from '@dereekb/dbx-core';
16
- import * as i2$3 from '@dereekb/dbx-web/calendar';
17
- import { DbxCalendarStore, prepareAndSortCalendarEvents, DbxCalendarModule } from '@dereekb/dbx-web/calendar';
18
- import * as i1 from '@angular/forms';
14
+ import * as i1$1 from '@dereekb/dbx-core';
15
+ import { TimezoneAbbreviationPipe, switchMapDbxInjectionComponentConfig, DbxInjectionComponent } from '@dereekb/dbx-core';
16
+ import { toSignal, toObservable } from '@angular/core/rxjs-interop';
17
+ import { MatDialog } from '@angular/material/dialog';
18
+ import * as i1$5 from 'angular-calendar';
19
+ import { CalendarModule } from 'angular-calendar';
20
+ import { DbxCalendarStore, prepareAndSortCalendarEvents, DbxCalendarBaseComponent } from '@dereekb/dbx-web/calendar';
21
+ import * as i2 from '@angular/forms';
19
22
  import { FormGroup, FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
20
- import * as i3 from '@angular/material/form-field';
23
+ import * as i1$2 from '@angular/material/form-field';
21
24
  import { MAT_FORM_FIELD_DEFAULT_OPTIONS, MatFormFieldModule } from '@angular/material/form-field';
22
- import * as i5 from '@angular/material/datepicker';
25
+ import * as i3 from '@angular/material/datepicker';
23
26
  import { MatDatepickerModule } from '@angular/material/datepicker';
24
- import * as i2 from '@angular/common';
25
- import { CommonModule } from '@angular/common';
26
- import { MatDialog } from '@angular/material/dialog';
27
- import * as i5$1 from 'angular-calendar';
28
- import { CalendarModule, CalendarDayModule, CalendarWeekModule } from 'angular-calendar';
29
- import * as i6 from '@ngbracket/ngx-layout/extended';
30
- import * as i2$2 from '@angular/material/icon';
27
+ import { NgClass } from '@angular/common';
28
+ import * as i1$4 from '@angular/material/icon';
31
29
  import { MatIconModule } from '@angular/material/icon';
32
- import * as i1$3 from '@ngx-formly/core';
30
+ import * as i1$6 from '@ngx-formly/core';
33
31
  import { FormlyModule } from '@ngx-formly/core';
34
- import { MatInputModule } from '@angular/material/input';
35
- import { MatButtonModule } from '@angular/material/button';
36
- import { MatButtonToggleModule } from '@angular/material/button-toggle';
37
- import { FlexLayoutModule } from '@ngbracket/ngx-layout';
38
32
 
39
33
  function dateScheduleRangeField(config = {}) {
40
34
  const { key = 'schedule', appearance, hideCustomize, allowTextInput, filter, outputTimezone, initialSelectionState, computeSelectionResultRelativeToFilter, exclusions, defaultScheduleDays, minMaxDateRange, cellContentFactory, dialogContentConfig, customDetailsConfig } = config;
@@ -87,10 +81,11 @@ const defaultCalendarScheduleSelectionCellContentFactory = (day) => {
87
81
  text = 'Add';
88
82
  break;
89
83
  }
90
- return {
84
+ const result = {
91
85
  icon,
92
86
  text
93
87
  };
88
+ return result;
94
89
  };
95
90
 
96
91
  function initialCalendarScheduleSelectionState() {
@@ -278,12 +273,12 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
278
273
  * Should typically not be used by the user directly with the intention of the parent synchronizing to this state.
279
274
  */
280
275
  setViewReadonlyState = this.updater((state, isViewReadonly) => ({ ...state, isViewReadonly }));
281
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
282
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStore });
276
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
277
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStore });
283
278
  }
284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStore, decorators: [{
279
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStore, decorators: [{
285
280
  type: Injectable
286
- }], ctorParameters: function () { return []; } });
281
+ }], ctorParameters: () => [] });
287
282
  function updateStateWithInitialSelectionState(state, initialSelectionState) {
288
283
  const { toggledIndexes } = state;
289
284
  if (toggledIndexes.size === 0 && initialSelectionState === 'all') {
@@ -874,21 +869,22 @@ function computeCalendarScheduleSelectionDateCellRange(state) {
874
869
  */
875
870
  class DbxCalendarScheduleSelectionStoreProviderBlock {
876
871
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore, { skipSelf: true });
877
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStoreProviderBlock, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
878
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStoreProviderBlock });
872
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStoreProviderBlock, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
873
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStoreProviderBlock });
879
874
  }
880
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStoreProviderBlock, decorators: [{
875
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStoreProviderBlock, decorators: [{
881
876
  type: Injectable
882
877
  }] });
883
878
  class DbxCalendarScheduleSelectionStoreInjectionBlockDirective {
884
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStoreInjectionBlockDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
885
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxCalendarScheduleSelectionStoreInjectionBlockDirective, selector: "[dbxCalendarScheduleSelectionStoreParentBlocker]", providers: [DbxCalendarScheduleSelectionStoreProviderBlock], ngImport: i0 });
879
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStoreInjectionBlockDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
880
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxCalendarScheduleSelectionStoreInjectionBlockDirective, isStandalone: true, selector: "[dbxCalendarScheduleSelectionStoreParentBlocker]", providers: [DbxCalendarScheduleSelectionStoreProviderBlock], ngImport: i0 });
886
881
  }
887
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStoreInjectionBlockDirective, decorators: [{
882
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarScheduleSelectionStoreInjectionBlockDirective, decorators: [{
888
883
  type: Directive,
889
884
  args: [{
890
885
  selector: '[dbxCalendarScheduleSelectionStoreParentBlocker]',
891
- providers: [DbxCalendarScheduleSelectionStoreProviderBlock]
886
+ providers: [DbxCalendarScheduleSelectionStoreProviderBlock],
887
+ standalone: true
892
888
  }]
893
889
  }] });
894
890
  /**
@@ -913,28 +909,95 @@ function provideCalendarScheduleSelectionStoreIfParentIsUnavailable() {
913
909
  };
914
910
  }
915
911
 
912
+ function dbxScheduleSelectionCalendarDateDaysFormFields() {
913
+ const fields = dbxScheduleSelectionCalendarDateDaysFormDayFields();
914
+ return [flexLayoutWrapper(fields, { relative: true, size: 3 })];
915
+ }
916
+ function dbxScheduleSelectionCalendarDateDaysFormDayFields() {
917
+ return getDaysOfWeekNames(false).map((dayOfWeekName) => {
918
+ return toggleField({
919
+ key: dayOfWeekName.toLowerCase(),
920
+ label: dayOfWeekName
921
+ });
922
+ });
923
+ }
924
+
925
+ class DbxScheduleSelectionCalendarDateDaysFormComponent extends AbstractSyncFormlyFormDirective {
926
+ fields = dbxScheduleSelectionCalendarDateDaysFormFields();
927
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
928
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDateDaysFormComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-days-form", providers: dbxFormlyFormComponentProviders(), usesInheritance: true, ngImport: i0, template: "<dbx-formly></dbx-formly>", isInline: true, dependencies: [{ kind: "ngmodule", type: DbxFormlyFormComponentImportsModule }, { kind: "component", type: i1.DbxFormlyComponent, selector: "dbx-formly", exportAs: ["formly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
929
+ }
930
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysFormComponent, decorators: [{
931
+ type: Component,
932
+ args: [{
933
+ selector: 'dbx-schedule-selection-calendar-date-days-form',
934
+ template: DBX_FORMLY_FORM_COMPONENT_TEMPLATE,
935
+ providers: dbxFormlyFormComponentProviders(),
936
+ imports: [DbxFormlyFormComponentImportsModule],
937
+ changeDetection: ChangeDetectionStrategy.OnPush,
938
+ standalone: true
939
+ }]
940
+ }] });
941
+
942
+ class DbxScheduleSelectionCalendarDateDaysComponent {
943
+ dbxCalendarStore = inject(DbxCalendarStore);
944
+ dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
945
+ template$ = this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map(enabledDaysFromDateCellScheduleDayCodes), shareReplay(1));
946
+ isFormModified = (value) => {
947
+ const newSetValue = new Set(dateCellScheduleDayCodesFromEnabledDays(value));
948
+ return this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map((currentSet) => {
949
+ const result = !dateCellScheduleDayCodesAreSetsEquivalent(newSetValue, currentSet);
950
+ return result;
951
+ }));
952
+ };
953
+ updateScheduleDays = (value) => {
954
+ this.dbxCalendarScheduleSelectionStore.setScheduleDays(new Set(dateCellScheduleDayCodesFromEnabledDays(value)));
955
+ return of(true);
956
+ };
957
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
958
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDateDaysComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-days", ngImport: i0, template: `
959
+ <div class="dbx-schedule-selection-calendar-date-days" dbxAction dbxActionAutoTrigger dbxActionEnforceModified [useInstantTriggerPreset]="true" [dbxActionHandler]="updateScheduleDays">
960
+ <dbx-schedule-selection-calendar-date-days-form dbxActionForm [dbxFormSource]="template$" [dbxActionFormIsModified]="isFormModified"></dbx-schedule-selection-calendar-date-days-form>
961
+ </div>
962
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxScheduleSelectionCalendarDateDaysFormComponent, selector: "dbx-schedule-selection-calendar-date-days-form" }, { kind: "directive", type: DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "ngmodule", type: DbxActionModule }, { kind: "directive", type: i1$1.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i1$1.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i1$1.DbxActionEnforceModifiedDirective, selector: "[dbxActionEnforceModified]", inputs: ["dbxActionEnforceModified"] }, { kind: "directive", type: i1$1.DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger,[dbxActionAutoTrigger]", inputs: ["triggerDebounce", "triggerThrottle", "triggerErrorThrottle", "maxErrorsForThrottle", "triggerLimit", "dbxActionAutoTrigger", "useFastTriggerPreset", "useInstantTriggerPreset"] }, { kind: "directive", type: DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormDisabledOnWorking", "dbxActionFormIsValid", "dbxActionFormIsEqual", "dbxActionFormIsModified", "dbxActionFormMapValue"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
963
+ }
964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysComponent, decorators: [{
965
+ type: Component,
966
+ args: [{
967
+ selector: 'dbx-schedule-selection-calendar-date-days',
968
+ template: `
969
+ <div class="dbx-schedule-selection-calendar-date-days" dbxAction dbxActionAutoTrigger dbxActionEnforceModified [useInstantTriggerPreset]="true" [dbxActionHandler]="updateScheduleDays">
970
+ <dbx-schedule-selection-calendar-date-days-form dbxActionForm [dbxFormSource]="template$" [dbxActionFormIsModified]="isFormModified"></dbx-schedule-selection-calendar-date-days-form>
971
+ </div>
972
+ `,
973
+ imports: [DbxScheduleSelectionCalendarDateDaysFormComponent, DbxFormSourceDirective, DbxActionModule, DbxActionFormDirective],
974
+ changeDetection: ChangeDetectionStrategy.OnPush,
975
+ standalone: true
976
+ }]
977
+ }] });
978
+
916
979
  class DbxScheduleSelectionCalendarDateRangeComponent {
917
980
  dbxCalendarStore = inject(DbxCalendarStore);
918
981
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
919
982
  matFormFieldDefaultOptions = inject(MAT_FORM_FIELD_DEFAULT_OPTIONS, { optional: true });
920
- _required = new BehaviorSubject(false);
921
- required$ = this._required.asObservable();
983
+ picker = viewChild.required('picker');
984
+ required = input(false);
985
+ openPickerOnTextClick = input(true);
986
+ label = input('Enter a date range');
987
+ hint = input();
988
+ disabled = input();
989
+ showCustomize = input(false);
922
990
  timezone$ = this.dbxCalendarScheduleSelectionStore.effectiveOutputTimezone$;
923
- openPickerOnTextClick = true;
924
- picker;
925
- label = 'Enter a date range';
926
- hint;
927
- set disabled(disabled) {
991
+ _disabledEffect = effect(() => {
992
+ const disabled = this.disabled();
928
993
  if (disabled) {
929
994
  this.range.disable();
930
995
  }
931
996
  else {
932
997
  this.range.enable();
933
998
  }
934
- }
935
- showCustomize = false;
999
+ });
936
1000
  _pickerOpened = new BehaviorSubject(false);
937
- _requiredSub = new SubscriptionObject();
938
1001
  _syncSub = new SubscriptionObject();
939
1002
  _valueSub = new SubscriptionObject();
940
1003
  range = new FormGroup({
@@ -954,7 +1017,7 @@ class DbxScheduleSelectionCalendarDateRangeComponent {
954
1017
  minDate$ = this.dbxCalendarScheduleSelectionStore.minDate$;
955
1018
  maxDate$ = this.dbxCalendarScheduleSelectionStore.maxDate$;
956
1019
  timezoneReleventDate$ = this.dbxCalendarScheduleSelectionStore.currentDateRange$.pipe(map((currentDateRange) => {
957
- return currentDateRange ? currentDateRange.start ?? currentDateRange.end : undefined ?? new Date();
1020
+ return (currentDateRange ? (currentDateRange.start ?? currentDateRange.end) : undefined) ?? new Date();
958
1021
  }), shareReplay(1));
959
1022
  isCustomized$ = this.dbxCalendarScheduleSelectionStore.isCustomized$;
960
1023
  currentErrorMessage$ = this.range.statusChanges.pipe(filter((x) => x === 'INVALID' || x === 'VALID'), map((x) => {
@@ -985,8 +1048,6 @@ class DbxScheduleSelectionCalendarDateRangeComponent {
985
1048
  }
986
1049
  return currentErrorMessage;
987
1050
  }), shareReplay(1));
988
- pickerOpened$ = this._pickerOpened.asObservable();
989
- defaultDatePickerFilter = () => true;
990
1051
  datePickerFilter$ = combineLatest([this.dbxCalendarScheduleSelectionStore.isEnabledFilterDayFunction$, this.dbxCalendarScheduleSelectionStore.isInAllowedDaysOfWeekFunction$]).pipe(map(([isEnabled, isAllowedDayOfWeek]) => {
991
1052
  const fn = (date) => {
992
1053
  const result = date ? isAllowedDayOfWeek(date) && isEnabled(date) : true;
@@ -994,6 +1055,26 @@ class DbxScheduleSelectionCalendarDateRangeComponent {
994
1055
  };
995
1056
  return fn;
996
1057
  }), shareReplay(1));
1058
+ timezoneSignal = toSignal(this.timezone$);
1059
+ timezoneReleventDateSignal = toSignal(this.timezoneReleventDate$, { initialValue: new Date() });
1060
+ isCustomizedSignal = toSignal(this.isCustomized$, { initialValue: false });
1061
+ showCustomLabelSignal = computed(() => this.showCustomize() && this.isCustomizedSignal());
1062
+ currentErrorMessageSignal = toSignal(this.currentErrorMessage$);
1063
+ datePickerFilterSignal = toSignal(this.datePickerFilter$, { initialValue: (() => true) });
1064
+ _requiredUpdateValidatorsEffect = effect(() => {
1065
+ const validators = this.required()
1066
+ ? [
1067
+ (control) => {
1068
+ const range = control.value;
1069
+ if (!range || !range.start || !range.end) {
1070
+ return { required: true };
1071
+ }
1072
+ return null;
1073
+ }
1074
+ ]
1075
+ : [];
1076
+ this.range.setValidators(validators);
1077
+ });
997
1078
  ngOnInit() {
998
1079
  this._syncSub.subscription = this.dbxCalendarScheduleSelectionStore.currentInputRange$.subscribe((x) => {
999
1080
  this.range.setValue({
@@ -1017,38 +1098,17 @@ class DbxScheduleSelectionCalendarDateRangeComponent {
1017
1098
  this.dbxCalendarScheduleSelectionStore.setInputRange({ inputStart: x.start, inputEnd: x.end });
1018
1099
  }
1019
1100
  });
1020
- // add a required validator when needed
1021
- this._requiredSub.subscription = this._required.subscribe((x) => {
1022
- const validators = x
1023
- ? [
1024
- (control) => {
1025
- const range = control.value;
1026
- if (!range || !range.start || !range.end) {
1027
- return { required: true };
1028
- }
1029
- return null;
1030
- }
1031
- ]
1032
- : [];
1033
- this.range.setValidators(validators);
1034
- });
1035
1101
  }
1036
1102
  ngOnDestroy() {
1037
- this._required.complete();
1038
- this._pickerOpened.complete();
1039
- this._requiredSub.destroy();
1040
1103
  this._syncSub.destroy();
1041
1104
  this._valueSub.destroy();
1042
1105
  }
1043
- get required() {
1044
- return this._required.value;
1045
- }
1046
- set required(required) {
1047
- this._required.next(required);
1048
- }
1049
1106
  clickedDateRangeInput() {
1050
- if (this.openPickerOnTextClick) {
1051
- this.picker.open();
1107
+ if (this.openPickerOnTextClick()) {
1108
+ const picker = this.picker();
1109
+ if (picker) {
1110
+ picker.open();
1111
+ }
1052
1112
  }
1053
1113
  }
1054
1114
  pickerOpened() {
@@ -1057,106 +1117,26 @@ class DbxScheduleSelectionCalendarDateRangeComponent {
1057
1117
  pickerClosed() {
1058
1118
  this._pickerOpened.next(false);
1059
1119
  }
1060
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1061
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDateRangeComponent, selector: "dbx-schedule-selection-calendar-date-range", inputs: { openPickerOnTextClick: "openPickerOnTextClick", label: "label", hint: "hint", disabled: "disabled", showCustomize: "showCustomize", required: "required" }, viewQueries: [{ propertyName: "picker", first: true, predicate: ["picker"], descendants: true }], ngImport: i0, template: "<mat-form-field class=\"dbx-schedule-selection-calendar-date-range-field\">\n <mat-label *ngIf=\"label\">{{ label }}</mat-label>\n <div class=\"dbx-schedule-selection-calendar-date-range-field-content\">\n <!-- Primary Content -->\n <div class=\"dbx-flex-bar\">\n <div *ngIf=\"showCustomize && (isCustomized$ | async)\" class=\"date-range-field-customized\">\n <span class=\"dbx-accent-bg date-range-field-customized-text\">Custom</span>\n </div>\n <dbx-button-spacer></dbx-button-spacer>\n <mat-datepicker-toggle class=\"mat-datepicker-button-highlight\" matIconSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <dbx-button-spacer></dbx-button-spacer>\n <mat-date-range-input (click)=\"clickedDateRangeInput()\" [required]=\"required$ | async\" [dateFilter]=\"(datePickerFilter$ | async) ?? defaultDatePickerFilter\" [formGroup]=\"range\" [rangePicker]=\"picker\">\n <input [errorStateMatcher]=\"errorStateMatcher\" matStartDate formControlName=\"start\" placeholder=\"Start date\" />\n <input [errorStateMatcher]=\"errorStateMatcher\" matEndDate formControlName=\"end\" placeholder=\"End date\" />\n </mat-date-range-input>\n <span *ngIf=\"timezone$ | async\" class=\"dbx-schedule-selection-timezone dbx-faint dbx-nowrap dbx-icon-spacer\">{{ timezone$ | async | timezoneAbbreviation: (timezoneReleventDate$ | async) }}</span>\n <div *ngIf=\"showCustomize\">\n <dbx-button-spacer></dbx-button-spacer>\n <ng-content select=\"[customizeButton]\"></ng-content>\n </div>\n <mat-date-range-picker #picker (opened)=\"pickerOpened()\" (closed)=\"pickerClosed()\"></mat-date-range-picker>\n </div>\n <!-- Custom Content -->\n <div>\n <ng-content></ng-content>\n </div>\n </div>\n <mat-error *ngIf=\"currentErrorMessage$ | async\">{{ currentErrorMessage$ | async }}</mat-error>\n <mat-hint>{{ hint }}</mat-hint>\n</mat-form-field>\n", dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i1$1.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: i5.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i5.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i5.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i5.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i5.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.TimezoneAbbreviationPipe, name: "timezoneAbbreviation" }] });
1120
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1121
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDateRangeComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-range", inputs: { required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, openPickerOnTextClick: { classPropertyName: "openPickerOnTextClick", publicName: "openPickerOnTextClick", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, showCustomize: { classPropertyName: "showCustomize", publicName: "showCustomize", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "picker", first: true, predicate: ["picker"], descendants: true, isSignal: true }], ngImport: i0, template: "<mat-form-field class=\"dbx-schedule-selection-calendar-date-range-field\">\n @if (label()) {\n <mat-label>{{ label() }}</mat-label>\n }\n <div class=\"dbx-schedule-selection-calendar-date-range-field-content\">\n <!-- Primary Content -->\n <div class=\"dbx-flex-bar\">\n @if (showCustomLabelSignal()) {\n <div class=\"date-range-field-customized\">\n <span class=\"dbx-accent-bg date-range-field-customized-text\">Custom</span>\n </div>\n }\n <dbx-button-spacer></dbx-button-spacer>\n <mat-datepicker-toggle class=\"mat-datepicker-button-highlight\" matIconSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <dbx-button-spacer></dbx-button-spacer>\n <mat-date-range-input (click)=\"clickedDateRangeInput()\" [required]=\"required()\" [dateFilter]=\"datePickerFilterSignal()\" [formGroup]=\"range\" [rangePicker]=\"picker\">\n <input [errorStateMatcher]=\"errorStateMatcher\" matStartDate formControlName=\"start\" placeholder=\"Start date\" />\n <input [errorStateMatcher]=\"errorStateMatcher\" matEndDate formControlName=\"end\" placeholder=\"End date\" />\n </mat-date-range-input>\n @if (timezoneSignal()) {\n <span class=\"dbx-schedule-selection-timezone dbx-faint dbx-nowrap dbx-icon-spacer\">{{ timezoneSignal() | timezoneAbbreviation: timezoneReleventDateSignal() }}</span>\n }\n @if (showCustomize()) {\n <div>\n <dbx-button-spacer></dbx-button-spacer>\n <ng-content select=\"[customizeButton]\"></ng-content>\n </div>\n }\n <mat-date-range-picker #picker (opened)=\"pickerOpened()\" (closed)=\"pickerClosed()\"></mat-date-range-picker>\n </div>\n <!-- Custom Content -->\n <div>\n <ng-content></ng-content>\n </div>\n </div>\n @if (currentErrorMessageSignal()) {\n <mat-error>{{ currentErrorMessageSignal() }}</mat-error>\n }\n <mat-hint>{{ hint() }}</mat-hint>\n</mat-form-field>\n", dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i1$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i1$2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i3.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i3.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i3.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i3.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "pipe", type: TimezoneAbbreviationPipe, name: "timezoneAbbreviation" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1062
1122
  }
1063
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateRangeComponent, decorators: [{
1123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateRangeComponent, decorators: [{
1064
1124
  type: Component,
1065
- args: [{ selector: 'dbx-schedule-selection-calendar-date-range', template: "<mat-form-field class=\"dbx-schedule-selection-calendar-date-range-field\">\n <mat-label *ngIf=\"label\">{{ label }}</mat-label>\n <div class=\"dbx-schedule-selection-calendar-date-range-field-content\">\n <!-- Primary Content -->\n <div class=\"dbx-flex-bar\">\n <div *ngIf=\"showCustomize && (isCustomized$ | async)\" class=\"date-range-field-customized\">\n <span class=\"dbx-accent-bg date-range-field-customized-text\">Custom</span>\n </div>\n <dbx-button-spacer></dbx-button-spacer>\n <mat-datepicker-toggle class=\"mat-datepicker-button-highlight\" matIconSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <dbx-button-spacer></dbx-button-spacer>\n <mat-date-range-input (click)=\"clickedDateRangeInput()\" [required]=\"required$ | async\" [dateFilter]=\"(datePickerFilter$ | async) ?? defaultDatePickerFilter\" [formGroup]=\"range\" [rangePicker]=\"picker\">\n <input [errorStateMatcher]=\"errorStateMatcher\" matStartDate formControlName=\"start\" placeholder=\"Start date\" />\n <input [errorStateMatcher]=\"errorStateMatcher\" matEndDate formControlName=\"end\" placeholder=\"End date\" />\n </mat-date-range-input>\n <span *ngIf=\"timezone$ | async\" class=\"dbx-schedule-selection-timezone dbx-faint dbx-nowrap dbx-icon-spacer\">{{ timezone$ | async | timezoneAbbreviation: (timezoneReleventDate$ | async) }}</span>\n <div *ngIf=\"showCustomize\">\n <dbx-button-spacer></dbx-button-spacer>\n <ng-content select=\"[customizeButton]\"></ng-content>\n </div>\n <mat-date-range-picker #picker (opened)=\"pickerOpened()\" (closed)=\"pickerClosed()\"></mat-date-range-picker>\n </div>\n <!-- Custom Content -->\n <div>\n <ng-content></ng-content>\n </div>\n </div>\n <mat-error *ngIf=\"currentErrorMessage$ | async\">{{ currentErrorMessage$ | async }}</mat-error>\n <mat-hint>{{ hint }}</mat-hint>\n</mat-form-field>\n" }]
1066
- }], propDecorators: { openPickerOnTextClick: [{
1067
- type: Input
1068
- }], picker: [{
1069
- type: ViewChild,
1070
- args: ['picker']
1071
- }], label: [{
1072
- type: Input
1073
- }], hint: [{
1074
- type: Input
1075
- }], disabled: [{
1076
- type: Input
1077
- }], showCustomize: [{
1078
- type: Input
1079
- }], required: [{
1080
- type: Input
1081
- }] } });
1082
-
1083
- function dbxScheduleSelectionCalendarDateDaysFormFields() {
1084
- const fields = dbxScheduleSelectionCalendarDateDaysFormDayFields();
1085
- return [flexLayoutWrapper(fields, { relative: true, size: 3 })];
1086
- }
1087
- function dbxScheduleSelectionCalendarDateDaysFormDayFields() {
1088
- return getDaysOfWeekNames(false).map((dayOfWeekName) => {
1089
- return toggleField({
1090
- key: dayOfWeekName.toLowerCase(),
1091
- label: dayOfWeekName
1092
- });
1093
- });
1094
- }
1095
-
1096
- class DbxScheduleSelectionCalendarDateDaysFormComponent extends AbstractSyncFormlyFormDirective {
1097
- fields = dbxScheduleSelectionCalendarDateDaysFormFields();
1098
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1099
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDateDaysFormComponent, selector: "dbx-schedule-selection-calendar-date-days-form", providers: [provideFormlyContext()], usesInheritance: true, ngImport: i0, template: `
1100
- <dbx-formly></dbx-formly>
1101
- `, isInline: true, dependencies: [{ kind: "component", type: i2$1.DbxFormlyFormComponent, selector: "dbx-formly", exportAs: ["formly"] }] });
1102
- }
1103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysFormComponent, decorators: [{
1104
- type: Component,
1105
- args: [{
1106
- template: `
1107
- <dbx-formly></dbx-formly>
1108
- `,
1109
- selector: 'dbx-schedule-selection-calendar-date-days-form',
1110
- providers: [provideFormlyContext()]
1111
- }]
1112
- }] });
1113
-
1114
- class DbxScheduleSelectionCalendarDateDaysComponent {
1115
- dbxCalendarStore = inject(DbxCalendarStore);
1116
- dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
1117
- template$ = this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map(enabledDaysFromDateCellScheduleDayCodes), shareReplay(1));
1118
- isFormModified = (value) => {
1119
- const newSetValue = new Set(dateCellScheduleDayCodesFromEnabledDays(value));
1120
- return this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map((currentSet) => {
1121
- const result = !dateCellScheduleDayCodesAreSetsEquivalent(newSetValue, currentSet);
1122
- return result;
1123
- }));
1124
- };
1125
- updateScheduleDays = (value) => {
1126
- this.dbxCalendarScheduleSelectionStore.setScheduleDays(new Set(dateCellScheduleDayCodesFromEnabledDays(value)));
1127
- return of(true);
1128
- };
1129
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1130
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDateDaysComponent, selector: "dbx-schedule-selection-calendar-date-days", ngImport: i0, template: `
1131
- <div class="dbx-schedule-selection-calendar-date-days" dbxAction dbxActionAutoTrigger dbxActionEnforceModified [instantTrigger]="true" [dbxActionHandler]="updateScheduleDays">
1132
- <dbx-schedule-selection-calendar-date-days-form dbxActionForm [dbxFormSource]="template$" [dbxActionFormModified]="isFormModified"></dbx-schedule-selection-calendar-date-days-form>
1133
- </div>
1134
- `, isInline: true, dependencies: [{ kind: "directive", type: i1$2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i1$2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i1$2.DbxActionEnforceModifiedDirective, selector: "[dbxActionEnforceModified]", inputs: ["dbxActionEnforceModified"] }, { kind: "directive", type: i1$2.DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger, [dbxActionAutoTrigger]", inputs: ["dbxActionAutoTrigger", "triggerDebounce", "triggerThrottle", "triggerErrorThrottle", "fastTrigger", "instantTrigger", "triggerLimit"] }, { kind: "directive", type: i2$1.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "dbxActionFormMapValue", "formDisabledOnWorking"] }, { kind: "directive", type: i2$1.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateDaysFormComponent, selector: "dbx-schedule-selection-calendar-date-days-form" }] });
1135
- }
1136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDaysComponent, decorators: [{
1137
- type: Component,
1138
- args: [{
1139
- selector: 'dbx-schedule-selection-calendar-date-days',
1140
- template: `
1141
- <div class="dbx-schedule-selection-calendar-date-days" dbxAction dbxActionAutoTrigger dbxActionEnforceModified [instantTrigger]="true" [dbxActionHandler]="updateScheduleDays">
1142
- <dbx-schedule-selection-calendar-date-days-form dbxActionForm [dbxFormSource]="template$" [dbxActionFormModified]="isFormModified"></dbx-schedule-selection-calendar-date-days-form>
1143
- </div>
1144
- `
1145
- }]
1125
+ args: [{ selector: 'dbx-schedule-selection-calendar-date-range', imports: [MatFormFieldModule, FormsModule, ReactiveFormsModule, DbxButtonSpacerDirective, MatDatepickerModule, TimezoneAbbreviationPipe], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<mat-form-field class=\"dbx-schedule-selection-calendar-date-range-field\">\n @if (label()) {\n <mat-label>{{ label() }}</mat-label>\n }\n <div class=\"dbx-schedule-selection-calendar-date-range-field-content\">\n <!-- Primary Content -->\n <div class=\"dbx-flex-bar\">\n @if (showCustomLabelSignal()) {\n <div class=\"date-range-field-customized\">\n <span class=\"dbx-accent-bg date-range-field-customized-text\">Custom</span>\n </div>\n }\n <dbx-button-spacer></dbx-button-spacer>\n <mat-datepicker-toggle class=\"mat-datepicker-button-highlight\" matIconSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <dbx-button-spacer></dbx-button-spacer>\n <mat-date-range-input (click)=\"clickedDateRangeInput()\" [required]=\"required()\" [dateFilter]=\"datePickerFilterSignal()\" [formGroup]=\"range\" [rangePicker]=\"picker\">\n <input [errorStateMatcher]=\"errorStateMatcher\" matStartDate formControlName=\"start\" placeholder=\"Start date\" />\n <input [errorStateMatcher]=\"errorStateMatcher\" matEndDate formControlName=\"end\" placeholder=\"End date\" />\n </mat-date-range-input>\n @if (timezoneSignal()) {\n <span class=\"dbx-schedule-selection-timezone dbx-faint dbx-nowrap dbx-icon-spacer\">{{ timezoneSignal() | timezoneAbbreviation: timezoneReleventDateSignal() }}</span>\n }\n @if (showCustomize()) {\n <div>\n <dbx-button-spacer></dbx-button-spacer>\n <ng-content select=\"[customizeButton]\"></ng-content>\n </div>\n }\n <mat-date-range-picker #picker (opened)=\"pickerOpened()\" (closed)=\"pickerClosed()\"></mat-date-range-picker>\n </div>\n <!-- Custom Content -->\n <div>\n <ng-content></ng-content>\n </div>\n </div>\n @if (currentErrorMessageSignal()) {\n <mat-error>{{ currentErrorMessageSignal() }}</mat-error>\n }\n <mat-hint>{{ hint() }}</mat-hint>\n</mat-form-field>\n" }]
1146
1126
  }] });
1147
1127
 
1148
1128
  class DbxScheduleSelectionCalendarDatePopoverContentComponent {
1149
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1150
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDatePopoverContentComponent, selector: "dbx-schedule-selection-calendar-date-popover-content", ngImport: i0, template: `
1129
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1130
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDatePopoverContentComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-popover-content", ngImport: i0, template: `
1151
1131
  <dbx-content-container padding="min" topPadding="normal">
1152
1132
  <dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="false"></dbx-schedule-selection-calendar-date-range>
1153
1133
  <dbx-label-block header="Allowed Days Of Week">
1154
1134
  <dbx-schedule-selection-calendar-date-days></dbx-schedule-selection-calendar-date-days>
1155
1135
  </dbx-label-block>
1156
1136
  </dbx-content-container>
1157
- `, isInline: true, dependencies: [{ kind: "directive", type: i1$1.DbxContentContainerDirective, selector: "dbx-content-container,[dbxContentContainer],.dbx-content-container", inputs: ["grow", "padding", "topPadding"] }, { kind: "component", type: i1$1.DbxLabelBlockComponent, selector: "dbx-label-block", inputs: ["header"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateDaysComponent, selector: "dbx-schedule-selection-calendar-date-days" }, { kind: "component", type: DbxScheduleSelectionCalendarDateRangeComponent, selector: "dbx-schedule-selection-calendar-date-range", inputs: ["openPickerOnTextClick", "label", "hint", "disabled", "showCustomize", "required"] }] });
1137
+ `, isInline: true, dependencies: [{ kind: "directive", type: DbxContentContainerDirective, selector: "dbx-content-container,[dbxContentContainer],.dbx-content-container", inputs: ["grow", "padding", "topPadding"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateRangeComponent, selector: "dbx-schedule-selection-calendar-date-range", inputs: ["required", "openPickerOnTextClick", "label", "hint", "disabled", "showCustomize"] }, { kind: "component", type: DbxLabelBlockComponent, selector: "dbx-label-block", inputs: ["header"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateDaysComponent, selector: "dbx-schedule-selection-calendar-date-days" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1158
1138
  }
1159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverContentComponent, decorators: [{
1139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverContentComponent, decorators: [{
1160
1140
  type: Component,
1161
1141
  args: [{
1162
1142
  selector: 'dbx-schedule-selection-calendar-date-popover-content',
@@ -1167,7 +1147,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1167
1147
  <dbx-schedule-selection-calendar-date-days></dbx-schedule-selection-calendar-date-days>
1168
1148
  </dbx-label-block>
1169
1149
  </dbx-content-container>
1170
- `
1150
+ `,
1151
+ imports: [DbxContentContainerDirective, DbxScheduleSelectionCalendarDateRangeComponent, DbxLabelBlockComponent, DbxScheduleSelectionCalendarDateDaysComponent],
1152
+ changeDetection: ChangeDetectionStrategy.OnPush,
1153
+ standalone: true
1171
1154
  }]
1172
1155
  }] });
1173
1156
 
@@ -1181,16 +1164,16 @@ class DbxScheduleSelectionCalendarDatePopoverComponent extends AbstractPopoverDi
1181
1164
  injector
1182
1165
  });
1183
1166
  }
1184
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1185
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDatePopoverComponent, selector: "dbx-schedule-selection-calendar-date-popover", usesInheritance: true, ngImport: i0, template: `
1167
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1168
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDatePopoverComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-popover", usesInheritance: true, ngImport: i0, template: `
1186
1169
  <dbx-popover-content>
1187
1170
  <dbx-popover-scroll-content>
1188
1171
  <dbx-schedule-selection-calendar-date-popover-content></dbx-schedule-selection-calendar-date-popover-content>
1189
1172
  </dbx-popover-scroll-content>
1190
1173
  </dbx-popover-content>
1191
- `, isInline: true, dependencies: [{ kind: "component", type: i1$1.DbxPopoverContentComponent, selector: "dbx-popover-content" }, { kind: "component", type: i1$1.DbxPopoverScrollContentComponent, selector: "dbx-popover-scroll-content" }, { kind: "component", type: DbxScheduleSelectionCalendarDatePopoverContentComponent, selector: "dbx-schedule-selection-calendar-date-popover-content" }] });
1174
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: DbxPopoverInteractionModule }, { kind: "component", type: i1$3.DbxPopoverContentComponent, selector: "dbx-popover-content" }, { kind: "directive", type: i1$3.DbxPopoverScrollContentDirective, selector: "dbx-popover-scroll-content,[dbxPopoverScrollContent],.dbx-popover-scroll-content" }, { kind: "component", type: DbxScheduleSelectionCalendarDatePopoverContentComponent, selector: "dbx-schedule-selection-calendar-date-popover-content" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1192
1175
  }
1193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverComponent, decorators: [{
1176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverComponent, decorators: [{
1194
1177
  type: Component,
1195
1178
  args: [{
1196
1179
  selector: 'dbx-schedule-selection-calendar-date-popover',
@@ -1200,7 +1183,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1200
1183
  <dbx-schedule-selection-calendar-date-popover-content></dbx-schedule-selection-calendar-date-popover-content>
1201
1184
  </dbx-popover-scroll-content>
1202
1185
  </dbx-popover-content>
1203
- `
1186
+ `,
1187
+ imports: [DbxPopoverInteractionModule, DbxScheduleSelectionCalendarDatePopoverContentComponent],
1188
+ changeDetection: ChangeDetectionStrategy.OnPush,
1189
+ standalone: true
1204
1190
  }]
1205
1191
  }] });
1206
1192
 
@@ -1208,7 +1194,7 @@ class DbxScheduleSelectionCalendarDatePopoverButtonComponent {
1208
1194
  injector = inject(Injector);
1209
1195
  popoverService = inject(DbxPopoverService);
1210
1196
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
1211
- buttonPopoverOrigin;
1197
+ buttonPopoverOrigin = viewChild.required('buttonPopoverOrigin', { read: ElementRef });
1212
1198
  disabled$ = this.dbxCalendarScheduleSelectionStore.isViewReadonly$;
1213
1199
  buttonText$ = this.dbxCalendarScheduleSelectionStore.currentDateRange$.pipe(map((x) => {
1214
1200
  if (x?.start && x.end) {
@@ -1220,126 +1206,129 @@ class DbxScheduleSelectionCalendarDatePopoverButtonComponent {
1220
1206
  return 'Pick a Date Range';
1221
1207
  }
1222
1208
  }), shareReplay(1));
1209
+ disabledSignal = toSignal(this.disabled$, { initialValue: false });
1210
+ buttonTextSignal = toSignal(this.buttonText$, { initialValue: 'Pick a Date Range' });
1223
1211
  openPopover() {
1224
- DbxScheduleSelectionCalendarDatePopoverComponent.openPopover(this.popoverService, { origin: this.buttonPopoverOrigin, injector: this.injector });
1212
+ const buttonElement = this.buttonPopoverOrigin();
1213
+ if (buttonElement) {
1214
+ DbxScheduleSelectionCalendarDatePopoverComponent.openPopover(this.popoverService, { origin: buttonElement, injector: this.injector });
1215
+ }
1225
1216
  }
1226
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1227
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDatePopoverButtonComponent, selector: "dbx-schedule-selection-calendar-date-popover-button", viewQueries: [{ propertyName: "buttonPopoverOrigin", first: true, predicate: ["buttonPopoverOrigin"], descendants: true, read: ElementRef }], ngImport: i0, template: `
1228
- <dbx-button #buttonPopoverOrigin icon="date_range" [disabled]="disabled$ | async" [raised]="true" color="accent" [text]="buttonText$ | async" (buttonClick)="openPopover()"></dbx-button>
1229
- `, isInline: true, dependencies: [{ kind: "component", type: i1$1.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "basic", "raised", "stroked", "flat", "iconOnly", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
1217
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1218
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDatePopoverButtonComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-popover-button", viewQueries: [{ propertyName: "buttonPopoverOrigin", first: true, predicate: ["buttonPopoverOrigin"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
1219
+ <dbx-button #buttonPopoverOrigin icon="date_range" [disabled]="disabledSignal()" [raised]="true" color="accent" [text]="buttonTextSignal()" (buttonClick)="openPopover()"></dbx-button>
1220
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["type", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "raised", "stroked", "flat", "iconOnly", "fab"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1230
1221
  }
1231
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverButtonComponent, decorators: [{
1222
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDatePopoverButtonComponent, decorators: [{
1232
1223
  type: Component,
1233
1224
  args: [{
1234
1225
  selector: 'dbx-schedule-selection-calendar-date-popover-button',
1235
1226
  template: `
1236
- <dbx-button #buttonPopoverOrigin icon="date_range" [disabled]="disabled$ | async" [raised]="true" color="accent" [text]="buttonText$ | async" (buttonClick)="openPopover()"></dbx-button>
1237
- `
1227
+ <dbx-button #buttonPopoverOrigin icon="date_range" [disabled]="disabledSignal()" [raised]="true" color="accent" [text]="buttonTextSignal()" (buttonClick)="openPopover()"></dbx-button>
1228
+ `,
1229
+ imports: [DbxButtonComponent],
1230
+ changeDetection: ChangeDetectionStrategy.OnPush,
1231
+ standalone: true
1238
1232
  }]
1239
- }], propDecorators: { buttonPopoverOrigin: [{
1240
- type: ViewChild,
1241
- args: ['buttonPopoverOrigin', { read: ElementRef }]
1242
- }] } });
1233
+ }] });
1243
1234
 
1244
1235
  class DbxScheduleSelectionCalendarCellComponent {
1245
1236
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
1246
- content = {};
1247
- get icon() {
1248
- return this.content.icon;
1249
- }
1250
- get text() {
1251
- return this.content.text;
1252
- }
1253
- set day(day) {
1254
- this.dbxCalendarScheduleSelectionStore.cellContentFactory$.pipe(first()).subscribe((fn) => {
1255
- this.content = fn(day);
1256
- });
1257
- }
1258
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1259
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarCellComponent, selector: "dbx-schedule-selection-calendar-cell", inputs: { day: "day" }, host: { classAttribute: "dbx-schedule-selection-calendar-cell" }, ngImport: i0, template: `
1260
- <mat-icon *ngIf="icon">{{ icon }}</mat-icon>
1261
- <span>{{ text }}</span>
1262
- `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1237
+ day = input.required();
1238
+ day$ = toObservable(this.day);
1239
+ cellContent$ = this.dbxCalendarScheduleSelectionStore.cellContentFactory$.pipe(switchMap((fn) => this.day$.pipe(map((x) => fn(x)))), shareReplay(1));
1240
+ contentSignal = toSignal(this.cellContent$, { initialValue: {} });
1241
+ iconSignal = computed(() => this.contentSignal().icon);
1242
+ textSignal = computed(() => this.contentSignal().text);
1243
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1244
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarCellComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-cell", inputs: { day: { classPropertyName: "day", publicName: "day", isSignal: true, isRequired: true, transformFunction: null } }, host: { classAttribute: "dbx-schedule-selection-calendar-cell" }, ngImport: i0, template: `
1245
+ @if (iconSignal()) {
1246
+ <mat-icon>{{ iconSignal() }}</mat-icon>
1247
+ }
1248
+ <span>{{ textSignal() }}</span>
1249
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1263
1250
  }
1264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarCellComponent, decorators: [{
1251
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarCellComponent, decorators: [{
1265
1252
  type: Component,
1266
1253
  args: [{
1267
1254
  selector: 'dbx-schedule-selection-calendar-cell',
1268
1255
  template: `
1269
- <mat-icon *ngIf="icon">{{ icon }}</mat-icon>
1270
- <span>{{ text }}</span>
1256
+ @if (iconSignal()) {
1257
+ <mat-icon>{{ iconSignal() }}</mat-icon>
1258
+ }
1259
+ <span>{{ textSignal() }}</span>
1271
1260
  `,
1272
1261
  host: {
1273
1262
  class: 'dbx-schedule-selection-calendar-cell'
1274
1263
  },
1275
- changeDetection: ChangeDetectionStrategy.OnPush
1264
+ imports: [MatIconModule],
1265
+ changeDetection: ChangeDetectionStrategy.OnPush,
1266
+ standalone: true
1276
1267
  }]
1277
- }], propDecorators: { day: [{
1278
- type: Input
1279
- }] } });
1268
+ }] });
1280
1269
 
1281
1270
  /**
1282
1271
  * Toggle button for selecting and clearing the current selection.
1283
1272
  */
1284
1273
  class DbxScheduleSelectionCalendarSelectionToggleButtonComponent {
1285
- popoverService = inject(DbxPopoverService);
1274
+ disabled = input();
1286
1275
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
1287
- injector = inject(Injector);
1288
- _disabled = new BehaviorSubject(false);
1289
- disableButton$ = this._disabled.pipe(switchMap((disabled) => {
1276
+ selectionModeSignal = toSignal(this.dbxCalendarScheduleSelectionStore.selectionMode$, { initialValue: 'multiple' });
1277
+ nextToggleSelectionSignal = toSignal(this.dbxCalendarScheduleSelectionStore.nextToggleSelection$, { initialValue: 'none' });
1278
+ disableButtonSignal = computed(() => {
1279
+ const disabled = this.disabled();
1280
+ const nextToggleSelection = this.nextToggleSelectionSignal();
1281
+ let disableButton = false;
1290
1282
  if (disabled) {
1291
- return of(true);
1283
+ disableButton = true;
1292
1284
  }
1293
1285
  else {
1294
- return this.dbxCalendarScheduleSelectionStore.nextToggleSelection$.pipe(map((x) => !x));
1286
+ disableButton = !nextToggleSelection;
1295
1287
  }
1296
- }), distinctUntilChanged(), shareReplay(1));
1297
- buttonDisplay$ = this.dbxCalendarScheduleSelectionStore.selectionMode$.pipe(switchMap((selectionMode) => {
1298
- return this.dbxCalendarScheduleSelectionStore.nextToggleSelection$.pipe(map((x) => {
1299
- let buttonDisplay;
1300
- switch (x) {
1301
- case 'all':
1302
- buttonDisplay = {
1303
- icon: 'select_all',
1304
- text: 'Select All'
1305
- };
1306
- break;
1307
- default:
1308
- case 'none':
1309
- buttonDisplay = {
1310
- icon: 'clear',
1311
- text: selectionMode === 'multiple' ? 'Clear All' : 'Clear'
1312
- };
1313
- break;
1314
- }
1315
- return buttonDisplay;
1316
- }));
1317
- }), shareReplay(1));
1318
- ngOnDestroy() {
1319
- this._disabled.complete();
1320
- }
1288
+ return disableButton;
1289
+ });
1290
+ buttonDisplaySignal = computed(() => {
1291
+ const selectionMode = this.selectionModeSignal();
1292
+ const nextToggleSelection = this.nextToggleSelectionSignal();
1293
+ let buttonDisplay;
1294
+ switch (nextToggleSelection) {
1295
+ case 'all':
1296
+ buttonDisplay = {
1297
+ icon: 'select_all',
1298
+ text: 'Select All'
1299
+ };
1300
+ break;
1301
+ default:
1302
+ case 'none':
1303
+ buttonDisplay = {
1304
+ icon: 'clear',
1305
+ text: selectionMode === 'multiple' ? 'Clear All' : 'Clear'
1306
+ };
1307
+ break;
1308
+ }
1309
+ console.log({ buttonDisplay });
1310
+ return buttonDisplay;
1311
+ });
1321
1312
  toggleSelection() {
1322
1313
  this.dbxCalendarScheduleSelectionStore.toggleSelection();
1323
1314
  }
1324
- set disabled(disabled) {
1325
- this._disabled.next(disabled);
1326
- }
1327
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1328
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, selector: "dbx-schedule-selection-calendar-selection-toggle-button", inputs: { disabled: "disabled" }, ngImport: i0, template: `
1329
- <dbx-button [disabled]="disableButton$ | async" [buttonDisplay]="buttonDisplay$ | async" [raised]="true" (buttonClick)="toggleSelection()"></dbx-button>
1330
- `, isInline: true, dependencies: [{ kind: "component", type: i1$1.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "basic", "raised", "stroked", "flat", "iconOnly", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
1315
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1316
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-selection-toggle-button", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1317
+ <dbx-button [disabled]="disableButtonSignal()" [buttonDisplay]="buttonDisplaySignal()" [raised]="true" (buttonClick)="toggleSelection()"></dbx-button>
1318
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["type", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "raised", "stroked", "flat", "iconOnly", "fab"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1331
1319
  }
1332
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, decorators: [{
1320
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, decorators: [{
1333
1321
  type: Component,
1334
1322
  args: [{
1335
1323
  selector: 'dbx-schedule-selection-calendar-selection-toggle-button',
1336
1324
  template: `
1337
- <dbx-button [disabled]="disableButton$ | async" [buttonDisplay]="buttonDisplay$ | async" [raised]="true" (buttonClick)="toggleSelection()"></dbx-button>
1338
- `
1325
+ <dbx-button [disabled]="disableButtonSignal()" [buttonDisplay]="buttonDisplaySignal()" [raised]="true" (buttonClick)="toggleSelection()"></dbx-button>
1326
+ `,
1327
+ imports: [DbxButtonComponent],
1328
+ changeDetection: ChangeDetectionStrategy.OnPush,
1329
+ standalone: true
1339
1330
  }]
1340
- }], propDecorators: { disabled: [{
1341
- type: Input
1342
- }] } });
1331
+ }] });
1343
1332
 
1344
1333
  function dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(inputModifyFn) {
1345
1334
  const modifyFn = inputModifyFn || (() => { });
@@ -1384,14 +1373,15 @@ function dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(inputModifyFn)
1384
1373
  class DbxScheduleSelectionCalendarComponent {
1385
1374
  calendarStore = inject((DbxCalendarStore));
1386
1375
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
1387
- _inputReadonly = new BehaviorSubject(undefined);
1388
- _config = new BehaviorSubject({});
1376
+ clickEvent = output();
1377
+ config = input();
1378
+ readonly = input(false);
1389
1379
  _centerRangeSub = new SubscriptionObject();
1390
- config$ = this._config.pipe(distinctUntilChanged(), shareReplay(1));
1391
- readonly$ = this.config$.pipe(switchMap((x) => (x.readonly != null ? asObservableFromGetter(x.readonly) : of(undefined))), combineLatestWith(this._inputReadonly), map(([configReadonly, inputReadonly]) => {
1392
- return (configReadonly ?? false) || (inputReadonly ?? false);
1380
+ config$ = toObservable(this.config).pipe(distinctUntilChanged(), shareReplay(1));
1381
+ readonly$ = this.config$.pipe(switchMap((x) => (x?.readonly != null ? asObservableFromGetter(x.readonly) : of(undefined))), combineLatestWith(toObservable(this.readonly)), map(([configReadonly, inputReadonly]) => {
1382
+ return configReadonly || inputReadonly || false;
1393
1383
  }), shareReplay(1));
1394
- showButtonsOnReadonly$ = this.config$.pipe(map((x) => x.showButtonsOnReadonly ?? false), distinctUntilChanged(), shareReplay(1));
1384
+ showButtonsOnReadonly$ = this.config$.pipe(map((x) => x?.showButtonsOnReadonly ?? false), distinctUntilChanged(), shareReplay(1));
1395
1385
  showButtons$ = this.showButtonsOnReadonly$.pipe(switchMap((x) => {
1396
1386
  if (x) {
1397
1387
  return of(true);
@@ -1400,24 +1390,29 @@ class DbxScheduleSelectionCalendarComponent {
1400
1390
  return this.readonly$.pipe(map((x) => !x));
1401
1391
  }
1402
1392
  }), distinctUntilChanged(), shareReplay(1));
1403
- showClearSelectionButton$ = this.config$.pipe(map((config) => config.showClearSelectionButton ?? true), combineLatestWith(this.showButtons$), map((x) => reduceBooleansWithAnd(x)), distinctUntilChanged(), shareReplay(1));
1404
- datePopoverButtonInjectionConfig$ = this.config$.pipe(map((x) => x.buttonInjectionConfig), switchMapDbxInjectionComponentConfig(DbxScheduleSelectionCalendarDatePopoverButtonComponent), combineLatestWith(this.showButtons$), map(([config, showButton]) => (showButton ? config : undefined)), shareReplay(1));
1405
- clickEvent = new EventEmitter();
1393
+ showClearSelectionButton$ = this.config$.pipe(map((config) => config?.showClearSelectionButton ?? true), combineLatestWith(this.showButtons$), map((x) => reduceBooleansWithAnd(x)), distinctUntilChanged(), shareReplay(1));
1394
+ datePopoverButtonInjectionConfig$ = this.config$.pipe(map((x) => x?.buttonInjectionConfig), switchMapDbxInjectionComponentConfig(DbxScheduleSelectionCalendarDatePopoverButtonComponent), combineLatestWith(this.showButtons$), map(([config, showButton]) => (showButton ? config : undefined)), shareReplay(1));
1406
1395
  // refresh any time the selected day function updates
1407
1396
  state$ = this.dbxCalendarScheduleSelectionStore.state$;
1408
1397
  beforeMonthViewRender$ = this.config$.pipe(switchMap((x) => {
1409
1398
  let factory;
1410
- if (x.beforeMonthViewRenderFunctionFactory) {
1399
+ if (x?.beforeMonthViewRenderFunctionFactory) {
1411
1400
  factory = asObservable(x.beforeMonthViewRenderFunctionFactory);
1412
1401
  }
1413
1402
  else {
1414
- factory = asObservable(x.customizeDay).pipe(map((x) => dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(x)));
1403
+ factory = asObservable(x?.customizeDay).pipe(map((x) => dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(x)));
1415
1404
  }
1416
1405
  return factory.pipe(map((x) => x(this.state$)));
1417
1406
  }), shareReplay(1));
1418
1407
  refresh$ = combineLatest([this.state$, this.beforeMonthViewRender$]).pipe(throttleTime(20, undefined, { leading: true, trailing: true }), map(() => undefined));
1419
1408
  events$ = this.calendarStore.visibleEvents$.pipe(map(prepareAndSortCalendarEvents), shareReplay(1));
1420
1409
  viewDate$ = this.calendarStore.date$;
1410
+ beforeMonthViewRenderSignal = toSignal(this.beforeMonthViewRender$);
1411
+ readonlySignal = toSignal(this.readonly$, { initialValue: false });
1412
+ showClearSelectionButtonSignal = toSignal(this.showClearSelectionButton$);
1413
+ datePopoverButtonInjectionConfigSignal = toSignal(this.datePopoverButtonInjectionConfig$);
1414
+ eventsSignal = toSignal(this.events$, { initialValue: [] });
1415
+ viewDateSignal = toSignal(this.viewDate$, { initialValue: new Date() });
1421
1416
  ngOnInit() {
1422
1417
  this.dbxCalendarScheduleSelectionStore.setViewReadonlyState(this.readonly$); // sync the readonly state
1423
1418
  this.calendarStore.setNavigationRangeLimit(this.dbxCalendarScheduleSelectionStore.minMaxDateRange$); // set navigation limit to the min/max allowed dates.
@@ -1451,48 +1446,26 @@ class DbxScheduleSelectionCalendarComponent {
1451
1446
  });
1452
1447
  }
1453
1448
  ngOnDestroy() {
1454
- this.clickEvent.complete();
1455
- this._inputReadonly.complete();
1456
- this._config.complete();
1457
1449
  this._centerRangeSub.destroy();
1458
1450
  }
1459
- get config() {
1460
- return this._config.value;
1461
- }
1462
- set config(config) {
1463
- this._config.next(config ?? {});
1464
- }
1465
- set readonly(readonly) {
1466
- this._inputReadonly.next(readonly);
1467
- }
1468
1451
  dayClicked({ date }) {
1469
- this.readonly$.pipe(first()).subscribe((readonly) => {
1470
- if (!readonly) {
1471
- this.dbxCalendarScheduleSelectionStore.toggleSelectedDates(date);
1472
- }
1473
- });
1452
+ if (!this.readonlySignal()) {
1453
+ this.dbxCalendarScheduleSelectionStore.toggleSelectedDates(date);
1454
+ }
1474
1455
  }
1475
1456
  eventClicked(action, event) {
1476
1457
  this.clickEvent.emit({ action, event });
1477
1458
  }
1478
1459
  beforeMonthViewRender(renderEvent) {
1479
- this.beforeMonthViewRender$.pipe(first()).subscribe((x) => {
1480
- x(renderEvent);
1481
- });
1460
+ this.beforeMonthViewRenderSignal()?.(renderEvent);
1482
1461
  }
1483
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1484
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarComponent, selector: "dbx-schedule-selection-calendar", inputs: { config: "config", readonly: "readonly" }, outputs: { clickEvent: "clickEvent" }, providers: [DbxCalendarStore], ngImport: i0, template: "<dbx-calendar-base class=\"dbx-schedule-selection-calendar\" [ngClass]=\"(readonly$ | async) ? 'dbx-schedule-selection-calendar-readonly' : ''\">\n <ng-container controls>\n <ng-container *ngIf=\"showClearSelectionButton$ | async\">\n <dbx-schedule-selection-calendar-selection-toggle-button [disabled]=\"readonly$ | async\"></dbx-schedule-selection-calendar-selection-toggle-button>\n <dbx-button-spacer></dbx-button-spacer>\n </ng-container>\n <dbx-injection [config]=\"datePopoverButtonInjectionConfig$ | async\"></dbx-injection>\n </ng-container>\n <div class=\"dbx-calendar-content dbx-calendar-content-month\">\n <mwl-calendar-month-view [refresh]=\"refresh$\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\" (beforeViewRender)=\"beforeMonthViewRender($event)\" [cellTemplate]=\"monthDayCellTemplate\"></mwl-calendar-month-view>\n </div>\n</dbx-calendar-base>\n\n<!-- Cell -->\n<ng-template #monthDayCellTemplate let-day=\"day\" let-locale=\"locale\">\n <div class=\"cal-cell-top\">\n <span class=\"cal-day-badge\" *ngIf=\"day.badgeTotal > 0\">{{ day.badgeTotal }}</span>\n <span class=\"cal-day-number\">{{ day.date | calendarDate: 'monthViewDayNumber':locale }}</span>\n </div>\n <dbx-schedule-selection-calendar-cell [day]=\"day\"></dbx-schedule-selection-calendar-cell>\n</ng-template>\n", dependencies: [{ kind: "component", type: i1$2.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { kind: "component", type: i2$3.DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: i5$1.CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "directive", type: i6.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: DbxScheduleSelectionCalendarCellComponent, selector: "dbx-schedule-selection-calendar-cell", inputs: ["day"] }, { kind: "component", type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, selector: "dbx-schedule-selection-calendar-selection-toggle-button", inputs: ["disabled"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.ɵCalendarDatePipe, name: "calendarDate" }] });
1462
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1463
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clickEvent: "clickEvent" }, providers: [DbxCalendarStore], ngImport: i0, template: "<dbx-calendar-base class=\"dbx-schedule-selection-calendar\" [ngClass]=\"readonlySignal() ? 'dbx-schedule-selection-calendar-readonly' : ''\">\n <ng-container controls>\n @if (showClearSelectionButtonSignal()) {\n <dbx-schedule-selection-calendar-selection-toggle-button [disabled]=\"readonlySignal()\"></dbx-schedule-selection-calendar-selection-toggle-button>\n <dbx-button-spacer></dbx-button-spacer>\n }\n <dbx-injection [config]=\"datePopoverButtonInjectionConfigSignal()\"></dbx-injection>\n </ng-container>\n <div class=\"dbx-calendar-content dbx-calendar-content-month\">\n <mwl-calendar-month-view [refresh]=\"refresh$\" [viewDate]=\"viewDateSignal()!\" [events]=\"eventsSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\" (beforeViewRender)=\"beforeMonthViewRender($event)\" [cellTemplate]=\"monthDayCellTemplate\"></mwl-calendar-month-view>\n </div>\n</dbx-calendar-base>\n\n<!-- Cell -->\n<ng-template #monthDayCellTemplate let-day=\"day\" let-locale=\"locale\">\n <div class=\"cal-cell-top\">\n @if (day.badgeTotal > 0) {\n <span class=\"cal-day-badge\">{{ day.badgeTotal }}</span>\n }\n <span class=\"cal-day-number\">{{ day.date | calendarDate: 'monthViewDayNumber' : locale }}</span>\n </div>\n <dbx-schedule-selection-calendar-cell [day]=\"day\"></dbx-schedule-selection-calendar-cell>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "pipe", type: i1$5.ɵCalendarDatePipe, name: "calendarDate" }, { kind: "component", type: i1$5.CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "component", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: DbxScheduleSelectionCalendarCellComponent, selector: "dbx-schedule-selection-calendar-cell", inputs: ["day"] }, { kind: "component", type: DbxScheduleSelectionCalendarSelectionToggleButtonComponent, selector: "dbx-schedule-selection-calendar-selection-toggle-button", inputs: ["disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1485
1464
  }
1486
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarComponent, decorators: [{
1465
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarComponent, decorators: [{
1487
1466
  type: Component,
1488
- args: [{ selector: 'dbx-schedule-selection-calendar', providers: [DbxCalendarStore], template: "<dbx-calendar-base class=\"dbx-schedule-selection-calendar\" [ngClass]=\"(readonly$ | async) ? 'dbx-schedule-selection-calendar-readonly' : ''\">\n <ng-container controls>\n <ng-container *ngIf=\"showClearSelectionButton$ | async\">\n <dbx-schedule-selection-calendar-selection-toggle-button [disabled]=\"readonly$ | async\"></dbx-schedule-selection-calendar-selection-toggle-button>\n <dbx-button-spacer></dbx-button-spacer>\n </ng-container>\n <dbx-injection [config]=\"datePopoverButtonInjectionConfig$ | async\"></dbx-injection>\n </ng-container>\n <div class=\"dbx-calendar-content dbx-calendar-content-month\">\n <mwl-calendar-month-view [refresh]=\"refresh$\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\" (beforeViewRender)=\"beforeMonthViewRender($event)\" [cellTemplate]=\"monthDayCellTemplate\"></mwl-calendar-month-view>\n </div>\n</dbx-calendar-base>\n\n<!-- Cell -->\n<ng-template #monthDayCellTemplate let-day=\"day\" let-locale=\"locale\">\n <div class=\"cal-cell-top\">\n <span class=\"cal-day-badge\" *ngIf=\"day.badgeTotal > 0\">{{ day.badgeTotal }}</span>\n <span class=\"cal-day-number\">{{ day.date | calendarDate: 'monthViewDayNumber':locale }}</span>\n </div>\n <dbx-schedule-selection-calendar-cell [day]=\"day\"></dbx-schedule-selection-calendar-cell>\n</ng-template>\n" }]
1489
- }], propDecorators: { clickEvent: [{
1490
- type: Output
1491
- }], config: [{
1492
- type: Input
1493
- }], readonly: [{
1494
- type: Input
1495
- }] } });
1467
+ args: [{ selector: 'dbx-schedule-selection-calendar', imports: [NgClass, CalendarModule, DbxCalendarBaseComponent, DbxInjectionComponent, DbxButtonSpacerDirective, DbxScheduleSelectionCalendarCellComponent, DbxScheduleSelectionCalendarSelectionToggleButtonComponent], providers: [DbxCalendarStore], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<dbx-calendar-base class=\"dbx-schedule-selection-calendar\" [ngClass]=\"readonlySignal() ? 'dbx-schedule-selection-calendar-readonly' : ''\">\n <ng-container controls>\n @if (showClearSelectionButtonSignal()) {\n <dbx-schedule-selection-calendar-selection-toggle-button [disabled]=\"readonlySignal()\"></dbx-schedule-selection-calendar-selection-toggle-button>\n <dbx-button-spacer></dbx-button-spacer>\n }\n <dbx-injection [config]=\"datePopoverButtonInjectionConfigSignal()\"></dbx-injection>\n </ng-container>\n <div class=\"dbx-calendar-content dbx-calendar-content-month\">\n <mwl-calendar-month-view [refresh]=\"refresh$\" [viewDate]=\"viewDateSignal()!\" [events]=\"eventsSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\" (beforeViewRender)=\"beforeMonthViewRender($event)\" [cellTemplate]=\"monthDayCellTemplate\"></mwl-calendar-month-view>\n </div>\n</dbx-calendar-base>\n\n<!-- Cell -->\n<ng-template #monthDayCellTemplate let-day=\"day\" let-locale=\"locale\">\n <div class=\"cal-cell-top\">\n @if (day.badgeTotal > 0) {\n <span class=\"cal-day-badge\">{{ day.badgeTotal }}</span>\n }\n <span class=\"cal-day-number\">{{ day.date | calendarDate: 'monthViewDayNumber' : locale }}</span>\n </div>\n <dbx-schedule-selection-calendar-cell [day]=\"day\"></dbx-schedule-selection-calendar-cell>\n</ng-template>\n" }]
1468
+ }] });
1496
1469
 
1497
1470
  /**
1498
1471
  * Token used to configure the default DbxScheduleSelectionCalendarDatePopupConfig for DbxScheduleSelectionCalendarDateDialogComponent.
@@ -1522,16 +1495,16 @@ class DbxScheduleSelectionCalendarDateDialogComponent extends AbstractDialogDire
1522
1495
  }
1523
1496
  });
1524
1497
  }
1525
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1526
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDateDialogComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1498
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1499
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDateDialogComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1527
1500
  <dbx-dialog-content class="dbx-schedule-selection-calendar-date-dialog">
1528
1501
  <dbx-dialog-content-close (close)="close()"></dbx-dialog-content-close>
1529
1502
  <dbx-schedule-selection-calendar></dbx-schedule-selection-calendar>
1530
1503
  <dbx-dialog-content-footer [config]="closeConfig" (close)="close()"></dbx-dialog-content-footer>
1531
1504
  </dbx-dialog-content>
1532
- `, isInline: true, dependencies: [{ kind: "directive", type: i1$1.DbxDialogContentDirective, selector: "dbx-dialog-content,[dbxDialogContent].dbx-dialog-content", inputs: ["width"] }, { kind: "component", type: i1$1.DbxDialogContentFooterComponent, selector: "dbx-dialog-content-footer", inputs: ["closeText", "buttonColor", "config"], outputs: ["close"] }, { kind: "component", type: i1$1.DbxDialogContentCloseComponent, selector: "dbx-dialog-content-close", inputs: ["padded"], outputs: ["close"] }, { kind: "component", type: DbxScheduleSelectionCalendarComponent, selector: "dbx-schedule-selection-calendar", inputs: ["config", "readonly"], outputs: ["clickEvent"] }] });
1505
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: DbxDialogInteractionModule }, { kind: "directive", type: i1$3.DbxDialogContentDirective, selector: "dbx-dialog-content,[dbxDialogContent].dbx-dialog-content", inputs: ["width"] }, { kind: "component", type: i1$3.DbxDialogContentFooterComponent, selector: "dbx-dialog-content-footer", inputs: ["config", "closeText", "buttonColor"], outputs: ["close"] }, { kind: "component", type: i1$3.DbxDialogContentCloseComponent, selector: "dbx-dialog-content-close", inputs: ["padded"], outputs: ["close"] }, { kind: "component", type: DbxScheduleSelectionCalendarComponent, selector: "dbx-schedule-selection-calendar", inputs: ["config", "readonly"], outputs: ["clickEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1533
1506
  }
1534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogComponent, decorators: [{
1507
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogComponent, decorators: [{
1535
1508
  type: Component,
1536
1509
  args: [{
1537
1510
  template: `
@@ -1540,44 +1513,43 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1540
1513
  <dbx-schedule-selection-calendar></dbx-schedule-selection-calendar>
1541
1514
  <dbx-dialog-content-footer [config]="closeConfig" (close)="close()"></dbx-dialog-content-footer>
1542
1515
  </dbx-dialog-content>
1543
- `
1516
+ `,
1517
+ standalone: true,
1518
+ imports: [DbxDialogInteractionModule, DbxScheduleSelectionCalendarComponent],
1519
+ changeDetection: ChangeDetectionStrategy.OnPush
1544
1520
  }]
1545
1521
  }] });
1546
1522
 
1547
1523
  class DbxScheduleSelectionCalendarDateDialogButtonComponent {
1548
1524
  injector = inject(Injector);
1549
1525
  matDialog = inject(MatDialog);
1550
- buttonText = 'Customize';
1551
- disabled;
1552
- contentConfig;
1526
+ buttonText = input('Customize');
1527
+ disabled = input();
1528
+ contentConfig = input();
1553
1529
  clickCustomize() {
1554
- DbxScheduleSelectionCalendarDateDialogComponent.openDialog(this.matDialog, { injector: this.injector, contentConfig: this.contentConfig });
1530
+ DbxScheduleSelectionCalendarDateDialogComponent.openDialog(this.matDialog, { injector: this.injector, contentConfig: this.contentConfig() });
1555
1531
  }
1556
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1557
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarDateDialogButtonComponent, selector: "dbx-schedule-selection-calendar-date-dialog-button", inputs: { buttonText: "buttonText", disabled: "disabled", contentConfig: "contentConfig" }, ngImport: i0, template: `
1558
- <dbx-button [raised]="true" color="accent" [text]="buttonText" [disabled]="disabled" (buttonClick)="clickCustomize()"></dbx-button>
1559
- `, isInline: true, dependencies: [{ kind: "component", type: i1$1.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "basic", "raised", "stroked", "flat", "iconOnly", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor"] }] });
1532
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1533
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: DbxScheduleSelectionCalendarDateDialogButtonComponent, isStandalone: true, selector: "dbx-schedule-selection-calendar-date-dialog-button", inputs: { buttonText: { classPropertyName: "buttonText", publicName: "buttonText", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, contentConfig: { classPropertyName: "contentConfig", publicName: "contentConfig", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1534
+ <dbx-button [raised]="true" color="accent" [text]="buttonText()" [disabled]="disabled()" (buttonClick)="clickCustomize()"></dbx-button>
1535
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["type", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "raised", "stroked", "flat", "iconOnly", "fab"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1560
1536
  }
1561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogButtonComponent, decorators: [{
1537
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxScheduleSelectionCalendarDateDialogButtonComponent, decorators: [{
1562
1538
  type: Component,
1563
1539
  args: [{
1564
1540
  selector: 'dbx-schedule-selection-calendar-date-dialog-button',
1565
1541
  template: `
1566
- <dbx-button [raised]="true" color="accent" [text]="buttonText" [disabled]="disabled" (buttonClick)="clickCustomize()"></dbx-button>
1567
- `
1542
+ <dbx-button [raised]="true" color="accent" [text]="buttonText()" [disabled]="disabled()" (buttonClick)="clickCustomize()"></dbx-button>
1543
+ `,
1544
+ imports: [DbxButtonComponent],
1545
+ changeDetection: ChangeDetectionStrategy.OnPush,
1546
+ standalone: true
1568
1547
  }]
1569
- }], propDecorators: { buttonText: [{
1570
- type: Input
1571
- }], disabled: [{
1572
- type: Input
1573
- }], contentConfig: [{
1574
- type: Input
1575
- }] } });
1548
+ }] });
1576
1549
 
1577
1550
  class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1578
1551
  compact = inject(CompactContextStore, { optional: true });
1579
1552
  dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
1580
- ngZone = inject(NgZone);
1581
1553
  _syncSub = new SubscriptionObject();
1582
1554
  _valueSub = new SubscriptionObject();
1583
1555
  _timezoneSub = new SubscriptionObject();
@@ -1589,6 +1561,7 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1589
1561
  formControl$ = this._formControlObs.pipe(filterMaybe());
1590
1562
  value$ = this.formControl$.pipe(switchMap((control) => control.valueChanges.pipe(startWith(control.value))), shareReplay(1));
1591
1563
  disableCustomize$ = this.value$.pipe(map((x) => (this.allowCustomizeWithoutDateRange ? false : !x)), distinctUntilChanged(), shareReplay(1));
1564
+ disabledSignal = toSignal(this.disableCustomize$);
1592
1565
  get formGroupName() {
1593
1566
  return this.field.key;
1594
1567
  }
@@ -1687,33 +1660,58 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1687
1660
  this._exclusionsSub.destroy();
1688
1661
  this._formControlObs.complete();
1689
1662
  }
1690
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarDateScheduleRangeFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1691
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormCalendarDateScheduleRangeFieldComponent, selector: "ng-component", providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
1663
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormCalendarDateScheduleRangeFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1664
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxFormCalendarDateScheduleRangeFieldComponent, isStandalone: true, selector: "ng-component", providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
1692
1665
  <div class="dbx-schedule-selection-field">
1693
1666
  <dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="openPickerOnTextClick" [showCustomize]="showCustomize" [required]="required" [disabled]="isReadonlyOrDisabled" [label]="label" [hint]="description">
1694
- <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1667
+ <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disabledSignal()" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1695
1668
  <dbx-injection [config]="customDetailsConfig"></dbx-injection>
1696
1669
  </dbx-schedule-selection-calendar-date-range>
1697
1670
  </div>
1698
- `, isInline: true, dependencies: [{ kind: "component", type: i1$2.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateRangeComponent, selector: "dbx-schedule-selection-calendar-date-range", inputs: ["openPickerOnTextClick", "label", "hint", "disabled", "showCustomize", "required"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateDialogButtonComponent, selector: "dbx-schedule-selection-calendar-date-dialog-button", inputs: ["buttonText", "disabled", "contentConfig"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
1671
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateRangeComponent, selector: "dbx-schedule-selection-calendar-date-range", inputs: ["required", "openPickerOnTextClick", "label", "hint", "disabled", "showCustomize"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateDialogButtonComponent, selector: "dbx-schedule-selection-calendar-date-dialog-button", inputs: ["buttonText", "disabled", "contentConfig"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1699
1672
  }
1700
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarDateScheduleRangeFieldComponent, decorators: [{
1673
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormCalendarDateScheduleRangeFieldComponent, decorators: [{
1701
1674
  type: Component,
1702
1675
  args: [{
1703
1676
  template: `
1704
1677
  <div class="dbx-schedule-selection-field">
1705
1678
  <dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="openPickerOnTextClick" [showCustomize]="showCustomize" [required]="required" [disabled]="isReadonlyOrDisabled" [label]="label" [hint]="description">
1706
- <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1679
+ <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disabledSignal()" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1707
1680
  <dbx-injection [config]="customDetailsConfig"></dbx-injection>
1708
1681
  </dbx-schedule-selection-calendar-date-range>
1709
1682
  </div>
1710
1683
  `,
1711
- providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()]
1684
+ providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()],
1685
+ imports: [DbxInjectionComponent, DbxScheduleSelectionCalendarDateRangeComponent, DbxScheduleSelectionCalendarDateDialogButtonComponent],
1686
+ changeDetection: ChangeDetectionStrategy.OnPush,
1687
+ standalone: true
1712
1688
  }]
1713
1689
  }] });
1714
1690
 
1715
- const declarations = [
1716
- //
1691
+ const importsAndExports$1 = [DbxFormCalendarDateScheduleRangeFieldComponent];
1692
+ class DbxFormDateScheduleRangeFieldModule {
1693
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1694
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, imports: [DbxFormCalendarDateScheduleRangeFieldComponent, i1$6.FormlyModule], exports: [DbxFormCalendarDateScheduleRangeFieldComponent] });
1695
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, imports: [importsAndExports$1, FormlyModule.forChild({
1696
+ types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateScheduleRangeFieldComponent }]
1697
+ })] });
1698
+ }
1699
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, decorators: [{
1700
+ type: NgModule,
1701
+ args: [{
1702
+ imports: [
1703
+ ...importsAndExports$1,
1704
+ FormlyModule.forChild({
1705
+ types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateScheduleRangeFieldComponent }]
1706
+ })
1707
+ ],
1708
+ exports: importsAndExports$1
1709
+ }]
1710
+ }] });
1711
+
1712
+ // export * from './selection';
1713
+
1714
+ const importsAndExports = [
1717
1715
  DbxScheduleSelectionCalendarComponent,
1718
1716
  DbxScheduleSelectionCalendarDateDaysComponent,
1719
1717
  DbxScheduleSelectionCalendarDateDaysFormComponent,
@@ -1728,10 +1726,8 @@ const declarations = [
1728
1726
  DbxScheduleSelectionCalendarSelectionToggleButtonComponent
1729
1727
  ];
1730
1728
  class DbxFormCalendarModule {
1731
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1732
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, declarations: [
1733
- //
1734
- DbxScheduleSelectionCalendarComponent,
1729
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1730
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxFormCalendarModule, imports: [DbxScheduleSelectionCalendarComponent,
1735
1731
  DbxScheduleSelectionCalendarDateDaysComponent,
1736
1732
  DbxScheduleSelectionCalendarDateDaysFormComponent,
1737
1733
  DbxScheduleSelectionCalendarDateRangeComponent,
@@ -1742,33 +1738,7 @@ class DbxFormCalendarModule {
1742
1738
  DbxCalendarScheduleSelectionStoreInjectionBlockDirective,
1743
1739
  DbxScheduleSelectionCalendarDateDialogComponent,
1744
1740
  DbxScheduleSelectionCalendarDateDialogButtonComponent,
1745
- DbxScheduleSelectionCalendarSelectionToggleButtonComponent], imports: [
1746
- //
1747
- DbxInjectionComponentModule,
1748
- DbxContentLayoutModule,
1749
- DbxTextModule,
1750
- DbxActionModule,
1751
- DbxFormModule,
1752
- DbxFormlyModule,
1753
- DbxCalendarModule,
1754
- CommonModule,
1755
- MatIconModule,
1756
- MatButtonModule,
1757
- FormsModule,
1758
- ReactiveFormsModule,
1759
- MatFormFieldModule,
1760
- MatButtonToggleModule,
1761
- DbxButtonModule,
1762
- MatDatepickerModule,
1763
- DbxDialogInteractionModule,
1764
- DbxPopoverInteractionModule,
1765
- CalendarModule,
1766
- CalendarDayModule,
1767
- FlexLayoutModule,
1768
- CalendarWeekModule,
1769
- DbxDatePipeModule], exports: [
1770
- //
1771
- DbxScheduleSelectionCalendarComponent,
1741
+ DbxScheduleSelectionCalendarSelectionToggleButtonComponent], exports: [DbxScheduleSelectionCalendarComponent,
1772
1742
  DbxScheduleSelectionCalendarDateDaysComponent,
1773
1743
  DbxScheduleSelectionCalendarDateDaysFormComponent,
1774
1744
  DbxScheduleSelectionCalendarDateRangeComponent,
@@ -1780,113 +1750,26 @@ class DbxFormCalendarModule {
1780
1750
  DbxScheduleSelectionCalendarDateDialogComponent,
1781
1751
  DbxScheduleSelectionCalendarDateDialogButtonComponent,
1782
1752
  DbxScheduleSelectionCalendarSelectionToggleButtonComponent] });
1783
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, imports: [
1784
- //
1785
- DbxInjectionComponentModule,
1786
- DbxContentLayoutModule,
1787
- DbxTextModule,
1788
- DbxActionModule,
1789
- DbxFormModule,
1790
- DbxFormlyModule,
1791
- DbxCalendarModule,
1792
- CommonModule,
1793
- MatIconModule,
1794
- MatButtonModule,
1795
- FormsModule,
1796
- ReactiveFormsModule,
1797
- MatFormFieldModule,
1798
- MatButtonToggleModule,
1799
- DbxButtonModule,
1800
- MatDatepickerModule,
1801
- DbxDialogInteractionModule,
1802
- DbxPopoverInteractionModule,
1803
- CalendarModule,
1804
- CalendarDayModule,
1805
- FlexLayoutModule,
1806
- CalendarWeekModule,
1807
- DbxDatePipeModule] });
1808
- }
1809
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, decorators: [{
1810
- type: NgModule,
1811
- args: [{
1812
- imports: [
1813
- //
1814
- DbxInjectionComponentModule,
1815
- DbxContentLayoutModule,
1816
- DbxTextModule,
1817
- DbxActionModule,
1818
- DbxFormModule,
1819
- DbxFormlyModule,
1820
- DbxCalendarModule,
1821
- CommonModule,
1822
- MatIconModule,
1823
- MatButtonModule,
1824
- FormsModule,
1825
- ReactiveFormsModule,
1826
- MatFormFieldModule,
1827
- MatButtonToggleModule,
1828
- DbxButtonModule,
1829
- MatDatepickerModule,
1830
- DbxDialogInteractionModule,
1831
- DbxPopoverInteractionModule,
1832
- CalendarModule,
1833
- CalendarDayModule,
1834
- FlexLayoutModule,
1835
- CalendarWeekModule,
1836
- DbxDatePipeModule
1837
- ],
1838
- declarations,
1839
- exports: declarations
1840
- }]
1841
- }] });
1842
-
1843
- class DbxFormDateScheduleRangeFieldModule {
1844
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1845
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, declarations: [DbxFormCalendarDateScheduleRangeFieldComponent], imports: [DbxInjectionComponentModule,
1846
- CommonModule,
1847
- MatIconModule,
1848
- DbxFormCalendarModule,
1849
- MatButtonModule,
1850
- DbxTextModule,
1851
- FormsModule,
1852
- ReactiveFormsModule,
1853
- MatInputModule, i1$3.FormlyModule] });
1854
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, imports: [DbxInjectionComponentModule,
1855
- CommonModule,
1856
- MatIconModule,
1857
- DbxFormCalendarModule,
1858
- MatButtonModule,
1859
- DbxTextModule,
1860
- FormsModule,
1861
- ReactiveFormsModule,
1862
- MatInputModule,
1863
- FormlyModule.forChild({
1864
- types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateScheduleRangeFieldComponent }]
1865
- })] });
1753
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormCalendarModule, imports: [DbxScheduleSelectionCalendarComponent,
1754
+ DbxScheduleSelectionCalendarDateDaysComponent,
1755
+ DbxScheduleSelectionCalendarDateDaysFormComponent,
1756
+ DbxScheduleSelectionCalendarDateRangeComponent,
1757
+ DbxScheduleSelectionCalendarDatePopoverButtonComponent,
1758
+ DbxScheduleSelectionCalendarCellComponent,
1759
+ DbxScheduleSelectionCalendarDatePopoverComponent,
1760
+ DbxScheduleSelectionCalendarDatePopoverContentComponent,
1761
+ DbxScheduleSelectionCalendarDateDialogComponent,
1762
+ DbxScheduleSelectionCalendarDateDialogButtonComponent,
1763
+ DbxScheduleSelectionCalendarSelectionToggleButtonComponent] });
1866
1764
  }
1867
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, decorators: [{
1765
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormCalendarModule, decorators: [{
1868
1766
  type: NgModule,
1869
1767
  args: [{
1870
- imports: [
1871
- DbxInjectionComponentModule,
1872
- CommonModule,
1873
- MatIconModule,
1874
- DbxFormCalendarModule,
1875
- MatButtonModule,
1876
- DbxTextModule,
1877
- FormsModule,
1878
- ReactiveFormsModule,
1879
- MatInputModule,
1880
- FormlyModule.forChild({
1881
- types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateScheduleRangeFieldComponent }]
1882
- })
1883
- ],
1884
- declarations: [DbxFormCalendarDateScheduleRangeFieldComponent]
1768
+ imports: importsAndExports,
1769
+ exports: importsAndExports
1885
1770
  }]
1886
1771
  }] });
1887
1772
 
1888
- // export * from './selection';
1889
-
1890
1773
  /**
1891
1774
  * Generated bundle index. Do not edit.
1892
1775
  */