@wavemaker-ai/app-ng-runtime 12.0.0-rc.335 → 12.0.1-rc.338

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 (351) hide show
  1. package/build-task/bundles/index.umd.js +15 -16
  2. package/build-task/fesm2022/index.mjs +15 -16
  3. package/build-task/fesm2022/index.mjs.map +1 -1
  4. package/components/advanced/carousel/bundles/index.umd.js +9 -9
  5. package/components/advanced/carousel/fesm2022/index.mjs +9 -9
  6. package/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  7. package/components/advanced/carousel/types/index.d.ts +7 -7
  8. package/components/advanced/custom/bundles/index.umd.js +9 -10
  9. package/components/advanced/custom/fesm2022/index.mjs +9 -10
  10. package/components/advanced/custom/fesm2022/index.mjs.map +1 -1
  11. package/components/advanced/custom/types/index.d.ts +3 -3
  12. package/components/advanced/login/bundles/index.umd.js +3 -3
  13. package/components/advanced/login/fesm2022/index.mjs +3 -3
  14. package/components/advanced/login/fesm2022/index.mjs.map +1 -1
  15. package/components/advanced/login/types/index.d.ts +1 -1
  16. package/components/advanced/marquee/bundles/index.umd.js +3 -3
  17. package/components/advanced/marquee/fesm2022/index.mjs +3 -3
  18. package/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
  19. package/components/advanced/marquee/types/index.d.ts +1 -1
  20. package/components/base/bundles/index.umd.js +40 -46
  21. package/components/base/fesm2022/index.mjs +40 -46
  22. package/components/base/fesm2022/index.mjs.map +1 -1
  23. package/components/base/types/index.d.ts +47 -46
  24. package/components/basic/anchor/bundles/index.umd.js +3 -3
  25. package/components/basic/anchor/fesm2022/index.mjs +3 -3
  26. package/components/basic/anchor/fesm2022/index.mjs.map +1 -1
  27. package/components/basic/anchor/types/index.d.ts +3 -3
  28. package/components/basic/audio/bundles/index.umd.js +3 -3
  29. package/components/basic/audio/fesm2022/index.mjs +3 -3
  30. package/components/basic/audio/fesm2022/index.mjs.map +1 -1
  31. package/components/basic/audio/types/index.d.ts +1 -1
  32. package/components/basic/html/bundles/index.umd.js +10 -11
  33. package/components/basic/html/fesm2022/index.mjs +10 -11
  34. package/components/basic/html/fesm2022/index.mjs.map +1 -1
  35. package/components/basic/html/types/index.d.ts +3 -3
  36. package/components/basic/icon/bundles/index.umd.js +3 -3
  37. package/components/basic/icon/fesm2022/index.mjs +3 -3
  38. package/components/basic/icon/fesm2022/index.mjs.map +1 -1
  39. package/components/basic/icon/types/index.d.ts +1 -1
  40. package/components/basic/iframe/bundles/index.umd.js +5 -5
  41. package/components/basic/iframe/fesm2022/index.mjs +5 -5
  42. package/components/basic/iframe/fesm2022/index.mjs.map +1 -1
  43. package/components/basic/iframe/types/index.d.ts +3 -3
  44. package/components/basic/label/bundles/index.umd.js +10 -11
  45. package/components/basic/label/fesm2022/index.mjs +10 -11
  46. package/components/basic/label/fesm2022/index.mjs.map +1 -1
  47. package/components/basic/label/types/index.d.ts +1 -1
  48. package/components/basic/picture/bundles/index.umd.js +3 -3
  49. package/components/basic/picture/fesm2022/index.mjs +3 -3
  50. package/components/basic/picture/fesm2022/index.mjs.map +1 -1
  51. package/components/basic/picture/types/index.d.ts +2 -2
  52. package/components/basic/progress/progress-bar/bundles/index.umd.js +8 -10
  53. package/components/basic/progress/progress-bar/fesm2022/index.mjs +8 -10
  54. package/components/basic/progress/progress-bar/fesm2022/index.mjs.map +1 -1
  55. package/components/basic/progress/progress-bar/types/index.d.ts +2 -2
  56. package/components/basic/progress/progress-circle/bundles/index.umd.js +3 -3
  57. package/components/basic/progress/progress-circle/fesm2022/index.mjs +3 -3
  58. package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -1
  59. package/components/basic/progress/progress-circle/types/index.d.ts +2 -2
  60. package/components/basic/rich-text-editor/bundles/index.umd.js +3 -3
  61. package/components/basic/rich-text-editor/fesm2022/index.mjs +3 -3
  62. package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  63. package/components/basic/rich-text-editor/types/index.d.ts +3 -3
  64. package/components/basic/search/bundles/index.umd.js +40 -42
  65. package/components/basic/search/fesm2022/index.mjs +40 -42
  66. package/components/basic/search/fesm2022/index.mjs.map +1 -1
  67. package/components/basic/search/types/index.d.ts +13 -13
  68. package/components/basic/spinner/bundles/index.umd.js +3 -3
  69. package/components/basic/spinner/fesm2022/index.mjs +3 -3
  70. package/components/basic/spinner/fesm2022/index.mjs.map +1 -1
  71. package/components/basic/spinner/types/index.d.ts +3 -3
  72. package/components/basic/tree/bundles/index.umd.js +9 -9
  73. package/components/basic/tree/fesm2022/index.mjs +9 -9
  74. package/components/basic/tree/fesm2022/index.mjs.map +1 -1
  75. package/components/basic/tree/types/index.d.ts +7 -7
  76. package/components/basic/video/bundles/index.umd.js +3 -3
  77. package/components/basic/video/fesm2022/index.mjs +3 -3
  78. package/components/basic/video/fesm2022/index.mjs.map +1 -1
  79. package/components/basic/video/types/index.d.ts +2 -2
  80. package/components/chart/bundles/index.umd.js +19 -22
  81. package/components/chart/fesm2022/index.mjs +20 -23
  82. package/components/chart/fesm2022/index.mjs.map +1 -1
  83. package/components/chart/types/index.d.ts +9 -9
  84. package/components/containers/accordion/bundles/index.umd.js +10 -12
  85. package/components/containers/accordion/fesm2022/index.mjs +10 -12
  86. package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  87. package/components/containers/accordion/types/index.d.ts +9 -9
  88. package/components/containers/layout-grid/bundles/index.umd.js +9 -9
  89. package/components/containers/layout-grid/fesm2022/index.mjs +9 -9
  90. package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
  91. package/components/containers/layout-grid/types/index.d.ts +4 -4
  92. package/components/containers/linear-layout/bundles/index.umd.js +6 -6
  93. package/components/containers/linear-layout/fesm2022/index.mjs +6 -6
  94. package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
  95. package/components/containers/linear-layout/types/index.d.ts +2 -2
  96. package/components/containers/panel/bundles/index.umd.js +3 -3
  97. package/components/containers/panel/fesm2022/index.mjs +3 -3
  98. package/components/containers/panel/fesm2022/index.mjs.map +1 -1
  99. package/components/containers/panel/types/index.d.ts +3 -3
  100. package/components/containers/tabs/bundles/index.umd.js +9 -9
  101. package/components/containers/tabs/fesm2022/index.mjs +9 -9
  102. package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  103. package/components/containers/tabs/types/index.d.ts +8 -8
  104. package/components/containers/tile/bundles/index.umd.js +3 -3
  105. package/components/containers/tile/fesm2022/index.mjs +3 -3
  106. package/components/containers/tile/fesm2022/index.mjs.map +1 -1
  107. package/components/containers/tile/types/index.d.ts +1 -1
  108. package/components/containers/wizard/bundles/index.umd.js +18 -18
  109. package/components/containers/wizard/fesm2022/index.mjs +18 -18
  110. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  111. package/components/containers/wizard/types/index.d.ts +8 -8
  112. package/components/data/card/bundles/index.umd.js +12 -12
  113. package/components/data/card/fesm2022/index.mjs +12 -12
  114. package/components/data/card/fesm2022/index.mjs.map +1 -1
  115. package/components/data/card/types/index.d.ts +6 -6
  116. package/components/data/form/bundles/index.umd.js +72 -75
  117. package/components/data/form/fesm2022/index.mjs +72 -77
  118. package/components/data/form/fesm2022/index.mjs.map +1 -1
  119. package/components/data/form/types/index.d.ts +29 -29
  120. package/components/data/list/bundles/index.umd.js +22 -27
  121. package/components/data/list/fesm2022/index.mjs +22 -27
  122. package/components/data/list/fesm2022/index.mjs.map +1 -1
  123. package/components/data/list/types/index.d.ts +23 -23
  124. package/components/data/live-table/bundles/index.umd.js +3 -3
  125. package/components/data/live-table/fesm2022/index.mjs +3 -3
  126. package/components/data/live-table/fesm2022/index.mjs.map +1 -1
  127. package/components/data/live-table/types/index.d.ts +5 -5
  128. package/components/data/pagination/bundles/index.umd.js +27 -28
  129. package/components/data/pagination/fesm2022/index.mjs +27 -28
  130. package/components/data/pagination/fesm2022/index.mjs.map +1 -1
  131. package/components/data/pagination/types/index.d.ts +1 -1
  132. package/components/data/table/bundles/index.umd.js +131 -142
  133. package/components/data/table/fesm2022/index.mjs +131 -143
  134. package/components/data/table/fesm2022/index.mjs.map +1 -1
  135. package/components/data/table/types/index.d.ts +20 -20
  136. package/components/dialogs/alert-dialog/bundles/index.umd.js +3 -3
  137. package/components/dialogs/alert-dialog/fesm2022/index.mjs +3 -3
  138. package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  139. package/components/dialogs/alert-dialog/types/index.d.ts +1 -1
  140. package/components/dialogs/confirm-dialog/bundles/index.umd.js +3 -3
  141. package/components/dialogs/confirm-dialog/fesm2022/index.mjs +3 -3
  142. package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  143. package/components/dialogs/confirm-dialog/types/index.d.ts +1 -1
  144. package/components/dialogs/default/bundles/index.umd.js +12 -12
  145. package/components/dialogs/default/fesm2022/index.mjs +12 -12
  146. package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  147. package/components/dialogs/default/types/index.d.ts +3 -3
  148. package/components/dialogs/design-dialog/bundles/index.umd.js +3 -3
  149. package/components/dialogs/design-dialog/fesm2022/index.mjs +3 -3
  150. package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  151. package/components/dialogs/design-dialog/types/index.d.ts +1 -1
  152. package/components/dialogs/iframe-dialog/bundles/index.umd.js +3 -3
  153. package/components/dialogs/iframe-dialog/fesm2022/index.mjs +3 -3
  154. package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  155. package/components/dialogs/iframe-dialog/types/index.d.ts +1 -1
  156. package/components/dialogs/login-dialog/bundles/index.umd.js +3 -3
  157. package/components/dialogs/login-dialog/fesm2022/index.mjs +3 -3
  158. package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
  159. package/components/dialogs/login-dialog/types/index.d.ts +2 -2
  160. package/components/dialogs/partial-dialog/bundles/index.umd.js +3 -3
  161. package/components/dialogs/partial-dialog/fesm2022/index.mjs +3 -3
  162. package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  163. package/components/dialogs/partial-dialog/types/index.d.ts +1 -1
  164. package/components/input/base-form/bundles/index.umd.js +4 -4
  165. package/components/input/base-form/fesm2022/index.mjs +4 -4
  166. package/components/input/base-form/fesm2022/index.mjs.map +1 -1
  167. package/components/input/base-form-custom/bundles/index.umd.js +3 -3
  168. package/components/input/base-form-custom/fesm2022/index.mjs +3 -3
  169. package/components/input/button/bundles/index.umd.js +3 -3
  170. package/components/input/button/fesm2022/index.mjs +3 -3
  171. package/components/input/button/fesm2022/index.mjs.map +1 -1
  172. package/components/input/button/types/index.d.ts +1 -1
  173. package/components/input/button-group/bundles/index.umd.js +3 -3
  174. package/components/input/button-group/fesm2022/index.mjs +3 -3
  175. package/components/input/button-group/fesm2022/index.mjs.map +1 -1
  176. package/components/input/button-group/types/index.d.ts +1 -1
  177. package/components/input/calendar/bundles/index.umd.js +4 -4
  178. package/components/input/calendar/fesm2022/index.mjs +4 -5
  179. package/components/input/calendar/fesm2022/index.mjs.map +1 -1
  180. package/components/input/calendar/types/index.d.ts +9 -9
  181. package/components/input/caption-position/bundles/index.umd.js +5 -5
  182. package/components/input/caption-position/fesm2022/index.mjs +5 -5
  183. package/components/input/caption-position/fesm2022/index.mjs.map +1 -1
  184. package/components/input/caption-position/types/index.d.ts +4 -4
  185. package/components/input/checkbox/bundles/index.umd.js +3 -3
  186. package/components/input/checkbox/fesm2022/index.mjs +3 -3
  187. package/components/input/checkbox/fesm2022/index.mjs.map +1 -1
  188. package/components/input/checkbox/types/index.d.ts +2 -2
  189. package/components/input/checkboxset/bundles/index.umd.js +4 -4
  190. package/components/input/checkboxset/fesm2022/index.mjs +4 -4
  191. package/components/input/checkboxset/fesm2022/index.mjs.map +1 -1
  192. package/components/input/checkboxset/types/index.d.ts +2 -2
  193. package/components/input/chips/bundles/index.umd.js +5 -5
  194. package/components/input/chips/fesm2022/index.mjs +5 -5
  195. package/components/input/chips/fesm2022/index.mjs.map +1 -1
  196. package/components/input/chips/types/index.d.ts +14 -14
  197. package/components/input/color-picker/bundles/index.umd.js +3 -3
  198. package/components/input/color-picker/fesm2022/index.mjs +3 -3
  199. package/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  200. package/components/input/color-picker/types/index.d.ts +2 -2
  201. package/components/input/composite/bundles/index.umd.js +3 -3
  202. package/components/input/composite/fesm2022/index.mjs +3 -3
  203. package/components/input/composite/fesm2022/index.mjs.map +1 -1
  204. package/components/input/composite/types/index.d.ts +1 -1
  205. package/components/input/currency/bundles/index.umd.js +3 -3
  206. package/components/input/currency/fesm2022/index.mjs +3 -3
  207. package/components/input/currency/fesm2022/index.mjs.map +1 -1
  208. package/components/input/currency/types/index.d.ts +3 -3
  209. package/components/input/dataset-aware-form/bundles/index.umd.js +7 -7
  210. package/components/input/dataset-aware-form/fesm2022/index.mjs +7 -7
  211. package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -1
  212. package/components/input/dataset-aware-form/types/index.d.ts +1 -1
  213. package/components/input/epoch/base-date-time/bundles/index.umd.js +10 -15
  214. package/components/input/epoch/base-date-time/fesm2022/index.mjs +10 -15
  215. package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -1
  216. package/components/input/epoch/base-date-time/types/index.d.ts +2 -2
  217. package/components/input/epoch/date/bundles/index.umd.js +5 -5
  218. package/components/input/epoch/date/fesm2022/index.mjs +5 -5
  219. package/components/input/epoch/date/fesm2022/index.mjs.map +1 -1
  220. package/components/input/epoch/date/types/index.d.ts +4 -4
  221. package/components/input/epoch/date-time/bundles/index.umd.js +3 -3
  222. package/components/input/epoch/date-time/fesm2022/index.mjs +3 -3
  223. package/components/input/epoch/date-time/fesm2022/index.mjs.map +1 -1
  224. package/components/input/epoch/date-time/types/index.d.ts +8 -8
  225. package/components/input/epoch/date-time-picker/bundles/index.umd.js +8 -8
  226. package/components/input/epoch/date-time-picker/fesm2022/index.mjs +8 -8
  227. package/components/input/epoch/date-time-picker/fesm2022/index.mjs.map +1 -1
  228. package/components/input/epoch/date-time-picker/types/index.d.ts +6 -7
  229. package/components/input/epoch/picker/bundles/index.umd.js +6 -6
  230. package/components/input/epoch/picker/fesm2022/index.mjs +6 -6
  231. package/components/input/epoch/picker/fesm2022/index.mjs.map +1 -1
  232. package/components/input/epoch/time/bundles/index.umd.js +4 -5
  233. package/components/input/epoch/time/fesm2022/index.mjs +5 -6
  234. package/components/input/epoch/time/fesm2022/index.mjs.map +1 -1
  235. package/components/input/epoch/time/types/index.d.ts +4 -4
  236. package/components/input/file-upload/bundles/index.umd.js +4 -4
  237. package/components/input/file-upload/fesm2022/index.mjs +4 -4
  238. package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  239. package/components/input/file-upload/types/index.d.ts +5 -5
  240. package/components/input/number/bundles/index.umd.js +3 -3
  241. package/components/input/number/fesm2022/index.mjs +3 -3
  242. package/components/input/number/fesm2022/index.mjs.map +1 -1
  243. package/components/input/number/types/index.d.ts +1 -1
  244. package/components/input/radioset/bundles/index.umd.js +4 -4
  245. package/components/input/radioset/fesm2022/index.mjs +4 -4
  246. package/components/input/radioset/fesm2022/index.mjs.map +1 -1
  247. package/components/input/radioset/types/index.d.ts +2 -2
  248. package/components/input/rating/bundles/index.umd.js +9 -11
  249. package/components/input/rating/fesm2022/index.mjs +9 -11
  250. package/components/input/rating/fesm2022/index.mjs.map +1 -1
  251. package/components/input/rating/types/index.d.ts +2 -2
  252. package/components/input/select/bundles/index.umd.js +4 -4
  253. package/components/input/select/fesm2022/index.mjs +4 -4
  254. package/components/input/select/fesm2022/index.mjs.map +1 -1
  255. package/components/input/select/types/index.d.ts +1 -1
  256. package/components/input/slider/bundles/index.umd.js +3 -3
  257. package/components/input/slider/fesm2022/index.mjs +3 -3
  258. package/components/input/slider/fesm2022/index.mjs.map +1 -1
  259. package/components/input/slider/types/index.d.ts +1 -1
  260. package/components/input/switch/bundles/index.umd.js +3 -3
  261. package/components/input/switch/fesm2022/index.mjs +3 -3
  262. package/components/input/switch/fesm2022/index.mjs.map +1 -1
  263. package/components/input/switch/types/index.d.ts +1 -1
  264. package/components/input/text/bundles/index.umd.js +31 -35
  265. package/components/input/text/fesm2022/index.mjs +31 -35
  266. package/components/input/text/fesm2022/index.mjs.map +1 -1
  267. package/components/input/text/types/index.d.ts +12 -12
  268. package/components/input/textarea/bundles/index.umd.js +3 -3
  269. package/components/input/textarea/fesm2022/index.mjs +3 -3
  270. package/components/input/textarea/fesm2022/index.mjs.map +1 -1
  271. package/components/input/textarea/types/index.d.ts +2 -2
  272. package/components/navigation/breadcrumb/bundles/index.umd.js +3 -3
  273. package/components/navigation/breadcrumb/fesm2022/index.mjs +3 -3
  274. package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  275. package/components/navigation/breadcrumb/types/index.d.ts +4 -4
  276. package/components/navigation/menu/bundles/index.umd.js +25 -33
  277. package/components/navigation/menu/fesm2022/index.mjs +25 -33
  278. package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  279. package/components/navigation/menu/types/index.d.ts +21 -21
  280. package/components/navigation/navbar/bundles/index.umd.js +3 -3
  281. package/components/navigation/navbar/fesm2022/index.mjs +3 -3
  282. package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  283. package/components/navigation/navbar/types/index.d.ts +1 -1
  284. package/components/navigation/popover/bundles/index.umd.js +4 -4
  285. package/components/navigation/popover/fesm2022/index.mjs +4 -4
  286. package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  287. package/components/navigation/popover/types/index.d.ts +4 -4
  288. package/components/page/default/bundles/index.umd.js +23 -23
  289. package/components/page/default/fesm2022/index.mjs +23 -23
  290. package/components/page/default/fesm2022/index.mjs.map +1 -1
  291. package/components/page/default/types/index.d.ts +14 -14
  292. package/components/page/footer/bundles/index.umd.js +3 -3
  293. package/components/page/footer/fesm2022/index.mjs +3 -3
  294. package/components/page/footer/fesm2022/index.mjs.map +1 -1
  295. package/components/page/footer/types/index.d.ts +1 -1
  296. package/components/page/header/bundles/index.umd.js +3 -3
  297. package/components/page/header/fesm2022/index.mjs +3 -3
  298. package/components/page/header/fesm2022/index.mjs.map +1 -1
  299. package/components/page/header/types/index.d.ts +1 -1
  300. package/components/page/left-panel/bundles/index.umd.js +5 -5
  301. package/components/page/left-panel/fesm2022/index.mjs +5 -5
  302. package/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  303. package/components/page/left-panel/types/index.d.ts +3 -3
  304. package/components/page/right-panel/bundles/index.umd.js +3 -3
  305. package/components/page/right-panel/fesm2022/index.mjs +3 -3
  306. package/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  307. package/components/page/right-panel/types/index.d.ts +1 -1
  308. package/components/page/top-nav/bundles/index.umd.js +3 -3
  309. package/components/page/top-nav/fesm2022/index.mjs +3 -3
  310. package/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  311. package/components/page/top-nav/types/index.d.ts +1 -1
  312. package/components/prefab/bundles/index.umd.js +7 -7
  313. package/components/prefab/fesm2022/index.mjs +7 -7
  314. package/components/prefab/fesm2022/index.mjs.map +1 -1
  315. package/components/prefab/types/index.d.ts +3 -3
  316. package/core/bundles/index.umd.js +84 -89
  317. package/core/fesm2022/index.mjs +84 -89
  318. package/core/fesm2022/index.mjs.map +1 -1
  319. package/core/types/index.d.ts +11 -11
  320. package/http/bundles/index.umd.js +6 -6
  321. package/http/fesm2022/index.mjs +6 -6
  322. package/http/fesm2022/index.mjs.map +1 -1
  323. package/http/types/index.d.ts +1 -1
  324. package/npm-shrinkwrap.json +2 -2
  325. package/oAuth/bundles/index.umd.js +17 -21
  326. package/oAuth/fesm2022/index.mjs +17 -21
  327. package/oAuth/fesm2022/index.mjs.map +1 -1
  328. package/oAuth/types/index.d.ts +1 -1
  329. package/package-lock.json +2 -2
  330. package/package.json +1 -1
  331. package/runtime/base/bundles/index.umd.js +253 -275
  332. package/runtime/base/fesm2022/index.mjs +253 -275
  333. package/runtime/base/fesm2022/index.mjs.map +1 -1
  334. package/runtime/base/types/index.d.ts +90 -96
  335. package/runtime/dynamic/bundles/index.umd.js +28 -28
  336. package/runtime/dynamic/fesm2022/index.mjs +28 -28
  337. package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  338. package/runtime/dynamic/types/index.d.ts +22 -22
  339. package/scripts/datatable/datatable.js +293 -271
  340. package/scripts/tree-keyboard-navigation/keyboard-navigation.js +68 -56
  341. package/security/bundles/index.umd.js +6 -6
  342. package/security/fesm2022/index.mjs +6 -6
  343. package/security/fesm2022/index.mjs.map +1 -1
  344. package/security/types/index.d.ts +5 -5
  345. package/transpiler/bundles/index.umd.js +3 -5
  346. package/transpiler/fesm2022/index.mjs +3 -5
  347. package/transpiler/fesm2022/index.mjs.map +1 -1
  348. package/variables/bundles/index.umd.js +69 -71
  349. package/variables/fesm2022/index.mjs +69 -72
  350. package/variables/fesm2022/index.mjs.map +1 -1
  351. package/variables/types/index.d.ts +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/calendar/src/calendar.props.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.html","../../../../../projects/components/widgets/input/calendar/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n const props = new Map(\n [\n ['calendartype', {value: 'basic', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['controls', {value: 'navigation, today, year, month, week, day', ...PROP_STRING}],\n ['dataset', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['eventallday', PROP_STRING],\n ['eventclass', PROP_STRING],\n ['eventend', PROP_STRING],\n ['eventstart', PROP_STRING],\n ['eventtitle', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showindevice', {displayType: 'inline-block', value: 'all', ...PROP_STRING}],\n ['view', PROP_STRING],\n ['selectionmode', PROP_STRING]\n ]\n );\n register('wm-calendar', props);\n};\n","import {\n AfterContentInit,\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n Injector,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {AbstractI18nService, getClonedObject, getSessionStorageItem, isMobile} from '@wm/core';\n\nimport {\n APPLY_STYLES_TYPE,\n createArrayFrom,\n getEvaluatedData,\n IRedrawableComponent,\n provideAsWidgetRef,\n StylableComponent,\n styler\n} from '@wm/components/base';\n\nimport {registerProps} from './calendar.props';\nimport {capitalize, clone, each, extend, get, includes, isDate, isEmpty, isObject, mapKeys} from \"lodash-es\";\n\ndeclare const $;\nimport * as momentLib from 'moment';\nconst moment = momentLib.default || window['moment'];\nimport {Calendar} from '@fullcalendar/core';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport listPlugin from '@fullcalendar/list'\nimport interactionPlugin from '@fullcalendar/interaction';\nimport allLocales from '@fullcalendar/core/locales-all';\n\nconst DEFAULT_CLS = 'app-calendar';\nconst dateFormats = ['yyyy-MM-dd', 'yyyy-M-dd', 'M-dd-yyyy', 'MM-dd-yy', 'yyyy, dd MMMM', 'yyyy, MMM dd', 'MM/dd/yyyy', 'M/d/yyyy', 'EEE, dd MMM yyyy', 'EEE MMM dd yyyy', 'EEEE, MMMM dd, yyyy', 'timestamp'];\nconst defaultHeaderOptions = {\n start: 'prev next today',\n center: 'title',\n end: 'dayGridMonth dayGridWeek dayGridDay'\n};\nconst VIEW_TYPES = {\n BASIC: 'basic',\n AGENDA: 'agenda',\n LIST: 'list'\n};\nconst BUTTON_TEXT = {\n YEAR: 'Year',\n MONTH: 'Month',\n WEEK: 'Week',\n DAY: 'Day',\n TODAY: 'Today'\n};\nconst SELECTION_MODES = {\n NONE: 'none',\n SINGLE: 'single',\n MULTIPLE: 'multiple'\n};\nconst NEXT_DAY_THRESHOLD = {\n START: '00:00',\n END: '24:00'\n};\nconst getEventMomentValue = (value, key) => {\n let isDate = false;\n\n dateFormats.forEach((format) => {\n // moment supports uppercase formats\n if (moment(value, format.toUpperCase(), true).isValid()) {\n isDate = true;\n return false;\n }\n });\n\n // if the value is date then for end date the value should be end of the day as the calendar is approximating it to the start.\n if (isDate && key === 'end') {\n return moment(value).endOf('day');\n }\n\n return moment(value);\n};\nconst getUTCDateTime = (dateObj) => {\n dateObj = moment(dateObj);\n const year = dateObj.format('YYYY'),\n // javascript starts the month count from '0' where as moment returns the human count\n month = dateObj.format('MM') - 1,\n day = dateObj.format('DD'),\n hours = dateObj.format('HH'),\n minutes = dateObj.format('mm'),\n seconds = dateObj.format('ss');\n return new Date(year, month, day, hours, minutes, seconds);\n};\nconst WIDGET_CONFIG = {widgetType: 'wm-calendar', hostClass: DEFAULT_CLS};\nconst dateFormat = 'YYYY/MM/DD';\n\n@Component({\n standalone: true,\n selector: '[wmCalendar]',\n templateUrl: './calendar.component.html',\n styleUrls: [],\n providers: [\n provideAsWidgetRef(CalendarComponent)\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class CalendarComponent extends StylableComponent implements AfterContentInit, AfterViewInit, OnInit, OnDestroy, IRedrawableComponent {\n static initializeProps = registerProps();\n // The calendar element reference\n @ViewChild('calendar') _calendar: ElementRef;\n @ViewChild('datepicker') _datepicker: ElementRef;\n\n public selecteddates: any;\n public selecteddata: any;\n public currentview: object;\n public dataset: any;\n public calendartype;\n public controls = 'navigation, today, year, month, week, day';\n public datavalue;\n public eventtitle;\n public eventstart;\n public eventend;\n public eventallday;\n public eventclass;\n\n private eventSources: Array<any> = [];\n\n private dataSetEvents = {\n events: []\n };\n private oldData;\n // map the fullcalendar Element rendered\n private $fullCalendar;\n // model to the mobile calendar\n private proxyModel;\n private eventData;\n private events;\n private changesStack = [];\n\n // calendarOptions to the calendar\n private calendarOptions: any = {\n calendar: {\n height: 600,\n eventSources: this.eventSources,\n editable: true,\n locale: getSessionStorageItem('selectedLocale') || 'en',\n selectable: false,\n longPressDelay: isMobile() ? 1 : 1000,\n headerToolbar: defaultHeaderOptions,\n nextDayThreshold: NEXT_DAY_THRESHOLD,\n views: {\n month: {\n dayMaxEventsRow: true\n }\n },\n unselectAuto: false,\n eventDrop: this.eventDrop.bind(this),\n eventResizeStart: this.onEventChangeStart.bind(this),\n eventDragStart: this.onEventChangeStart.bind(this),\n eventResize: this.eventResize.bind(this),\n eventClick: this.eventClick.bind(this),\n select: this.select.bind(this),\n eventDidMount: this.eventDidMount.bind(this),\n viewDidMount: this.viewDidMount.bind(this),\n datesSet: this.datesSet.bind(this),\n dateClick: this.dateClick.bind(this)\n }\n };\n public view: string;\n private dayClass: Array<any> = [];\n private cancelLocaleChangeSubscription;\n\n // this function selects the default date given for the calendar\n selectDate() {\n let start, end;\n // checks if datavalue is an object and not a Date object\n if (isObject(this.datavalue) && !isDate(this.datavalue)) {\n // @ts-ignore\n start = moment(this.datavalue.start);\n // @ts-ignore\n end = moment(this.datavalue.end);\n } else {\n start = moment(this.datavalue);\n end = moment(this.datavalue).add(1, 'day').startOf('day');\n }\n this.$fullCalendar.gotoDate( (moment(start) as any)._d); // after selecting the date go to the date.\n\n this.$fullCalendar.select(start.valueOf(), end.valueOf());\n }\n\n // changes the calendar view to the default date given for the calendar.\n public gotoDate() {\n this.$fullCalendar.gotoDate( (moment(this.datavalue) as any)._d);\n }\n\n // this function takes the calendar view to the a year ahead\n public gotoNextYear() {\n this.$fullCalendar.nextYear();\n }\n\n // this function takes the calendar view to the a year before\n public gotoPrevYear() {\n this.$fullCalendar.prevYear();\n }\n\n /**\n * this function takes the calendar view to the specified month\n * @param monthVal, 1-12 value of month\n */\n public gotoMonth(monthVal) {\n let presentDay = this.$fullCalendar.getDate();\n const presentMonthVal = presentDay.getMonth();\n presentDay = moment(presentDay);\n if (presentMonthVal < monthVal) {\n this.$fullCalendar.gotoDate(presentDay.add(monthVal - presentMonthVal - 1, 'M').valueOf());\n } else {\n this.$fullCalendar.gotoDate(presentDay.subtract( presentMonthVal - monthVal + 1, 'M').valueOf());\n }\n }\n\n // this function takes the calendar view to the a month ahead\n public gotoNextMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.add(1, 'M').valueOf());\n }\n\n // this function takes the calendar view to the a month before\n public gotoPrevMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.subtract(1, 'M').valueOf());\n }\n\n\n // this function re-renders the events assigned to the calendar.\n public rerenderEvents() {\n this.$fullCalendar.render();\n }\n\n private setSelectedData(start, end) {\n let dataset = this.dataset;\n if (!dataset) {\n return;\n }\n\n const filteredDates = [];\n const eventStartKey = this.eventstart || 'start';\n const eventEndKey = this.eventend || 'end';\n const startDate = moment(new Date(start)).format('MM/DD/YYYY');\n const endDate = moment(new Date(end)).subtract(1, 'days').format('MM/DD/YYYY');\n\n dataset = dataset.data || dataset;\n dataset.forEach((value) => {\n if (!value[eventStartKey]) {\n return;\n }\n const eventStartDate = moment(new Date(value[eventStartKey])).format('MM/DD/YYYY');\n const eventEndDate = moment(new Date(value[eventEndKey] || value[eventStartKey])).format('MM/DD/YYYY');\n const eventExists = moment(eventStartDate).isSameOrAfter(startDate) && moment(eventEndDate).isSameOrBefore(endDate);\n if (eventExists) {\n filteredDates.push(value);\n }\n });\n return filteredDates;\n }\n\n private eventDrop(eventDropInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.oldEvent);\n this.invokeEventCallback('eventdrop', {$event: eventDropInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventDropInfo.delta, $revertFunc: eventDropInfo.revert, $ui: {}, $view: eventDropInfo.view});\n }\n\n // Returns the default date when the datavalue is provided\n getDefaultDate() {\n if (this.datavalue) {\n return new Date(this.datavalue);\n }\n }\n\n getDefaultOptions() {\n return this.calendarOptions;\n }\n\n getLib() {\n return 'fullcalendar';\n }\n\n private select($selectionInfo) {\n this.selecteddates = {start: getUTCDateTime($selectionInfo.start), end: getUTCDateTime($selectionInfo.end)};\n this.selecteddata = this.setSelectedData($selectionInfo.start, $selectionInfo.end);\n this.invokeEventCallback('select', {$start: $selectionInfo.start.valueOf(), $end: $selectionInfo.end.valueOf(), $view: $selectionInfo.view, $data: this.selecteddata});\n }\n\n /**\n * this functions unselects all the selections in calendar\n */\n public unselect() {\n this.$fullCalendar.unselect();\n }\n\n /**\n * this function is to add extendedProps data to the data object.\n * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns _eventMetadata event object as per the old version (v3)\n */\n private convertEventObj(eventObj) {\n if (!eventObj.extendedProps._eventMetadata) {\n return eventObj;\n }\n const _eventMetadata = eventObj.extendedProps._eventMetadata;\n Object.setPrototypeOf(_eventMetadata, eventObj);\n return _eventMetadata;\n }\n\n /**\n * this function is to add extendedProps data to the data object exluding start end title allDay objects if the key name matches.\n * * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns data event object as per the old version (v3)\n */\n private convertEventObjForOldAndNewData(eventObj) {\n const _eventMetadata = eventObj.extendedProps;\n extend(eventObj, _eventMetadata);\n return eventObj;\n }\n\n private eventResize(eventResizeInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.oldEvent);\n this.invokeEventCallback('eventresize', {$event: eventResizeInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventResizeInfo.delta, $revertFunc: eventResizeInfo.revert, $ui: {}, $view: eventResizeInfo.view});\n }\n\n private onEventChangeStart(event) {\n this.oldData = getClonedObject(event);\n }\n\n private eventClick(eventClickInfo) {\n let eventObj = this.convertEventObj(eventClickInfo.event);\n this.invokeEventCallback('eventclick', {$event: eventClickInfo.jsEvent, $data: eventObj, $view: eventClickInfo.view});\n }\n\n private eventDidMount(event) {\n let eventObj = this.convertEventObj(event.event);\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('eventrender', {$event: event.el, $data: eventObj, $view: event.view});\n }\n\n private viewDidMount($view) {\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('viewrender', {$view: $view});\n }\n\n /**\n * This function gets called when the view of the calendar changes.\n * @param data contains the start end data of the calendar view.\n */\n private datesSet(data) {\n this.currentview = {start: moment(data.start).format(\"YYYY-MM-DD\"), end: moment(data.end).format(\"YYYY-MM-DD\")};\n }\n\n private dateClick($info) {\n const dateInfo = getUTCDateTime($info.date).valueOf();\n this.invokeEventCallback('dateclick', {$dateInfo: dateInfo});\n }\n\n // update the calendar header options once the controls changes\n private updateCalendarHeaderOptions() {\n const ctrls = this.controls, viewType = this.calendartype,\n regEx = new RegExp('\\\\bday\\\\b', 'g');\n let left = '', right = '';\n if (ctrls && viewType) {\n if (includes(ctrls, 'navigation')) {\n left += ' prev next';\n }\n\n if (includes(ctrls, 'today')) {\n left += ' today';\n }\n\n if (includes(ctrls, 'year')) {\n right += (viewType === VIEW_TYPES.LIST) ? 'listYear' : '';\n }\n\n if (includes(ctrls, 'month')) {\n right += (viewType === VIEW_TYPES.LIST) ? ' listMonth' : ' dayGridMonth';\n }\n\n if (includes(ctrls, 'week')) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridWeek' : (viewType === VIEW_TYPES.LIST) ? ' listWeek' : ' timeGridWeek';\n }\n\n if (regEx.test(ctrls)) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridDay' : (viewType === VIEW_TYPES.LIST) ? ' listDay' : ' timeGridDay';\n }\n if (left.charAt(0) === ' ') {\n left = left.substring(1);\n }\n if (right.charAt(0) === ' ') {\n right = right.substring(1);\n }\n extend(this.calendarOptions.calendar.headerToolbar, {'start': left, 'end': right});\n }\n }\n\n constructor(inj: Injector, i18nService: AbstractI18nService, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n\n this.eventSources.push(this.dataSetEvents);\n let FullCalendar = window['FullCalendar'] ? window['FullCalendar'] : Calendar;\n if (!FullCalendar.__wm_locale_initialized) {\n i18nService.initCalendarLocale();\n FullCalendar.__wm_locale_initialized = true;\n }\n\n this.cancelLocaleChangeSubscription = this.getAppInstance().subscribe(\"locale-changed\", (libLocale) => {\n this.setLocale();\n this.applyCalendarOptions('option', 'locale', libLocale.fullCalendar || 'en');\n this.redraw();\n });\n }\n\n ngOnInit() {\n super.ngOnInit();\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['height']);\n this.setLocale();\n }\n\n onStyleChange(key, nv, ov?) {\n super.onStyleChange(key, nv, ov);\n if (key === 'height') {\n this.calendarOptions.calendar.height = this.calculateHeight(nv);\n this.updateCalendarOptions('option', 'height', this.calendarOptions.calendar.height);\n }\n }\n\n onPropertyChange(key, nv, ov?) {\n super.onPropertyChange(key, nv, ov);\n switch (key) {\n case 'selectionmode':\n if (nv !== SELECTION_MODES.NONE) {\n this.calendarOptions.calendar.selectable = true;\n this.updateCalendarOptions('option', 'selectable', true);\n if (nv === SELECTION_MODES.SINGLE) {\n this.calendarOptions.calendar.selectConstraint = {\n startTime: '00:00',\n endTime: '24:00'\n };\n this.updateCalendarOptions('option', 'selectConstraint', this.calendarOptions.calendar.selectConstraint);\n } else {\n this.updateCalendarOptions('option', 'selectConstraint', {});\n }\n } else {\n this.calendarOptions.calendar.selectable = false;\n this.updateCalendarOptions('option', 'selectable', false);\n }\n break;\n case 'view':\n if (nv !== 'month' || this.calendartype === VIEW_TYPES.LIST) {\n this.calendarOptions.calendar.defaultView = this.calendartype + capitalize(nv);\n } else {\n this.calendarOptions.calendar.defaultView = nv;\n }\n this.updateCalendarOptions('changeView', this.calendarOptions.calendar.defaultView);\n break;\n case 'calendartype':\n this.calendartype = nv || 'dayGrid';\n case 'controls':\n this.updateCalendarHeaderOptions();\n break;\n case 'dataset':\n let dataSet;\n const self = this;\n this.dataset = nv;\n dataSet = createArrayFrom(getClonedObject(nv));\n dataSet = this.constructCalendarDataset(dataSet);\n this.dataSetEvents.events = dataSet.filter((event) => {\n event.start = event.start || event.end;\n if (event.start) {\n return true;\n }\n });\n\n this.renderEventDataSet();\n break;\n case 'show':\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n }\n\n // to calculate the height for the event limit and parsing the value when it is percentage based.\n private calculateHeight(height): number {\n const $parent = $(this.nativeElement).parent(),\n elHeight = height || '650px';\n\n let parentHeight: any = $parent.css('height'),\n computedHeight: number;\n\n if (includes(elHeight, '%')) {\n if (includes(parentHeight, '%')) {\n parentHeight = $parent.height();\n }\n computedHeight = (parseInt(parentHeight, 10) * Number(elHeight.replace(/\\%/g, ''))) / 100;\n } else {\n computedHeight = parseInt(elHeight, 10);\n }\n this.calendarOptions.calendar.views.month.eventLimit = parseInt('' + computedHeight / 200, 10) + 1;\n return computedHeight;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n const calendarEl = this._calendar.nativeElement;\n let FullCalendar:any ;\n if(window['FullCalendar']) FullCalendar = window['FullCalendar'].Calendar \n else {\n FullCalendar = Calendar;\n this.calendarOptions.calendar = {...this.calendarOptions.calendar, plugins: [dayGridPlugin, timeGridPlugin, listPlugin,listPlugin, interactionPlugin], locales: allLocales}\n }\n\n const calendar = new FullCalendar(calendarEl, this.calendarOptions.calendar);\n this.$fullCalendar = calendar;\n this.invokeEventCallback('beforerender', {'$event' : {}});\n calendar.render();\n\n // if the changes are already stacked before calendar renders then execute them when needed\n if (this.changesStack.length) {\n this.changesStack.forEach((changeObj) => {\n this.applyCalendarOptions(changeObj.operationType, changeObj.argumentKey, changeObj.argumentValue);\n });\n this.changesStack.length = 0;\n }\n $(\".fc-prev-button\").attr(\"aria-label\", \"prev\");\n $(\".fc-next-button\").attr(\"aria-label\", \"next\");\n $(\".fc-today-button\").attr(\"aria-label\", \"today\");\n\n //WMS-22412 : change calender's view based on the configuration set from studio\n setTimeout(() => {\n this.$fullCalendar.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n },50);\n }\n\n // constructs the calendar dataset by mapping the eventstart, eventend, eventtitle etc.,\n private constructCalendarDataset(eventSource) {\n const properties = {\n title: this.eventtitle || 'title',\n allDay: this.eventallday || 'allday',\n start: this.eventstart || 'start',\n end: this.eventend || 'end',\n className: this.eventclass || 'className'\n };\n\n eventSource.forEach((obj) => {\n obj._eventMetadata = clone(obj);\n if (isEmpty(obj._eventMetadata.url)) {\n delete obj._eventMetadata.url;\n }\n if (isEmpty(obj.url)) {\n delete obj.url;\n }\n\n mapKeys(properties, (value, key) => {\n let objVal;\n if (key === 'title') {\n objVal = getEvaluatedData(obj, {expression: value}, this.viewParent);\n } else if (key === 'allDay') {\n objVal = !!get(obj, value);\n } else {\n objVal = get(obj, value);\n }\n if (!objVal) {\n return;\n }\n obj[key] = objVal;\n });\n });\n return eventSource;\n }\n\n private setLocale() {\n const year = get(this.appLocale, 'LABEL_CALENDAR_YEAR') || BUTTON_TEXT.YEAR;\n const month = get(this.appLocale, 'LABEL_CALENDAR_MONTH') || BUTTON_TEXT.MONTH;\n const week = get(this.appLocale, 'LABEL_CALENDAR_WEEK') || BUTTON_TEXT.WEEK;\n const day = get(this.appLocale, 'LABEL_CALENDAR_DAY') || BUTTON_TEXT.DAY;\n const today = get(this.appLocale, 'LABEL_CALENDAR_TODAY') || BUTTON_TEXT.TODAY;\n this.calendarOptions.calendar.buttonText = { year, month, week, day, today,\n 'listYear': year,\n 'listMonth': month,\n 'listWeek': week,\n 'listDay': day\n };\n }\n\n /**\n * override the default calendar options with the newSet of options\n * @param options\n */\n overrideDefaults(options) {\n if (isObject(options)) {\n Object.entries(options).map(option => this.$fullCalendar.setOption(option[0], option[1]));\n }\n }\n\n /**\n * if the operations are performed before the calendar renders, the changes are pushed into changesStack and will be executed after the calendar gets rendered\n * if the calendar is already rendered, then the specific operation will be performed according to the operation type\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n */\n updateCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {//\n if (!this.$fullCalendar) {\n this.changesStack.push({\n operationType: operationType,\n argumentKey: argumentKey,\n argumentValue: argumentValue\n });\n return;\n }\n this.applyCalendarOptions(operationType, argumentKey, argumentValue);\n }\n\n redraw() {\n this.updateCalendarOptions('render');\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n\n // on date change invoke the select event, and if date has event on it then invoke the event click.\n private onValueChange(value: Date): void {\n this.proxyModel = value;\n const selectedDate = this.proxyModel && moment(this.proxyModel).startOf('day').format(dateFormat),\n selectedEventData = this.eventData[selectedDate],\n start = moment(this.proxyModel),\n end = moment(this.proxyModel).endOf('day');\n this.selecteddata = selectedEventData;\n this.selecteddates = {\n 'start': moment(selectedDate).valueOf(),\n 'end' : moment(selectedDate).endOf('day').valueOf()\n };\n this.calendarOptions.calendar.select(start.valueOf(), end.valueOf(), {}, this, selectedEventData);\n if (selectedEventData) {\n this.calendarOptions.calendar.eventClick(selectedEventData, {}, this);\n }\n }\n\n /**\n * This function will receive an object containing source of calendar, apikey and calendarId and will integrate the respective calendar with fullcalendar.\n * @param eventObject\n */\n public addEventSource(eventObject) {\n if (isEmpty(eventObject)) {\n console.warn('addEventSource method requires an object as a parameter.');\n return;\n }\n if (eventObject.source === 'google') {\n if (!eventObject.googleCalendarApiKey || !eventObject.googleCalendarId ) {\n console.warn('For google calendar integration, \\'googleCalendarApiKey\\' and \\'googleCalendarId\\' should be passed in the parameter object.');\n return;\n }\n this.$fullCalendar.setOption('googleCalendarApiKey', eventObject.googleCalendarApiKey);\n this.$fullCalendar.addEventSource({\n googleCalendarId: eventObject.googleCalendarId\n });\n }\n }\n\n /**\n * get the viewTypeKey according to the calendarType and viewType selected\n * @param viewKey\n */\n getViewType(viewKey) {\n const calendarType = this.calendartype;\n const view = this.view;\n let result;\n\n if (view === 'month') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listMonth' : 'dayGridMonth';\n } else if (view === 'week') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridWeek' : (calendarType === VIEW_TYPES.LIST) ? 'listWeek' : 'timeGridWeek';\n } else if (view === 'day') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridDay' : (calendarType === VIEW_TYPES.LIST) ? 'listDay' : 'timeGridDay';\n } else if (view === 'year') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listYear' : '';\n } else {\n result = viewKey;\n }\n return result;\n }\n\n /**\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n * Handle various operations like Rendering Calendar, changing the calendar viewType, setting the calendarOptions according to the operationType.\n */\n applyCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {\n switch (operationType) {\n case 'render':\n this.$fullCalendar.render();\n break;\n case 'option':\n this.$fullCalendar.setOption(argumentKey, argumentValue);\n break;\n case 'changeView':\n const view = this.getViewType(argumentKey);\n this.$fullCalendar.changeView(view);\n break;\n }\n }\n\n /**\n * Adds the new eventsDataSet to the calendar object with addEvent Method and re-renders the calendar\n */\n renderEventDataSet() {\n const self = this;\n this.$fullCalendar.batchRendering(function() {\n const events = self.$fullCalendar.getEvents();\n each(events, function (event) {\n const eventData = self.$fullCalendar.getEventById(event.id);\n eventData.remove();\n });\n each(self.dataSetEvents.events, function (event) {\n self.$fullCalendar.addEvent(event);\n });\n });\n }\n\n ngOnDestroy() {\n if(this.cancelLocaleChangeSubscription) {\n this.cancelLocaleChangeSubscription();\n }\n }\n}\n","<div #calendar></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/calendar/src/calendar.props.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.html","../../../../../projects/components/widgets/input/calendar/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n const props = new Map(\n [\n ['calendartype', {value: 'basic', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['controls', {value: 'navigation, today, year, month, week, day', ...PROP_STRING}],\n ['dataset', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['eventallday', PROP_STRING],\n ['eventclass', PROP_STRING],\n ['eventend', PROP_STRING],\n ['eventstart', PROP_STRING],\n ['eventtitle', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showindevice', {displayType: 'inline-block', value: 'all', ...PROP_STRING}],\n ['view', PROP_STRING],\n ['selectionmode', PROP_STRING]\n ]\n );\n register('wm-calendar', props);\n};\n","import {\n AfterContentInit,\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n Injector,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {AbstractI18nService, getClonedObject, getSessionStorageItem, isMobile} from '@wm/core';\n\nimport {\n APPLY_STYLES_TYPE,\n createArrayFrom,\n getEvaluatedData,\n IRedrawableComponent,\n provideAsWidgetRef,\n StylableComponent,\n styler\n} from '@wm/components/base';\n\nimport {registerProps} from './calendar.props';\nimport {capitalize, clone, each, extend, get, includes, isDate, isEmpty, isObject, mapKeys} from \"lodash-es\";\n\ndeclare const $;\nimport * as momentLib from 'moment';\nconst moment = momentLib.default || window['moment'];\nimport {Calendar} from '@fullcalendar/core';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport listPlugin from '@fullcalendar/list'\nimport interactionPlugin from '@fullcalendar/interaction';\nimport allLocales from '@fullcalendar/core/locales-all';\n\nconst DEFAULT_CLS = 'app-calendar';\nconst dateFormats = ['yyyy-MM-dd', 'yyyy-M-dd', 'M-dd-yyyy', 'MM-dd-yy', 'yyyy, dd MMMM', 'yyyy, MMM dd', 'MM/dd/yyyy', 'M/d/yyyy', 'EEE, dd MMM yyyy', 'EEE MMM dd yyyy', 'EEEE, MMMM dd, yyyy', 'timestamp'];\nconst defaultHeaderOptions = {\n start: 'prev next today',\n center: 'title',\n end: 'dayGridMonth dayGridWeek dayGridDay'\n};\nconst VIEW_TYPES = {\n BASIC: 'basic',\n AGENDA: 'agenda',\n LIST: 'list'\n};\nconst BUTTON_TEXT = {\n YEAR: 'Year',\n MONTH: 'Month',\n WEEK: 'Week',\n DAY: 'Day',\n TODAY: 'Today'\n};\nconst SELECTION_MODES = {\n NONE: 'none',\n SINGLE: 'single',\n MULTIPLE: 'multiple'\n};\nconst NEXT_DAY_THRESHOLD = {\n START: '00:00',\n END: '24:00'\n};\nconst getEventMomentValue = (value, key) => {\n let isDate = false;\n\n dateFormats.forEach((format) => {\n // moment supports uppercase formats\n if (moment(value, format.toUpperCase(), true).isValid()) {\n isDate = true;\n return false;\n }\n });\n\n // if the value is date then for end date the value should be end of the day as the calendar is approximating it to the start.\n if (isDate && key === 'end') {\n return moment(value).endOf('day');\n }\n\n return moment(value);\n};\nconst getUTCDateTime = (dateObj) => {\n dateObj = moment(dateObj);\n const year = dateObj.format('YYYY'),\n // javascript starts the month count from '0' where as moment returns the human count\n month = dateObj.format('MM') - 1,\n day = dateObj.format('DD'),\n hours = dateObj.format('HH'),\n minutes = dateObj.format('mm'),\n seconds = dateObj.format('ss');\n return new Date(year, month, day, hours, minutes, seconds);\n};\nconst WIDGET_CONFIG = {widgetType: 'wm-calendar', hostClass: DEFAULT_CLS};\nconst dateFormat = 'YYYY/MM/DD';\n\n@Component({\n standalone: true,\n selector: '[wmCalendar]',\n templateUrl: './calendar.component.html',\n styleUrls: [],\n providers: [\n provideAsWidgetRef(CalendarComponent)\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class CalendarComponent extends StylableComponent implements AfterContentInit, AfterViewInit, OnInit, OnDestroy, IRedrawableComponent {\n static readonly initializeProps = registerProps();\n // The calendar element reference\n @ViewChild('calendar') _calendar: ElementRef;\n @ViewChild('datepicker') _datepicker: ElementRef;\n\n public selecteddates: any;\n public selecteddata: any;\n public currentview: object;\n public dataset: any;\n public calendartype;\n public controls = 'navigation, today, year, month, week, day';\n public datavalue;\n public eventtitle;\n public eventstart;\n public eventend;\n public eventallday;\n public eventclass;\n\n private readonly eventSources: Array<any> = [];\n\n private readonly dataSetEvents = {\n events: []\n };\n private oldData;\n // map the fullcalendar Element rendered\n private $fullCalendar;\n // model to the mobile calendar\n private proxyModel;\n private readonly eventData;\n private readonly events;\n private readonly changesStack = [];\n\n // calendarOptions to the calendar\n private readonly calendarOptions: any = {\n calendar: {\n height: 600,\n eventSources: this.eventSources,\n editable: true,\n locale: getSessionStorageItem('selectedLocale') || 'en',\n selectable: false,\n longPressDelay: isMobile() ? 1 : 1000,\n headerToolbar: defaultHeaderOptions,\n nextDayThreshold: NEXT_DAY_THRESHOLD,\n views: {\n month: {\n dayMaxEventsRow: true\n }\n },\n unselectAuto: false,\n eventDrop: this.eventDrop.bind(this),\n eventResizeStart: this.onEventChangeStart.bind(this),\n eventDragStart: this.onEventChangeStart.bind(this),\n eventResize: this.eventResize.bind(this),\n eventClick: this.eventClick.bind(this),\n select: this.select.bind(this),\n eventDidMount: this.eventDidMount.bind(this),\n viewDidMount: this.viewDidMount.bind(this),\n datesSet: this.datesSet.bind(this),\n dateClick: this.dateClick.bind(this)\n }\n };\n public view: string;\n private readonly dayClass: Array<any> = [];\n private readonly cancelLocaleChangeSubscription;\n\n // this function selects the default date given for the calendar\n selectDate() {\n let start, end;\n // checks if datavalue is an object and not a Date object\n if (isObject(this.datavalue) && !isDate(this.datavalue)) {\n // @ts-ignore\n start = moment(this.datavalue.start);\n // @ts-ignore\n end = moment(this.datavalue.end);\n } else {\n start = moment(this.datavalue);\n end = moment(this.datavalue).add(1, 'day').startOf('day');\n }\n this.$fullCalendar.gotoDate( (moment(start) as any)._d); // after selecting the date go to the date.\n\n this.$fullCalendar.select(start.valueOf(), end.valueOf());\n }\n\n // changes the calendar view to the default date given for the calendar.\n public gotoDate() {\n this.$fullCalendar.gotoDate( (moment(this.datavalue) as any)._d);\n }\n\n // this function takes the calendar view to the a year ahead\n public gotoNextYear() {\n this.$fullCalendar.nextYear();\n }\n\n // this function takes the calendar view to the a year before\n public gotoPrevYear() {\n this.$fullCalendar.prevYear();\n }\n\n /**\n * this function takes the calendar view to the specified month\n * @param monthVal, 1-12 value of month\n */\n public gotoMonth(monthVal) {\n let presentDay = this.$fullCalendar.getDate();\n const presentMonthVal = presentDay.getMonth();\n presentDay = moment(presentDay);\n if (presentMonthVal < monthVal) {\n this.$fullCalendar.gotoDate(presentDay.add(monthVal - presentMonthVal - 1, 'M').valueOf());\n } else {\n this.$fullCalendar.gotoDate(presentDay.subtract( presentMonthVal - monthVal + 1, 'M').valueOf());\n }\n }\n\n // this function takes the calendar view to the a month ahead\n public gotoNextMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.add(1, 'M').valueOf());\n }\n\n // this function takes the calendar view to the a month before\n public gotoPrevMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.subtract(1, 'M').valueOf());\n }\n\n\n // this function re-renders the events assigned to the calendar.\n public rerenderEvents() {\n this.$fullCalendar.render();\n }\n\n private setSelectedData(start, end) {\n let dataset = this.dataset;\n if (!dataset) {\n return;\n }\n\n const filteredDates = [];\n const eventStartKey = this.eventstart || 'start';\n const eventEndKey = this.eventend || 'end';\n const startDate = moment(new Date(start)).format('MM/DD/YYYY');\n const endDate = moment(new Date(end)).subtract(1, 'days').format('MM/DD/YYYY');\n\n dataset = dataset.data || dataset;\n dataset.forEach((value) => {\n if (!value[eventStartKey]) {\n return;\n }\n const eventStartDate = moment(new Date(value[eventStartKey])).format('MM/DD/YYYY');\n const eventEndDate = moment(new Date(value[eventEndKey] || value[eventStartKey])).format('MM/DD/YYYY');\n const eventExists = moment(eventStartDate).isSameOrAfter(startDate) && moment(eventEndDate).isSameOrBefore(endDate);\n if (eventExists) {\n filteredDates.push(value);\n }\n });\n return filteredDates;\n }\n\n private eventDrop(eventDropInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.oldEvent);\n this.invokeEventCallback('eventdrop', {$event: eventDropInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventDropInfo.delta, $revertFunc: eventDropInfo.revert, $ui: {}, $view: eventDropInfo.view});\n }\n\n // Returns the default date when the datavalue is provided\n getDefaultDate() {\n if (this.datavalue) {\n return new Date(this.datavalue);\n }\n }\n\n getDefaultOptions() {\n return this.calendarOptions;\n }\n\n getLib() {\n return 'fullcalendar';\n }\n\n private select($selectionInfo) {\n this.selecteddates = {start: getUTCDateTime($selectionInfo.start), end: getUTCDateTime($selectionInfo.end)};\n this.selecteddata = this.setSelectedData($selectionInfo.start, $selectionInfo.end);\n this.invokeEventCallback('select', {$start: $selectionInfo.start.valueOf(), $end: $selectionInfo.end.valueOf(), $view: $selectionInfo.view, $data: this.selecteddata});\n }\n\n /**\n * this functions unselects all the selections in calendar\n */\n public unselect() {\n this.$fullCalendar.unselect();\n }\n\n /**\n * this function is to add extendedProps data to the data object.\n * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns _eventMetadata event object as per the old version (v3)\n */\n private convertEventObj(eventObj) {\n if (!eventObj.extendedProps._eventMetadata) {\n return eventObj;\n }\n const _eventMetadata = eventObj.extendedProps._eventMetadata;\n Object.setPrototypeOf(_eventMetadata, eventObj);\n return _eventMetadata;\n }\n\n /**\n * this function is to add extendedProps data to the data object exluding start end title allDay objects if the key name matches.\n * * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns data event object as per the old version (v3)\n */\n private convertEventObjForOldAndNewData(eventObj) {\n const _eventMetadata = eventObj.extendedProps;\n extend(eventObj, _eventMetadata);\n return eventObj;\n }\n\n private eventResize(eventResizeInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.oldEvent);\n this.invokeEventCallback('eventresize', {$event: eventResizeInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventResizeInfo.delta, $revertFunc: eventResizeInfo.revert, $ui: {}, $view: eventResizeInfo.view});\n }\n\n private onEventChangeStart(event) {\n this.oldData = getClonedObject(event);\n }\n\n private eventClick(eventClickInfo) {\n let eventObj = this.convertEventObj(eventClickInfo.event);\n this.invokeEventCallback('eventclick', {$event: eventClickInfo.jsEvent, $data: eventObj, $view: eventClickInfo.view});\n }\n\n private eventDidMount(event) {\n let eventObj = this.convertEventObj(event.event);\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('eventrender', {$event: event.el, $data: eventObj, $view: event.view});\n }\n\n private viewDidMount($view) {\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('viewrender', {$view: $view});\n }\n\n /**\n * This function gets called when the view of the calendar changes.\n * @param data contains the start end data of the calendar view.\n */\n private datesSet(data) {\n this.currentview = {start: moment(data.start).format(\"YYYY-MM-DD\"), end: moment(data.end).format(\"YYYY-MM-DD\")};\n }\n\n private dateClick($info) {\n const dateInfo = getUTCDateTime($info.date).valueOf();\n this.invokeEventCallback('dateclick', {$dateInfo: dateInfo});\n }\n\n // update the calendar header options once the controls changes\n private updateCalendarHeaderOptions() {\n const ctrls = this.controls, viewType = this.calendartype,\n regEx = new RegExp('\\\\bday\\\\b', 'g');\n let left = '', right = '';\n if (ctrls && viewType) {\n if (includes(ctrls, 'navigation')) {\n left += ' prev next';\n }\n\n if (includes(ctrls, 'today')) {\n left += ' today';\n }\n\n if (includes(ctrls, 'year')) {\n right += (viewType === VIEW_TYPES.LIST) ? 'listYear' : '';\n }\n\n if (includes(ctrls, 'month')) {\n right += (viewType === VIEW_TYPES.LIST) ? ' listMonth' : ' dayGridMonth';\n }\n\n if (includes(ctrls, 'week')) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridWeek' : (viewType === VIEW_TYPES.LIST) ? ' listWeek' : ' timeGridWeek';\n }\n\n if (regEx.test(ctrls)) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridDay' : (viewType === VIEW_TYPES.LIST) ? ' listDay' : ' timeGridDay';\n }\n if (left.charAt(0) === ' ') {\n left = left.substring(1);\n }\n if (right.charAt(0) === ' ') {\n right = right.substring(1);\n }\n extend(this.calendarOptions.calendar.headerToolbar, {'start': left, 'end': right});\n }\n }\n\n constructor(inj: Injector, i18nService: AbstractI18nService, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n\n this.eventSources.push(this.dataSetEvents);\n let FullCalendar = window['FullCalendar'] ? window['FullCalendar'] : Calendar;\n if (!FullCalendar.__wm_locale_initialized) {\n i18nService.initCalendarLocale();\n FullCalendar.__wm_locale_initialized = true;\n }\n\n this.cancelLocaleChangeSubscription = this.getAppInstance().subscribe(\"locale-changed\", (libLocale) => {\n this.setLocale();\n this.applyCalendarOptions('option', 'locale', libLocale.fullCalendar || 'en');\n this.redraw();\n });\n }\n\n ngOnInit() {\n super.ngOnInit();\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['height']);\n this.setLocale();\n }\n\n onStyleChange(key, nv, ov?) {\n super.onStyleChange(key, nv, ov);\n if (key === 'height') {\n this.calendarOptions.calendar.height = this.calculateHeight(nv);\n this.updateCalendarOptions('option', 'height', this.calendarOptions.calendar.height);\n }\n }\n\n onPropertyChange(key, nv, ov?) {\n super.onPropertyChange(key, nv, ov);\n switch (key) {\n case 'selectionmode':\n if (nv !== SELECTION_MODES.NONE) {\n this.calendarOptions.calendar.selectable = true;\n this.updateCalendarOptions('option', 'selectable', true);\n if (nv === SELECTION_MODES.SINGLE) {\n this.calendarOptions.calendar.selectConstraint = {\n startTime: '00:00',\n endTime: '24:00'\n };\n this.updateCalendarOptions('option', 'selectConstraint', this.calendarOptions.calendar.selectConstraint);\n } else {\n this.updateCalendarOptions('option', 'selectConstraint', {});\n }\n } else {\n this.calendarOptions.calendar.selectable = false;\n this.updateCalendarOptions('option', 'selectable', false);\n }\n break;\n case 'view':\n if (nv !== 'month' || this.calendartype === VIEW_TYPES.LIST) {\n this.calendarOptions.calendar.defaultView = this.calendartype + capitalize(nv);\n } else {\n this.calendarOptions.calendar.defaultView = nv;\n }\n this.updateCalendarOptions('changeView', this.calendarOptions.calendar.defaultView);\n break;\n case 'calendartype':\n this.calendartype = nv || 'dayGrid';\n case 'controls':\n this.updateCalendarHeaderOptions();\n break;\n case 'dataset':\n let dataSet;\n this.dataset = nv;\n dataSet = createArrayFrom(getClonedObject(nv));\n dataSet = this.constructCalendarDataset(dataSet);\n this.dataSetEvents.events = dataSet.filter((event) => {\n event.start = event.start || event.end;\n if (event.start) {\n return true;\n }\n });\n\n this.renderEventDataSet();\n break;\n case 'show':\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n }\n\n // to calculate the height for the event limit and parsing the value when it is percentage based.\n private calculateHeight(height): number {\n const $parent = $(this.nativeElement).parent(),\n elHeight = height || '650px';\n\n let parentHeight: any = $parent.css('height'),\n computedHeight: number;\n\n if (includes(elHeight, '%')) {\n if (includes(parentHeight, '%')) {\n parentHeight = $parent.height();\n }\n computedHeight = (parseInt(parentHeight, 10) * Number(elHeight.replace(/\\%/g, ''))) / 100;\n } else {\n computedHeight = parseInt(elHeight, 10);\n }\n this.calendarOptions.calendar.views.month.eventLimit = parseInt('' + computedHeight / 200, 10) + 1;\n return computedHeight;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n const calendarEl = this._calendar.nativeElement;\n let FullCalendar:any ;\n if(window['FullCalendar']) FullCalendar = window['FullCalendar'].Calendar \n else {\n FullCalendar = Calendar;\n this.calendarOptions.calendar = {...this.calendarOptions.calendar, plugins: [dayGridPlugin, timeGridPlugin, listPlugin,listPlugin, interactionPlugin], locales: allLocales}\n }\n\n const calendar = new FullCalendar(calendarEl, this.calendarOptions.calendar);\n this.$fullCalendar = calendar;\n this.invokeEventCallback('beforerender', {'$event' : {}});\n calendar.render();\n\n // if the changes are already stacked before calendar renders then execute them when needed\n if (this.changesStack.length) {\n this.changesStack.forEach((changeObj) => {\n this.applyCalendarOptions(changeObj.operationType, changeObj.argumentKey, changeObj.argumentValue);\n });\n this.changesStack.length = 0;\n }\n $(\".fc-prev-button\").attr(\"aria-label\", \"prev\");\n $(\".fc-next-button\").attr(\"aria-label\", \"next\");\n $(\".fc-today-button\").attr(\"aria-label\", \"today\");\n\n //WMS-22412 : change calender's view based on the configuration set from studio\n setTimeout(() => {\n this.$fullCalendar.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n },50);\n }\n\n // constructs the calendar dataset by mapping the eventstart, eventend, eventtitle etc.,\n private constructCalendarDataset(eventSource) {\n const properties = {\n title: this.eventtitle || 'title',\n allDay: this.eventallday || 'allday',\n start: this.eventstart || 'start',\n end: this.eventend || 'end',\n className: this.eventclass || 'className'\n };\n\n eventSource.forEach((obj) => {\n obj._eventMetadata = clone(obj);\n if (isEmpty(obj._eventMetadata.url)) {\n delete obj._eventMetadata.url;\n }\n if (isEmpty(obj.url)) {\n delete obj.url;\n }\n\n mapKeys(properties, (value, key) => {\n let objVal;\n if (key === 'title') {\n objVal = getEvaluatedData(obj, {expression: value}, this.viewParent);\n } else if (key === 'allDay') {\n objVal = !!get(obj, value);\n } else {\n objVal = get(obj, value);\n }\n if (!objVal) {\n return;\n }\n obj[key] = objVal;\n });\n });\n return eventSource;\n }\n\n private setLocale() {\n const year = get(this.appLocale, 'LABEL_CALENDAR_YEAR') || BUTTON_TEXT.YEAR;\n const month = get(this.appLocale, 'LABEL_CALENDAR_MONTH') || BUTTON_TEXT.MONTH;\n const week = get(this.appLocale, 'LABEL_CALENDAR_WEEK') || BUTTON_TEXT.WEEK;\n const day = get(this.appLocale, 'LABEL_CALENDAR_DAY') || BUTTON_TEXT.DAY;\n const today = get(this.appLocale, 'LABEL_CALENDAR_TODAY') || BUTTON_TEXT.TODAY;\n this.calendarOptions.calendar.buttonText = { year, month, week, day, today,\n 'listYear': year,\n 'listMonth': month,\n 'listWeek': week,\n 'listDay': day\n };\n }\n\n /**\n * override the default calendar options with the newSet of options\n * @param options\n */\n overrideDefaults(options) {\n if (isObject(options)) {\n Object.entries(options).forEach(option => this.$fullCalendar.setOption(option[0], option[1]));\n }\n }\n\n /**\n * if the operations are performed before the calendar renders, the changes are pushed into changesStack and will be executed after the calendar gets rendered\n * if the calendar is already rendered, then the specific operation will be performed according to the operation type\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n */\n updateCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {//\n if (!this.$fullCalendar) {\n this.changesStack.push({\n operationType: operationType,\n argumentKey: argumentKey,\n argumentValue: argumentValue\n });\n return;\n }\n this.applyCalendarOptions(operationType, argumentKey, argumentValue);\n }\n\n redraw() {\n this.updateCalendarOptions('render');\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n\n // on date change invoke the select event, and if date has event on it then invoke the event click.\n private onValueChange(value: Date): void {\n this.proxyModel = value;\n const selectedDate = this.proxyModel && moment(this.proxyModel).startOf('day').format(dateFormat),\n selectedEventData = this.eventData[selectedDate],\n start = moment(this.proxyModel),\n end = moment(this.proxyModel).endOf('day');\n this.selecteddata = selectedEventData;\n this.selecteddates = {\n 'start': moment(selectedDate).valueOf(),\n 'end' : moment(selectedDate).endOf('day').valueOf()\n };\n this.calendarOptions.calendar.select(start.valueOf(), end.valueOf(), {}, this, selectedEventData);\n if (selectedEventData) {\n this.calendarOptions.calendar.eventClick(selectedEventData, {}, this);\n }\n }\n\n /**\n * This function will receive an object containing source of calendar, apikey and calendarId and will integrate the respective calendar with fullcalendar.\n * @param eventObject\n */\n public addEventSource(eventObject) {\n if (isEmpty(eventObject)) {\n console.warn('addEventSource method requires an object as a parameter.');\n return;\n }\n if (eventObject.source === 'google') {\n if (!eventObject.googleCalendarApiKey || !eventObject.googleCalendarId ) {\n console.warn('For google calendar integration, \\'googleCalendarApiKey\\' and \\'googleCalendarId\\' should be passed in the parameter object.');\n return;\n }\n this.$fullCalendar.setOption('googleCalendarApiKey', eventObject.googleCalendarApiKey);\n this.$fullCalendar.addEventSource({\n googleCalendarId: eventObject.googleCalendarId\n });\n }\n }\n\n /**\n * get the viewTypeKey according to the calendarType and viewType selected\n * @param viewKey\n */\n getViewType(viewKey) {\n const calendarType = this.calendartype;\n const view = this.view;\n let result;\n\n if (view === 'month') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listMonth' : 'dayGridMonth';\n } else if (view === 'week') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridWeek' : (calendarType === VIEW_TYPES.LIST) ? 'listWeek' : 'timeGridWeek';\n } else if (view === 'day') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridDay' : (calendarType === VIEW_TYPES.LIST) ? 'listDay' : 'timeGridDay';\n } else if (view === 'year') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listYear' : '';\n } else {\n result = viewKey;\n }\n return result;\n }\n\n /**\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n * Handle various operations like Rendering Calendar, changing the calendar viewType, setting the calendarOptions according to the operationType.\n */\n applyCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {\n switch (operationType) {\n case 'render':\n this.$fullCalendar.render();\n break;\n case 'option':\n this.$fullCalendar.setOption(argumentKey, argumentValue);\n break;\n case 'changeView':\n const view = this.getViewType(argumentKey);\n this.$fullCalendar.changeView(view);\n break;\n }\n }\n\n /**\n * Adds the new eventsDataSet to the calendar object with addEvent Method and re-renders the calendar\n */\n renderEventDataSet() {\n const self = this;\n this.$fullCalendar.batchRendering(function() {\n const events = self.$fullCalendar.getEvents();\n each(events, function (event) {\n const eventData = self.$fullCalendar.getEventById(event.id);\n eventData.remove();\n });\n each(self.dataSetEvents.events, function (event) {\n self.$fullCalendar.addEvent(event);\n });\n });\n }\n\n ngOnDestroy() {\n if(this.cancelLocaleChangeSubscription) {\n this.cancelLocaleChangeSubscription();\n }\n }\n}\n","<div #calendar></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAEO,MAAM,aAAa,GAAG,MAAK;AAC9B,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,CACb;QACI,CAAC,cAAc,EAAE,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,EAAC,CAAC;QAClD,CAAC,OAAO,EAAE,WAAW,CAAC;QACtB,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,GAAG,WAAW,EAAC,CAAC;QACxC,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,2CAA2C,EAAE,GAAG,WAAW,EAAC,CAAC;QAClF,CAAC,SAAS,EAAE,QAAQ,CAAC;QACrB,CAAC,WAAW,EAAE,WAAW,CAAC;QAC1B,CAAC,aAAa,EAAE,WAAW,CAAC;QAC5B,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,UAAU,EAAE,WAAW,CAAC;QACzB,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAC,CAAC;AACxC,QAAA,CAAC,cAAc,EAAE,EAAC,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,WAAW,EAAC,CAAC;QAC7E,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,eAAe,EAAE,WAAW;AAChC,KAAA,CACJ;AACL,IAAA,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAC;AAClC,CAAC;;ACOD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC;AAQpD,MAAM,WAAW,GAAG,cAAc;AAClC,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,WAAW,CAAC;AAC9M,MAAM,oBAAoB,GAAG;AACzB,IAAA,KAAK,EAAE,iBAAiB;AACxB,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,GAAG,EAAE;CACR;AACD,MAAM,UAAU,GAAG;AACf,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,IAAI,EAAE;CACT;AACD,MAAM,WAAW,GAAG;AAChB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,KAAK,EAAE;CACV;AACD,MAAM,eAAe,GAAG;AACpB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,QAAQ,EAAE;CACb;AACD,MAAM,kBAAkB,GAAG;AACvB,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,GAAG,EAAE;CACR;AACD,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,GAAG,KAAI;IACvC,IAAI,MAAM,GAAG,KAAK;AAElB,IAAA,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;;AAE3B,QAAA,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACrD,MAAM,GAAG,IAAI;AACb,YAAA,OAAO,KAAK;QAChB;AACJ,IAAA,CAAC,CAAC;;AAGF,IAAA,IAAI,MAAM,IAAI,GAAG,KAAK,KAAK,EAAE;QACzB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACrC;AAEA,IAAA,OAAO,MAAM,CAAC,KAAK,CAAC;AACxB,CAAC;AACD,MAAM,cAAc,GAAG,CAAC,OAAO,KAAI;AAC/B,IAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AACzB,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;;IAE/B,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAChC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAC1B,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAC5B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAC9B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;AAClC,IAAA,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAC9D,CAAC;AACD,MAAM,aAAa,GAAG,EAAC,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAC;AACzE,MAAM,UAAU,GAAG,YAAY;AAYzB,MAAO,iBAAkB,SAAQ,iBAAiB,CAAA;AACpC,IAAA,SAAA,IAAA,CAAA,eAAe,GAAG,aAAa,EAAhB,CAAmB;;IAkElD,UAAU,GAAA;QACN,IAAI,KAAK,EAAE,GAAG;;AAEd,QAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;;YAErD,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;;YAEpC,GAAG,GAAK,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;QACtC;aAAO;AACH,YAAA,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;AAC9B,YAAA,GAAG,GAAK,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/D;AACA,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAG,MAAM,CAAC,KAAK,CAAS,CAAC,EAAE,CAAC,CAAC;AAExD,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IAC7D;;IAGO,QAAQ,GAAA;AACX,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAS,CAAC,EAAE,CAAC;IACpE;;IAGO,YAAY,GAAA;AACf,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;IACjC;;IAGO,YAAY,GAAA;AACf,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;IACjC;AAEA;;;AAGG;AACI,IAAA,SAAS,CAAC,QAAQ,EAAA;QACrB,IAAI,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE;AAC7C,QAAA,MAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,EAAE;AAC7C,QAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,IAAI,eAAe,GAAG,QAAQ,EAAE;YAC5B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,GAAG,eAAe,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QAC9F;aAAO;YACH,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAE,eAAe,GAAG,QAAQ,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QACpG;IACJ;;IAGO,aAAa,GAAA;QAChB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;AACvD,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACjE;;IAGO,aAAa,GAAA;QAChB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;AACvD,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACtE;;IAIO,cAAc,GAAA;AACjB,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;IAC/B;IAEQ,eAAe,CAAC,KAAK,EAAE,GAAG,EAAA;AAC9B,QAAA,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO;QAC1B,IAAI,CAAC,OAAO,EAAE;YACV;QACJ;QAEA,MAAM,aAAa,GAAG,EAAE;AACxB,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO;AAChD,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK;AAC1C,QAAA,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;AAE9E,QAAA,OAAO,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO;AACjC,QAAA,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACtB,YAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;gBACvB;YACJ;AACA,YAAA,MAAM,cAAc,GAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACpF,MAAM,YAAY,GAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACxG,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC;YACnH,IAAI,WAAW,EAAE;AACb,gBAAA,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;YAC7B;AACJ,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,aAAa;IACxB;AAEQ,IAAA,SAAS,CAAC,aAAa,EAAA;QAC3B,IAAI,UAAU,GAAG,IAAI,CAAC,+BAA+B,CAAC,aAAa,CAAC,KAAK,CAAC;QAC1E,IAAI,UAAU,GAAG,IAAI,CAAC,+BAA+B,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC7E,QAAA,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAC,MAAM,EAAE,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,EAAC,CAAC;IAC1N;;IAGA,cAAc,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACnC;IACJ;IAEA,iBAAiB,GAAA;QACb,OAAO,IAAI,CAAC,eAAe;IAC/B;IAEA,MAAM,GAAA;AACF,QAAA,OAAO,cAAc;IACzB;AAEQ,IAAA,MAAM,CAAC,cAAc,EAAA;QACzB,IAAI,CAAC,aAAa,GAAG,EAAC,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAC;AAC3G,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC;AAClF,QAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EAAC,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAC,CAAC;IAC1K;AAEA;;AAEG;IACI,QAAQ,GAAA;AACX,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;IACjC;AAEA;;;;;AAKG;AACK,IAAA,eAAe,CAAC,QAAQ,EAAA;AAC5B,QAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,cAAc,EAAE;AACxC,YAAA,OAAO,QAAQ;QACnB;AACA,QAAA,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,cAAc;AAC5D,QAAA,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC;AAC/C,QAAA,OAAO,cAAc;IACzB;AAEA;;;;;AAKG;AACK,IAAA,+BAA+B,CAAC,QAAQ,EAAA;AAC5C,QAAA,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa;AAC7C,QAAA,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC;AAChC,QAAA,OAAO,QAAQ;IACnB;AAEQ,IAAA,WAAW,CAAC,eAAe,EAAA;QAC/B,IAAI,UAAU,GAAG,IAAI,CAAC,+BAA+B,CAAC,eAAe,CAAC,KAAK,CAAC;QAC5E,IAAI,UAAU,GAAG,IAAI,CAAC,+BAA+B,CAAC,eAAe,CAAC,QAAQ,CAAC;AAC/E,QAAA,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,EAAC,MAAM,EAAE,eAAe,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,EAAC,CAAC;IACpO;AAEQ,IAAA,kBAAkB,CAAC,KAAK,EAAA;AAC5B,QAAA,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC;IACzC;AAEQ,IAAA,UAAU,CAAC,cAAc,EAAA;QAC7B,IAAI,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,KAAK,CAAC;QACzD,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,EAAC,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,EAAC,CAAC;IACzH;AAEQ,IAAA,aAAa,CAAC,KAAK,EAAA;QACvB,IAAI,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;QAChD,IAAI,IAAI,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,EAAE;AACvC,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC1D;QACA,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAC,CAAC;IACnG;AAEQ,IAAA,YAAY,CAAC,KAAK,EAAA;QACtB,IAAI,IAAI,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,EAAE;AACvC,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC1D;QACA,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC;IAC1D;AAEA;;;AAGG;AACK,IAAA,QAAQ,CAAC,IAAI,EAAA;AACjB,QAAA,IAAI,CAAC,WAAW,GAAG,EAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAC;IACnH;AAEQ,IAAA,SAAS,CAAC,KAAK,EAAA;QACnB,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;QACrD,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAC,SAAS,EAAE,QAAQ,EAAC,CAAC;IAChE;;IAGQ,2BAA2B,GAAA;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC,YAAY,EACrD,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC;AACxC,QAAA,IAAI,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE;AACzB,QAAA,IAAI,KAAK,IAAI,QAAQ,EAAE;AACnB,YAAA,IAAI,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE;gBAC/B,IAAI,IAAI,YAAY;YACxB;AAEA,YAAA,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;gBAC1B,IAAI,IAAI,QAAQ;YACpB;AAEA,YAAA,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE;AACzB,gBAAA,KAAK,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC,IAAI,IAAI,UAAU,GAAG,EAAE;YAC7D;AAEA,YAAA,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;AAC1B,gBAAA,KAAK,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC,IAAI,IAAI,YAAY,GAAG,eAAe;YAC5E;AAEA,YAAA,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE;AACzB,gBAAA,KAAK,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC,KAAK,IAAK,cAAc,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC,IAAI,IAAI,WAAW,GAAG,eAAe;YAC/H;AAEA,YAAA,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACnB,gBAAA,KAAK,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC,KAAK,IAAK,aAAa,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC,IAAI,IAAI,UAAU,GAAG,cAAc;YAC5H;YACA,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACxB,gBAAA,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5B;YACA,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACzB,gBAAA,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9B;AACA,YAAA,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC;QACtF;IACJ;AAEA,IAAA,WAAA,CAAY,GAAa,EAAE,WAAgC,EAA0C,eAAoB,EAAA;AACrH,QAAA,KAAK,CAAC,GAAG,EAAE,aAAa,EAAE,eAAe,CAAC;QApSvC,IAAA,CAAA,QAAQ,GAAG,2CAA2C;QAQ5C,IAAA,CAAA,YAAY,GAAe,EAAE;AAE7B,QAAA,IAAA,CAAA,aAAa,GAAG;AAC7B,YAAA,MAAM,EAAE;SACX;QAQgB,IAAA,CAAA,YAAY,GAAG,EAAE;;AAGjB,QAAA,IAAA,CAAA,eAAe,GAAQ;AACpC,YAAA,QAAQ,EAAE;AACN,gBAAA,MAAM,EAAE,GAAG;gBACX,YAAY,EAAE,IAAI,CAAC,YAAY;AAC/B,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,MAAM,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,IAAI;AACvD,gBAAA,UAAU,EAAE,KAAK;gBACjB,cAAc,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,IAAI;AACrC,gBAAA,aAAa,EAAE,oBAAoB;AACnC,gBAAA,gBAAgB,EAAE,kBAAkB;AACpC,gBAAA,KAAK,EAAE;AACH,oBAAA,KAAK,EAAE;AACH,wBAAA,eAAe,EAAE;AACpB;AACJ,iBAAA;AACD,gBAAA,YAAY,EAAE,KAAK;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;gBACpC,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACpD,cAAc,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClD,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9B,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC5C,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI;AACtC;SACJ;QAEgB,IAAA,CAAA,QAAQ,GAAe,EAAE;QAkPtC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;AAC1C,QAAA,IAAI,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,QAAQ;AAC7E,QAAA,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE;YACvC,WAAW,CAAC,kBAAkB,EAAE;AAChC,YAAA,YAAY,CAAC,uBAAuB,GAAG,IAAI;QAC/C;AAEA,QAAA,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,SAAS,KAAI;YAClG,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC;YAC7E,IAAI,CAAC,MAAM,EAAE;AACjB,QAAA,CAAC,CAAC;IACN;IAEA,QAAQ,GAAA;QACJ,KAAK,CAAC,QAAQ,EAAE;AAChB,QAAA,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;QACzE,IAAI,CAAC,SAAS,EAAE;IACpB;AAEA,IAAA,aAAa,CAAC,GAAG,EAAE,EAAE,EAAE,EAAG,EAAA;QACtB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;AAChC,QAAA,IAAI,GAAG,KAAK,QAAQ,EAAE;AAClB,YAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;AAC/D,YAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC;QACxF;IACJ;AAEA,IAAA,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAG,EAAA;QACzB,KAAK,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;QACnC,QAAQ,GAAG;AACP,YAAA,KAAK,eAAe;AAChB,gBAAA,IAAI,EAAE,KAAK,eAAe,CAAC,IAAI,EAAE;oBAC7B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI;oBAC/C,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC;AACxD,oBAAA,IAAI,EAAE,KAAK,eAAe,CAAC,MAAM,EAAE;AAC/B,wBAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,GAAG;AAC7C,4BAAA,SAAS,EAAE,OAAO;AAClB,4BAAA,OAAO,EAAE;yBACZ;AACD,wBAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBAC5G;yBAAO;wBACH,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,EAAE,CAAC;oBAChE;gBACJ;qBAAO;oBACH,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,GAAG,KAAK;oBAChD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC;gBAC7D;gBACA;AACJ,YAAA,KAAK,MAAM;AACP,gBAAA,IAAI,EAAE,KAAK,OAAO,IAAI,IAAI,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,EAAE;AACzD,oBAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;gBAClF;qBAAO;oBACH,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,GAAG,EAAE;gBAClD;AACA,gBAAA,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACnF;AACJ,YAAA,KAAK,cAAc;AACf,gBAAA,IAAI,CAAC,YAAY,GAAG,EAAE,IAAI,SAAS;AACvC,YAAA,KAAK,UAAU;gBACX,IAAI,CAAC,2BAA2B,EAAE;gBAClC;AACJ,YAAA,KAAK,SAAS;AACV,gBAAA,IAAI,OAAO;AACX,gBAAA,IAAI,CAAC,OAAO,GAAG,EAAE;gBACjB,OAAO,GAAG,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC9C,gBAAA,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC;AAChD,gBAAA,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,KAAI;oBACjD,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG;AACtC,oBAAA,IAAI,KAAK,CAAC,KAAK,EAAE;AACb,wBAAA,OAAO,IAAI;oBACf;AACJ,gBAAA,CAAC,CAAC;gBAEF,IAAI,CAAC,kBAAkB,EAAE;gBACzB;AACJ,YAAA,KAAK,MAAM;gBACP,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC;;IAEpG;;AAGQ,IAAA,eAAe,CAAC,MAAM,EAAA;AAC1B,QAAA,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,EAC1C,QAAQ,GAAG,MAAM,IAAI,OAAO;QAEhC,IAAI,YAAY,GAAQ,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EACzC,cAAsB;AAE1B,QAAA,IAAI,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE;AACzB,YAAA,IAAI,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE;AAC7B,gBAAA,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE;YACnC;YACA,cAAc,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG;QAC7F;aAAO;AACH,YAAA,cAAc,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC3C;QACA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC,EAAE,GAAG,cAAc,GAAG,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;AAClG,QAAA,OAAO,cAAc;IACzB;IAEA,eAAe,GAAA;QACX,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa;AAC/C,QAAA,IAAI,YAAgB;QACpB,IAAG,MAAM,CAAC,cAAc,CAAC;AAAE,YAAA,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,QAAQ;aACpE;YACD,YAAY,GAAG,QAAQ;AACvB,YAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,EAAC,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,EAAC,UAAU,EAAE,iBAAiB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAC;QAC/K;AAEA,QAAA,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;AAC5E,QAAA,IAAI,CAAC,aAAa,GAAI,QAAQ;QAC9B,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,EAAC,QAAQ,EAAG,EAAE,EAAC,CAAC;QACzD,QAAQ,CAAC,MAAM,EAAE;;AAGjB,QAAA,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;YAC1B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,SAAS,KAAI;AACpC,gBAAA,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,aAAa,EAAE,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,aAAa,CAAC;AACtG,YAAA,CAAC,CAAC;AACF,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAChC;QACA,CAAC,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;QAC/C,CAAC,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;QAC/C,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC;;QAGjD,UAAU,CAAC,MAAK;YACZ,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC;QAC3F,CAAC,EAAC,EAAE,CAAC;IACT;;AAGQ,IAAA,wBAAwB,CAAC,WAAW,EAAA;AACxC,QAAA,MAAM,UAAU,GAAG;AACf,YAAA,KAAK,EAAE,IAAI,CAAC,UAAU,IAAI,OAAO;AACjC,YAAA,MAAM,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ;AACpC,YAAA,KAAK,EAAE,IAAI,CAAC,UAAU,IAAI,OAAO;AACjC,YAAA,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK;AAC3B,YAAA,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI;SACjC;AAED,QAAA,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACxB,YAAA,GAAG,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC;YAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;AACjC,gBAAA,OAAO,GAAG,CAAC,cAAc,CAAC,GAAG;YACjC;AACA,YAAA,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAClB,OAAO,GAAG,CAAC,GAAG;YAClB;YAEA,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,GAAG,KAAI;AAC/B,gBAAA,IAAI,MAAM;AACV,gBAAA,IAAI,GAAG,KAAK,OAAO,EAAE;AACjB,oBAAA,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,EAAC,UAAU,EAAE,KAAK,EAAC,EAAE,IAAI,CAAC,UAAU,CAAC;gBACxE;AAAO,qBAAA,IAAI,GAAG,KAAK,QAAQ,EAAE;oBACzB,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;gBAC9B;qBAAO;AACH,oBAAA,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;gBAC5B;gBACA,IAAI,CAAC,MAAM,EAAE;oBACT;gBACJ;AACA,gBAAA,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM;AACrB,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,WAAW;IACtB;IAEQ,SAAS,GAAA;AACb,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,IAAI,WAAW,CAAC,IAAI;AAC3E,QAAA,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,IAAI,WAAW,CAAC,KAAK;AAC9E,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,IAAI,WAAW,CAAC,IAAI;AAC3E,QAAA,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,IAAI,WAAW,CAAC,GAAG;AACxE,QAAA,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,IAAI,WAAW,CAAC,KAAK;AAC9E,QAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,GAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK;AACzE,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,SAAS,EAAE;SACd;IACL;AAEA;;;AAGG;AACH,IAAA,gBAAgB,CAAC,OAAO,EAAA;AACpB,QAAA,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE;AACnB,YAAA,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG;IACJ;AAEA;;;;;;AAMG;AACH,IAAA,qBAAqB,CAAC,aAAqB,EAAE,WAAiB,EAAE,aAAmB,EAAA;AAC/E,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACnB,gBAAA,aAAa,EAAE,aAAa;AAC5B,gBAAA,WAAW,EAAE,WAAW;AACxB,gBAAA,aAAa,EAAE;AAClB,aAAA,CAAC;YACF;QACJ;QACA,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE,WAAW,EAAE,aAAa,CAAC;IACxE;IAEA,MAAM,GAAA;AACF,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC;IAC5F;;AAGQ,IAAA,aAAa,CAAC,KAAW,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;QACvB,MAAM,YAAY,GAAU,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EACpG,iBAAiB,GAAK,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAClD,KAAK,GAAiB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAC7C,GAAG,GAAmB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;AAC9D,QAAA,IAAI,CAAC,YAAY,GAAG,iBAAiB;QACrC,IAAI,CAAC,aAAa,GAAG;AACjB,YAAA,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;AACvC,YAAA,KAAK,EAAI,MAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO;SACrD;QACD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC;QACjG,IAAI,iBAAiB,EAAE;AACnB,YAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,EAAE,IAAI,CAAC;QACzE;IACJ;AAEA;;;AAGG;AACI,IAAA,cAAc,CAAC,WAAW,EAAA;AAC7B,QAAA,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE;AACtB,YAAA,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC;YACxE;QACJ;AACA,QAAA,IAAI,WAAW,CAAC,MAAM,KAAK,QAAQ,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,oBAAoB,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAG;AACrE,gBAAA,OAAO,CAAC,IAAI,CAAC,8HAA8H,CAAC;gBAC5I;YACJ;YACA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,sBAAsB,EAAE,WAAW,CAAC,oBAAoB,CAAC;AACtF,YAAA,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;gBAC9B,gBAAgB,EAAE,WAAW,CAAC;AACjC,aAAA,CAAC;QACN;IACJ;AAEA;;;AAGG;AACH,IAAA,WAAW,CAAC,OAAO,EAAA;AACf,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY;AACtC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;AACtB,QAAA,IAAI,MAAM;AAEV,QAAA,IAAI,IAAI,KAAK,OAAO,EAAE;AAClB,YAAA,MAAM,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,IAAI,WAAW,GAAG,cAAc;QAC9E;AAAO,aAAA,IAAI,IAAI,KAAK,MAAM,EAAE;AACxB,YAAA,MAAM,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,KAAK,IAAK,aAAa,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,IAAI,UAAU,GAAG,cAAc;QACpI;AAAO,aAAA,IAAI,IAAI,KAAK,KAAK,EAAE;AACvB,YAAA,MAAM,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,KAAK,IAAK,YAAY,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,IAAI,SAAS,GAAG,aAAa;QACjI;AAAO,aAAA,IAAI,IAAI,KAAK,MAAM,EAAE;AACxB,YAAA,MAAM,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,IAAI,IAAI,UAAU,GAAG,EAAE;QACjE;aAAO;YACH,MAAM,GAAG,OAAO;QACpB;AACA,QAAA,OAAO,MAAM;IACjB;AAEA;;;;;AAKG;AACH,IAAA,oBAAoB,CAAC,aAAqB,EAAE,WAAiB,EAAE,aAAmB,EAAA;QAC9E,QAAQ,aAAa;AACjB,YAAA,KAAK,QAAQ;AACT,gBAAA,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;gBAC3B;AACJ,YAAA,KAAK,QAAQ;gBACT,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,WAAW,EAAE,aAAa,CAAC;gBACxD;AACJ,YAAA,KAAK,YAAY;gBACb,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;AAC1C,gBAAA,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC;gBACnC;;IAEZ;AAEA;;AAEG;IACH,kBAAkB,GAAA;QACd,MAAM,IAAI,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,YAAA;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;AAC7C,YAAA,IAAI,CAAC,MAAM,EAAE,UAAU,KAAK,EAAA;AACxB,gBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3D,SAAS,CAAC,MAAM,EAAE;AACtB,YAAA,CAAC,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,KAAK,EAAA;AAC3C,gBAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC;AACtC,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;IACN;IAEA,WAAW,GAAA;AACP,QAAA,IAAG,IAAI,CAAC,8BAA8B,EAAE;YACpC,IAAI,CAAC,8BAA8B,EAAE;QACzC;IACJ;AAnnBS,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,6EA8S2C,kBAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA9S9E,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,SAAA,EALf;YACP,kBAAkB,CAAC,iBAAiB;AACvC,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1GL,yBACA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FD4Ga,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAV7B,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,cAAc,EAAA,SAAA,EAGb;AACP,wBAAA,kBAAkB,CAAA,iBAAA;qBACrB,EAAA,aAAA,EACc,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,yBAAA,EAAA;;0BAgTyB,MAAM;2BAAC,kBAAkB;;0BAAG;;sBA3SzF,SAAS;uBAAC,UAAU;;sBACpB,SAAS;uBAAC,YAAY;;;AEjH3B;;AAEG;;;;"}
@@ -4,7 +4,7 @@ import { AbstractI18nService } from '@wm/core';
4
4
  import { StylableComponent, IRedrawableComponent } from '@wm/components/base';
5
5
 
6
6
  declare class CalendarComponent extends StylableComponent implements AfterContentInit, AfterViewInit, OnInit, OnDestroy, IRedrawableComponent {
7
- static initializeProps: void;
7
+ static readonly initializeProps: void;
8
8
  _calendar: ElementRef;
9
9
  _datepicker: ElementRef;
10
10
  selecteddates: any;
@@ -19,18 +19,18 @@ declare class CalendarComponent extends StylableComponent implements AfterConten
19
19
  eventend: any;
20
20
  eventallday: any;
21
21
  eventclass: any;
22
- private eventSources;
23
- private dataSetEvents;
22
+ private readonly eventSources;
23
+ private readonly dataSetEvents;
24
24
  private oldData;
25
25
  private $fullCalendar;
26
26
  private proxyModel;
27
- private eventData;
28
- private events;
29
- private changesStack;
30
- private calendarOptions;
27
+ private readonly eventData;
28
+ private readonly events;
29
+ private readonly changesStack;
30
+ private readonly calendarOptions;
31
31
  view: string;
32
- private dayClass;
33
- private cancelLocaleChangeSubscription;
32
+ private readonly dayClass;
33
+ private readonly cancelLocaleChangeSubscription;
34
34
  selectDate(): void;
35
35
  gotoDate(): void;
36
36
  gotoNextYear(): void;
@@ -54,7 +54,7 @@
54
54
  // For select widget, display placeholder only on focus else remove the text of the option selected.
55
55
  checkForSelectPlaceholder() {
56
56
  const selectElPlaceholderOption = this.nativeEl.querySelector('#placeholderOption');
57
- if (selectElPlaceholderOption && selectElPlaceholderOption.textContent && !$(this.nativeEl).find('select').is(':focus') &&
57
+ if (selectElPlaceholderOption?.textContent && !$(this.nativeEl).find('select').is(':focus') &&
58
58
  !$(this.inputEl.closest('[widget-id]')).attr('datavalue')) {
59
59
  selectElPlaceholderOption.textContent = '';
60
60
  }
@@ -145,7 +145,7 @@
145
145
  // In case of form fields, when the field is in focus, isFocused will be set as true
146
146
  // isSelectMultiple is set to true when for select widget, multiple option is enabled
147
147
  // Checking inputEl focus - when form is represented as dialog and the first field is automatically in focus
148
- const isInputElFocused = this.inputEl && this.inputEl.is(':focus');
148
+ const isInputElFocused = this.inputEl?.is(':focus');
149
149
  if (data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {
150
150
  data.nativeEl.addClass('float-active');
151
151
  if (!data.displayVal && isInputElFocused) {
@@ -180,10 +180,10 @@
180
180
  this._attrObserver.disconnect();
181
181
  }
182
182
  }
183
- static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0__namespace, type: CaptionPositionDirective, deps: [{ token: i0__namespace.Injector }, { token: i1__namespace.App }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
184
- static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.20", type: CaptionPositionDirective, isStandalone: true, selector: "[wmCaptionPosition]", ngImport: i0__namespace }); }
183
+ static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: CaptionPositionDirective, deps: [{ token: i0__namespace.Injector }, { token: i1__namespace.App }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
184
+ static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.21", type: CaptionPositionDirective, isStandalone: true, selector: "[wmCaptionPosition]", ngImport: i0__namespace }); }
185
185
  }
186
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0__namespace, type: CaptionPositionDirective, decorators: [{
186
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: CaptionPositionDirective, decorators: [{
187
187
  type: i0.Directive,
188
188
  args: [{
189
189
  standalone: true,
@@ -33,7 +33,7 @@ class CaptionPositionDirective {
33
33
  // For select widget, display placeholder only on focus else remove the text of the option selected.
34
34
  checkForSelectPlaceholder() {
35
35
  const selectElPlaceholderOption = this.nativeEl.querySelector('#placeholderOption');
36
- if (selectElPlaceholderOption && selectElPlaceholderOption.textContent && !$(this.nativeEl).find('select').is(':focus') &&
36
+ if (selectElPlaceholderOption?.textContent && !$(this.nativeEl).find('select').is(':focus') &&
37
37
  !$(this.inputEl.closest('[widget-id]')).attr('datavalue')) {
38
38
  selectElPlaceholderOption.textContent = '';
39
39
  }
@@ -124,7 +124,7 @@ class CaptionPositionDirective {
124
124
  // In case of form fields, when the field is in focus, isFocused will be set as true
125
125
  // isSelectMultiple is set to true when for select widget, multiple option is enabled
126
126
  // Checking inputEl focus - when form is represented as dialog and the first field is automatically in focus
127
- const isInputElFocused = this.inputEl && this.inputEl.is(':focus');
127
+ const isInputElFocused = this.inputEl?.is(':focus');
128
128
  if (data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {
129
129
  data.nativeEl.addClass('float-active');
130
130
  if (!data.displayVal && isInputElFocused) {
@@ -159,10 +159,10 @@ class CaptionPositionDirective {
159
159
  this._attrObserver.disconnect();
160
160
  }
161
161
  }
162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0, type: CaptionPositionDirective, deps: [{ token: i0.Injector }, { token: i1.App }], target: i0.ɵɵFactoryTarget.Directive }); }
163
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.20", type: CaptionPositionDirective, isStandalone: true, selector: "[wmCaptionPosition]", ngImport: i0 }); }
162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: CaptionPositionDirective, deps: [{ token: i0.Injector }, { token: i1.App }], target: i0.ɵɵFactoryTarget.Directive }); }
163
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.21", type: CaptionPositionDirective, isStandalone: true, selector: "[wmCaptionPosition]", ngImport: i0 }); }
164
164
  }
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0, type: CaptionPositionDirective, decorators: [{
165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: CaptionPositionDirective, decorators: [{
166
166
  type: Directive,
167
167
  args: [{
168
168
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/caption-position/src/caption-position.directive.ts","../../../../../projects/components/widgets/input/caption-position/src/index.ts"],"sourcesContent":["import {AfterViewInit, Directive, ElementRef, Injector, OnDestroy, OnInit} from '@angular/core';\nimport {App} from '@wm/core';\nimport {forEach} from \"lodash-es\";\n\ndeclare const $;\n@Directive({\n standalone: true,\n selector: '[wmCaptionPosition]'\n})\nexport class CaptionPositionDirective implements AfterViewInit, OnInit, OnDestroy {\n private elementRef: ElementRef;\n private inputEl;\n private nativeEl;\n private compositeEle;\n private app: App;\n private labelAnimationSubscription;\n private placeholder;\n private _attrObserver;\n private _isPlaceholderBound;\n\n // skip floating caption for the below form fields\n private skipFloatPositionWidgets: string[] = ['radioset', 'checkboxset', 'richtext', 'switch', 'chips', 'checkbox', 'slider', 'rating', 'toggle', 'upload'];\n\n constructor(inj: Injector, app: App) {\n this.elementRef = inj.get(ElementRef);\n this.nativeEl = this.elementRef.nativeElement;\n this.app = app;\n }\n\n private onBlurCb() { // on blur, remove animation and placeholder if there is no value\n let mobileInputVal;\n // In case of mobile date / time picker check for input element's value which has 'mobile-input' class\n if (this.inputEl.length > 1 && this.inputEl.hasClass('mobile-input')) {\n forEach(this.inputEl, (el) => {\n if ($(el).hasClass('mobile-input') && el.value) {\n mobileInputVal = el.value;\n }\n });\n }\n if (!this.inputEl.val() && !mobileInputVal) {\n this.compositeEle.classList.remove('float-active');\n this.inputEl.removeAttr('placeholder');\n }\n }\n\n private onFocusCb() { // on focus, add animation class and the place holder\n this.compositeEle.classList.add('float-active');\n this.inputEl.attr('placeholder', this.placeholder);\n }\n\n // For select widget, display placeholder only on focus else remove the text of the option selected.\n private checkForSelectPlaceholder() {\n const selectElPlaceholderOption = this.nativeEl.querySelector('#placeholderOption');\n if (selectElPlaceholderOption && selectElPlaceholderOption.textContent && !$(this.nativeEl).find('select').is(':focus') &&\n !$(this.inputEl.closest('[widget-id]')).attr('datavalue')) {\n selectElPlaceholderOption.textContent = '';\n }\n }\n\n private setDefaultValueAnimation() { // set animation when default values are present\n // remove placeholder when the input el has placeholder and the placeholder is not bound to any variable\n if (!this._isPlaceholderBound && this.inputEl.attr('placeholder')) {\n this.placeholder = this.inputEl.attr('placeholder');\n this.inputEl.removeAttr('placeholder');\n }\n\n // Do not show placeholder as selected by default\n this.checkForSelectPlaceholder();\n\n // check for datavalue attribute in composite element and defaultvalue attribute in form field element\n // check for datavalue.bind attribute to see whether default value is binded via expression or a variable\n // check for displayformat attribute, as in form fields user can set display format to the field\n // check for formdata/bindformdata attribute to see if any default value is binded to the form\n // check for select tag with multiple attribute enabled\n\n if ((this.inputEl.val() && !this.inputEl.is('select')) || $(this.inputEl.closest('[widget-id]')).attr('datavalue') || $(this.inputEl.parent('[widget-id]')).attr('datavalue.bind') || this.nativeEl.getAttribute('defaultvalue')\n || this.nativeEl.getAttribute('displayformat') || $(this.nativeEl).find('select option:selected').text() || $(this.nativeEl).find('select').attr('multiple')) {\n this.compositeEle.classList.add('float-active');\n }\n }\n\n /**\n * Observing placeholder attribute change on DOM instead of having a propChangeHandler fn\n * For composite widgets propertychangehandler function is invoked at independent widgets where as the directive is at composite level\n */\n private observeForPlaceholderAttrChange() {\n this._attrObserver = new MutationObserver(mutations => {\n mutations.forEach((mutation) => {\n if (mutation.attributeName === 'placeholder' && this.inputEl.attr('placeholder') && !this.compositeEle.classList.contains('float-active')) {\n this.placeholder = this.inputEl.attr('placeholder');\n this.inputEl.removeAttr('placeholder');\n }\n });\n });\n const config = { attributes: true, childList: false, characterData: false };\n this._attrObserver.observe(this.inputEl[0], config);\n }\n\n // when a form is right aligned and have input-group-btn's like date picker, time picker etc. adjust the css to not overlap the label on the icon\n private checkForRightAlignedForm() {\n const $compositeEle = $(this.compositeEle);\n if ($compositeEle.closest('.align-right').length && $compositeEle.find('.input-group-btn').length) {\n const $label = $compositeEle.find('label');\n if ($compositeEle.find('[wmdatetime]').length) { // for datetime picker, as there will be 2 icons css is different\n $label.addClass('input-grp-dt-icon');\n } else {\n $label.addClass('input-grp-icon');\n }\n }\n }\n\n ngAfterViewInit() {\n this.compositeEle = this.nativeEl;\n const widget = this.nativeEl.widget;\n let captionPosition: string = widget.$attrs.get('captionposition');\n if (widget.form) {\n captionPosition = widget.form.$attrs.get('captionposition');\n this.compositeEle = this.nativeEl.querySelector('.app-composite-widget');\n this._isPlaceholderBound = this.nativeEl.getAttribute('placeholder.bind');\n }\n if (captionPosition === 'floating') {\n if (widget.form) { // for form-fields remove caption-floating and replace it with caption-float or caption-top\n const widgetType: string = this.nativeEl.getAttribute('widgettype'); // fetches the form field type\n if (this.skipFloatPositionWidgets.indexOf(widgetType) > -1) {\n this.compositeEle.classList.remove('caption-floating');\n this.compositeEle.classList.add('caption-top');\n }\n this.checkForRightAlignedForm();\n }\n this.inputEl = $(this.nativeEl).find('input, select, textarea');\n if (!this._isPlaceholderBound) {\n this._isPlaceholderBound = this.inputEl.closest('[widget-id]').attr('placeholder.bind');\n }\n // call the below function to apply float-active class when there are default values to the fields\n setTimeout(this.setDefaultValueAnimation.bind(this), 0);\n\n this.inputEl.focus(this.onFocusCb.bind(this));\n this.inputEl.blur(this.onBlurCb.bind(this));\n\n // observe for placeholder attribute change when placeholder is bound via db variable or an expression\n if (this._isPlaceholderBound) {\n this.observeForPlaceholderAttrChange();\n }\n }\n }\n\n // captionPositionAnimate is only notified for date-time, time and search widgets as input el is not updated with value on selection of dropdown/popups\n ngOnInit() {\n this.labelAnimationSubscription = this.app.subscribe('captionPositionAnimate', (data) => {\n // displayVal is true when there is a value entered in the input field\n // In case of form fields, when the field is in focus, isFocused will be set as true\n // isSelectMultiple is set to true when for select widget, multiple option is enabled\n // Checking inputEl focus - when form is represented as dialog and the first field is automatically in focus\n const isInputElFocused = this.inputEl && this.inputEl.is(':focus');\n if (data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {\n data.nativeEl.addClass('float-active');\n if (!data.displayVal && isInputElFocused) {\n this.inputEl.attr('placeholder', this.placeholder);\n }\n } else {\n data.nativeEl.removeClass('float-active');\n // Remove placeholder on removing float-active, if not the label and placeholder are collided\n // before placeholder is removed assign it to the placeholder variable\n // check for placeholder in inputel and selectel\n if (this.inputEl) {\n const selectElPlaceholderOption = this.nativeEl.querySelector('#placeholderOption');\n if (this.inputEl.attr('placeholder') || selectElPlaceholderOption) {\n if (selectElPlaceholderOption) {\n selectElPlaceholderOption.textContent = '';\n } else {\n this.placeholder = this.inputEl.attr('placeholder');\n this.inputEl.removeAttr('placeholder');\n }\n }\n }\n }\n });\n }\n\n ngOnDestroy() {\n if (this.labelAnimationSubscription) {\n this.labelAnimationSubscription();\n }\n if (this._attrObserver) {\n this._attrObserver.disconnect();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/caption-position/src/caption-position.directive.ts","../../../../../projects/components/widgets/input/caption-position/src/index.ts"],"sourcesContent":["import {AfterViewInit, Directive, ElementRef, Injector, OnDestroy, OnInit} from '@angular/core';\nimport {App} from '@wm/core';\nimport {forEach} from \"lodash-es\";\n\ndeclare const $;\n@Directive({\n standalone: true,\n selector: '[wmCaptionPosition]'\n})\nexport class CaptionPositionDirective implements AfterViewInit, OnInit, OnDestroy {\n private readonly elementRef: ElementRef;\n private inputEl;\n private readonly nativeEl;\n private compositeEle;\n private readonly app: App;\n private labelAnimationSubscription;\n private placeholder;\n private _attrObserver;\n private _isPlaceholderBound;\n\n // skip floating caption for the below form fields\n private readonly skipFloatPositionWidgets: string[] = ['radioset', 'checkboxset', 'richtext', 'switch', 'chips', 'checkbox', 'slider', 'rating', 'toggle', 'upload'];\n\n constructor(inj: Injector, app: App) {\n this.elementRef = inj.get(ElementRef);\n this.nativeEl = this.elementRef.nativeElement;\n this.app = app;\n }\n\n private onBlurCb() { // on blur, remove animation and placeholder if there is no value\n let mobileInputVal;\n // In case of mobile date / time picker check for input element's value which has 'mobile-input' class\n if (this.inputEl.length > 1 && this.inputEl.hasClass('mobile-input')) {\n forEach(this.inputEl, (el) => {\n if ($(el).hasClass('mobile-input') && el.value) {\n mobileInputVal = el.value;\n }\n });\n }\n if (!this.inputEl.val() && !mobileInputVal) {\n this.compositeEle.classList.remove('float-active');\n this.inputEl.removeAttr('placeholder');\n }\n }\n\n private onFocusCb() { // on focus, add animation class and the place holder\n this.compositeEle.classList.add('float-active');\n this.inputEl.attr('placeholder', this.placeholder);\n }\n\n // For select widget, display placeholder only on focus else remove the text of the option selected.\n private checkForSelectPlaceholder() {\n const selectElPlaceholderOption = this.nativeEl.querySelector('#placeholderOption');\n if (selectElPlaceholderOption?.textContent && !$(this.nativeEl).find('select').is(':focus') &&\n !$(this.inputEl.closest('[widget-id]')).attr('datavalue')) {\n selectElPlaceholderOption.textContent = '';\n }\n }\n\n private setDefaultValueAnimation() { // set animation when default values are present\n // remove placeholder when the input el has placeholder and the placeholder is not bound to any variable\n if (!this._isPlaceholderBound && this.inputEl.attr('placeholder')) {\n this.placeholder = this.inputEl.attr('placeholder');\n this.inputEl.removeAttr('placeholder');\n }\n\n // Do not show placeholder as selected by default\n this.checkForSelectPlaceholder();\n\n // check for datavalue attribute in composite element and defaultvalue attribute in form field element\n // check for datavalue.bind attribute to see whether default value is binded via expression or a variable\n // check for displayformat attribute, as in form fields user can set display format to the field\n // check for formdata/bindformdata attribute to see if any default value is binded to the form\n // check for select tag with multiple attribute enabled\n\n if ((this.inputEl.val() && !this.inputEl.is('select')) || $(this.inputEl.closest('[widget-id]')).attr('datavalue') || $(this.inputEl.parent('[widget-id]')).attr('datavalue.bind') || this.nativeEl.getAttribute('defaultvalue')\n || this.nativeEl.getAttribute('displayformat') || $(this.nativeEl).find('select option:selected').text() || $(this.nativeEl).find('select').attr('multiple')) {\n this.compositeEle.classList.add('float-active');\n }\n }\n\n /**\n * Observing placeholder attribute change on DOM instead of having a propChangeHandler fn\n * For composite widgets propertychangehandler function is invoked at independent widgets where as the directive is at composite level\n */\n private observeForPlaceholderAttrChange() {\n this._attrObserver = new MutationObserver(mutations => {\n mutations.forEach((mutation) => {\n if (mutation.attributeName === 'placeholder' && this.inputEl.attr('placeholder') && !this.compositeEle.classList.contains('float-active')) {\n this.placeholder = this.inputEl.attr('placeholder');\n this.inputEl.removeAttr('placeholder');\n }\n });\n });\n const config = { attributes: true, childList: false, characterData: false };\n this._attrObserver.observe(this.inputEl[0], config);\n }\n\n // when a form is right aligned and have input-group-btn's like date picker, time picker etc. adjust the css to not overlap the label on the icon\n private checkForRightAlignedForm() {\n const $compositeEle = $(this.compositeEle);\n if ($compositeEle.closest('.align-right').length && $compositeEle.find('.input-group-btn').length) {\n const $label = $compositeEle.find('label');\n if ($compositeEle.find('[wmdatetime]').length) { // for datetime picker, as there will be 2 icons css is different\n $label.addClass('input-grp-dt-icon');\n } else {\n $label.addClass('input-grp-icon');\n }\n }\n }\n\n ngAfterViewInit() {\n this.compositeEle = this.nativeEl;\n const widget = this.nativeEl.widget;\n let captionPosition: string = widget.$attrs.get('captionposition');\n if (widget.form) {\n captionPosition = widget.form.$attrs.get('captionposition');\n this.compositeEle = this.nativeEl.querySelector('.app-composite-widget');\n this._isPlaceholderBound = this.nativeEl.getAttribute('placeholder.bind');\n }\n if (captionPosition === 'floating') {\n if (widget.form) { // for form-fields remove caption-floating and replace it with caption-float or caption-top\n const widgetType: string = this.nativeEl.getAttribute('widgettype'); // fetches the form field type\n if (this.skipFloatPositionWidgets.indexOf(widgetType) > -1) {\n this.compositeEle.classList.remove('caption-floating');\n this.compositeEle.classList.add('caption-top');\n }\n this.checkForRightAlignedForm();\n }\n this.inputEl = $(this.nativeEl).find('input, select, textarea');\n if (!this._isPlaceholderBound) {\n this._isPlaceholderBound = this.inputEl.closest('[widget-id]').attr('placeholder.bind');\n }\n // call the below function to apply float-active class when there are default values to the fields\n setTimeout(this.setDefaultValueAnimation.bind(this), 0);\n\n this.inputEl.focus(this.onFocusCb.bind(this));\n this.inputEl.blur(this.onBlurCb.bind(this));\n\n // observe for placeholder attribute change when placeholder is bound via db variable or an expression\n if (this._isPlaceholderBound) {\n this.observeForPlaceholderAttrChange();\n }\n }\n }\n\n // captionPositionAnimate is only notified for date-time, time and search widgets as input el is not updated with value on selection of dropdown/popups\n ngOnInit() {\n this.labelAnimationSubscription = this.app.subscribe('captionPositionAnimate', (data) => {\n // displayVal is true when there is a value entered in the input field\n // In case of form fields, when the field is in focus, isFocused will be set as true\n // isSelectMultiple is set to true when for select widget, multiple option is enabled\n // Checking inputEl focus - when form is represented as dialog and the first field is automatically in focus\n const isInputElFocused = this.inputEl?.is(':focus');\n if (data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {\n data.nativeEl.addClass('float-active');\n if (!data.displayVal && isInputElFocused) {\n this.inputEl.attr('placeholder', this.placeholder);\n }\n } else {\n data.nativeEl.removeClass('float-active');\n // Remove placeholder on removing float-active, if not the label and placeholder are collided\n // before placeholder is removed assign it to the placeholder variable\n // check for placeholder in inputel and selectel\n if (this.inputEl) {\n const selectElPlaceholderOption = this.nativeEl.querySelector('#placeholderOption');\n if (this.inputEl.attr('placeholder') || selectElPlaceholderOption) {\n if (selectElPlaceholderOption) {\n selectElPlaceholderOption.textContent = '';\n } else {\n this.placeholder = this.inputEl.attr('placeholder');\n this.inputEl.removeAttr('placeholder');\n }\n }\n }\n }\n });\n }\n\n ngOnDestroy() {\n if (this.labelAnimationSubscription) {\n this.labelAnimationSubscription();\n }\n if (this._attrObserver) {\n this._attrObserver.disconnect();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -3,16 +3,16 @@ import { AfterViewInit, OnInit, OnDestroy, Injector } from '@angular/core';
3
3
  import { App } from '@wm/core';
4
4
 
5
5
  declare class CaptionPositionDirective implements AfterViewInit, OnInit, OnDestroy {
6
- private elementRef;
6
+ private readonly elementRef;
7
7
  private inputEl;
8
- private nativeEl;
8
+ private readonly nativeEl;
9
9
  private compositeEle;
10
- private app;
10
+ private readonly app;
11
11
  private labelAnimationSubscription;
12
12
  private placeholder;
13
13
  private _attrObserver;
14
14
  private _isPlaceholderBound;
15
- private skipFloatPositionWidgets;
15
+ private readonly skipFloatPositionWidgets;
16
16
  constructor(inj: Injector, app: App);
17
17
  private onBlurCb;
18
18
  private onFocusCb;
@@ -163,14 +163,14 @@
163
163
  // Call parent ngOnDestroy
164
164
  super.ngOnDestroy();
165
165
  }
166
- static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0__namespace, type: CheckboxComponent, deps: [{ token: i0__namespace.Injector }, { token: 'checkedvalue', attribute: true }, { token: 'uncheckedvalue', attribute: true }, { token: 'type', attribute: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component }); }
167
- static { this.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.20", type: CheckboxComponent, isStandalone: true, selector: "[wmCheckbox]", host: { listeners: { "keydown.enter": "onKeyDown($event)" } }, providers: [
166
+ static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: CheckboxComponent, deps: [{ token: i0__namespace.Injector }, { token: 'checkedvalue', attribute: true }, { token: 'uncheckedvalue', attribute: true }, { token: 'type', attribute: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component }); }
167
+ static { this.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.21", type: CheckboxComponent, isStandalone: true, selector: "[wmCheckbox]", host: { listeners: { "keydown.enter": "onKeyDown($event)" } }, providers: [
168
168
  base.provideAs(CheckboxComponent, i2.NG_VALUE_ACCESSOR, true),
169
169
  base.provideAs(CheckboxComponent, i2.NG_VALIDATORS, true),
170
170
  base.provideAsWidgetRef(CheckboxComponent)
171
171
  ], viewQueries: [{ propertyName: "ngModel", first: true, predicate: i2.NgModel, descendants: true }, { propertyName: "checkboxEl", first: true, predicate: ["checkbox"], descendants: true, read: i0.ElementRef, static: true }], usesInheritance: true, ngImport: i0__namespace, template: "<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n", dependencies: [{ kind: "ngmodule", type: i1.CommonModule }, { kind: "directive", type: i1__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i2.FormsModule }, { kind: "directive", type: i2__namespace.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2__namespace.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i2__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
172
172
  }
173
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0__namespace, type: CheckboxComponent, decorators: [{
173
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: CheckboxComponent, decorators: [{
174
174
  type: i0.Component,
175
175
  args: [{ standalone: true, imports: [i1.CommonModule, i2.FormsModule, base.WmAppIconComponent], selector: '[wmCheckbox]', providers: [
176
176
  base.provideAs(CheckboxComponent, i2.NG_VALUE_ACCESSOR, true),
@@ -146,14 +146,14 @@ class CheckboxComponent extends BaseFormCustomComponent {
146
146
  // Call parent ngOnDestroy
147
147
  super.ngOnDestroy();
148
148
  }
149
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.Injector }, { token: 'checkedvalue', attribute: true }, { token: 'uncheckedvalue', attribute: true }, { token: 'type', attribute: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
150
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.20", type: CheckboxComponent, isStandalone: true, selector: "[wmCheckbox]", host: { listeners: { "keydown.enter": "onKeyDown($event)" } }, providers: [
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.Injector }, { token: 'checkedvalue', attribute: true }, { token: 'uncheckedvalue', attribute: true }, { token: 'type', attribute: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
150
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.21", type: CheckboxComponent, isStandalone: true, selector: "[wmCheckbox]", host: { listeners: { "keydown.enter": "onKeyDown($event)" } }, providers: [
151
151
  provideAs(CheckboxComponent, NG_VALUE_ACCESSOR, true),
152
152
  provideAs(CheckboxComponent, NG_VALIDATORS, true),
153
153
  provideAsWidgetRef(CheckboxComponent)
154
154
  ], viewQueries: [{ propertyName: "ngModel", first: true, predicate: NgModel, descendants: true }, { propertyName: "checkboxEl", first: true, predicate: ["checkbox"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
155
155
  }
156
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.20", ngImport: i0, type: CheckboxComponent, decorators: [{
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: CheckboxComponent, decorators: [{
157
157
  type: Component,
158
158
  args: [{ standalone: true, imports: [CommonModule, FormsModule, WmAppIconComponent], selector: '[wmCheckbox]', providers: [
159
159
  provideAs(CheckboxComponent, NG_VALUE_ACCESSOR, true),