@wavemaker/app-runtime-wm-build 11.8.0-next.1417113 → 11.8.0-next.141712

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 (1676) hide show
  1. package/package-lock.json +17 -0
  2. {app-runtime-wm-build → package}/package.json +8 -3
  3. {app-runtime-wm-build → package}/wmapp/scripts/wm-libs.js +46 -46
  4. {app-runtime-wm-build → package}/wmapp/scripts/wm-libs.min.js +46 -46
  5. package/wmapp/scripts/wm-loader.js +8 -0
  6. package/wmapp/scripts/wm-loader.min.js +9 -0
  7. {app-runtime-wm-build → package}/wmmobile/scripts/wm-libs.js +46 -46
  8. {app-runtime-wm-build → package}/wmmobile/scripts/wm-libs.min.js +45 -45
  9. package/wmmobile/scripts/wm-mobileloader.js +8 -0
  10. package/wmmobile/scripts/wm-mobileloader.min.js +9 -0
  11. app-runtime-wm-build/wmapp/scripts/wm-loader.js +0 -8
  12. app-runtime-wm-build/wmapp/scripts/wm-loader.min.js +0 -9
  13. app-runtime-wm-build/wmmobile/scripts/wm-mobileloader.js +0 -8
  14. app-runtime-wm-build/wmmobile/scripts/wm-mobileloader.min.js +0 -9
  15. {app-runtime-wm-build → package}/wmapp/locales/angular/global/af-na.js +0 -0
  16. {app-runtime-wm-build → package}/wmapp/locales/angular/global/af.js +0 -0
  17. {app-runtime-wm-build → package}/wmapp/locales/angular/global/agq.js +0 -0
  18. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ak.js +0 -0
  19. {app-runtime-wm-build → package}/wmapp/locales/angular/global/am.js +0 -0
  20. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-ae.js +0 -0
  21. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-bh.js +0 -0
  22. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-dj.js +0 -0
  23. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-dz.js +0 -0
  24. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-eg.js +0 -0
  25. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-eh.js +0 -0
  26. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-er.js +0 -0
  27. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-il.js +0 -0
  28. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-iq.js +0 -0
  29. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-jo.js +0 -0
  30. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-km.js +0 -0
  31. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-kw.js +0 -0
  32. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-lb.js +0 -0
  33. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-ly.js +0 -0
  34. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-ma.js +0 -0
  35. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-mr.js +0 -0
  36. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-om.js +0 -0
  37. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-ps.js +0 -0
  38. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-qa.js +0 -0
  39. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-sa.js +0 -0
  40. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-sd.js +0 -0
  41. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-so.js +0 -0
  42. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-ss.js +0 -0
  43. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-sy.js +0 -0
  44. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-td.js +0 -0
  45. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-tn.js +0 -0
  46. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar-ye.js +0 -0
  47. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ar.js +0 -0
  48. {app-runtime-wm-build → package}/wmapp/locales/angular/global/as.js +0 -0
  49. {app-runtime-wm-build → package}/wmapp/locales/angular/global/asa.js +0 -0
  50. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ast.js +0 -0
  51. {app-runtime-wm-build → package}/wmapp/locales/angular/global/az-cyrl.js +0 -0
  52. {app-runtime-wm-build → package}/wmapp/locales/angular/global/az-latn.js +0 -0
  53. {app-runtime-wm-build → package}/wmapp/locales/angular/global/az.js +0 -0
  54. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bas.js +0 -0
  55. {app-runtime-wm-build → package}/wmapp/locales/angular/global/be-tarask.js +0 -0
  56. {app-runtime-wm-build → package}/wmapp/locales/angular/global/be.js +0 -0
  57. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bem.js +0 -0
  58. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bez.js +0 -0
  59. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bg.js +0 -0
  60. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bm.js +0 -0
  61. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bn-in.js +0 -0
  62. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bn.js +0 -0
  63. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bo-in.js +0 -0
  64. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bo.js +0 -0
  65. {app-runtime-wm-build → package}/wmapp/locales/angular/global/br.js +0 -0
  66. {app-runtime-wm-build → package}/wmapp/locales/angular/global/brx.js +0 -0
  67. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bs-cyrl.js +0 -0
  68. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bs-latn.js +0 -0
  69. {app-runtime-wm-build → package}/wmapp/locales/angular/global/bs.js +0 -0
  70. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ca-ad.js +0 -0
  71. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ca-es-valencia.js +0 -0
  72. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ca-fr.js +0 -0
  73. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ca-it.js +0 -0
  74. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ca.js +0 -0
  75. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ccp-in.js +0 -0
  76. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ccp.js +0 -0
  77. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ce.js +0 -0
  78. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ceb.js +0 -0
  79. {app-runtime-wm-build → package}/wmapp/locales/angular/global/cgg.js +0 -0
  80. {app-runtime-wm-build → package}/wmapp/locales/angular/global/chr.js +0 -0
  81. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ckb-ir.js +0 -0
  82. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ckb.js +0 -0
  83. {app-runtime-wm-build → package}/wmapp/locales/angular/global/cs.js +0 -0
  84. {app-runtime-wm-build → package}/wmapp/locales/angular/global/cy.js +0 -0
  85. {app-runtime-wm-build → package}/wmapp/locales/angular/global/da-gl.js +0 -0
  86. {app-runtime-wm-build → package}/wmapp/locales/angular/global/da.js +0 -0
  87. {app-runtime-wm-build → package}/wmapp/locales/angular/global/dav.js +0 -0
  88. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de-at.js +0 -0
  89. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de-be.js +0 -0
  90. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de-ch.js +0 -0
  91. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de-it.js +0 -0
  92. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de-li.js +0 -0
  93. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de-lu.js +0 -0
  94. {app-runtime-wm-build → package}/wmapp/locales/angular/global/de.js +0 -0
  95. {app-runtime-wm-build → package}/wmapp/locales/angular/global/dje.js +0 -0
  96. {app-runtime-wm-build → package}/wmapp/locales/angular/global/doi.js +0 -0
  97. {app-runtime-wm-build → package}/wmapp/locales/angular/global/dsb.js +0 -0
  98. {app-runtime-wm-build → package}/wmapp/locales/angular/global/dua.js +0 -0
  99. {app-runtime-wm-build → package}/wmapp/locales/angular/global/dyo.js +0 -0
  100. {app-runtime-wm-build → package}/wmapp/locales/angular/global/dz.js +0 -0
  101. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ebu.js +0 -0
  102. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ee-tg.js +0 -0
  103. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ee.js +0 -0
  104. {app-runtime-wm-build → package}/wmapp/locales/angular/global/el-cy.js +0 -0
  105. {app-runtime-wm-build → package}/wmapp/locales/angular/global/el.js +0 -0
  106. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-001.js +0 -0
  107. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-150.js +0 -0
  108. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ae.js +0 -0
  109. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ag.js +0 -0
  110. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ai.js +0 -0
  111. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-as.js +0 -0
  112. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-at.js +0 -0
  113. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-au.js +0 -0
  114. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-bb.js +0 -0
  115. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-be.js +0 -0
  116. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-bi.js +0 -0
  117. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-bm.js +0 -0
  118. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-bs.js +0 -0
  119. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-bw.js +0 -0
  120. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-bz.js +0 -0
  121. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ca.js +0 -0
  122. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-cc.js +0 -0
  123. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ch.js +0 -0
  124. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ck.js +0 -0
  125. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-cm.js +0 -0
  126. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-cx.js +0 -0
  127. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-cy.js +0 -0
  128. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-de.js +0 -0
  129. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-dg.js +0 -0
  130. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-dk.js +0 -0
  131. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-dm.js +0 -0
  132. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-er.js +0 -0
  133. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-fi.js +0 -0
  134. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-fj.js +0 -0
  135. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-fk.js +0 -0
  136. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-fm.js +0 -0
  137. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gb.js +0 -0
  138. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gd.js +0 -0
  139. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gg.js +0 -0
  140. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gh.js +0 -0
  141. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gi.js +0 -0
  142. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gm.js +0 -0
  143. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gu.js +0 -0
  144. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-gy.js +0 -0
  145. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-hk.js +0 -0
  146. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ie.js +0 -0
  147. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-il.js +0 -0
  148. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-im.js +0 -0
  149. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-in.js +0 -0
  150. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-io.js +0 -0
  151. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-je.js +0 -0
  152. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-jm.js +0 -0
  153. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ke.js +0 -0
  154. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ki.js +0 -0
  155. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-kn.js +0 -0
  156. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ky.js +0 -0
  157. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-lc.js +0 -0
  158. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-lr.js +0 -0
  159. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ls.js +0 -0
  160. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mg.js +0 -0
  161. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mh.js +0 -0
  162. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mo.js +0 -0
  163. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mp.js +0 -0
  164. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ms.js +0 -0
  165. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mt.js +0 -0
  166. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mu.js +0 -0
  167. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mv.js +0 -0
  168. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-mw.js +0 -0
  169. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-my.js +0 -0
  170. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-na.js +0 -0
  171. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-nf.js +0 -0
  172. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ng.js +0 -0
  173. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-nl.js +0 -0
  174. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-nr.js +0 -0
  175. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-nu.js +0 -0
  176. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-nz.js +0 -0
  177. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-pg.js +0 -0
  178. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ph.js +0 -0
  179. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-pk.js +0 -0
  180. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-pn.js +0 -0
  181. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-pr.js +0 -0
  182. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-pw.js +0 -0
  183. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-rw.js +0 -0
  184. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sb.js +0 -0
  185. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sc.js +0 -0
  186. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sd.js +0 -0
  187. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-se.js +0 -0
  188. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sg.js +0 -0
  189. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sh.js +0 -0
  190. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-si.js +0 -0
  191. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sl.js +0 -0
  192. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ss.js +0 -0
  193. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sx.js +0 -0
  194. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-sz.js +0 -0
  195. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-tc.js +0 -0
  196. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-tk.js +0 -0
  197. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-to.js +0 -0
  198. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-tt.js +0 -0
  199. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-tv.js +0 -0
  200. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-tz.js +0 -0
  201. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ug.js +0 -0
  202. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-um.js +0 -0
  203. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-vc.js +0 -0
  204. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-vg.js +0 -0
  205. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-vi.js +0 -0
  206. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-vu.js +0 -0
  207. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-ws.js +0 -0
  208. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-za.js +0 -0
  209. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-zm.js +0 -0
  210. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en-zw.js +0 -0
  211. {app-runtime-wm-build → package}/wmapp/locales/angular/global/en.js +0 -0
  212. {app-runtime-wm-build → package}/wmapp/locales/angular/global/eo.js +0 -0
  213. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-419.js +0 -0
  214. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ar.js +0 -0
  215. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-bo.js +0 -0
  216. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-br.js +0 -0
  217. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-bz.js +0 -0
  218. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-cl.js +0 -0
  219. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-co.js +0 -0
  220. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-cr.js +0 -0
  221. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-cu.js +0 -0
  222. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-do.js +0 -0
  223. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ea.js +0 -0
  224. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ec.js +0 -0
  225. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-gq.js +0 -0
  226. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-gt.js +0 -0
  227. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-hn.js +0 -0
  228. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ic.js +0 -0
  229. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-mx.js +0 -0
  230. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ni.js +0 -0
  231. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-pa.js +0 -0
  232. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-pe.js +0 -0
  233. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ph.js +0 -0
  234. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-pr.js +0 -0
  235. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-py.js +0 -0
  236. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-sv.js +0 -0
  237. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-us.js +0 -0
  238. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-uy.js +0 -0
  239. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es-ve.js +0 -0
  240. {app-runtime-wm-build → package}/wmapp/locales/angular/global/es.js +0 -0
  241. {app-runtime-wm-build → package}/wmapp/locales/angular/global/et.js +0 -0
  242. {app-runtime-wm-build → package}/wmapp/locales/angular/global/eu.js +0 -0
  243. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ewo.js +0 -0
  244. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fa-af.js +0 -0
  245. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fa.js +0 -0
  246. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-bf.js +0 -0
  247. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-cm.js +0 -0
  248. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-gh.js +0 -0
  249. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-gm.js +0 -0
  250. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-gw.js +0 -0
  251. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-lr.js +0 -0
  252. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-mr.js +0 -0
  253. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-ne.js +0 -0
  254. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-ng.js +0 -0
  255. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-sl.js +0 -0
  256. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm-sn.js +0 -0
  257. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-adlm.js +0 -0
  258. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-cm.js +0 -0
  259. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-gn.js +0 -0
  260. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-bf.js +0 -0
  261. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-cm.js +0 -0
  262. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-gh.js +0 -0
  263. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-gm.js +0 -0
  264. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-gn.js +0 -0
  265. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-gw.js +0 -0
  266. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-lr.js +0 -0
  267. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-mr.js +0 -0
  268. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-ne.js +0 -0
  269. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-ng.js +0 -0
  270. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn-sl.js +0 -0
  271. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-latn.js +0 -0
  272. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff-mr.js +0 -0
  273. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ff.js +0 -0
  274. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fi.js +0 -0
  275. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fil.js +0 -0
  276. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fo-dk.js +0 -0
  277. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fo.js +0 -0
  278. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-be.js +0 -0
  279. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-bf.js +0 -0
  280. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-bi.js +0 -0
  281. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-bj.js +0 -0
  282. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-bl.js +0 -0
  283. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ca.js +0 -0
  284. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-cd.js +0 -0
  285. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-cf.js +0 -0
  286. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-cg.js +0 -0
  287. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ch.js +0 -0
  288. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ci.js +0 -0
  289. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-cm.js +0 -0
  290. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-dj.js +0 -0
  291. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-dz.js +0 -0
  292. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ga.js +0 -0
  293. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-gf.js +0 -0
  294. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-gn.js +0 -0
  295. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-gp.js +0 -0
  296. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-gq.js +0 -0
  297. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ht.js +0 -0
  298. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-km.js +0 -0
  299. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-lu.js +0 -0
  300. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ma.js +0 -0
  301. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-mc.js +0 -0
  302. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-mf.js +0 -0
  303. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-mg.js +0 -0
  304. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ml.js +0 -0
  305. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-mq.js +0 -0
  306. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-mr.js +0 -0
  307. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-mu.js +0 -0
  308. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-nc.js +0 -0
  309. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-ne.js +0 -0
  310. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-pf.js +0 -0
  311. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-pm.js +0 -0
  312. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-re.js +0 -0
  313. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-rw.js +0 -0
  314. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-sc.js +0 -0
  315. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-sn.js +0 -0
  316. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-sy.js +0 -0
  317. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-td.js +0 -0
  318. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-tg.js +0 -0
  319. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-tn.js +0 -0
  320. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-vu.js +0 -0
  321. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-wf.js +0 -0
  322. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr-yt.js +0 -0
  323. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fr.js +0 -0
  324. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fur.js +0 -0
  325. {app-runtime-wm-build → package}/wmapp/locales/angular/global/fy.js +0 -0
  326. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ga-gb.js +0 -0
  327. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ga.js +0 -0
  328. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gd.js +0 -0
  329. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gl.js +0 -0
  330. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gsw-fr.js +0 -0
  331. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gsw-li.js +0 -0
  332. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gsw.js +0 -0
  333. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gu.js +0 -0
  334. {app-runtime-wm-build → package}/wmapp/locales/angular/global/guz.js +0 -0
  335. {app-runtime-wm-build → package}/wmapp/locales/angular/global/gv.js +0 -0
  336. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ha-gh.js +0 -0
  337. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ha-ne.js +0 -0
  338. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ha.js +0 -0
  339. {app-runtime-wm-build → package}/wmapp/locales/angular/global/haw.js +0 -0
  340. {app-runtime-wm-build → package}/wmapp/locales/angular/global/he.js +0 -0
  341. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hi-latn.js +0 -0
  342. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hi.js +0 -0
  343. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hr-ba.js +0 -0
  344. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hr.js +0 -0
  345. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hsb.js +0 -0
  346. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hu.js +0 -0
  347. {app-runtime-wm-build → package}/wmapp/locales/angular/global/hy.js +0 -0
  348. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ia.js +0 -0
  349. {app-runtime-wm-build → package}/wmapp/locales/angular/global/id.js +0 -0
  350. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ig.js +0 -0
  351. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ii.js +0 -0
  352. {app-runtime-wm-build → package}/wmapp/locales/angular/global/is.js +0 -0
  353. {app-runtime-wm-build → package}/wmapp/locales/angular/global/it-ch.js +0 -0
  354. {app-runtime-wm-build → package}/wmapp/locales/angular/global/it-sm.js +0 -0
  355. {app-runtime-wm-build → package}/wmapp/locales/angular/global/it-va.js +0 -0
  356. {app-runtime-wm-build → package}/wmapp/locales/angular/global/it.js +0 -0
  357. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ja.js +0 -0
  358. {app-runtime-wm-build → package}/wmapp/locales/angular/global/jgo.js +0 -0
  359. {app-runtime-wm-build → package}/wmapp/locales/angular/global/jmc.js +0 -0
  360. {app-runtime-wm-build → package}/wmapp/locales/angular/global/jv.js +0 -0
  361. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ka.js +0 -0
  362. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kab.js +0 -0
  363. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kam.js +0 -0
  364. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kde.js +0 -0
  365. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kea.js +0 -0
  366. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kgp.js +0 -0
  367. {app-runtime-wm-build → package}/wmapp/locales/angular/global/khq.js +0 -0
  368. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ki.js +0 -0
  369. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kk.js +0 -0
  370. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kkj.js +0 -0
  371. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kl.js +0 -0
  372. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kln.js +0 -0
  373. {app-runtime-wm-build → package}/wmapp/locales/angular/global/km.js +0 -0
  374. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kn.js +0 -0
  375. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ko-kp.js +0 -0
  376. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ko.js +0 -0
  377. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kok.js +0 -0
  378. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ks-arab.js +0 -0
  379. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ks-deva.js +0 -0
  380. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ks.js +0 -0
  381. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ksb.js +0 -0
  382. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ksf.js +0 -0
  383. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ksh.js +0 -0
  384. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ku.js +0 -0
  385. {app-runtime-wm-build → package}/wmapp/locales/angular/global/kw.js +0 -0
  386. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ky.js +0 -0
  387. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lag.js +0 -0
  388. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lb.js +0 -0
  389. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lg.js +0 -0
  390. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lkt.js +0 -0
  391. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ln-ao.js +0 -0
  392. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ln-cf.js +0 -0
  393. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ln-cg.js +0 -0
  394. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ln.js +0 -0
  395. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lo.js +0 -0
  396. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lrc-iq.js +0 -0
  397. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lrc.js +0 -0
  398. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lt.js +0 -0
  399. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lu.js +0 -0
  400. {app-runtime-wm-build → package}/wmapp/locales/angular/global/luo.js +0 -0
  401. {app-runtime-wm-build → package}/wmapp/locales/angular/global/luy.js +0 -0
  402. {app-runtime-wm-build → package}/wmapp/locales/angular/global/lv.js +0 -0
  403. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mai.js +0 -0
  404. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mas-tz.js +0 -0
  405. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mas.js +0 -0
  406. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mer.js +0 -0
  407. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mfe.js +0 -0
  408. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mg.js +0 -0
  409. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mgh.js +0 -0
  410. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mgo.js +0 -0
  411. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mi.js +0 -0
  412. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mk.js +0 -0
  413. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ml.js +0 -0
  414. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mn.js +0 -0
  415. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mni-beng.js +0 -0
  416. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mni.js +0 -0
  417. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mr.js +0 -0
  418. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ms-bn.js +0 -0
  419. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ms-id.js +0 -0
  420. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ms-sg.js +0 -0
  421. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ms.js +0 -0
  422. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mt.js +0 -0
  423. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mua.js +0 -0
  424. {app-runtime-wm-build → package}/wmapp/locales/angular/global/my.js +0 -0
  425. {app-runtime-wm-build → package}/wmapp/locales/angular/global/mzn.js +0 -0
  426. {app-runtime-wm-build → package}/wmapp/locales/angular/global/naq.js +0 -0
  427. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nb-sj.js +0 -0
  428. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nb.js +0 -0
  429. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nd.js +0 -0
  430. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nds-nl.js +0 -0
  431. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nds.js +0 -0
  432. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ne-in.js +0 -0
  433. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ne.js +0 -0
  434. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl-aw.js +0 -0
  435. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl-be.js +0 -0
  436. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl-bq.js +0 -0
  437. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl-cw.js +0 -0
  438. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl-sr.js +0 -0
  439. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl-sx.js +0 -0
  440. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nl.js +0 -0
  441. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nmg.js +0 -0
  442. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nn.js +0 -0
  443. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nnh.js +0 -0
  444. {app-runtime-wm-build → package}/wmapp/locales/angular/global/no.js +0 -0
  445. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nus.js +0 -0
  446. {app-runtime-wm-build → package}/wmapp/locales/angular/global/nyn.js +0 -0
  447. {app-runtime-wm-build → package}/wmapp/locales/angular/global/om-ke.js +0 -0
  448. {app-runtime-wm-build → package}/wmapp/locales/angular/global/om.js +0 -0
  449. {app-runtime-wm-build → package}/wmapp/locales/angular/global/or.js +0 -0
  450. {app-runtime-wm-build → package}/wmapp/locales/angular/global/os-ru.js +0 -0
  451. {app-runtime-wm-build → package}/wmapp/locales/angular/global/os.js +0 -0
  452. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pa-arab.js +0 -0
  453. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pa-guru.js +0 -0
  454. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pa.js +0 -0
  455. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pcm.js +0 -0
  456. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pl.js +0 -0
  457. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ps-pk.js +0 -0
  458. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ps.js +0 -0
  459. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-ao.js +0 -0
  460. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-ch.js +0 -0
  461. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-cv.js +0 -0
  462. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-gq.js +0 -0
  463. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-gw.js +0 -0
  464. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-lu.js +0 -0
  465. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-mo.js +0 -0
  466. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-mz.js +0 -0
  467. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-pt.js +0 -0
  468. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-st.js +0 -0
  469. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt-tl.js +0 -0
  470. {app-runtime-wm-build → package}/wmapp/locales/angular/global/pt.js +0 -0
  471. {app-runtime-wm-build → package}/wmapp/locales/angular/global/qu-bo.js +0 -0
  472. {app-runtime-wm-build → package}/wmapp/locales/angular/global/qu-ec.js +0 -0
  473. {app-runtime-wm-build → package}/wmapp/locales/angular/global/qu.js +0 -0
  474. {app-runtime-wm-build → package}/wmapp/locales/angular/global/rm.js +0 -0
  475. {app-runtime-wm-build → package}/wmapp/locales/angular/global/rn.js +0 -0
  476. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ro-md.js +0 -0
  477. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ro.js +0 -0
  478. {app-runtime-wm-build → package}/wmapp/locales/angular/global/rof.js +0 -0
  479. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ru-by.js +0 -0
  480. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ru-kg.js +0 -0
  481. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ru-kz.js +0 -0
  482. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ru-md.js +0 -0
  483. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ru-ua.js +0 -0
  484. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ru.js +0 -0
  485. {app-runtime-wm-build → package}/wmapp/locales/angular/global/rw.js +0 -0
  486. {app-runtime-wm-build → package}/wmapp/locales/angular/global/rwk.js +0 -0
  487. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sa.js +0 -0
  488. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sah.js +0 -0
  489. {app-runtime-wm-build → package}/wmapp/locales/angular/global/saq.js +0 -0
  490. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sat-olck.js +0 -0
  491. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sat.js +0 -0
  492. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sbp.js +0 -0
  493. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sc.js +0 -0
  494. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sd-arab.js +0 -0
  495. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sd-deva.js +0 -0
  496. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sd.js +0 -0
  497. {app-runtime-wm-build → package}/wmapp/locales/angular/global/se-fi.js +0 -0
  498. {app-runtime-wm-build → package}/wmapp/locales/angular/global/se-se.js +0 -0
  499. {app-runtime-wm-build → package}/wmapp/locales/angular/global/se.js +0 -0
  500. {app-runtime-wm-build → package}/wmapp/locales/angular/global/seh.js +0 -0
  501. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ses.js +0 -0
  502. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sg.js +0 -0
  503. {app-runtime-wm-build → package}/wmapp/locales/angular/global/shi-latn.js +0 -0
  504. {app-runtime-wm-build → package}/wmapp/locales/angular/global/shi-tfng.js +0 -0
  505. {app-runtime-wm-build → package}/wmapp/locales/angular/global/shi.js +0 -0
  506. {app-runtime-wm-build → package}/wmapp/locales/angular/global/si.js +0 -0
  507. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sk.js +0 -0
  508. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sl.js +0 -0
  509. {app-runtime-wm-build → package}/wmapp/locales/angular/global/smn.js +0 -0
  510. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sn.js +0 -0
  511. {app-runtime-wm-build → package}/wmapp/locales/angular/global/so-dj.js +0 -0
  512. {app-runtime-wm-build → package}/wmapp/locales/angular/global/so-et.js +0 -0
  513. {app-runtime-wm-build → package}/wmapp/locales/angular/global/so-ke.js +0 -0
  514. {app-runtime-wm-build → package}/wmapp/locales/angular/global/so.js +0 -0
  515. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sq-mk.js +0 -0
  516. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sq-xk.js +0 -0
  517. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sq.js +0 -0
  518. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-cyrl-ba.js +0 -0
  519. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-cyrl-me.js +0 -0
  520. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-cyrl-xk.js +0 -0
  521. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-cyrl.js +0 -0
  522. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-latn-ba.js +0 -0
  523. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-latn-me.js +0 -0
  524. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-latn-xk.js +0 -0
  525. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr-latn.js +0 -0
  526. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sr.js +0 -0
  527. {app-runtime-wm-build → package}/wmapp/locales/angular/global/su-latn.js +0 -0
  528. {app-runtime-wm-build → package}/wmapp/locales/angular/global/su.js +0 -0
  529. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sv-ax.js +0 -0
  530. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sv-fi.js +0 -0
  531. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sv.js +0 -0
  532. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sw-cd.js +0 -0
  533. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sw-ke.js +0 -0
  534. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sw-ug.js +0 -0
  535. {app-runtime-wm-build → package}/wmapp/locales/angular/global/sw.js +0 -0
  536. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ta-lk.js +0 -0
  537. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ta-my.js +0 -0
  538. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ta-sg.js +0 -0
  539. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ta.js +0 -0
  540. {app-runtime-wm-build → package}/wmapp/locales/angular/global/te.js +0 -0
  541. {app-runtime-wm-build → package}/wmapp/locales/angular/global/teo-ke.js +0 -0
  542. {app-runtime-wm-build → package}/wmapp/locales/angular/global/teo.js +0 -0
  543. {app-runtime-wm-build → package}/wmapp/locales/angular/global/tg.js +0 -0
  544. {app-runtime-wm-build → package}/wmapp/locales/angular/global/th.js +0 -0
  545. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ti-er.js +0 -0
  546. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ti.js +0 -0
  547. {app-runtime-wm-build → package}/wmapp/locales/angular/global/tk.js +0 -0
  548. {app-runtime-wm-build → package}/wmapp/locales/angular/global/to.js +0 -0
  549. {app-runtime-wm-build → package}/wmapp/locales/angular/global/tr-cy.js +0 -0
  550. {app-runtime-wm-build → package}/wmapp/locales/angular/global/tr.js +0 -0
  551. {app-runtime-wm-build → package}/wmapp/locales/angular/global/tt.js +0 -0
  552. {app-runtime-wm-build → package}/wmapp/locales/angular/global/twq.js +0 -0
  553. {app-runtime-wm-build → package}/wmapp/locales/angular/global/tzm.js +0 -0
  554. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ug.js +0 -0
  555. {app-runtime-wm-build → package}/wmapp/locales/angular/global/uk.js +0 -0
  556. {app-runtime-wm-build → package}/wmapp/locales/angular/global/und.js +0 -0
  557. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ur-in.js +0 -0
  558. {app-runtime-wm-build → package}/wmapp/locales/angular/global/ur.js +0 -0
  559. {app-runtime-wm-build → package}/wmapp/locales/angular/global/uz-arab.js +0 -0
  560. {app-runtime-wm-build → package}/wmapp/locales/angular/global/uz-cyrl.js +0 -0
  561. {app-runtime-wm-build → package}/wmapp/locales/angular/global/uz-latn.js +0 -0
  562. {app-runtime-wm-build → package}/wmapp/locales/angular/global/uz.js +0 -0
  563. {app-runtime-wm-build → package}/wmapp/locales/angular/global/vai-latn.js +0 -0
  564. {app-runtime-wm-build → package}/wmapp/locales/angular/global/vai-vaii.js +0 -0
  565. {app-runtime-wm-build → package}/wmapp/locales/angular/global/vai.js +0 -0
  566. {app-runtime-wm-build → package}/wmapp/locales/angular/global/vi.js +0 -0
  567. {app-runtime-wm-build → package}/wmapp/locales/angular/global/vun.js +0 -0
  568. {app-runtime-wm-build → package}/wmapp/locales/angular/global/wae.js +0 -0
  569. {app-runtime-wm-build → package}/wmapp/locales/angular/global/wo.js +0 -0
  570. {app-runtime-wm-build → package}/wmapp/locales/angular/global/xh.js +0 -0
  571. {app-runtime-wm-build → package}/wmapp/locales/angular/global/xog.js +0 -0
  572. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yav.js +0 -0
  573. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yi.js +0 -0
  574. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yo-bj.js +0 -0
  575. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yo.js +0 -0
  576. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yrl-co.js +0 -0
  577. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yrl-ve.js +0 -0
  578. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yrl.js +0 -0
  579. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yue-hans.js +0 -0
  580. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yue-hant.js +0 -0
  581. {app-runtime-wm-build → package}/wmapp/locales/angular/global/yue.js +0 -0
  582. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zgh.js +0 -0
  583. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hans-hk.js +0 -0
  584. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hans-mo.js +0 -0
  585. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hans-sg.js +0 -0
  586. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hans.js +0 -0
  587. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hant-hk.js +0 -0
  588. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hant-mo.js +0 -0
  589. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh-hant.js +0 -0
  590. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zh.js +0 -0
  591. {app-runtime-wm-build → package}/wmapp/locales/angular/global/zu.js +0 -0
  592. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/af.js +0 -0
  593. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar-dz.js +0 -0
  594. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar-kw.js +0 -0
  595. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar-ly.js +0 -0
  596. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar-ma.js +0 -0
  597. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar-sa.js +0 -0
  598. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar-tn.js +0 -0
  599. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ar.js +0 -0
  600. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/az.js +0 -0
  601. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/bg.js +0 -0
  602. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/bs.js +0 -0
  603. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ca.js +0 -0
  604. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/cs.js +0 -0
  605. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/da.js +0 -0
  606. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/de.js +0 -0
  607. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/el.js +0 -0
  608. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/en-au.js +0 -0
  609. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/en-gb.js +0 -0
  610. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/en-nz.js +0 -0
  611. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/es-us.js +0 -0
  612. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/es.js +0 -0
  613. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/et.js +0 -0
  614. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/eu.js +0 -0
  615. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/fa.js +0 -0
  616. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/fi.js +0 -0
  617. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/fr-ca.js +0 -0
  618. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/fr-ch.js +0 -0
  619. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/fr.js +0 -0
  620. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/gl.js +0 -0
  621. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/he.js +0 -0
  622. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/hi.js +0 -0
  623. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/hr.js +0 -0
  624. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/hu.js +0 -0
  625. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/id.js +0 -0
  626. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/is.js +0 -0
  627. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/it.js +0 -0
  628. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ja.js +0 -0
  629. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ka.js +0 -0
  630. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/kk.js +0 -0
  631. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ko.js +0 -0
  632. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/lb.js +0 -0
  633. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/lt.js +0 -0
  634. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/lv.js +0 -0
  635. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/mk.js +0 -0
  636. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ms.js +0 -0
  637. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/nb.js +0 -0
  638. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ne.js +0 -0
  639. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/nl.js +0 -0
  640. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/nn.js +0 -0
  641. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/pl.js +0 -0
  642. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/pt-br.js +0 -0
  643. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/pt.js +0 -0
  644. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ro.js +0 -0
  645. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ru.js +0 -0
  646. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/sk.js +0 -0
  647. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/sl.js +0 -0
  648. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/sq.js +0 -0
  649. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/sr-cyrl.js +0 -0
  650. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/sr.js +0 -0
  651. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/sv.js +0 -0
  652. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/th.js +0 -0
  653. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/tr.js +0 -0
  654. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/ug.js +0 -0
  655. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/uk.js +0 -0
  656. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/uz.js +0 -0
  657. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/vi.js +0 -0
  658. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/zh-cn.js +0 -0
  659. {app-runtime-wm-build → package}/wmapp/locales/fullcalendar/zh-tw.js +0 -0
  660. {app-runtime-wm-build → package}/wmapp/locales/moment/af.js +0 -0
  661. {app-runtime-wm-build → package}/wmapp/locales/moment/ar-dz.js +0 -0
  662. {app-runtime-wm-build → package}/wmapp/locales/moment/ar-kw.js +0 -0
  663. {app-runtime-wm-build → package}/wmapp/locales/moment/ar-ly.js +0 -0
  664. {app-runtime-wm-build → package}/wmapp/locales/moment/ar-ma.js +0 -0
  665. {app-runtime-wm-build → package}/wmapp/locales/moment/ar-sa.js +0 -0
  666. {app-runtime-wm-build → package}/wmapp/locales/moment/ar-tn.js +0 -0
  667. {app-runtime-wm-build → package}/wmapp/locales/moment/ar.js +0 -0
  668. {app-runtime-wm-build → package}/wmapp/locales/moment/az.js +0 -0
  669. {app-runtime-wm-build → package}/wmapp/locales/moment/be.js +0 -0
  670. {app-runtime-wm-build → package}/wmapp/locales/moment/bg.js +0 -0
  671. {app-runtime-wm-build → package}/wmapp/locales/moment/bm.js +0 -0
  672. {app-runtime-wm-build → package}/wmapp/locales/moment/bn-bd.js +0 -0
  673. {app-runtime-wm-build → package}/wmapp/locales/moment/bn.js +0 -0
  674. {app-runtime-wm-build → package}/wmapp/locales/moment/bo.js +0 -0
  675. {app-runtime-wm-build → package}/wmapp/locales/moment/br.js +0 -0
  676. {app-runtime-wm-build → package}/wmapp/locales/moment/bs.js +0 -0
  677. {app-runtime-wm-build → package}/wmapp/locales/moment/ca.js +0 -0
  678. {app-runtime-wm-build → package}/wmapp/locales/moment/cs.js +0 -0
  679. {app-runtime-wm-build → package}/wmapp/locales/moment/cv.js +0 -0
  680. {app-runtime-wm-build → package}/wmapp/locales/moment/cy.js +0 -0
  681. {app-runtime-wm-build → package}/wmapp/locales/moment/da.js +0 -0
  682. {app-runtime-wm-build → package}/wmapp/locales/moment/de-at.js +0 -0
  683. {app-runtime-wm-build → package}/wmapp/locales/moment/de-ch.js +0 -0
  684. {app-runtime-wm-build → package}/wmapp/locales/moment/de.js +0 -0
  685. {app-runtime-wm-build → package}/wmapp/locales/moment/dv.js +0 -0
  686. {app-runtime-wm-build → package}/wmapp/locales/moment/el.js +0 -0
  687. {app-runtime-wm-build → package}/wmapp/locales/moment/en-au.js +0 -0
  688. {app-runtime-wm-build → package}/wmapp/locales/moment/en-ca.js +0 -0
  689. {app-runtime-wm-build → package}/wmapp/locales/moment/en-gb.js +0 -0
  690. {app-runtime-wm-build → package}/wmapp/locales/moment/en-ie.js +0 -0
  691. {app-runtime-wm-build → package}/wmapp/locales/moment/en-il.js +0 -0
  692. {app-runtime-wm-build → package}/wmapp/locales/moment/en-in.js +0 -0
  693. {app-runtime-wm-build → package}/wmapp/locales/moment/en-nz.js +0 -0
  694. {app-runtime-wm-build → package}/wmapp/locales/moment/en-sg.js +0 -0
  695. {app-runtime-wm-build → package}/wmapp/locales/moment/eo.js +0 -0
  696. {app-runtime-wm-build → package}/wmapp/locales/moment/es-do.js +0 -0
  697. {app-runtime-wm-build → package}/wmapp/locales/moment/es-mx.js +0 -0
  698. {app-runtime-wm-build → package}/wmapp/locales/moment/es-us.js +0 -0
  699. {app-runtime-wm-build → package}/wmapp/locales/moment/es.js +0 -0
  700. {app-runtime-wm-build → package}/wmapp/locales/moment/et.js +0 -0
  701. {app-runtime-wm-build → package}/wmapp/locales/moment/eu.js +0 -0
  702. {app-runtime-wm-build → package}/wmapp/locales/moment/fa.js +0 -0
  703. {app-runtime-wm-build → package}/wmapp/locales/moment/fi.js +0 -0
  704. {app-runtime-wm-build → package}/wmapp/locales/moment/fil.js +0 -0
  705. {app-runtime-wm-build → package}/wmapp/locales/moment/fo.js +0 -0
  706. {app-runtime-wm-build → package}/wmapp/locales/moment/fr-ca.js +0 -0
  707. {app-runtime-wm-build → package}/wmapp/locales/moment/fr-ch.js +0 -0
  708. {app-runtime-wm-build → package}/wmapp/locales/moment/fr.js +0 -0
  709. {app-runtime-wm-build → package}/wmapp/locales/moment/fy.js +0 -0
  710. {app-runtime-wm-build → package}/wmapp/locales/moment/ga.js +0 -0
  711. {app-runtime-wm-build → package}/wmapp/locales/moment/gd.js +0 -0
  712. {app-runtime-wm-build → package}/wmapp/locales/moment/gl.js +0 -0
  713. {app-runtime-wm-build → package}/wmapp/locales/moment/gom-deva.js +0 -0
  714. {app-runtime-wm-build → package}/wmapp/locales/moment/gom-latn.js +0 -0
  715. {app-runtime-wm-build → package}/wmapp/locales/moment/gu.js +0 -0
  716. {app-runtime-wm-build → package}/wmapp/locales/moment/he.js +0 -0
  717. {app-runtime-wm-build → package}/wmapp/locales/moment/hi.js +0 -0
  718. {app-runtime-wm-build → package}/wmapp/locales/moment/hr.js +0 -0
  719. {app-runtime-wm-build → package}/wmapp/locales/moment/hu.js +0 -0
  720. {app-runtime-wm-build → package}/wmapp/locales/moment/hy-am.js +0 -0
  721. {app-runtime-wm-build → package}/wmapp/locales/moment/id.js +0 -0
  722. {app-runtime-wm-build → package}/wmapp/locales/moment/is.js +0 -0
  723. {app-runtime-wm-build → package}/wmapp/locales/moment/it-ch.js +0 -0
  724. {app-runtime-wm-build → package}/wmapp/locales/moment/it.js +0 -0
  725. {app-runtime-wm-build → package}/wmapp/locales/moment/ja.js +0 -0
  726. {app-runtime-wm-build → package}/wmapp/locales/moment/jv.js +0 -0
  727. {app-runtime-wm-build → package}/wmapp/locales/moment/ka.js +0 -0
  728. {app-runtime-wm-build → package}/wmapp/locales/moment/kk.js +0 -0
  729. {app-runtime-wm-build → package}/wmapp/locales/moment/km.js +0 -0
  730. {app-runtime-wm-build → package}/wmapp/locales/moment/kn.js +0 -0
  731. {app-runtime-wm-build → package}/wmapp/locales/moment/ko.js +0 -0
  732. {app-runtime-wm-build → package}/wmapp/locales/moment/ku.js +0 -0
  733. {app-runtime-wm-build → package}/wmapp/locales/moment/ky.js +0 -0
  734. {app-runtime-wm-build → package}/wmapp/locales/moment/lb.js +0 -0
  735. {app-runtime-wm-build → package}/wmapp/locales/moment/lo.js +0 -0
  736. {app-runtime-wm-build → package}/wmapp/locales/moment/lt.js +0 -0
  737. {app-runtime-wm-build → package}/wmapp/locales/moment/lv.js +0 -0
  738. {app-runtime-wm-build → package}/wmapp/locales/moment/me.js +0 -0
  739. {app-runtime-wm-build → package}/wmapp/locales/moment/mi.js +0 -0
  740. {app-runtime-wm-build → package}/wmapp/locales/moment/mk.js +0 -0
  741. {app-runtime-wm-build → package}/wmapp/locales/moment/ml.js +0 -0
  742. {app-runtime-wm-build → package}/wmapp/locales/moment/mn.js +0 -0
  743. {app-runtime-wm-build → package}/wmapp/locales/moment/mr.js +0 -0
  744. {app-runtime-wm-build → package}/wmapp/locales/moment/ms-my.js +0 -0
  745. {app-runtime-wm-build → package}/wmapp/locales/moment/ms.js +0 -0
  746. {app-runtime-wm-build → package}/wmapp/locales/moment/mt.js +0 -0
  747. {app-runtime-wm-build → package}/wmapp/locales/moment/my.js +0 -0
  748. {app-runtime-wm-build → package}/wmapp/locales/moment/nb.js +0 -0
  749. {app-runtime-wm-build → package}/wmapp/locales/moment/ne.js +0 -0
  750. {app-runtime-wm-build → package}/wmapp/locales/moment/nl-be.js +0 -0
  751. {app-runtime-wm-build → package}/wmapp/locales/moment/nl.js +0 -0
  752. {app-runtime-wm-build → package}/wmapp/locales/moment/nn.js +0 -0
  753. {app-runtime-wm-build → package}/wmapp/locales/moment/oc-lnc.js +0 -0
  754. {app-runtime-wm-build → package}/wmapp/locales/moment/pa-in.js +0 -0
  755. {app-runtime-wm-build → package}/wmapp/locales/moment/pl.js +0 -0
  756. {app-runtime-wm-build → package}/wmapp/locales/moment/pt-br.js +0 -0
  757. {app-runtime-wm-build → package}/wmapp/locales/moment/pt.js +0 -0
  758. {app-runtime-wm-build → package}/wmapp/locales/moment/ro.js +0 -0
  759. {app-runtime-wm-build → package}/wmapp/locales/moment/ru.js +0 -0
  760. {app-runtime-wm-build → package}/wmapp/locales/moment/sd.js +0 -0
  761. {app-runtime-wm-build → package}/wmapp/locales/moment/se.js +0 -0
  762. {app-runtime-wm-build → package}/wmapp/locales/moment/si.js +0 -0
  763. {app-runtime-wm-build → package}/wmapp/locales/moment/sk.js +0 -0
  764. {app-runtime-wm-build → package}/wmapp/locales/moment/sl.js +0 -0
  765. {app-runtime-wm-build → package}/wmapp/locales/moment/sq.js +0 -0
  766. {app-runtime-wm-build → package}/wmapp/locales/moment/sr-cyrl.js +0 -0
  767. {app-runtime-wm-build → package}/wmapp/locales/moment/sr.js +0 -0
  768. {app-runtime-wm-build → package}/wmapp/locales/moment/ss.js +0 -0
  769. {app-runtime-wm-build → package}/wmapp/locales/moment/sv.js +0 -0
  770. {app-runtime-wm-build → package}/wmapp/locales/moment/sw.js +0 -0
  771. {app-runtime-wm-build → package}/wmapp/locales/moment/ta.js +0 -0
  772. {app-runtime-wm-build → package}/wmapp/locales/moment/te.js +0 -0
  773. {app-runtime-wm-build → package}/wmapp/locales/moment/tet.js +0 -0
  774. {app-runtime-wm-build → package}/wmapp/locales/moment/tg.js +0 -0
  775. {app-runtime-wm-build → package}/wmapp/locales/moment/th.js +0 -0
  776. {app-runtime-wm-build → package}/wmapp/locales/moment/tk.js +0 -0
  777. {app-runtime-wm-build → package}/wmapp/locales/moment/tl-ph.js +0 -0
  778. {app-runtime-wm-build → package}/wmapp/locales/moment/tlh.js +0 -0
  779. {app-runtime-wm-build → package}/wmapp/locales/moment/tr.js +0 -0
  780. {app-runtime-wm-build → package}/wmapp/locales/moment/tzl.js +0 -0
  781. {app-runtime-wm-build → package}/wmapp/locales/moment/tzm-latn.js +0 -0
  782. {app-runtime-wm-build → package}/wmapp/locales/moment/tzm.js +0 -0
  783. {app-runtime-wm-build → package}/wmapp/locales/moment/ug-cn.js +0 -0
  784. {app-runtime-wm-build → package}/wmapp/locales/moment/uk.js +0 -0
  785. {app-runtime-wm-build → package}/wmapp/locales/moment/ur.js +0 -0
  786. {app-runtime-wm-build → package}/wmapp/locales/moment/uz-latn.js +0 -0
  787. {app-runtime-wm-build → package}/wmapp/locales/moment/uz.js +0 -0
  788. {app-runtime-wm-build → package}/wmapp/locales/moment/vi.js +0 -0
  789. {app-runtime-wm-build → package}/wmapp/locales/moment/x-pseudo.js +0 -0
  790. {app-runtime-wm-build → package}/wmapp/locales/moment/yo.js +0 -0
  791. {app-runtime-wm-build → package}/wmapp/locales/moment/zh-cn.js +0 -0
  792. {app-runtime-wm-build → package}/wmapp/locales/moment/zh-hk.js +0 -0
  793. {app-runtime-wm-build → package}/wmapp/locales/moment/zh-mo.js +0 -0
  794. {app-runtime-wm-build → package}/wmapp/locales/moment/zh-tw.js +0 -0
  795. {app-runtime-wm-build → package}/wmapp/locales/moment-timezone/moment-timezone-with-data.js +0 -0
  796. {app-runtime-wm-build → package}/wmapp/styles/css/bootstrap.css.map +0 -0
  797. {app-runtime-wm-build → package}/wmapp/styles/css/font/summernote.eot +0 -0
  798. {app-runtime-wm-build → package}/wmapp/styles/css/font/summernote.ttf +0 -0
  799. {app-runtime-wm-build → package}/wmapp/styles/css/font/summernote.woff +0 -0
  800. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  801. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  802. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  803. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  804. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  805. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  806. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  807. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  808. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_222222_256x240.png +0 -0
  809. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_2e83ff_256x240.png +0 -0
  810. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_444444_256x240.png +0 -0
  811. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_454545_256x240.png +0 -0
  812. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_555555_256x240.png +0 -0
  813. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_777620_256x240.png +0 -0
  814. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_777777_256x240.png +0 -0
  815. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_888888_256x240.png +0 -0
  816. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_cc0000_256x240.png +0 -0
  817. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_cd0a0a_256x240.png +0 -0
  818. {app-runtime-wm-build → package}/wmapp/styles/css/images/ui-icons_ffffff_256x240.png +0 -0
  819. {app-runtime-wm-build → package}/wmapp/styles/css/wm-responsive.css +0 -0
  820. {app-runtime-wm-build → package}/wmapp/styles/css/wm-style.css +0 -0
  821. {app-runtime-wm-build → package}/wmapp/styles/fonts/FontAwesome.otf +0 -0
  822. {app-runtime-wm-build → package}/wmapp/styles/fonts/fontawesome-webfont.eot +0 -0
  823. {app-runtime-wm-build → package}/wmapp/styles/fonts/fontawesome-webfont.svg +0 -0
  824. {app-runtime-wm-build → package}/wmapp/styles/fonts/fontawesome-webfont.ttf +0 -0
  825. {app-runtime-wm-build → package}/wmapp/styles/fonts/fontawesome-webfont.woff +0 -0
  826. {app-runtime-wm-build → package}/wmapp/styles/fonts/fontawesome-webfont.woff2 +0 -0
  827. {app-runtime-wm-build → package}/wmapp/styles/fonts/glyphicons-halflings-regular.eot +0 -0
  828. {app-runtime-wm-build → package}/wmapp/styles/fonts/glyphicons-halflings-regular.svg +0 -0
  829. {app-runtime-wm-build → package}/wmapp/styles/fonts/glyphicons-halflings-regular.ttf +0 -0
  830. {app-runtime-wm-build → package}/wmapp/styles/fonts/glyphicons-halflings-regular.woff +0 -0
  831. {app-runtime-wm-build → package}/wmapp/styles/fonts/glyphicons-halflings-regular.woff2 +0 -0
  832. {app-runtime-wm-build → package}/wmapp/styles/fonts/wavicon.eot +0 -0
  833. {app-runtime-wm-build → package}/wmapp/styles/fonts/wavicon.ttf +0 -0
  834. {app-runtime-wm-build → package}/wmapp/styles/fonts/wavicon.woff +0 -0
  835. {app-runtime-wm-build → package}/wmapp/styles/fonts/wm-streamline-light-icon.eot +0 -0
  836. {app-runtime-wm-build → package}/wmapp/styles/fonts/wm-streamline-light-icon.ttf +0 -0
  837. {app-runtime-wm-build → package}/wmapp/styles/fonts/wm-streamline-light-icon.woff +0 -0
  838. {app-runtime-wm-build → package}/wmapp/styles/fonts/wm-streamline-regular-icon.eot +0 -0
  839. {app-runtime-wm-build → package}/wmapp/styles/fonts/wm-streamline-regular-icon.ttf +0 -0
  840. {app-runtime-wm-build → package}/wmapp/styles/fonts/wm-streamline-regular-icon.woff +0 -0
  841. {app-runtime-wm-build → package}/wmapp/styles/images/live-sync-icon.png +0 -0
  842. {app-runtime-wm-build → package}/wmapp/styles/images/live-sync-touch-icon.png +0 -0
  843. {app-runtime-wm-build → package}/wmapp/styles/images/loader.gif +0 -0
  844. {app-runtime-wm-build → package}/wmapp/styles/images/spinner-small.gif +0 -0
  845. {app-runtime-wm-build → package}/wmapp/styles/images/ui-icons.png +0 -0
  846. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/af-na.js +0 -0
  847. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/af.js +0 -0
  848. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/agq.js +0 -0
  849. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ak.js +0 -0
  850. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/am.js +0 -0
  851. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-ae.js +0 -0
  852. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-bh.js +0 -0
  853. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-dj.js +0 -0
  854. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-dz.js +0 -0
  855. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-eg.js +0 -0
  856. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-eh.js +0 -0
  857. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-er.js +0 -0
  858. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-il.js +0 -0
  859. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-iq.js +0 -0
  860. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-jo.js +0 -0
  861. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-km.js +0 -0
  862. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-kw.js +0 -0
  863. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-lb.js +0 -0
  864. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-ly.js +0 -0
  865. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-ma.js +0 -0
  866. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-mr.js +0 -0
  867. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-om.js +0 -0
  868. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-ps.js +0 -0
  869. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-qa.js +0 -0
  870. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-sa.js +0 -0
  871. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-sd.js +0 -0
  872. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-so.js +0 -0
  873. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-ss.js +0 -0
  874. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-sy.js +0 -0
  875. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-td.js +0 -0
  876. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-tn.js +0 -0
  877. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar-ye.js +0 -0
  878. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ar.js +0 -0
  879. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/as.js +0 -0
  880. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/asa.js +0 -0
  881. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ast.js +0 -0
  882. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/az-cyrl.js +0 -0
  883. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/az-latn.js +0 -0
  884. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/az.js +0 -0
  885. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bas.js +0 -0
  886. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/be-tarask.js +0 -0
  887. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/be.js +0 -0
  888. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bem.js +0 -0
  889. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bez.js +0 -0
  890. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bg.js +0 -0
  891. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bm.js +0 -0
  892. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bn-in.js +0 -0
  893. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bn.js +0 -0
  894. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bo-in.js +0 -0
  895. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bo.js +0 -0
  896. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/br.js +0 -0
  897. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/brx.js +0 -0
  898. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bs-cyrl.js +0 -0
  899. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bs-latn.js +0 -0
  900. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/bs.js +0 -0
  901. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ca-ad.js +0 -0
  902. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ca-es-valencia.js +0 -0
  903. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ca-fr.js +0 -0
  904. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ca-it.js +0 -0
  905. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ca.js +0 -0
  906. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ccp-in.js +0 -0
  907. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ccp.js +0 -0
  908. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ce.js +0 -0
  909. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ceb.js +0 -0
  910. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/cgg.js +0 -0
  911. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/chr.js +0 -0
  912. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ckb-ir.js +0 -0
  913. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ckb.js +0 -0
  914. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/cs.js +0 -0
  915. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/cy.js +0 -0
  916. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/da-gl.js +0 -0
  917. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/da.js +0 -0
  918. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/dav.js +0 -0
  919. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de-at.js +0 -0
  920. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de-be.js +0 -0
  921. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de-ch.js +0 -0
  922. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de-it.js +0 -0
  923. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de-li.js +0 -0
  924. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de-lu.js +0 -0
  925. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/de.js +0 -0
  926. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/dje.js +0 -0
  927. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/doi.js +0 -0
  928. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/dsb.js +0 -0
  929. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/dua.js +0 -0
  930. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/dyo.js +0 -0
  931. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/dz.js +0 -0
  932. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ebu.js +0 -0
  933. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ee-tg.js +0 -0
  934. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ee.js +0 -0
  935. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/el-cy.js +0 -0
  936. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/el.js +0 -0
  937. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-001.js +0 -0
  938. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-150.js +0 -0
  939. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ae.js +0 -0
  940. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ag.js +0 -0
  941. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ai.js +0 -0
  942. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-as.js +0 -0
  943. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-at.js +0 -0
  944. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-au.js +0 -0
  945. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-bb.js +0 -0
  946. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-be.js +0 -0
  947. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-bi.js +0 -0
  948. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-bm.js +0 -0
  949. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-bs.js +0 -0
  950. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-bw.js +0 -0
  951. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-bz.js +0 -0
  952. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ca.js +0 -0
  953. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-cc.js +0 -0
  954. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ch.js +0 -0
  955. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ck.js +0 -0
  956. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-cm.js +0 -0
  957. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-cx.js +0 -0
  958. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-cy.js +0 -0
  959. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-de.js +0 -0
  960. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-dg.js +0 -0
  961. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-dk.js +0 -0
  962. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-dm.js +0 -0
  963. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-er.js +0 -0
  964. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-fi.js +0 -0
  965. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-fj.js +0 -0
  966. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-fk.js +0 -0
  967. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-fm.js +0 -0
  968. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gb.js +0 -0
  969. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gd.js +0 -0
  970. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gg.js +0 -0
  971. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gh.js +0 -0
  972. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gi.js +0 -0
  973. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gm.js +0 -0
  974. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gu.js +0 -0
  975. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-gy.js +0 -0
  976. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-hk.js +0 -0
  977. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ie.js +0 -0
  978. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-il.js +0 -0
  979. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-im.js +0 -0
  980. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-in.js +0 -0
  981. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-io.js +0 -0
  982. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-je.js +0 -0
  983. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-jm.js +0 -0
  984. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ke.js +0 -0
  985. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ki.js +0 -0
  986. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-kn.js +0 -0
  987. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ky.js +0 -0
  988. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-lc.js +0 -0
  989. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-lr.js +0 -0
  990. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ls.js +0 -0
  991. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mg.js +0 -0
  992. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mh.js +0 -0
  993. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mo.js +0 -0
  994. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mp.js +0 -0
  995. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ms.js +0 -0
  996. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mt.js +0 -0
  997. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mu.js +0 -0
  998. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mv.js +0 -0
  999. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-mw.js +0 -0
  1000. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-my.js +0 -0
  1001. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-na.js +0 -0
  1002. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-nf.js +0 -0
  1003. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ng.js +0 -0
  1004. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-nl.js +0 -0
  1005. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-nr.js +0 -0
  1006. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-nu.js +0 -0
  1007. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-nz.js +0 -0
  1008. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-pg.js +0 -0
  1009. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ph.js +0 -0
  1010. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-pk.js +0 -0
  1011. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-pn.js +0 -0
  1012. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-pr.js +0 -0
  1013. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-pw.js +0 -0
  1014. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-rw.js +0 -0
  1015. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sb.js +0 -0
  1016. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sc.js +0 -0
  1017. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sd.js +0 -0
  1018. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-se.js +0 -0
  1019. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sg.js +0 -0
  1020. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sh.js +0 -0
  1021. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-si.js +0 -0
  1022. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sl.js +0 -0
  1023. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ss.js +0 -0
  1024. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sx.js +0 -0
  1025. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-sz.js +0 -0
  1026. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-tc.js +0 -0
  1027. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-tk.js +0 -0
  1028. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-to.js +0 -0
  1029. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-tt.js +0 -0
  1030. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-tv.js +0 -0
  1031. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-tz.js +0 -0
  1032. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ug.js +0 -0
  1033. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-um.js +0 -0
  1034. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-vc.js +0 -0
  1035. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-vg.js +0 -0
  1036. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-vi.js +0 -0
  1037. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-vu.js +0 -0
  1038. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-ws.js +0 -0
  1039. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-za.js +0 -0
  1040. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-zm.js +0 -0
  1041. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en-zw.js +0 -0
  1042. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/en.js +0 -0
  1043. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/eo.js +0 -0
  1044. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-419.js +0 -0
  1045. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ar.js +0 -0
  1046. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-bo.js +0 -0
  1047. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-br.js +0 -0
  1048. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-bz.js +0 -0
  1049. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-cl.js +0 -0
  1050. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-co.js +0 -0
  1051. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-cr.js +0 -0
  1052. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-cu.js +0 -0
  1053. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-do.js +0 -0
  1054. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ea.js +0 -0
  1055. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ec.js +0 -0
  1056. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-gq.js +0 -0
  1057. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-gt.js +0 -0
  1058. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-hn.js +0 -0
  1059. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ic.js +0 -0
  1060. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-mx.js +0 -0
  1061. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ni.js +0 -0
  1062. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-pa.js +0 -0
  1063. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-pe.js +0 -0
  1064. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ph.js +0 -0
  1065. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-pr.js +0 -0
  1066. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-py.js +0 -0
  1067. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-sv.js +0 -0
  1068. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-us.js +0 -0
  1069. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-uy.js +0 -0
  1070. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es-ve.js +0 -0
  1071. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/es.js +0 -0
  1072. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/et.js +0 -0
  1073. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/eu.js +0 -0
  1074. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ewo.js +0 -0
  1075. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fa-af.js +0 -0
  1076. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fa.js +0 -0
  1077. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-bf.js +0 -0
  1078. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-cm.js +0 -0
  1079. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-gh.js +0 -0
  1080. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-gm.js +0 -0
  1081. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-gw.js +0 -0
  1082. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-lr.js +0 -0
  1083. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-mr.js +0 -0
  1084. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-ne.js +0 -0
  1085. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-ng.js +0 -0
  1086. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-sl.js +0 -0
  1087. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm-sn.js +0 -0
  1088. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-adlm.js +0 -0
  1089. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-cm.js +0 -0
  1090. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-gn.js +0 -0
  1091. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-bf.js +0 -0
  1092. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-cm.js +0 -0
  1093. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-gh.js +0 -0
  1094. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-gm.js +0 -0
  1095. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-gn.js +0 -0
  1096. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-gw.js +0 -0
  1097. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-lr.js +0 -0
  1098. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-mr.js +0 -0
  1099. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-ne.js +0 -0
  1100. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-ng.js +0 -0
  1101. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn-sl.js +0 -0
  1102. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-latn.js +0 -0
  1103. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff-mr.js +0 -0
  1104. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ff.js +0 -0
  1105. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fi.js +0 -0
  1106. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fil.js +0 -0
  1107. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fo-dk.js +0 -0
  1108. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fo.js +0 -0
  1109. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-be.js +0 -0
  1110. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-bf.js +0 -0
  1111. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-bi.js +0 -0
  1112. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-bj.js +0 -0
  1113. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-bl.js +0 -0
  1114. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ca.js +0 -0
  1115. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-cd.js +0 -0
  1116. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-cf.js +0 -0
  1117. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-cg.js +0 -0
  1118. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ch.js +0 -0
  1119. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ci.js +0 -0
  1120. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-cm.js +0 -0
  1121. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-dj.js +0 -0
  1122. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-dz.js +0 -0
  1123. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ga.js +0 -0
  1124. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-gf.js +0 -0
  1125. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-gn.js +0 -0
  1126. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-gp.js +0 -0
  1127. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-gq.js +0 -0
  1128. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ht.js +0 -0
  1129. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-km.js +0 -0
  1130. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-lu.js +0 -0
  1131. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ma.js +0 -0
  1132. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-mc.js +0 -0
  1133. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-mf.js +0 -0
  1134. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-mg.js +0 -0
  1135. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ml.js +0 -0
  1136. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-mq.js +0 -0
  1137. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-mr.js +0 -0
  1138. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-mu.js +0 -0
  1139. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-nc.js +0 -0
  1140. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-ne.js +0 -0
  1141. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-pf.js +0 -0
  1142. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-pm.js +0 -0
  1143. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-re.js +0 -0
  1144. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-rw.js +0 -0
  1145. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-sc.js +0 -0
  1146. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-sn.js +0 -0
  1147. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-sy.js +0 -0
  1148. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-td.js +0 -0
  1149. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-tg.js +0 -0
  1150. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-tn.js +0 -0
  1151. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-vu.js +0 -0
  1152. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-wf.js +0 -0
  1153. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr-yt.js +0 -0
  1154. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fr.js +0 -0
  1155. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fur.js +0 -0
  1156. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/fy.js +0 -0
  1157. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ga-gb.js +0 -0
  1158. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ga.js +0 -0
  1159. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gd.js +0 -0
  1160. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gl.js +0 -0
  1161. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gsw-fr.js +0 -0
  1162. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gsw-li.js +0 -0
  1163. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gsw.js +0 -0
  1164. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gu.js +0 -0
  1165. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/guz.js +0 -0
  1166. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/gv.js +0 -0
  1167. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ha-gh.js +0 -0
  1168. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ha-ne.js +0 -0
  1169. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ha.js +0 -0
  1170. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/haw.js +0 -0
  1171. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/he.js +0 -0
  1172. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hi-latn.js +0 -0
  1173. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hi.js +0 -0
  1174. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hr-ba.js +0 -0
  1175. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hr.js +0 -0
  1176. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hsb.js +0 -0
  1177. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hu.js +0 -0
  1178. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/hy.js +0 -0
  1179. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ia.js +0 -0
  1180. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/id.js +0 -0
  1181. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ig.js +0 -0
  1182. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ii.js +0 -0
  1183. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/is.js +0 -0
  1184. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/it-ch.js +0 -0
  1185. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/it-sm.js +0 -0
  1186. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/it-va.js +0 -0
  1187. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/it.js +0 -0
  1188. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ja.js +0 -0
  1189. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/jgo.js +0 -0
  1190. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/jmc.js +0 -0
  1191. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/jv.js +0 -0
  1192. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ka.js +0 -0
  1193. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kab.js +0 -0
  1194. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kam.js +0 -0
  1195. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kde.js +0 -0
  1196. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kea.js +0 -0
  1197. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kgp.js +0 -0
  1198. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/khq.js +0 -0
  1199. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ki.js +0 -0
  1200. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kk.js +0 -0
  1201. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kkj.js +0 -0
  1202. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kl.js +0 -0
  1203. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kln.js +0 -0
  1204. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/km.js +0 -0
  1205. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kn.js +0 -0
  1206. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ko-kp.js +0 -0
  1207. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ko.js +0 -0
  1208. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kok.js +0 -0
  1209. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ks-arab.js +0 -0
  1210. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ks-deva.js +0 -0
  1211. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ks.js +0 -0
  1212. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ksb.js +0 -0
  1213. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ksf.js +0 -0
  1214. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ksh.js +0 -0
  1215. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ku.js +0 -0
  1216. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/kw.js +0 -0
  1217. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ky.js +0 -0
  1218. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lag.js +0 -0
  1219. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lb.js +0 -0
  1220. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lg.js +0 -0
  1221. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lkt.js +0 -0
  1222. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ln-ao.js +0 -0
  1223. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ln-cf.js +0 -0
  1224. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ln-cg.js +0 -0
  1225. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ln.js +0 -0
  1226. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lo.js +0 -0
  1227. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lrc-iq.js +0 -0
  1228. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lrc.js +0 -0
  1229. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lt.js +0 -0
  1230. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lu.js +0 -0
  1231. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/luo.js +0 -0
  1232. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/luy.js +0 -0
  1233. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/lv.js +0 -0
  1234. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mai.js +0 -0
  1235. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mas-tz.js +0 -0
  1236. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mas.js +0 -0
  1237. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mer.js +0 -0
  1238. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mfe.js +0 -0
  1239. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mg.js +0 -0
  1240. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mgh.js +0 -0
  1241. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mgo.js +0 -0
  1242. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mi.js +0 -0
  1243. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mk.js +0 -0
  1244. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ml.js +0 -0
  1245. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mn.js +0 -0
  1246. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mni-beng.js +0 -0
  1247. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mni.js +0 -0
  1248. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mr.js +0 -0
  1249. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ms-bn.js +0 -0
  1250. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ms-id.js +0 -0
  1251. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ms-sg.js +0 -0
  1252. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ms.js +0 -0
  1253. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mt.js +0 -0
  1254. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mua.js +0 -0
  1255. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/my.js +0 -0
  1256. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/mzn.js +0 -0
  1257. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/naq.js +0 -0
  1258. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nb-sj.js +0 -0
  1259. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nb.js +0 -0
  1260. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nd.js +0 -0
  1261. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nds-nl.js +0 -0
  1262. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nds.js +0 -0
  1263. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ne-in.js +0 -0
  1264. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ne.js +0 -0
  1265. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl-aw.js +0 -0
  1266. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl-be.js +0 -0
  1267. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl-bq.js +0 -0
  1268. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl-cw.js +0 -0
  1269. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl-sr.js +0 -0
  1270. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl-sx.js +0 -0
  1271. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nl.js +0 -0
  1272. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nmg.js +0 -0
  1273. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nn.js +0 -0
  1274. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nnh.js +0 -0
  1275. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/no.js +0 -0
  1276. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nus.js +0 -0
  1277. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/nyn.js +0 -0
  1278. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/om-ke.js +0 -0
  1279. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/om.js +0 -0
  1280. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/or.js +0 -0
  1281. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/os-ru.js +0 -0
  1282. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/os.js +0 -0
  1283. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pa-arab.js +0 -0
  1284. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pa-guru.js +0 -0
  1285. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pa.js +0 -0
  1286. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pcm.js +0 -0
  1287. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pl.js +0 -0
  1288. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ps-pk.js +0 -0
  1289. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ps.js +0 -0
  1290. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-ao.js +0 -0
  1291. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-ch.js +0 -0
  1292. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-cv.js +0 -0
  1293. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-gq.js +0 -0
  1294. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-gw.js +0 -0
  1295. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-lu.js +0 -0
  1296. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-mo.js +0 -0
  1297. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-mz.js +0 -0
  1298. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-pt.js +0 -0
  1299. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-st.js +0 -0
  1300. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt-tl.js +0 -0
  1301. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/pt.js +0 -0
  1302. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/qu-bo.js +0 -0
  1303. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/qu-ec.js +0 -0
  1304. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/qu.js +0 -0
  1305. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/rm.js +0 -0
  1306. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/rn.js +0 -0
  1307. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ro-md.js +0 -0
  1308. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ro.js +0 -0
  1309. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/rof.js +0 -0
  1310. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ru-by.js +0 -0
  1311. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ru-kg.js +0 -0
  1312. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ru-kz.js +0 -0
  1313. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ru-md.js +0 -0
  1314. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ru-ua.js +0 -0
  1315. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ru.js +0 -0
  1316. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/rw.js +0 -0
  1317. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/rwk.js +0 -0
  1318. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sa.js +0 -0
  1319. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sah.js +0 -0
  1320. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/saq.js +0 -0
  1321. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sat-olck.js +0 -0
  1322. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sat.js +0 -0
  1323. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sbp.js +0 -0
  1324. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sc.js +0 -0
  1325. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sd-arab.js +0 -0
  1326. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sd-deva.js +0 -0
  1327. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sd.js +0 -0
  1328. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/se-fi.js +0 -0
  1329. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/se-se.js +0 -0
  1330. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/se.js +0 -0
  1331. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/seh.js +0 -0
  1332. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ses.js +0 -0
  1333. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sg.js +0 -0
  1334. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/shi-latn.js +0 -0
  1335. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/shi-tfng.js +0 -0
  1336. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/shi.js +0 -0
  1337. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/si.js +0 -0
  1338. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sk.js +0 -0
  1339. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sl.js +0 -0
  1340. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/smn.js +0 -0
  1341. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sn.js +0 -0
  1342. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/so-dj.js +0 -0
  1343. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/so-et.js +0 -0
  1344. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/so-ke.js +0 -0
  1345. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/so.js +0 -0
  1346. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sq-mk.js +0 -0
  1347. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sq-xk.js +0 -0
  1348. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sq.js +0 -0
  1349. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-cyrl-ba.js +0 -0
  1350. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-cyrl-me.js +0 -0
  1351. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-cyrl-xk.js +0 -0
  1352. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-cyrl.js +0 -0
  1353. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-latn-ba.js +0 -0
  1354. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-latn-me.js +0 -0
  1355. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-latn-xk.js +0 -0
  1356. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr-latn.js +0 -0
  1357. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sr.js +0 -0
  1358. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/su-latn.js +0 -0
  1359. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/su.js +0 -0
  1360. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sv-ax.js +0 -0
  1361. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sv-fi.js +0 -0
  1362. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sv.js +0 -0
  1363. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sw-cd.js +0 -0
  1364. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sw-ke.js +0 -0
  1365. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sw-ug.js +0 -0
  1366. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/sw.js +0 -0
  1367. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ta-lk.js +0 -0
  1368. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ta-my.js +0 -0
  1369. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ta-sg.js +0 -0
  1370. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ta.js +0 -0
  1371. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/te.js +0 -0
  1372. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/teo-ke.js +0 -0
  1373. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/teo.js +0 -0
  1374. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/tg.js +0 -0
  1375. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/th.js +0 -0
  1376. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ti-er.js +0 -0
  1377. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ti.js +0 -0
  1378. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/tk.js +0 -0
  1379. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/to.js +0 -0
  1380. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/tr-cy.js +0 -0
  1381. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/tr.js +0 -0
  1382. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/tt.js +0 -0
  1383. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/twq.js +0 -0
  1384. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/tzm.js +0 -0
  1385. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ug.js +0 -0
  1386. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/uk.js +0 -0
  1387. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/und.js +0 -0
  1388. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ur-in.js +0 -0
  1389. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/ur.js +0 -0
  1390. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/uz-arab.js +0 -0
  1391. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/uz-cyrl.js +0 -0
  1392. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/uz-latn.js +0 -0
  1393. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/uz.js +0 -0
  1394. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/vai-latn.js +0 -0
  1395. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/vai-vaii.js +0 -0
  1396. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/vai.js +0 -0
  1397. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/vi.js +0 -0
  1398. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/vun.js +0 -0
  1399. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/wae.js +0 -0
  1400. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/wo.js +0 -0
  1401. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/xh.js +0 -0
  1402. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/xog.js +0 -0
  1403. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yav.js +0 -0
  1404. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yi.js +0 -0
  1405. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yo-bj.js +0 -0
  1406. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yo.js +0 -0
  1407. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yrl-co.js +0 -0
  1408. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yrl-ve.js +0 -0
  1409. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yrl.js +0 -0
  1410. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yue-hans.js +0 -0
  1411. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yue-hant.js +0 -0
  1412. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/yue.js +0 -0
  1413. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zgh.js +0 -0
  1414. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hans-hk.js +0 -0
  1415. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hans-mo.js +0 -0
  1416. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hans-sg.js +0 -0
  1417. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hans.js +0 -0
  1418. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hant-hk.js +0 -0
  1419. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hant-mo.js +0 -0
  1420. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh-hant.js +0 -0
  1421. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zh.js +0 -0
  1422. {app-runtime-wm-build → package}/wmmobile/locales/angular/global/zu.js +0 -0
  1423. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/af.js +0 -0
  1424. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar-dz.js +0 -0
  1425. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar-kw.js +0 -0
  1426. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar-ly.js +0 -0
  1427. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar-ma.js +0 -0
  1428. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar-sa.js +0 -0
  1429. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar-tn.js +0 -0
  1430. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ar.js +0 -0
  1431. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/az.js +0 -0
  1432. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/bg.js +0 -0
  1433. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/bs.js +0 -0
  1434. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ca.js +0 -0
  1435. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/cs.js +0 -0
  1436. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/da.js +0 -0
  1437. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/de.js +0 -0
  1438. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/el.js +0 -0
  1439. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/en-au.js +0 -0
  1440. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/en-gb.js +0 -0
  1441. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/en-nz.js +0 -0
  1442. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/es-us.js +0 -0
  1443. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/es.js +0 -0
  1444. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/et.js +0 -0
  1445. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/eu.js +0 -0
  1446. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/fa.js +0 -0
  1447. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/fi.js +0 -0
  1448. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/fr-ca.js +0 -0
  1449. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/fr-ch.js +0 -0
  1450. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/fr.js +0 -0
  1451. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/gl.js +0 -0
  1452. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/he.js +0 -0
  1453. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/hi.js +0 -0
  1454. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/hr.js +0 -0
  1455. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/hu.js +0 -0
  1456. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/id.js +0 -0
  1457. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/is.js +0 -0
  1458. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/it.js +0 -0
  1459. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ja.js +0 -0
  1460. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ka.js +0 -0
  1461. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/kk.js +0 -0
  1462. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ko.js +0 -0
  1463. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/lb.js +0 -0
  1464. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/lt.js +0 -0
  1465. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/lv.js +0 -0
  1466. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/mk.js +0 -0
  1467. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ms.js +0 -0
  1468. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/nb.js +0 -0
  1469. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ne.js +0 -0
  1470. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/nl.js +0 -0
  1471. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/nn.js +0 -0
  1472. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/pl.js +0 -0
  1473. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/pt-br.js +0 -0
  1474. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/pt.js +0 -0
  1475. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ro.js +0 -0
  1476. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ru.js +0 -0
  1477. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/sk.js +0 -0
  1478. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/sl.js +0 -0
  1479. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/sq.js +0 -0
  1480. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/sr-cyrl.js +0 -0
  1481. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/sr.js +0 -0
  1482. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/sv.js +0 -0
  1483. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/th.js +0 -0
  1484. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/tr.js +0 -0
  1485. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/ug.js +0 -0
  1486. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/uk.js +0 -0
  1487. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/uz.js +0 -0
  1488. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/vi.js +0 -0
  1489. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/zh-cn.js +0 -0
  1490. {app-runtime-wm-build → package}/wmmobile/locales/fullcalendar/zh-tw.js +0 -0
  1491. {app-runtime-wm-build → package}/wmmobile/locales/moment/af.js +0 -0
  1492. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar-dz.js +0 -0
  1493. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar-kw.js +0 -0
  1494. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar-ly.js +0 -0
  1495. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar-ma.js +0 -0
  1496. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar-sa.js +0 -0
  1497. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar-tn.js +0 -0
  1498. {app-runtime-wm-build → package}/wmmobile/locales/moment/ar.js +0 -0
  1499. {app-runtime-wm-build → package}/wmmobile/locales/moment/az.js +0 -0
  1500. {app-runtime-wm-build → package}/wmmobile/locales/moment/be.js +0 -0
  1501. {app-runtime-wm-build → package}/wmmobile/locales/moment/bg.js +0 -0
  1502. {app-runtime-wm-build → package}/wmmobile/locales/moment/bm.js +0 -0
  1503. {app-runtime-wm-build → package}/wmmobile/locales/moment/bn-bd.js +0 -0
  1504. {app-runtime-wm-build → package}/wmmobile/locales/moment/bn.js +0 -0
  1505. {app-runtime-wm-build → package}/wmmobile/locales/moment/bo.js +0 -0
  1506. {app-runtime-wm-build → package}/wmmobile/locales/moment/br.js +0 -0
  1507. {app-runtime-wm-build → package}/wmmobile/locales/moment/bs.js +0 -0
  1508. {app-runtime-wm-build → package}/wmmobile/locales/moment/ca.js +0 -0
  1509. {app-runtime-wm-build → package}/wmmobile/locales/moment/cs.js +0 -0
  1510. {app-runtime-wm-build → package}/wmmobile/locales/moment/cv.js +0 -0
  1511. {app-runtime-wm-build → package}/wmmobile/locales/moment/cy.js +0 -0
  1512. {app-runtime-wm-build → package}/wmmobile/locales/moment/da.js +0 -0
  1513. {app-runtime-wm-build → package}/wmmobile/locales/moment/de-at.js +0 -0
  1514. {app-runtime-wm-build → package}/wmmobile/locales/moment/de-ch.js +0 -0
  1515. {app-runtime-wm-build → package}/wmmobile/locales/moment/de.js +0 -0
  1516. {app-runtime-wm-build → package}/wmmobile/locales/moment/dv.js +0 -0
  1517. {app-runtime-wm-build → package}/wmmobile/locales/moment/el.js +0 -0
  1518. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-au.js +0 -0
  1519. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-ca.js +0 -0
  1520. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-gb.js +0 -0
  1521. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-ie.js +0 -0
  1522. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-il.js +0 -0
  1523. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-in.js +0 -0
  1524. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-nz.js +0 -0
  1525. {app-runtime-wm-build → package}/wmmobile/locales/moment/en-sg.js +0 -0
  1526. {app-runtime-wm-build → package}/wmmobile/locales/moment/eo.js +0 -0
  1527. {app-runtime-wm-build → package}/wmmobile/locales/moment/es-do.js +0 -0
  1528. {app-runtime-wm-build → package}/wmmobile/locales/moment/es-mx.js +0 -0
  1529. {app-runtime-wm-build → package}/wmmobile/locales/moment/es-us.js +0 -0
  1530. {app-runtime-wm-build → package}/wmmobile/locales/moment/es.js +0 -0
  1531. {app-runtime-wm-build → package}/wmmobile/locales/moment/et.js +0 -0
  1532. {app-runtime-wm-build → package}/wmmobile/locales/moment/eu.js +0 -0
  1533. {app-runtime-wm-build → package}/wmmobile/locales/moment/fa.js +0 -0
  1534. {app-runtime-wm-build → package}/wmmobile/locales/moment/fi.js +0 -0
  1535. {app-runtime-wm-build → package}/wmmobile/locales/moment/fil.js +0 -0
  1536. {app-runtime-wm-build → package}/wmmobile/locales/moment/fo.js +0 -0
  1537. {app-runtime-wm-build → package}/wmmobile/locales/moment/fr-ca.js +0 -0
  1538. {app-runtime-wm-build → package}/wmmobile/locales/moment/fr-ch.js +0 -0
  1539. {app-runtime-wm-build → package}/wmmobile/locales/moment/fr.js +0 -0
  1540. {app-runtime-wm-build → package}/wmmobile/locales/moment/fy.js +0 -0
  1541. {app-runtime-wm-build → package}/wmmobile/locales/moment/ga.js +0 -0
  1542. {app-runtime-wm-build → package}/wmmobile/locales/moment/gd.js +0 -0
  1543. {app-runtime-wm-build → package}/wmmobile/locales/moment/gl.js +0 -0
  1544. {app-runtime-wm-build → package}/wmmobile/locales/moment/gom-deva.js +0 -0
  1545. {app-runtime-wm-build → package}/wmmobile/locales/moment/gom-latn.js +0 -0
  1546. {app-runtime-wm-build → package}/wmmobile/locales/moment/gu.js +0 -0
  1547. {app-runtime-wm-build → package}/wmmobile/locales/moment/he.js +0 -0
  1548. {app-runtime-wm-build → package}/wmmobile/locales/moment/hi.js +0 -0
  1549. {app-runtime-wm-build → package}/wmmobile/locales/moment/hr.js +0 -0
  1550. {app-runtime-wm-build → package}/wmmobile/locales/moment/hu.js +0 -0
  1551. {app-runtime-wm-build → package}/wmmobile/locales/moment/hy-am.js +0 -0
  1552. {app-runtime-wm-build → package}/wmmobile/locales/moment/id.js +0 -0
  1553. {app-runtime-wm-build → package}/wmmobile/locales/moment/is.js +0 -0
  1554. {app-runtime-wm-build → package}/wmmobile/locales/moment/it-ch.js +0 -0
  1555. {app-runtime-wm-build → package}/wmmobile/locales/moment/it.js +0 -0
  1556. {app-runtime-wm-build → package}/wmmobile/locales/moment/ja.js +0 -0
  1557. {app-runtime-wm-build → package}/wmmobile/locales/moment/jv.js +0 -0
  1558. {app-runtime-wm-build → package}/wmmobile/locales/moment/ka.js +0 -0
  1559. {app-runtime-wm-build → package}/wmmobile/locales/moment/kk.js +0 -0
  1560. {app-runtime-wm-build → package}/wmmobile/locales/moment/km.js +0 -0
  1561. {app-runtime-wm-build → package}/wmmobile/locales/moment/kn.js +0 -0
  1562. {app-runtime-wm-build → package}/wmmobile/locales/moment/ko.js +0 -0
  1563. {app-runtime-wm-build → package}/wmmobile/locales/moment/ku.js +0 -0
  1564. {app-runtime-wm-build → package}/wmmobile/locales/moment/ky.js +0 -0
  1565. {app-runtime-wm-build → package}/wmmobile/locales/moment/lb.js +0 -0
  1566. {app-runtime-wm-build → package}/wmmobile/locales/moment/lo.js +0 -0
  1567. {app-runtime-wm-build → package}/wmmobile/locales/moment/lt.js +0 -0
  1568. {app-runtime-wm-build → package}/wmmobile/locales/moment/lv.js +0 -0
  1569. {app-runtime-wm-build → package}/wmmobile/locales/moment/me.js +0 -0
  1570. {app-runtime-wm-build → package}/wmmobile/locales/moment/mi.js +0 -0
  1571. {app-runtime-wm-build → package}/wmmobile/locales/moment/mk.js +0 -0
  1572. {app-runtime-wm-build → package}/wmmobile/locales/moment/ml.js +0 -0
  1573. {app-runtime-wm-build → package}/wmmobile/locales/moment/mn.js +0 -0
  1574. {app-runtime-wm-build → package}/wmmobile/locales/moment/mr.js +0 -0
  1575. {app-runtime-wm-build → package}/wmmobile/locales/moment/ms-my.js +0 -0
  1576. {app-runtime-wm-build → package}/wmmobile/locales/moment/ms.js +0 -0
  1577. {app-runtime-wm-build → package}/wmmobile/locales/moment/mt.js +0 -0
  1578. {app-runtime-wm-build → package}/wmmobile/locales/moment/my.js +0 -0
  1579. {app-runtime-wm-build → package}/wmmobile/locales/moment/nb.js +0 -0
  1580. {app-runtime-wm-build → package}/wmmobile/locales/moment/ne.js +0 -0
  1581. {app-runtime-wm-build → package}/wmmobile/locales/moment/nl-be.js +0 -0
  1582. {app-runtime-wm-build → package}/wmmobile/locales/moment/nl.js +0 -0
  1583. {app-runtime-wm-build → package}/wmmobile/locales/moment/nn.js +0 -0
  1584. {app-runtime-wm-build → package}/wmmobile/locales/moment/oc-lnc.js +0 -0
  1585. {app-runtime-wm-build → package}/wmmobile/locales/moment/pa-in.js +0 -0
  1586. {app-runtime-wm-build → package}/wmmobile/locales/moment/pl.js +0 -0
  1587. {app-runtime-wm-build → package}/wmmobile/locales/moment/pt-br.js +0 -0
  1588. {app-runtime-wm-build → package}/wmmobile/locales/moment/pt.js +0 -0
  1589. {app-runtime-wm-build → package}/wmmobile/locales/moment/ro.js +0 -0
  1590. {app-runtime-wm-build → package}/wmmobile/locales/moment/ru.js +0 -0
  1591. {app-runtime-wm-build → package}/wmmobile/locales/moment/sd.js +0 -0
  1592. {app-runtime-wm-build → package}/wmmobile/locales/moment/se.js +0 -0
  1593. {app-runtime-wm-build → package}/wmmobile/locales/moment/si.js +0 -0
  1594. {app-runtime-wm-build → package}/wmmobile/locales/moment/sk.js +0 -0
  1595. {app-runtime-wm-build → package}/wmmobile/locales/moment/sl.js +0 -0
  1596. {app-runtime-wm-build → package}/wmmobile/locales/moment/sq.js +0 -0
  1597. {app-runtime-wm-build → package}/wmmobile/locales/moment/sr-cyrl.js +0 -0
  1598. {app-runtime-wm-build → package}/wmmobile/locales/moment/sr.js +0 -0
  1599. {app-runtime-wm-build → package}/wmmobile/locales/moment/ss.js +0 -0
  1600. {app-runtime-wm-build → package}/wmmobile/locales/moment/sv.js +0 -0
  1601. {app-runtime-wm-build → package}/wmmobile/locales/moment/sw.js +0 -0
  1602. {app-runtime-wm-build → package}/wmmobile/locales/moment/ta.js +0 -0
  1603. {app-runtime-wm-build → package}/wmmobile/locales/moment/te.js +0 -0
  1604. {app-runtime-wm-build → package}/wmmobile/locales/moment/tet.js +0 -0
  1605. {app-runtime-wm-build → package}/wmmobile/locales/moment/tg.js +0 -0
  1606. {app-runtime-wm-build → package}/wmmobile/locales/moment/th.js +0 -0
  1607. {app-runtime-wm-build → package}/wmmobile/locales/moment/tk.js +0 -0
  1608. {app-runtime-wm-build → package}/wmmobile/locales/moment/tl-ph.js +0 -0
  1609. {app-runtime-wm-build → package}/wmmobile/locales/moment/tlh.js +0 -0
  1610. {app-runtime-wm-build → package}/wmmobile/locales/moment/tr.js +0 -0
  1611. {app-runtime-wm-build → package}/wmmobile/locales/moment/tzl.js +0 -0
  1612. {app-runtime-wm-build → package}/wmmobile/locales/moment/tzm-latn.js +0 -0
  1613. {app-runtime-wm-build → package}/wmmobile/locales/moment/tzm.js +0 -0
  1614. {app-runtime-wm-build → package}/wmmobile/locales/moment/ug-cn.js +0 -0
  1615. {app-runtime-wm-build → package}/wmmobile/locales/moment/uk.js +0 -0
  1616. {app-runtime-wm-build → package}/wmmobile/locales/moment/ur.js +0 -0
  1617. {app-runtime-wm-build → package}/wmmobile/locales/moment/uz-latn.js +0 -0
  1618. {app-runtime-wm-build → package}/wmmobile/locales/moment/uz.js +0 -0
  1619. {app-runtime-wm-build → package}/wmmobile/locales/moment/vi.js +0 -0
  1620. {app-runtime-wm-build → package}/wmmobile/locales/moment/x-pseudo.js +0 -0
  1621. {app-runtime-wm-build → package}/wmmobile/locales/moment/yo.js +0 -0
  1622. {app-runtime-wm-build → package}/wmmobile/locales/moment/zh-cn.js +0 -0
  1623. {app-runtime-wm-build → package}/wmmobile/locales/moment/zh-hk.js +0 -0
  1624. {app-runtime-wm-build → package}/wmmobile/locales/moment/zh-mo.js +0 -0
  1625. {app-runtime-wm-build → package}/wmmobile/locales/moment/zh-tw.js +0 -0
  1626. {app-runtime-wm-build → package}/wmmobile/locales/moment-timezone/moment-timezone-with-data.js +0 -0
  1627. {app-runtime-wm-build → package}/wmmobile/styles/css/bootstrap.css.map +0 -0
  1628. {app-runtime-wm-build → package}/wmmobile/styles/css/font/summernote.eot +0 -0
  1629. {app-runtime-wm-build → package}/wmmobile/styles/css/font/summernote.ttf +0 -0
  1630. {app-runtime-wm-build → package}/wmmobile/styles/css/font/summernote.woff +0 -0
  1631. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  1632. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  1633. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  1634. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  1635. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  1636. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  1637. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  1638. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  1639. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_222222_256x240.png +0 -0
  1640. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_2e83ff_256x240.png +0 -0
  1641. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_444444_256x240.png +0 -0
  1642. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_454545_256x240.png +0 -0
  1643. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_555555_256x240.png +0 -0
  1644. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_777620_256x240.png +0 -0
  1645. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_777777_256x240.png +0 -0
  1646. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_888888_256x240.png +0 -0
  1647. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_cc0000_256x240.png +0 -0
  1648. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_cd0a0a_256x240.png +0 -0
  1649. {app-runtime-wm-build → package}/wmmobile/styles/css/images/ui-icons_ffffff_256x240.png +0 -0
  1650. {app-runtime-wm-build → package}/wmmobile/styles/css/wm-responsive.css +0 -0
  1651. {app-runtime-wm-build → package}/wmmobile/styles/css/wm-style.css +0 -0
  1652. {app-runtime-wm-build → package}/wmmobile/styles/fonts/FontAwesome.otf +0 -0
  1653. {app-runtime-wm-build → package}/wmmobile/styles/fonts/fontawesome-webfont.eot +0 -0
  1654. {app-runtime-wm-build → package}/wmmobile/styles/fonts/fontawesome-webfont.svg +0 -0
  1655. {app-runtime-wm-build → package}/wmmobile/styles/fonts/fontawesome-webfont.ttf +0 -0
  1656. {app-runtime-wm-build → package}/wmmobile/styles/fonts/fontawesome-webfont.woff +0 -0
  1657. {app-runtime-wm-build → package}/wmmobile/styles/fonts/fontawesome-webfont.woff2 +0 -0
  1658. {app-runtime-wm-build → package}/wmmobile/styles/fonts/glyphicons-halflings-regular.eot +0 -0
  1659. {app-runtime-wm-build → package}/wmmobile/styles/fonts/glyphicons-halflings-regular.svg +0 -0
  1660. {app-runtime-wm-build → package}/wmmobile/styles/fonts/glyphicons-halflings-regular.ttf +0 -0
  1661. {app-runtime-wm-build → package}/wmmobile/styles/fonts/glyphicons-halflings-regular.woff +0 -0
  1662. {app-runtime-wm-build → package}/wmmobile/styles/fonts/glyphicons-halflings-regular.woff2 +0 -0
  1663. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wavicon.eot +0 -0
  1664. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wavicon.ttf +0 -0
  1665. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wavicon.woff +0 -0
  1666. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wm-streamline-light-icon.eot +0 -0
  1667. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wm-streamline-light-icon.ttf +0 -0
  1668. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wm-streamline-light-icon.woff +0 -0
  1669. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wm-streamline-regular-icon.eot +0 -0
  1670. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wm-streamline-regular-icon.ttf +0 -0
  1671. {app-runtime-wm-build → package}/wmmobile/styles/fonts/wm-streamline-regular-icon.woff +0 -0
  1672. {app-runtime-wm-build → package}/wmmobile/styles/images/live-sync-icon.png +0 -0
  1673. {app-runtime-wm-build → package}/wmmobile/styles/images/live-sync-touch-icon.png +0 -0
  1674. {app-runtime-wm-build → package}/wmmobile/styles/images/loader.gif +0 -0
  1675. {app-runtime-wm-build → package}/wmmobile/styles/images/spinner-small.gif +0 -0
  1676. {app-runtime-wm-build → package}/wmmobile/styles/images/ui-icons.png +0 -0
@@ -0,0 +1,9 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/compiler"),require("lodash-es"),require("rxjs"),require("@angular/core"),require("@angular/common/http")):"function"==typeof define&&define.amd?define(["exports","@angular/compiler","lodash-es","rxjs","@angular/core","@angular/common/http"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.core={}),e.ng.compiler,e._,e.rxjs,e.ng.core,e.ng.common.http)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r,l,c,d,p=o(a),u=o(s);e.FormWidgetType=void 0,(r=e.FormWidgetType||(e.FormWidgetType={})).AUTOCOMPLETE="autocomplete",r.CHECKBOX="checkbox",r.CHECKBOXSET="checkboxset",r.CHIPS="chips",r.COLORPICKER="colorpicker",r.CURRENCY="currency",r.DATE="date",r.DATETIME="datetime",r.NUMBER="number",r.PASSWORD="password",r.RADIOSET="radioset",r.RATING="rating",r.RICHTEXT="richtext",r.SELECT="select",r.TOGGLE="toggle",r.SLIDER="slider",r.SWITCH="switch",r.TEXT="text",r.TEXTAREA="textarea",r.TIME="time",r.TIMESTAMP="timestamp",r.TYPEAHEAD="typeahead",r.UPLOAD="upload",e.DataType=void 0,(l=e.DataType||(e.DataType={})).INTEGER="integer",l.BIG_INTEGER="big_integer",l.SHORT="short",l.FLOAT="float",l.BIG_DECIMAL="big_decimal",l.DOUBLE="double",l.LONG="long",l.BYTE="byte",l.STRING="string",l.CHARACTER="character",l.TEXT="text",l.DATE="date",l.TIME="time",l.TIMESTAMP="timestamp",l.DATETIME="datetime",l.LOCALDATETIME="localdatetime",l.BOOLEAN="boolean",l.LIST="list",l.CLOB="clob",l.BLOB="blob",e.MatchMode=void 0,(c=e.MatchMode||(e.MatchMode={})).BETWEEN="between",c.GREATER="greaterthanequal",c.LESSER="lessthanequal",c.NULL="null",c.EMPTY="empty",c.NULLOREMPTY="nullorempty",c.EQUALS="exact",e.DEFAULT_FORMATS=void 0,(d=e.DEFAULT_FORMATS||(e.DEFAULT_FORMATS={})).DATE="yyyy-MM-dd",d.TIME="HH:mm:ss",d.TIMESTAMP="timestamp",d.DATETIME="yyyy-MM-ddTHH:mm:ss",d.LOCALDATETIME="yyyy-MM-ddTHH:mm:ss",d.DATETIME_ORACLE="yyyy-MM-dd HH:mm:ss",d.DATE_TIME="yyyy-MM-dd HH:mm:ss";const h=(e,i,n)=>{n=n.replace("bind:","");const a=e.attrs.find((e=>"datasetboundexpr"===e.name));"dataset"!==i.name||a||e.attrs.push(new t.Attribute("datasetboundexpr",n,i.sourceSpan,i.keySpan,i.valueSpan,void 0,void 0))},m=function(e){let t=e.match(/(custom(\s*:))/g);return t&&t.length},g=(e,t,n,a="",s="item")=>{const o=t.replace(/([^a-zA-Z0-9.])/g,"\\$1"),r=new RegExp("("+o+")(\\[0\\])?(.data\\[\\$i\\])?(.content\\[\\$i\\])?(\\[\\$i\\])?","g");let l,c,d,p;const u={"wm-list":["itemclass","disableitem","dataset"]};n&&(l=new RegExp(`(Widgets.${n}.currentItem)\\b`,"g"),c=new RegExp(`(Widgets.${n}.currentItemWidgets)\\b`,"g"),d=new RegExp("(Widgets.(.*).(formWidgets|filterWidgets))\\b","g")),p=i.isArray(e)?e:u[e.name]?[e]:e.children||[],p.forEach((e=>{if(e.name){const o=e.name,p=new RegExp("bind:\\s*\\(*"+t+"\\)*\\.length\\)*");e.attrs.forEach((n=>{let g=n.value&&n.value.trim();i.startsWith(g,"bind:")&&((!u[o]||u[o]&&u[o].indexOf(n.name)>-1)&&i.includes(g,t)&&g!=="bind:"+t&&!p.test(g)&&(g=g.replace("bind:",""),h(e,n,g),g=g.replace(r,s),g="bind:"+g,m(g)&&l&&(g+=":"+l.exec(l.source)[0])),l&&l.test(g)&&((g.includes(".formWidgets")||g.includes(".filterWidgets"))&&(g=g.replace(d,"Widgets")),h(e,n,g),g=g.replace(l,s)),c&&c.test(g)&&(g=g.replace(c,`${a}currentItemWidgets`)),n.value=g)})),g(e.children,t,n,a,s)}}))},f=new Map([["display-name","caption"],["display-name.bind","caption.bind"],["title","hint"],["title.bind","hint.bind"],["show","show"],["show.bind","show.bind"],["disabled","disabled"],["disabled.bind","disabled.bind"],["hyperlink","hyperlink"],["hyperlink.bind","hyperlink.bind"],["target","target"],["conditionalclass.bind","conditionalclass.bind"],["conditionalstyle.bind","conditionalstyle.bind"]]),v=window.requestAnimationFrame,b=[],y=e=>{b.length||v((()=>{b.forEach((e=>e())),b.length=0})),b.push(e)},w=(e,t,i)=>{const n=t=>e.classList.remove(t);(t=t||"").split(" ").forEach((e=>{e.length&&(i?n(e):y((()=>n(e))))}))},C=(e,t,i)=>{const n=t=>e.classList.add(t);(t=t||"").split(" ").forEach((e=>{e.length&&(i?n(e):y((()=>n(e))))}))},P=(e,t,i,n)=>{const a=()=>e.style[t]=i;n?a():y(a)},I=(e,t,i,n)=>{const a=()=>e instanceof Element&&e.setAttribute(t,i);n?a():y(a)},A={};function E(){return window._WM_APP_PROPERTIES?window._WM_APP_PROPERTIES:A}class O{constructor(e){this.generator=function*(e){let t=1;for(;;)yield`${e}${t++}`}(e)}nextUid(){return this.generator.next().value}}const T=e=>void 0!==e,x=(e,t)=>void 0===e?t:e,D=(e,t)=>void 0===e?t:void 0===t?e:e+t,R=(e,t)=>x(e,0)-x(t,0),S=()=>{},_=new Map,M=new Map,N=new Map,k=(e,t)=>"object"!=typeof e&&"object"!=typeof t&&(e!=e&&t!=t||e===t),L=(e,t,i,...n)=>{let a,s=t.get(i);if(s){if(!((e,t)=>{const i=t.length;let n=i>10;switch(i){case 10:if(n=!k(e[9],t[9]),n)break;case 9:if(n=!k(e[8],t[8]),n)break;case 8:if(n=!k(e[7],t[7]),n)break;case 7:if(n=!k(e[6],t[6]),n)break;case 6:if(n=!k(e[5],t[5]),n)break;case 5:if(n=!k(e[4],t[4]),n)break;case 4:if(n=!k(e[3],t[3]),n)break;case 3:if(n=!k(e[2],t[2]),n)break;case 2:if(n=!k(e[1],t[1]),n)break;case 1:if(n=!k(e[0],t[0]),n)break}return n})(s.args,n))return s.result}return a=e.transform(...n),s={args:n,result:a},t.set(i,s),a},F=/[^ a-zA-Z0-9]/g,j=e=>"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4);class B{constructor(e,t,i){this.ast=e,this.declarations=[],this.stmts=[],this.pipes=[],this.vIdx=0,this.exprType=t,this.pipeNameVsIsPureMap=i}createVar(){const e="v"+this.vIdx++;return this.declarations.push(e),e}processImplicitReceiver(){return"ctx"}processLiteralPrimitive(){const e=this.cAst;return"string"==typeof e.value?`"${e.value.replace(/"/g,'"').replace(F,j)}"`:e.value}processLiteralArray(){const e=this.cAst,t=this.cStmts,i=this.createVar(),n=[];for(const i of e.expressions)n.push(this.build(i,t));return t.push(`${i}=[${n.join(",")}]`),i}processLiteralMap(){const e=this.cAst,t=this.cStmts,i=this.createVar(),n=[];for(const i of e.values)n.push(this.build(i,t));return t.push(`${i}={${e.keys.map(((e,t)=>`'${e.key}':${n[t]}`))}}`),i}processPropertyRead(){const e=this.cAst,t=this.cStmts,i=this.build(e.receiver,t),n=this.createVar();return t.push(`${n}=${i}&&${i}.${e.name}`),n}processKeyedRead(){const e=this.cAst,t=this.cStmts,i=this.build(e.key,t),n=this.build(e.receiver,t),a=this.createVar();return t.push(`${a}=${n}&&${n}[${i}]`),a}processPrefixNot(){const e=this.cAst,t=this.cStmts,i=this.build(e.expression,t);return t.push(`${i}=!${i}`),i}handleBinaryPlus_Minus(){const e=this.cAst,t=this.cStmts,i=this.build(e.left,t),n=this.build(e.right,t),a=this.createVar(),s="+"===e.operation?"_plus":"_minus";return t.push(`${a}=${s}(${i},${n})`),a}handleBinaryAND_OR(){const e=this.cAst,t=this.cStmts,i=[],n=[],a=[],s=this.build(e.left,n),o=this.build(e.right,a),r=this.createVar();return"&&"===e.operation?i.push(n.join(";"),`;${r}=false`,`;if(${s}){`,a.join(";"),`;${r}=${o};`,"}"):i.push(n.join(";"),`;${r}=${s}`,`;if(!${s}){`,a.join(";"),`;${r}=${o};`,"}"),t.push(i.join("")),r}handleBinaryDefault(){const e=this.cAst,t=this.cStmts,i=this.build(e.left,t),n=this.build(e.right,t),a=this.createVar();return t.push(`${a}=${i}${e.operation}${n}`),a}processBinary(){const e=this.cAst.operation;return"+"===e||"-"===e?this.handleBinaryPlus_Minus():"&&"===e||"||"===e?this.handleBinaryAND_OR():this.handleBinaryDefault()}processUnary(){const e=this.cAst,t=this.cStmts,i=this.build(e.expr,t),n=this.createVar();return t.push(`${n}=${e.operator}${i}`),n}processConditional(){const e=this.cAst,t=this.cStmts,i=this.build(e.condition,t),n=this.createVar(),a=[],s=[],o=[],r=this.build(e.trueExp,s),l=this.build(e.falseExp,o);return a.push(`if(${i}){`,s.join(";"),`;${n}=${r};`,"}else{",o.join(";"),`;${n}=${l};`,"}"),t.push(a.join(" ")),n}processMethodCall(){const e=this.cAst,i=this.cStmts,n=[];for(const t of e.args)n.push(this.build(t,i));const a=this.build(e.receiver,i),s=this.createVar(),o=e.receiver instanceof t.ImplicitReceiver||e.receiver instanceof t.PropertyRead&&e.receiver?.receiver instanceof t.ImplicitReceiver,r=i[i.length-1].split("&&")[0].split("=")[1];return i.push(`${s}= ${a}&&${a}${o?".bind(_ctx)":`.bind(${r})`}(${n.join(",")})`),s}processChain(){return this.cAst.expressions.map((e=>this.build(e))).join(";")}processPropertyWrite(){const e=this.cAst,i=this.cStmts;let n,a;e.receiver instanceof t.ImplicitReceiver?a=`_ctx.${e.name}`:(n=this.build(e.receiver,i),a=`${n}${n.length?".":""}${e.name}`);const s=this.build(e.value,i);i.push(`${a}=${s}`)}processPipe(){const e=this.cAst,t=this.cStmts,i=this.createVar(),n=[],a=[],s=[],o=this.build(e.exp,t);for(const t of e.args)n.push(this.build(t,s));const r=`_p${this.pipes.length}`;return this.pipes.push([e.name,r]),n.unshift(o),a.push(s.length?s.join(";")+";":"",this.pipeNameVsIsPureMap.get(e.name)?`${i}=getPPVal(${r},_ppc,"${r}",${n})`:`${i}=${r}.transform(${n})`),t.push(a.join("")),i}build(e,i){return this.cAst=e,this.cStmts=i||this.stmts,e instanceof t.ImplicitReceiver?this.processImplicitReceiver():e instanceof t.LiteralPrimitive?this.processLiteralPrimitive():e instanceof t.LiteralArray?this.processLiteralArray():e instanceof t.LiteralMap?this.processLiteralMap():e instanceof t.PropertyRead?this.processPropertyRead():e instanceof t.PropertyWrite?this.processPropertyWrite():e instanceof t.KeyedRead?this.processKeyedRead():e instanceof t.PrefixNot?this.processPrefixNot():e instanceof t.Unary?this.processUnary():e instanceof t.Binary?this.processBinary():e instanceof t.Conditional?this.processConditional():e instanceof t.Call?this.processMethodCall():e instanceof t.Chain?this.processChain():e instanceof t.BindingPipe?this.processPipe():void 0}extendCtxWithLocals(){const e=this.createVar();this.stmts.push(`${e}=Object.assign({}, locals)`,`Object.setPrototypeOf(${e}, _ctx)`,`ctx=${e}`)}fnBody(){return this.declarations.push("ctx"),'"use strict";\nvar '+this.declarations.join(",")+";\n"+this.stmts.join(";")}fnArgs(){const e=["_plus","_minus","_isDef"];if(this.exprType===q.Binding){e.push("getPPVal","_ppc");for(const[,t]of this.pipes)e.push(t)}return e.push("_ctx","locals"),e.join(",")}addReturnStmt(e){this.stmts.push(`return ${e};`)}cleanup(){this.ast=this.cAst=this.stmts=this.cStmts=this.declarations=this.pipes=this.pipeNameVsIsPureMap=void 0}compile(e){if(this.extendCtxWithLocals(),this.addReturnStmt(this.build(this.ast)),e)return{fnBody:this.fnBody(),fnArgs:this.fnArgs(),pipes:this.pipes};const t=new Function(this.fnArgs(),this.fnBody());let i;return this.exprType===q.Binding?(i=t.bind(void 0,D,R,T,L),i.usedPipes=this.pipes.slice(0)):i=t.bind(void 0,D,R,T),this.cleanup(),i}}const V=()=>({transform:S});let G;const W=()=>{if(void 0!==G)return G;try{new Function,G=!1}catch(e){G=!0}return G};let U;var q;function z(e,n){if(!U)return S;if("string"!=typeof e)return S;if((e=e.trim()).endsWith(";")&&(e=e.slice(0,-1)),!e.length)return S;let a,s=_.get(e);if(s)return s;if(n||(a=J(e)),!a)if(W())a=function(t,n){let a=Object.assign({},n);return Object.setPrototypeOf(a,t),i.get(a,e)};else{const i=new t.Parser(new t.Lexer).parseBinding(e,"",0);if(i.errors.length)s=S,a=s;else{const e=U.getPipeNameVsIsPureMap();if(s=new B(i.ast,q.Binding,e).compile(n),n)return s;if(s.usedPipes.length){const e=[];let t=!1;for(const[i]of s.usedPipes){const n=U.meta(i);let a;n?(n.pure&&(t=!0,a=N.get(i)),a||(a=U.getInstance(i)),n.pure&&N.set(i,a)):a=V,e.push(a)}e.unshift(t?new Map:void 0),a=s.bind(void 0,...e)}else a=s.bind(void 0,void 0)}}return _.set(e,a),a}function H(e,t,n){let a=Object.assign({},n);Object.setPrototypeOf(a,t);let s=e.split("("),o=s[0],r=i.get(t,o);if(r){let e=s[1].replace(")","");e=e.split(",");let t=[];return e.forEach((e=>{e=e&&e.trim(),t.push(i.get(a,e))})),r.bind(a)(...t)}}function Q(e,i){if("string"!=typeof e)return S;if(!(e=e.trim()).length)return S;let n=M.get(e);if(n)return n;if(i||(n=Z(e)),!n)if(W())n=H.bind(void 0,e);else{const a=new t.Parser(new t.Lexer).parseAction(e,"",0);if(a.errors.length)return S;n=new B(a.ast,q.Action).compile(i)}return M.set(e,n),n}!function(e){e[e.Binding=0]="Binding",e[e.Action=1]="Action"}(q||(q={}));const Y=new Map,X=e=>Y.get(e),K=(e,t)=>{let i=X(e);if(!i)return;const n=i.usedPipes||[];if(i=t===q.Binding?i.bind(void 0,D,R,T,L):i.bind(void 0,D,R,T),n.length){const e=[];let t=!1;for(const[i]of n){const n=U.meta(i);let a;n?(n.pure&&(t=!0,a=N.get(i)),a||(a=U.getInstance(i)),n.pure&&N.set(i,a)):a=V,e.push(a)}e.unshift(t?new Map:void 0),i=i.bind(void 0,...e)}else t===q.Binding&&(i=i.bind(void 0,void 0));return i},J=e=>K(e,q.Binding),Z=e=>K(e,q.Action),ee=new Map,te=new O("watch-id-"),ie={};Object.freeze(ie);let ne,ae=!1;const se=(e,t=50)=>{let i;return(...n)=>{window.__zone_symbol__clearTimeout(i),i=window.__zone_symbol__setTimeout((()=>e(...n)),t)}},oe=(e,t,n,a)=>{let s,o=n;i.isArray(o)&&(s=o.map((function(e){return ft(e,t)})),i.isArray(s[0])&&(s=i.flatten(s)),e(s,a))},re=(e,t,i)=>{let n=/\[\$i\]/g,a="[$i]";if(!t)return{expr:e.replace(n,"[0]"),listener:i};var s=e.lastIndexOf(a),o=e.substr(0,s).replace(a,"[0]"),r=e.substr(s+5),l=i;return r&&(l=oe.bind(void 0,i,r)),{expr:o,listener:l}},le=(e,t,i,n,a=te.nextUid(),s=!1,o={},r)=>{if(-1!==e.indexOf("[$i]")){let t=re(e,o&&(o.arrayType||o.isList),n);e=t.expr,n=t.listener}const l=z(e);return ee.set(a,{fn:l.bind(e,t,i),listener:n,expr:e,last:ie,doNotClone:s,isMuted:r}),()=>ce(a)},ce=e=>ee.delete(e);let de=!1;const pe=window.requestAnimationFrame;let ue;const he=e=>{if(ae&&!e)return;let t,n=1;do{t=!1,ee.forEach((e=>{if(e.isMuted&&e.isMuted())return;const n=e.fn,a=e.listener,s=e.last;let o;try{o=n()}catch(t){console.warn(`error in executing expression: '${e.expr}'`)}i.isEqual(o,s)||(t=!0,de=!0,e.last=o,i.isObject(o)&&!e.doNotClone&&!1!==o.__cloneable__&&(e.last=i.clone(o)),a(o,s),me())})),n++}while(t&&n<5);t&&5===n&&console.warn("Number of watch cycles gone above set limit of: 5 ")},me=()=>de=!1;let ge;window.watchRegistry=ee;const fe=se((()=>{ge=!0,ue.run((()=>he()))}),100),ve=(()=>{let e=!1;return t=>{if(ne)if(t)ue.run((()=>ne.tick())),e=!1;else{if(e)return;e=!0,pe((()=>{ue.run((()=>ne.tick())),e=!1}))}}})();var be,ye;e.ComponentType=void 0,(be=e.ComponentType||(e.ComponentType={}))[be.PAGE=0]="PAGE",be[be.PREFAB=1]="PREFAB",be[be.PARTIAL=2]="PARTIAL";!function(e){e.LIST_RECORDS="listRecords",e.UPDATE_RECORD="updateRecord",e.INSERT_RECORD="insertRecord",e.DELETE_RECORD="deleteRecord",e.INVOKE="invoke",e.UPDATE="update",e.NOTIFY="notify",e.IS_API_AWARE="isApiAware",e.SUPPORTS_CRUD="supportsCRUD",e.SUPPORTS_DISTINCT_API="supportsDistinctAPI",e.IS_PAGEABLE="isPageable",e.IS_SORTABLE="isSortable",e.GET_OPERATION_TYPE="getOperationType",e.GET_RELATED_PRIMARY_KEYS="getRelatedTablePrimaryKeys",e.GET_ENTITY_NAME="getEntityName",e.SET_INPUT="setinput",e.GET_RELATED_TABLE_DATA="getRelatedTableData",e.GET_DISTINCT_DATA_BY_FIELDS="getDistinctDataByFields",e.GET_AGGREGATED_DATA="getAggregatedData",e.GET_MATCH_MODE="getMatchMode",e.DOWNLOAD="download",e.GET_NAME="getName",e.GET_PROPERTIES_MAP="getPropertiesMap",e.GET_PRIMARY_KEY="getPrimaryKey",e.GET_BLOB_URL="getBlobURL",e.SUPPORTS_SERVER_FILTER="supportsServerFilter",e.GET_OPTIONS="getOptions",e.SEARCH_RECORDS="searchRecords",e.GET_REQUEST_PARAMS="getRequestParams",e.GET_PAGING_OPTIONS="getPagingOptions",e.FETCH_DISTINCT_VALUES="fetchDistinctValues",e.GET_UNIQUE_IDENTIFIER="getUniqueIdentifier",e.GET_CONTEXT_IDENTIFIER="getContextIdentifier",e.IS_UPDATE_REQUIRED="isUpdateRequired",e.ADD_ITEM="addItem",e.SET_ITEM="setItem",e.REMOVE_ITEM="removeItem",e.IS_BOUND_TO_LOCALE="isBoundToLocale",e.GET_DEFAULT_LOCALE="getDefaultLocale",e.CANCEL="cancel",e.SET_PAGINATION="setPagination"}(ye||(ye={}));const we={Operation:ye};const Ce=window.navigator.userAgent,Pe={SNAKE_CASE:/[A-Z]/g,ANDROID:/Android/i,IPHONE:/iPhone/i,IPOD:/iPod/i,IPAD:/iPad/i,MAC:/Mac/i,MACINTEL:/MacIntel/i,ANDROID_TABLET:/android|android 3.0|xoom|sch-i800|playbook|tablet|kindle/i,MOBILE:/Mobile/i,WINDOWS:/Windows Phone/i,SUPPORTED_IMAGE_FORMAT:/\.(bmp|gif|jpe|jpg|jpeg|tif|tiff|pbm|png|ico)$/i,SUPPORTED_FILE_FORMAT:/\.(txt|js|css|html|script|properties|json|java|xml|smd|xmi|sql|log|wsdl|vm|ftl|jrxml|yml|yaml|md|less|jsp)$/i,SUPPORTED_AUDIO_FORMAT:/\.(mp3|ogg|webm|wma|3gp|wav|m4a)$/i,SUPPORTED_VIDEO_FORMAT:/\.(mp4|ogg|webm|wmv|mpeg|mpg|avi|mov)$/i,PAGE_RESOURCE_PATH:/^\/pages\/.*\.(js|css|html|json)$/,MIN_PAGE_RESOURCE_PATH:/.*(page.min.html)$/,VALID_EMAIL:/^[a-zA-Z][\w.+]+@[a-zA-Z_]+?\.[a-zA-Z.]{1,4}[a-zA-Z]$/,VALID_WEB_URL:/^(http[s]?:\/\/)(www\.){0,1}[a-zA-Z0-9=:?\/\.\-]+(\.[a-zA-Z]{2,5}[\.]{0,1})?/,VALID_WEBSOCKET_URL:/^(ws[s]?:\/\/)(www\.){0,1}[a-zA-Z0-9=:?\/\.\-]+(\.[a-zA-Z]{2,5}[\.]{0,1})?/,VALID_RELATIVE_URL:/^(?!www\.|(?:http|ftp)s?:\/\/|[A-Za-z]:\\|\/\/).*/,REPLACE_PATTERN:/\$\{([^\}]+)\}/g,ZIP_FILE:/\.zip$/i,EXE_FILE:/\.exe$/i,NO_QUOTES_ALLOWED:/^[^'|"]*$/,NO_DOUBLE_QUOTES_ALLOWED:/^[^"]*$/,VALID_HTML:/<[a-z][\s\S]*>/i,VALID_PASSWORD:/^[0-9a-zA-Z-_.@&*!#$%]+$/,SPECIAL_CHARACTERS:/[^A-Z0-9a-z_]+/i,APP_SERVER_URL_FORMAT:/^(http[s]?:\/\/)(www\.){0,1}[a-zA-Z0-9\.\-]+([:]?[0-9]{2,5}|\.[a-zA-Z]{2,5}[\.]{0,1})\/+[^?#&=]+$/,JSON_DATE_FORMAT:/\d{4}-[0-1]\d-[0-3]\d(T[0-2]\d:[0-5]\d:[0-5]\d.\d{1,3}Z$)?/,DATA_URL:/^\s*data:([a-z]+\/[a-z0-9-+.]+(;[a-z-]+=[a-z0-9-]+)?)?(;base64)?,([a-z0-9!$&',()*+;=\-._~:@\/?%\s]*)\s*$/i,ISO_DATE_FORMAT:/(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2}:\d{2})(\.\d+)?([+-]\d{2}:?\d{2}|Z)$/},Ie=["int",e.DataType.INTEGER,e.DataType.FLOAT,e.DataType.DOUBLE,e.DataType.LONG,e.DataType.SHORT,e.DataType.BYTE,e.DataType.BIG_INTEGER,e.DataType.BIG_DECIMAL],Ae=new Date,Ee=e=>void 0!==e,Oe=e=>null!==e&&"object"==typeof e,Te=(e,t)=>!(!e||"false"===e)||!!t&&e===t;const xe=()=>window.navigator.appVersion.indexOf("Trident/")>-1||window.navigator.userAgent.indexOf("MSIE")>-1,De=()=>Pe.ANDROID.test(Ce),Re=()=>Pe.ANDROID_TABLET.test(Ce)&&!/Tablet PC 2.0/i.test(Ce),Se=()=>Pe.IPHONE.test(Ce),_e=()=>Pe.IPOD.test(Ce),Me=()=>Pe.IPAD.test(Ce)||window.navigator.maxTouchPoints&&window.navigator.maxTouchPoints>2&&(Pe.MAC.test(window.navigator.platform)||Pe.MACINTEL.test(window.navigator.platform)),Ne=()=>Se()||_e()||Me(),ke=(e,t)=>{const i=e||"1366px",n=t||"1024px";return window.matchMedia("only screen and (min-device-width : "+i+") and (max-device-width : "+i+") and (min-device-height : "+n+") and (max-device-height : "+n+") and (min-width: "+i+") and (max-width: "+i+")").matches},Le=(e,t)=>{const i=e||"1366px",n=t||"1024px";return window.matchMedia("only screen and (min-device-width : "+n+") and (max-device-width : "+n+") and (min-device-height : "+i+") and (max-device-height : "+i+") and (min-width: "+n+") and (max-width: "+n+")").matches},Fe=()=>De()||Ne()||Re()||$("#wm-mobile-display:visible").length>0,je=()=>"MOBILE"===E().platformType&&"APPLICATION"===E().type,$e=()=>{const e=window.navigator.userAgent.toLowerCase().match(/android\s([0-9\.]*)/);return e?e[1]:""},Be=()=>De()&&4===parseInt($e(),10),Ve=e=>{const t=e.indexOf("?");return t>-1?(e=encodeURI(e.substring(0,t))+e.substring(t),e=Ge(e)):e=encodeURI(e),e},Ge=e=>{let t,n,a,s="";return a=e.indexOf("?"),a>-1&&(a+=1,n=e.substring(a),n&&(t=n.split("&"),t.forEach((function(e){let t;const n=i.includes(e,"=")?e.indexOf("="):e&&e.length,a=e.substr(0,n),o=e.substr(n+1);if(o||i.includes(e,"=")){try{t=decodeURIComponent(o)}catch(e){t=o}s+=a+"="+encodeURIComponent(t)+"&"}else s+=a+"&"})),s=s.slice(0,-1),e=e.replace(n,s))),e},We=e=>e?e.charAt(0).toUpperCase()+e.substring(1):"",Ue=e=>e===e.toUpperCase()?e:e.replace(Pe.SNAKE_CASE,(function(e,t){return(t?" ":"")+e})),qe=(e,t,i)=>e.substr(0,t)+i+e.substr(t+i.length),ze=e=>{let t;return t=e.indexOf("."),-1!==t&&(e=qe(e,t+1,e.charAt(t+1).toUpperCase()),e=qe(e,t," ")),e},He=e=>(e=i.camelCase(e),e=We(e),e=Ue(e),e=ze(e)),Qe=e=>e.split("-").join(" "),Ye=(e,t=",")=>{let n,a=[];return i.isArray(e)||(a=i.split(e,t)),n=i.map(a,He),i.isArray(e)?n:n.join(t)},Xe=e=>{const t=document.createElement("a");return t.href=e,""!==t.protocol&&(!Pe.DATA_URL.test(e)&&(!!Ke(location.href,"https://")&&("https:"!==t.protocol&&"wss:"!==t.protocol)))},Ke=(e,t,i)=>{if(!e)return!1;return new RegExp("^"+t,i?"i":"").test(e)},Je=(e,t)=>{let n;return n=i.attempt((function(){const i=Object.keys(e).map((e=>`var ${e} = data['${e}'];`)).join(" ");return new Function("data",`${i} return ${t}`)(e)})),i.isError(n)&&(n=i.get(e,t)),n},Ze=e=>Pe.SUPPORTED_IMAGE_FORMAT.test(e),et=e=>Pe.SUPPORTED_AUDIO_FORMAT.test(e),tt=e=>Pe.SUPPORTED_VIDEO_FORMAT.test(e),it=e=>Pe.VALID_WEB_URL.test(e),nt=e=>e;function at(e,...t){let n=1;const a=arguments.length,s=new Array(a-n);for(;n<a;n++)s[n-1]=arguments[n];if(i.isFunction(e))return e.apply(null,s)}const st=(e,t,i,n,a,s,o)=>{if(t){if("timestamp"===i)return moment(t).valueOf();if("UTC"===i)return new Date(t).toISOString();if(n){const e=i.replaceAll("y","Y").replaceAll("d","D").replace("a","A");if(s)return moment(t).format(e);if("datetimestamp"===a)return t=Mt(n,t),moment(t).format(e)}return e.transform(t,i,n,o)}},ot=e=>{if("string"!=typeof e)return;const t=e.match(Pe.ISO_DATE_FORMAT);return!(!t||!t[4])||void 0},rt=(e,t,n)=>{if(t&&t.pattern&&"timestamp"!==t.pattern){const n=(t&&t.hasOwnProperty("isNativePicker")?i.get(t,"isNativePicker"):Fe())?"YYYY/MM/DD HH:mm:ss":Et(t.pattern);e=moment(e,n).toDate()}if(i.isDate(e))return e;if(isNaN(e)||(e=parseInt(e,10)),!moment(e).isValid()||""===e||null==e)return;let a=new Date(e);return i.isString(e)&&(a=n?Mt(n,e):new Date(moment(moment(e).format()).valueOf())),"CURRENT_DATE"===e||isNaN(a.getDay())?Ae:a},lt=(e,t,i,n,a,s,o,r=!1)=>{const l=e,c=e=>{if(!t||!t.contains(e.target)&&t!==e.target)if(i.contains(e.target)){if($(e.target).is("input")&&!a)return;l.removeEventListener(n,c,r)}else 0===o&&l.removeEventListener(n,c,r),s()};l.addEventListener(n,c,r);return()=>{l.removeEventListener(n,c,r)}},ct=e=>i.cloneDeep(e),dt=(e,t,n)=>{const a=i.get(document.forms,[e,t,"files"]);return n?i.map(a,i.identity):a&&a[0]};function pt(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}const ut=()=>pt()+"-"+pt()+"-"+pt(),ht=(e,t)=>{let n;return!e||!t||(n=e&&e.split(",").map(Function.prototype.call,String.prototype.trim),i.intersection(n,t.userRoles).length)},mt=e=>{if(e)try{const t=parseInt(e,10);return Oe(e)||!isNaN(t)?e:JSON.parse(e)}catch(e){return}},gt=e=>{let t=new X2JS({emptyNodeForm:"content",attributePrefix:"",enableToStringFunc:!1}).xml2js(e);return t&&(t=i.get(t,Object.keys(t)[0])),t},ft=(e,t,n)=>{if(!e||!t)return;if(!n)return i.get(e,t);const a=t.split("."),s=[];let o;return a.forEach((e=>{if(!a.length)return o=!0,!1;const t=e.match(/\w+/g);let i;for(;t.length;)i=t.shift(),s.push({key:i,value:t.length?[]:{}})})),o?void 0:(s.forEach((t=>{let i=e[t.key];Oe(i)||(i=mt(i),i||(i=t.value)),e[t.key]=i,e=i})),e)},vt=t=>{let i;return t?(i=t&&t.substring(t.lastIndexOf(".")+1),i=i&&i.toLowerCase(),i=i===e.DataType.LOCALDATETIME?e.DataType.DATETIME:i,i):e.DataType.STRING},bt=e=>-1!==Ie.indexOf(vt(e).toLowerCase()),yt=e=>!(!Oe(e)||i.isArray(e))&&0===Object.keys(e).length,wt=e=>{const t=$(e),n=t.offset().top,a=t.closest('[wmsmoothscroll="true"]');if(je()&&a.length){const e=i.get(a[0],"iscroll");let t=-(n-e.y);t=e.maxScrollY>t?e.maxScrollY:t,e.scrollTo(0,t)}else window.scroll({top:n,left:0,behavior:"smooth"})},Ct=e=>{var t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)},Pt=e=>{const t=i.omit(e,"empty");return i.isEqual(i.keys({content:[],first:!0,last:!0,number:0,numberOfElements:10,size:20,sort:null,totalElements:10,totalPages:1}),i.keys(t).sort())},It=(e,t,n)=>{let a=Pe.REPLACE_PATTERN;if(e)return n&&(a=/\{([^\}]+)\}/g),e.replace(a,(function(e,n){return i.get(t,n)}))},At=t=>(i.includes(t,".")&&(t=i.toLower(vt(t))),i.includes([e.DataType.DATE,e.DataType.TIME,e.DataType.TIMESTAMP,e.DataType.DATETIME,e.DataType.LOCALDATETIME],t)),Et=e=>(i.includes(e,"E")&&(e=i.replace(e,/E[,]?/g,"")),i.replace(e,/y*d*/g,(e=>e.toUpperCase()))),Ot=(e,t)=>{const n=["AM","PM"],a=moment()._locale.meridiem();t&&t.meridians&&i.includes(n,a)&&i.forEach(t.meridians,((t,a)=>{i.includes(e,t)&&(e=e.replace(t,n[a]))}));const s=(t&&t.hasOwnProperty("isNativePicker")?i.get(t,"isNativePicker"):Fe())?i.get(t,"pattern")||"YYYY/MM/DD HH:mm:ss":Et(i.get(t,"pattern"))||"";return t&&t.pattern&&"timestamp"!==t.pattern&&(isNaN(new Date(e).getTime())?e=moment(e,s):(Ne()&&(e=moment(e).format("YYYY/MM/DD HH:mm:ss")),e=moment(new Date(e),s)),e=e.toDate()),moment(e,s).isValid()?(Ne()&&(e=moment(moment(e).valueOf()).format("YYYY/MM/DD HH:mm:ss")),e):(isNaN(e)?new Date(e).getTime()||(e=moment(moment().format("YYYY-MM-DD")+" "+e,"YYYY-MM-DD HH:mm:ss A")):e=parseInt(e,10),new Date(moment(e).valueOf()))},Tt=(e,t)=>(e=Ot(e,t),new Date(e)),xt=(e,t)=>{if(e instanceof Blob)return e;const i=mt(e);return e=i&&i instanceof Object?new Blob([JSON.stringify(i)],{type:t||"application/json"}):new Blob([e],{type:t||"text/plain"})},Dt=(e,t,n)=>{let a=i.isArray(n)?n:i.split(n,",");return a=i.map(a,i.trim),i.isEqualWith(e,t,(function(e,t){return i.every(a,(function(n){let a,s,o;return-1===i.indexOf(n,":")?a=s=i.trim(n):(o=i.split(n,":"),a=i.trim(o[0]),s=i.trim(o[1])),i.get(e,a)===i.get(t,s)}))}))},Rt=e=>document.querySelector(e),St=(e,t)=>{if(Rt(`link[href="${e}"]`))return;const i=document.createElement("link");return i.href=e,t&&t.name&&i.setAttribute(t.name,t.value),i.setAttribute("rel","stylesheet"),i.setAttribute("type","text/css"),document.head.appendChild(i),i},_t=(e=[])=>{Array.isArray(e)||(e=[e]),e.forEach(St)},Mt=(e,t)=>t?new Date(new Date(moment(t).tz(e).format()).toLocaleString("en-US",{timeZone:e})):new Date(new Date(moment().tz(e).format()).toLocaleString("en-US",{timeZone:e})),Nt=async(e,t,i=!1)=>{const n=e.trim();return!n.length||Rt(`script[src="${a=n}"], script[data-src="${a}"]`)?Promise.resolve():t?new Promise(((e,t)=>{let i=document.createElement("script");i.type="text/javascript",i.src=n,i.async=!1,i.readyState?i.onreadystatechange=()=>{"loaded"!==i.readyState&&"complete"!==i.readyState||(i.onreadystatechange=null,e(!0))}:i.onload=()=>{e(!0)},i.onerror=e=>t(e),document.getElementsByTagName("head")[0].appendChild(i)})):i?$.ajax({dataType:"script",cache:!0,url:e}).done((e=>e)).fail((e=>e)):$.getScript(e).done((e=>e)).fail((e=>e));var a},kt=async(e=[],t=!0)=>{for(const i of e)await Nt(i,t);return Promise.resolve()};let Lt={};const Ft=(e,t)=>{let i=window.sessionStorage.getItem(Lt.id);i=i?JSON.parse(i):{},i[e]=t,window.sessionStorage.setItem(Lt.id,JSON.stringify(i))},jt=e=>{let t=window&&window.sessionStorage&&window.sessionStorage.getItem(Lt.id);if(t)return t=JSON.parse(t),t[e]},$t=(...e)=>{},Bt=e=>new Promise(((t,i)=>{resolveLocalFileSystemURL(e,(function(n){n.file((function(n){const a=new FileReader;a.onloadend=()=>{const i=new Blob([a.result],{type:n.type});t({blob:i,filepath:e})},a.onerror=i,a.readAsArrayBuffer(n)}))}),i)})),Vt=()=>!!window.cordova,Gt={INT_MAX_VALUE:2147483647},Wt=(e,t="_self")=>{Vt()&&i.startsWith(e,"#")?location.hash=e:window.open(e,t)},Ut=(e,t,i=!1,n,a)=>$.ajax({type:"get",dataType:e,url:t,async:!i}).done((e=>n&&n(e))).fail((e=>a&&a(e))),qt=e=>e instanceof Promise?e:Promise.resolve(e),zt=(e,t,n,a=(()=>Promise.resolve(!1)))=>{let s=0;const o=()=>{if(s++,i.isFunction(e))return e()};return n=i.isNumber(n)&&n>0?n:0,t=i.isNumber(t)&&t>0?t:0,new Promise(((e,i)=>{const r=function(){const l=arguments;setTimeout((()=>{qt(a()).then((function(t){!1!==t&&(!n||s<=n)?qt(o()).then(e,r):i(l)}),(()=>i(l)))}),t)};qt(o()).then(e,r)}))},Ht=()=>{const e={promise:null,reject:null,resolve:null,onAbort:()=>{},isAborted:!1};return e.promise=new Promise(((t,i)=>{e.resolve=t,e.reject=i})),e.promise.abort=()=>{at(e.onAbort),e.reject("aborted"),e.isAborted=!0},e},Qt=(e,t)=>{document.styleSheets[0].insertRule(`${e} { ${t} }`)},Yt=e=>{const t={},n=e.indexOf("?");if(-1!==n){i.split(e.substring(n+1,e.length),"&").forEach((e=>{let n=i.split(e,"=");t[n[0]]=n[1]}))}return t},Xt=e=>{const t=(e=e.replace("#/","/")).indexOf("?");return-1!==t&&(e=e.substring(0,t)),e},Kt=/Mac|iPod|iPhone|iPad/.test(window.navigator.platform),Jt=()=>{const e={promise:null,resolve:$t,reject:$t};return e.promise=new Promise(((t,i)=>{e.resolve=t,e.reject=i})),e},Zt=(e,t,n,a)=>{if(n=n||Jt(),0===(a=a||0)&&(e=i.filter(e,(function(e){return!(i.isUndefined(e)||i.isNull(e))}))),e&&a<e.length)try{qt(e[a].apply(void 0,t)).then((()=>Zt(e,t,n,a+1)),n.reject)}catch(e){n.reject(e)}else n.resolve();return n.promise},ei=(e,t)=>e.execute(we.Operation.GET_UNIQUE_IDENTIFIER)===t.execute(we.Operation.GET_UNIQUE_IDENTIFIER)&&i.isEqual(e.execute(we.Operation.GET_CONTEXT_IDENTIFIER),t.execute(we.Operation.GET_CONTEXT_IDENTIFIER)),ti=(e,t)=>e.execute(we.Operation.GET_CONTEXT_IDENTIFIER)===t,ii=(e,t,a)=>{const s=e.registerDestroyListener?e.registerDestroyListener.bind(e):i.noop,o=new n.Subject,r=(n,r)=>{const l=(e,a)=>{e===a&&i.isUndefined(e)||i.isUndefined(e)&&!i.isUndefined(a)||(i.includes(["blob","file"],n.type)||(e=ct(e)),"dataBinding"===n.target?(t.rules=[],i.forEach(e,(function(e,i){t.rules.push({target:i,value:e,matchMode:n.matchMode||"startignorecase",required:!1,type:""})}))):n[r]=e,o.next({filterExpressions:t,newVal:e}))};Ke(n[r],"bind:")&&s(le(n[r].replace("bind:",""),e,{},a?a.invokeOnFiltertExpressionChange.bind(a,n,r):l,void 0,!1,{arrayType:i.includes(["in","notin"],n.matchMode)}))},l=e=>{e.rules&&i.forEach(e.rules,((e,t)=>{e.rules?l(e):("between"===e.matchMode&&r(e,"secondvalue"),r(e,"value"))}))};return l(t),o},ni=(e,t)=>{let i=Object.getPrototypeOf(e);for(;Object.getPrototypeOf(i).constructor!==Object;)if(i=Object.getPrototypeOf(i),t===i)return;Object.setPrototypeOf(i,t)},ai=function(e){const t=/^data:image\/([a-z]{2,});base64,/;if(i.isString(e))return i.startsWith(e,"file:///")||t.test(e)?e:e.replace(new RegExp("([^:]/)(/)+","g"),"$1")};$.cachedScript=(()=>{const e=new Map,t=new Set;return function(i){if((e=>t.has(e))(i))return Promise.resolve();if((t=>e.has(t))(i))return e.get(i);(t=>{let i,n;const a=new Promise(((e,t)=>{i=e,n=t}));a.resolve=i,a.reject=n,e.set(t,a)})(i);const n={dataType:"script",cache:!0,url:i};return $.ajax(n).done((()=>(i=>{t.add(i),e.get(i).resolve(),e.delete(i)})(i))),e.get(i)}})();const si={DATE:"yyyy-MM-dd",TIME:"hh:mm a",TIMESTAMP:"yyyy-MM-dd hh:mm:ss a",DATETIME:"yyyy-MM-dd hh:mm:ss a"},oi=e=>si[i.toUpper(e)],ri=e=>{const t=e.querySelectorAll("label.control-label");let i=e.querySelectorAll("[focus-target]");if(i.length||(i=e.querySelectorAll("input, select, textarea")),t.length&&i.length){const e=$(i[0]).closest("[widget-id]").attr("widget-id");e&&(I(i[0],"id",e),I(t[0],"for",e))}const n=e.querySelectorAll("ul");if(t.length&&n.length&&("radiogroup"===n[0].getAttribute("role")||"group"===n[0].getAttribute("role"))){const e="wm-group-label-"+ut();I(n[0],"aria-labelledby",e),I(t[0],"id",e)}},li=(e,t,i,n)=>{(i._ngZone||i.ngZone).onStable.subscribe((()=>{const t=pi(e);t.m41<0&&(t.m41=0,di(e,t))}))},ci=(e,t,i,n)=>{const a=n?parseInt(n.css("width")):parseInt(e.css("width")),s=$(window).width()+window.scrollX,o=t.getBoundingClientRect(),r=o.right+window.scrollX;let l;(i._ngZone||i.ngZone).onStable.subscribe((()=>{const t=pi(e);s-(r+o.width)<a&&(l=r-a,l<0&&(l=0),t.m41=l,di(e,t))}))},di=(e,t)=>{const i="translate3d("+t.m41+"px, "+t.m42+"px, 0px)";e[0].style.webkitTransform=i,e[0].style.MozTransform=i,e[0].style.msTransform=i,e[0].style.OTransform=i,e[0].style.transform=i},pi=e=>"undefined"==typeof WebKitCSSMatrix?new MSCSSMatrix(window.getComputedStyle(e[0]).transform):new WebKitCSSMatrix(window.getComputedStyle(e[0]).webkitTransform),ui=e=>{if(!e.closest(".app-popover").length){const e=document.querySelectorAll(".app-popover-wrapper");i.forEach(e,(e=>{e.widget.isOpen&&(e.widget.isOpen=!1)}))}},hi=ve,mi=(e,t)=>{let n=t.link;const a=t.action,s=t.target;if(a&&(e.itemActionFn||(e.itemActionFn=Q(a)),e.itemActionFn(e.userDefinedExecutionContext,Object.create(t))),n)if(!n.startsWith("#/")||s&&"_self"!==s)Wt(n,s);else{const t=Yt(n);n=Xt(n);(i.get(e,"route")||i.get(e,"menuRef.route")).navigate([n],{queryParams:t})}},gi=(e,t)=>{const n=i.startsWith(e,"Variables."),a=i.startsWith(e,"Widgets."),s=e.split(".");if(n)return i.get(t.viewParent.Variables,s[1]);if(a){const e=i.get(t.viewParent.Widgets,s[1]),n=e.$attrs.get("datasetboundexpr");let a;return a=!e.datasource&&n?n:e.binddataset,gi(a,e)}},fi=(e,t)=>{if(/^Widgets\..*\.currentItem/g.test(e)){const n=e.split("."),a=i.get(t.viewParent.Widgets,n[1]),s=a.$attrs.get("datasetboundexpr");if(!a.datasource&&s)return e=e.replace(/^Widgets\..*\.currentItem/g,`${s}[$i]`),fi(e,t);e=e.replace(/^Widgets\..*\.currentItem/g,`${a.binddataset}[$i]`)}return e},vi=e=>{let t=e.closest(".app-prefab");return t.length||(t=e.closest(".app-partial")),t.length||(t=e.closest(".app-spa-page")),t.length||(t=e.closest(".app-page")),t.length&&t.parent()[0].tagName},bi={REQUIRED:"required",MAXCHARS:"maxchars",MINVALUE:"minvalue",MAXVALUE:"maxvalue",REGEXP:"regexp",MINDATE:"mindate",MAXDATE:"maxdate",MINTIME:"mintime",MAXTIME:"maxtime",EXCLUDEDATES:"excludedates",EXCLUDEDAYS:"excludedays"},yi=e=>{if(i.isString(e)&&Vt()&&e.startsWith("file://")){if(Ne())return e.replace("file://","/_app_file_");if(De()&&location.href.startsWith("http")){if(e.startsWith(cordova.file.applicationDirectory))return e.replace(cordova.file.applicationDirectory+"www","");if(e.startsWith("file://"))return e.replace("file://","/_app_file_")}}return e},wi=e=>{const t=document.createElement("script");t.onload=()=>{e(WM_CUSTOM_FORMATTERS)},t.onerror=e=>{console.warn("Error while loading the file "+t.src+"\n"+e)},t.type="text/javascript",t.src="./extensions/formatters.js",document.head.appendChild(t)},Ci=(e,t)=>_WM_APP_PROPERTIES.extra_settings&&i.get(_WM_APP_PROPERTIES.extra_settings,e)||t,Pi=e=>{let t="";e.itemsperrow?isNaN(parseInt(e.itemsperrow,10))?(i.split(e.itemsperrow," ").forEach((e=>{const n=i.split(e,"-");e=`${n[0]}-${12/parseInt(n[1],10)}`,t+=` col-${e}`})),e.itemsPerRowClass=t.trim()):e.itemsPerRowClass="col-xs-"+12/parseInt(e.itemsperrow,10):e.itemsPerRowClass="col-xs-12"},Ii=(e,t)=>{let i=Ai(e);return i||t},Ai=e=>e[15]?e[15][8]:e[15];var Ei=Object.freeze({__proto__:null,AppConstants:Gt,VALIDATOR:bi,_WM_APP_PROJECT:Lt,addEventListenerOnElement:lt,addForIdAttributes:ri,adjustContainerPosition:li,adjustContainerRightEdges:ci,appendScriptToHead:wi,closePopover:ui,convertToBlob:Bt,createCSSRule:Qt,deHyphenate:Qe,defer:Jt,detectChanges:hi,encodeUrl:Ve,encodeUrlParams:Ge,executePromiseChain:Zt,extendProto:ni,extractCurrentItemExpr:fi,extractType:vt,fetchContent:Ut,findParent:Ii,findRootContainer:vi,findValueOf:ft,findViewParent:Ai,generateGUId:ut,getAbortableDefer:Ht,getAndroidVersion:$e,getAppSetting:Ci,getBlob:xt,getClonedObject:ct,getDatasourceFromExpr:gi,getDateObj:rt,getDisplayDateTimeFormat:oi,getEvaluatedExprValue:Je,getFiles:dt,getFormattedDate:st,getMomentLocaleObject:Mt,getNativeDateObject:Tt,getResourceURL:nt,getRouteNameFromLink:Xt,getSessionStorageItem:jt,getUrlParams:Yt,getValidDateObject:Ot,getValidJSON:mt,getWebkitTraslationMatrix:pi,hasCordova:Vt,hasOffsetStr:ot,initCaps:We,isAndroid:De,isAndroidTablet:Re,isAppleProduct:Kt,isAudioFile:et,isDataSourceEqual:ei,isDateTimeType:At,isDefined:Ee,isElementInViewport:Ct,isEmptyObject:yt,isEqualWithFields:Dt,isIE:xe,isImageFile:Ze,isInsecureContentRequest:Xe,isIos:Ne,isIpad:Me,isIphone:Se,isIpod:_e,isKitkatDevice:Be,isLargeTabletLandscape:ke,isLargeTabletPortrait:Le,isMobile:Fe,isMobileApp:je,isNumberType:bt,isObject:Oe,isPageable:Pt,isTablet:()=>{const e=document.querySelector(".app-page").widget;return e&&e.viewParent.Viewport.isTabletType},isValidWebURL:it,isVideoFile:tt,loadScript:Nt,loadScripts:kt,loadStyleSheet:St,loadStyleSheets:_t,noop:$t,openLink:Wt,periodSeparate:ze,prettifyLabel:He,prettifyLabels:Ye,processFilterExpBindNode:ii,removeExtraSlashes:ai,replace:It,replaceAt:qe,retryIfFails:zt,scrollToElement:wt,setListClass:Pi,setSessionStorageItem:Ft,setTranslation3dPosition:di,spaceSeparate:Ue,stringStartsWith:Ke,toBoolean:Te,toPromise:qt,transformFileURI:yi,triggerFn:at,triggerItemAction:mi,validateAccessRoles:ht,validateDataSourceCtx:ti,xmlToJson:gt});class Oi{constructor(e=!0){this._subject=new n.Subject,this._isInitialized=!1,this._eventsBeforeInit=[],e&&this.start()}notify(e,...t){this._isInitialized?this._subject.next({name:e,data:t}):this._eventsBeforeInit.push({name:e,data:t})}start(){this._isInitialized||(this._isInitialized=!0,this._eventsBeforeInit.forEach((e=>this._subject.next(e))))}subscribe(e,t){let i;return e&&t?(i=this._subject.subscribe((i=>{i&&Oe(i)&&i.name===e&&t.apply(void 0,i.data)})),()=>{i.unsubscribe()}):$t}destroy(){this._subject.complete()}}let Ti=768,xi=1200;class Di{constructor(){this.orientation={isPortrait:!1,isLandscape:!1},this.isMobileType=!1,this.isTabletType=!1,this._eventNotifier=new Oi(!0),this.setScreenType(),window.addEventListener("resize",this.resizeFn.bind(this));const e=window.matchMedia("(orientation: portrait)");e.matches?this.orientation.isPortrait=!0:this.orientation.isLandscape=!0,e.addEventListener&&e.addEventListener("change",(e=>this.orientationChange(e,!e.matches)))}update(e){this.selectedViewPort=e,this.setScreenType()}orientationChange(e,t){t!==this.orientation.isLandscape&&(this.orientation.isPortrait=!t,this.orientation.isLandscape=t,this.notify("orientationchange",{$event:e,data:{isPortrait:!t,isLandscape:t}}))}resizeFn(e){this.setScreenType(),this.orientationChange(e,this.screenWidth>=this.screenHeight),this.notify("resize",{$event:e,data:{screenWidth:this.screenWidth,screenHeight:this.screenHeight}})}subscribe(e,t){return this._eventNotifier.subscribe(e,t)}notify(e,...t){this._eventNotifier.notify.apply(this._eventNotifier,arguments)}setScreenType(){const e=document.querySelector(".wm-app");if(this.screenWidth=e.clientWidth,this.screenHeight=e.clientHeight,this.screenWidth<this.screenHeight?this.screenWidth:this.screenHeight,this.screenWidth>this.screenHeight?this.screenWidth:this.screenHeight,this.isTabletType=!1,this.isMobileType=!1,i.get(this.selectedViewPort,"deviceCategory")){const e=this.selectedViewPort.deviceCategory;"Tab"===e?this.isTabletType=!0:"Smartphone"===e&&(this.isMobileType=!0)}else parseInt(getComputedStyle(document.documentElement).getPropertyValue("--screen-xs")),Ti=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--screen-sm"))||768,xi=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--screen-lg"))||1200,this.screenWidth>=xi?(this.isTabletType=De()||Ne()||Re(),this.isMobileType=!1):this.screenWidth>=Ti?(this.type=1,this.isTabletType=!0):(this.type=0,this.isMobileType=!0)}ngOnDestroy(){this._eventNotifier.destroy(),window.removeEventListener("resize",this.resizeFn)}static{this.\u0275fac=function(e){return new(e||Di)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:Di,factory:Di.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Di,[{type:a.Injectable,args:[{providedIn:"root"}]}],(()=>[]),null);class Ri{constructor(){this.MATCH_MODES={STARTS_WITH_IGNORE_CASE:"startignorecase",STARTS_WITH:"start",ENDS_WITH_IGNORE_CASE:"endignorecase",ENDS_WITH:"end",CONTAINS:"anywhere",CONTAINS_IGNORE_CASE:"anywhereignorecase",IS_EQUAL_WITH_IGNORE_CASE:"exactignorecase",IS_EQUAL:"exact"},this.VALIDATOR=bi}static{this.\u0275fac=function(e){return new(e||Ri)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:Ri,factory:Ri.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Ri,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null);class Si{constructor(){i.assign(this,Ei)}static{this.\u0275fac=function(e){return new(e||Si)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:Si,factory:Si.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Si,[{type:a.Injectable,args:[{providedIn:"root"}]}],(()=>[]),null);class _i{constructor(){i.assign(this,{INTEGER:"integer",BIG_INTEGER:"big_integer",SHORT:"short",FLOAT:"float",BIG_DECIMAL:"big_decimal",DOUBLE:"double",LONG:"long",BYTE:"byte",STRING:"string",CHARACTER:"character",TEXT:"text",DATE:"date",TIME:"time",TIMESTAMP:"timestamp",DATETIME:"datetime",BOOLEAN:"boolean",LIST:"list",CLOB:"clob",BLOB:"blob"})}static{this.\u0275fac=function(e){return new(e||_i)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:_i,factory:_i.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(_i,[{type:a.Injectable,args:[{providedIn:"root"}]}],(()=>[]),null);class Mi{constructor(){i.assign(this,{TEXT:"text",NUMBER:"number",TEXTAREA:"textarea",PASSWORD:"password",CHECKBOX:"checkbox",SLIDER:"slider",RICHTEXT:"richtext",CURRENCY:"currency",SWITCH:"switch",SELECT:"select",CHECKBOXSET:"checkboxset",RADIOSET:"radioset",DATE:"date",TIME:"time",TIMESTAMP:"timestamp",UPLOAD:"upload",RATING:"rating",DATETIME:"datetime",AUTOCOMPLETE:"autocomplete",CHIPS:"chips",COLORPICKER:"colorpicker"})}static{this.\u0275fac=function(e){return new(e||Mi)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:Mi,factory:Mi.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Mi,[{type:a.Injectable,args:[{providedIn:"root"}]}],(()=>[]),null);const Ni=[];class ki{constructor(e){this.http=e,this.scripts={},Ni.forEach((e=>{this.scripts[e.name]={loaded:!1,src:e.src}}))}load(...e){return e&&e.length?Promise.resolve().then((()=>this.pathMappings||this.loadPathMappings())).then((()=>Promise.all(e.map((e=>this.loadScript(e)))))):Promise.resolve()}loadPathMappings(){const e=(Lt.cdnUrl||Lt.ngDest)+"path_mapping.json";return this.http.get(e).toPromise().then((e=>{this.pathMappings=e}),(()=>{this.pathMappings={}}))}loadScript(e){return new Promise(((t,i)=>{if(this.scripts[e]&&this.scripts[e].loaded)return void t({script:e,loaded:!0});this.scripts[e]||(this.scripts[e]={loaded:!1,src:e});let n=document.createElement("script");n.type="text/javascript",n.async=!1;let a=this.scripts[e].src;a=this.pathMappings[a]||a,a.startsWith("http")?n.src=a:n.src=(Lt.cdnUrl||Lt.ngDest)+a,n.readyState?n.onreadystatechange=()=>{"loaded"!==n.readyState&&"complete"!==n.readyState||(n.onreadystatechange=null,this.scripts[e].loaded=!0,t({script:e,loaded:!0}))}:n.onload=()=>{this.scripts[e].loaded=!0,t({script:e,loaded:!0})},n.onerror=i=>t({script:e,loaded:!1,status:"Loaded"}),document.getElementsByTagName("head")[0].appendChild(n)}))}static{this.\u0275fac=function(e){return new(e||ki)(p.\u0275\u0275inject(u.HttpClient))}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:ki,factory:ki.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ki,[{type:a.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:u.HttpClient}]),null);class Li{constructor(){this.customPipes=new Map}setCustomPipe(e,t){this.customPipes.set(e,t)}getCustomPipe(e){return this.customPipes.get(e)}hasCustomPipe(e){return this.customPipes.has(e)}static{this.\u0275fac=function(e){return new(e||Li)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:Li,factory:Li.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Li,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null);class Fi{constructor(){this.http=a.inject(s.HttpClient)}load(){this.http.get("./font.config.js",{responseType:"text"}).subscribe((e=>{const t=[],i=/"csspath":\s*"([^"]+)"/g;let n;for(;null!==(n=i.exec(e));)t.push(n[1]);_t(t)}),(e=>{}))}static{this.\u0275fac=function(e){return new(e||Fi)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:Fi,factory:Fi.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Fi,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null);class ji{constructor(){this.HISTORY_HANDLER="replace",this.HISTORY_HANDLER_TYPES={push:"pushState",replace:"replaceState"},this.WIDGET_STATE_KEY="ws"}setHistoryHandler(e){Object.keys(this.HISTORY_HANDLER_TYPES).indexOf(e)>-1&&(this.HISTORY_HANDLER=e)}getNestedPath(e,t,i){let n=i||t;return e&&(e.prefabName||e.partialName)?(n=n.length>0?n+"."+(e.prefabName||e.partialName):e.prefabName||e.partialName,n=n+"."+e.containerWidget.name,this.getNestedPath(e.containerWidget.viewParent,t,n)):n.split(".").reverse().join(".")}getStateInformation(e){let t,i;if("url"===e.toLowerCase()){if(i=decodeURIComponent(window.location.href).match(/(wm_state=).*?(&|$)/),i)return i=i[0].replace("wm_state=",""),t=this.uriToJson(i),t}else"localstorage"===e.toLowerCase()?i=localStorage.getItem(window.location.pathname.replace(/\//g,"")+"_wm_state"):"sessionstorage"===e.toLowerCase()&&(i=sessionStorage.getItem(window.location.pathname.replace(/\//g,"")+"_wm_state"));if(i)return t=JSON.parse(i),t}getWidgetState(e,t){if(!(t=t||this.computeMode(e.statehandler)))return;let n=this.getStateInformation(t);if(n&&e&&e.getAppInstance().activePageName&&("localstorage"===t.toLowerCase()||"sessionstorage"===t.toLowerCase())&&(n=n[e.getAppInstance().activePageName]),i.get(n,this.WIDGET_STATE_KEY)){const t=this.getNestedPath(e.viewParent,e.getWidget().name);return n[this.WIDGET_STATE_KEY][t]}}computeMode(e){return e?e&&"none"===e.toLowerCase()?void 0:e.toLowerCase():"url"}setWidgetState(e,t,i){const n=this.getNestedPath(e.viewParent,e.getWidget().name);(i=i||this.computeMode(e.statehandler))&&this.setStateParams(this.WIDGET_STATE_KEY,n,t,i,e)}removeWidgetState(e,t,i){if(!(i=i||this.computeMode(e.statehandler)))return;const n=this.getNestedPath(e.viewParent,e.getWidget().name);this.removeStateParam(this.WIDGET_STATE_KEY,n,t,i,e)}setStateVariable(e,t,i){(i=i||this.computeMode(i))&&this.setStateParams("",e,t,i)}getStateVariable(e,t){if(!(t=t||this.computeMode(t)))return;const i=this.getStateInformation(t);return i?i[e]:void 0}removeStateVariable(e,t){(t=t||this.computeMode(t))&&this.removeStateParam("",e,null,t)}setStateParams(e,t,n,a,s){let o,r="";const l=this.getStateInformation(a);o=s&&l&&s.getAppInstance().activePageName&&("localstorage"===a.toLowerCase()||"sessionstorage"===a.toLowerCase())?l[s.getAppInstance().activePageName]:i.clone(l),e?(o&&!o[e]?o[e]={}:o||(o={[e]:{}}),i.isObject(n)&&!i.isArray(n)?(o[e][t]=o[e][t]||{},i.merge(o[e][t],n)):o[e][t]=n):(o&&!o[t]?o[t]={}:o||(o={[t]:{}}),i.isObject(n)&&!i.isArray(n)?(o[t]=o[t]||{},i.merge(o[t],n)):o[t]=n),s&&s.getAppInstance().activePageName&&("localstorage"===a.toLowerCase()||"sessionstorage"===a.toLowerCase())&&(l?(l[s.getAppInstance().activePageName]=o,o=l):o={[s.getAppInstance().activePageName]:o});let c=decodeURIComponent(window.location.href);c.indexOf("?")<0?c+="?wm_state=":c.indexOf("wm_state")<0&&(c+="&wm_state="),r=c.replace(/(wm_state=).*?(&|$)/,"$1"+this.jsonToUri(o)+"$2"),"localstorage"!==a.toLowerCase()?"sessionstorage"!==a.toLowerCase()?decodeURIComponent(window.location.href)!==decodeURIComponent(r)&&("push"===this.HISTORY_HANDLER?window.history.pushState({path:r},"",r):"replace"===this.HISTORY_HANDLER&&window.history.replaceState({path:r},"",r)):sessionStorage.setItem(window.location.pathname.replace(/\//g,"")+"_wm_state",JSON.stringify(o)):localStorage.setItem(window.location.pathname.replace(/\//g,"")+"_wm_state",JSON.stringify(o))}removeStateParam(e,t,n,a,s){let o,r="";const l=this.getStateInformation(a);if(o=s&&l&&s.getAppInstance().activePageName&&("localstorage"===a.toLowerCase()||"sessionstorage"===a.toLowerCase())?l[s.getAppInstance().activePageName]:i.clone(l),!i.get(o,[e])&&!i.get(o,t))return;if(i.get(o,e+"."+t)||o&&o[e]&&o[e][t]?(n?delete o[e][t][n]:delete o[e][t],i.isEmpty(o[e][t])&&delete o[e][t],i.isEmpty(o[e])&&delete o[e]):!e&&i.get(o,t)&&delete o[t],s&&s.getAppInstance().activePageName&&("localstorage"===a.toLowerCase()||"sessionstorage"===a.toLowerCase())&&(l?(l[s.getAppInstance().activePageName]=o,o=l):o={[s.getAppInstance().activePageName]:o}),"localstorage"===a.toLowerCase())return void localStorage.setItem(window.location.pathname.replace(/\//g,"")+"_wm_state",JSON.stringify(o));if("sessionstorage"===a.toLowerCase())return void sessionStorage.setItem(window.location.pathname.replace(/\//g,"")+"_wm_state",JSON.stringify(o));const c=decodeURIComponent(window.location.href);i.isEmpty(o)?(r=c.replace(/(wm_state=).*?(&|$)/,"$2"),i.includes(["&","?"],r.charAt(r.length-1))&&(r=r.replace(r.charAt(r.length-1),""))):r=c.replace(/(wm_state=).*?(&|$)/,"$1"+this.jsonToUri(o)+"$2"),window.history.replaceState({path:r},"",r)}jsonToUri(e){return encodeURIComponent(JSON.stringify(e).replace(/[()'~_!*]/g,(function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})).replace(/\{/g,"(").replace(/\}/g,")").replace(/"/g,"'").replace(/\:/g,"~").replace(/,/g,"_").replace(/\[/g,"!").replace(/\]/g,"*"))}uriToJson(e){let t;try{t=JSON.parse(decodeURIComponent(e).replace(/\(/g,"{").replace(/\)/g,"}").replace(/'/g,'"').replace(/~/g,":").replace(/_/g,",").replace(/\!/g,"[").replace(/\*/g,"]"))}catch(e){console.warn(e)}return t}static{this.\u0275fac=function(e){return new(e||ji)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:ji,factory:ji.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ji,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null);class $i{updateFieldsOnPagination(e,t){let i,n="wm-table"===e.widgetType?e.gridData:e.fieldDefs;"wm-table"===e.widgetType&&e.gridOptions.isNavTypeScrollOrOndemand()&&-1!==e.gridOptions.deletedRowIndex&&(n.splice(e.gridOptions.deletedRowIndex,1),e.gridOptions.setDeletedRowIndex(-1)),"wm-table"!==e.widgetType||!e.gridOptions.isNavTypeScrollOrOndemand()||e.gridOptions.lastActionPerformed!==e.gridOptions.ACTIONS.SEARCH_OR_SORT&&e.gridOptions.lastActionPerformed!==e.gridOptions.ACTIONS.FILTER_CRITERIA&&e.gridOptions.lastActionPerformed!==e.gridOptions.ACTIONS.DATASET_UPDATE||(n=[],e.gridOptions.setCurrentPage(1)),i="wm-table"===e.widgetType&&e.gridOptions.showviewlessbutton&&"viewless"===e.gridOptions.mode?e.gridOptions.getCurrentPage():e.currentPage;const a=e.dataNavigator,s=e.pagesize;if(!Ee(n)||a.isFirstPage())n=[],i=1;else if(n.length/s<=a.pageCount){let e,o=[];if(n.length===i*s&&i+1===a.dn.currentPage)o=t,i++;else if(n.length<i*s){n.length===(i-1)*s&&i-1===a.dn.currentPage?t=[]:a.dataSize<i*s?e=a.dataSize-n.length:(e=i*s-n.length,i++);const r=t.length-e;o=t.slice(r)}else n.length===i*s&&i===a.dn.currentPage&&(o=[]);t=o}return n="wm-table"!==e.widgetType||e.gridOptions.lastActionPerformed!==e.gridOptions.ACTIONS.DELETE&&e.gridOptions.lastActionPerformed!==e.gridOptions.ACTIONS.EDIT?[...n,...t]:this.getUniqueRecordsInFieldDef(n,t),[n,i]}getUniqueRecordsInFieldDef(e,t){let n=!1;return e.length?t.forEach((function(t){n=!1,e.forEach((function(e){i.isEqual(t,e)&&(n=!0)})),!1===n&&e.push(t)})):e=t,e}bindScrollEvt(e,t,i){const n=e.dataNavigator,a=e.$element.find(t),s=a.children().first(),o=this;let r,l,c=0;s.length&&(r=s.scrollParent(!1),l=r[0]===document?document.body:r[0],l.scrollHeight>l.clientHeight?(r.each(((e,t)=>{c=t===document?t.body.scrollTop||$(window).scrollTop():t.scrollTop})).off("scroll.scroll_evt").on("scroll.scroll_evt",(function(t){let a,s,r,l=t.target;l=l===document?l.scrollingElement||document.body:l,"wm-table"===e.widgetType&&e.gridOptions.isNavTypeScrollOrOndemand()&&t.stopPropagation(),a=l.clientHeight,s=l.scrollHeight,r=l===document.body?$(window).scrollTop():l.scrollTop,c<r&&.9*s<r+a&&($(this).off("scroll.scroll_evt"),o.debouncedFetchNextDatasetOnScroll(n,i,e)()),c=r})),a.off("wheel.scroll_evt")):a.on("wheel.scroll_evt",(t=>{"wm-table"===e.widgetType&&e.gridOptions.isNavTypeScrollOrOndemand()&&t.stopPropagation(),t.originalEvent.deltaY>0&&(a.off("wheel.scroll_evt"),this.debouncedFetchNextDatasetOnScroll(n,i,e)())})))}debouncedFetchNextDatasetOnScroll(e,t,n){return i.debounce((()=>this.fetchNextDatasetOnScroll(e,n)),t)}fetchNextDatasetOnScroll(e,t){t.variableInflight||("wm-table"===t.widgetType&&(t.gridOptions.setIsNextPageData(!0),t.gridOptions.setIsDataUpdatedByUser(!1)),e.navigatePage("next"))}bindIScrollEvt(e,t){const n=e.$element,a=e.dataNavigator,s=e.app,o=n.closest('[wmsmoothscroll="true"]');if(i.get(o[0],"iscroll"))this.setIscrollHandlers(o[0],a,t);else{const e=s.subscribe("iscroll-update",(n=>{!i.isEmpty(n)&&n.isSameNode(o[0])&&(this.setIscrollHandlers(o[0],a,t),e())}));s.notify("no-iscroll",o[0])}}setIscrollHandlers(e,t,n){let a=0;const s=i.get(e.iscroll,"wrapper"),o=e.iscroll;e.iscroll.on("scrollEnd",(()=>{const i=s.clientHeight,r=s.scrollHeight,l=Math.abs(e.iscroll.y);a<l&&.9*r<l+i&&(this.debouncedFetchNextDatasetOnScroll(t,n,parent)(),o.indicatorRefresh&&o.indicatorRefresh()),a=l}))}static{this.\u0275fac=function(e){return new(e||$i)}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:$i,factory:$i.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata($i,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null);class Bi{static forRoot(){return{ngModule:Bi,providers:[]}}static{this.\u0275fac=function(e){return new(e||Bi)}}static{this.\u0275mod=p.\u0275\u0275defineNgModule({type:Bi})}static{this.\u0275inj=p.\u0275\u0275defineInjector({imports:[s.HttpClientModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Bi,[{type:a.NgModule,args:[{declarations:[],imports:[s.HttpClientModule],providers:[],bootstrap:[]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&p.\u0275\u0275setNgModuleScope(Bi,{imports:[s.HttpClientModule]});e.$appDigest=ve,e.$invokeWatchers=(e,t)=>{if(e)he(t);else{if(ge)return void(ge=!1);fe()}},e.$parseEvent=Q,e.$parseExpr=z,e.$unwatch=ce,e.$watch=le,e.AbstractDialogService=class{},e.AbstractHttpService=class{},e.AbstractI18nService=class{},e.AbstractNavigationService=class{},e.AbstractSpinnerService=class{},e.AbstractToasterService=class{},e.App=class{},e.AppConstants=Gt,e.AppDefaults=class{},e.CURRENCY_INFO={USD:{symbol:"$",name:"US Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"USD",name_plural:"US dollars"},CAD:{symbol:"CA$",name:"Canadian Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"CAD",name_plural:"Canadian dollars"},EUR:{symbol:"\u20ac",name:"Euro",symbol_native:"\u20ac",decimal_digits:2,rounding:0,code:"EUR",name_plural:"euros"},AED:{symbol:"AED",name:"United Arab Emirates Dirham",symbol_native:"\u062f.\u0625.\u200f",decimal_digits:2,rounding:0,code:"AED",name_plural:"UAE dirhams"},AFN:{symbol:"Af",name:"Afghan Afghani",symbol_native:"\u060b",decimal_digits:0,rounding:0,code:"AFN",name_plural:"Afghan Afghanis"},ALL:{symbol:"ALL",name:"Albanian Lek",symbol_native:"Lek",decimal_digits:0,rounding:0,code:"ALL",name_plural:"Albanian lek\xeb"},AMD:{symbol:"AMD",name:"Armenian Dram",symbol_native:"\u0564\u0580.",decimal_digits:0,rounding:0,code:"AMD",name_plural:"Armenian drams"},ARS:{symbol:"AR$",name:"Argentine Peso",symbol_native:"$",decimal_digits:2,rounding:0,code:"ARS",name_plural:"Argentine pesos"},AUD:{symbol:"AU$",name:"Australian Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"AUD",name_plural:"Australian dollars"},AZN:{symbol:"man.",name:"Azerbaijani Manat",symbol_native:"\u043c\u0430\u043d.",decimal_digits:2,rounding:0,code:"AZN",name_plural:"Azerbaijani manats"},BAM:{symbol:"KM",name:"Bosnia-Herzegovina Convertible Mark",symbol_native:"KM",decimal_digits:2,rounding:0,code:"BAM",name_plural:"Bosnia-Herzegovina convertible marks"},BDT:{symbol:"Tk",name:"Bangladeshi Taka",symbol_native:"\u09f3",decimal_digits:2,rounding:0,code:"BDT",name_plural:"Bangladeshi takas"},BGN:{symbol:"BGN",name:"Bulgarian Lev",symbol_native:"\u043b\u0432.",decimal_digits:2,rounding:0,code:"BGN",name_plural:"Bulgarian leva"},BHD:{symbol:"BD",name:"Bahraini Dinar",symbol_native:"\u062f.\u0628.\u200f",decimal_digits:3,rounding:0,code:"BHD",name_plural:"Bahraini dinars"},BIF:{symbol:"FBu",name:"Burundian Franc",symbol_native:"FBu",decimal_digits:0,rounding:0,code:"BIF",name_plural:"Burundian francs"},BND:{symbol:"BN$",name:"Brunei Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"BND",name_plural:"Brunei dollars"},BOB:{symbol:"Bs",name:"Bolivian Boliviano",symbol_native:"Bs",decimal_digits:2,rounding:0,code:"BOB",name_plural:"Bolivian bolivianos"},BRL:{symbol:"R$",name:"Brazilian Real",symbol_native:"R$",decimal_digits:2,rounding:0,code:"BRL",name_plural:"Brazilian reals"},BWP:{symbol:"BWP",name:"Botswanan Pula",symbol_native:"P",decimal_digits:2,rounding:0,code:"BWP",name_plural:"Botswanan pulas"},BYR:{symbol:"BYR",name:"Belarusian Ruble",symbol_native:"BYR",decimal_digits:0,rounding:0,code:"BYR",name_plural:"Belarusian rubles"},BZD:{symbol:"BZ$",name:"Belize Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"BZD",name_plural:"Belize dollars"},CDF:{symbol:"CDF",name:"Congolese Franc",symbol_native:"FrCD",decimal_digits:2,rounding:0,code:"CDF",name_plural:"Congolese francs"},CHF:{symbol:"CHF",name:"Swiss Franc",symbol_native:"CHF",decimal_digits:2,rounding:.05,code:"CHF",name_plural:"Swiss francs"},CLP:{symbol:"CL$",name:"Chilean Peso",symbol_native:"$",decimal_digits:0,rounding:0,code:"CLP",name_plural:"Chilean pesos"},CNY:{symbol:"CN\xa5",name:"Chinese Yuan",symbol_native:"CN\xa5",decimal_digits:2,rounding:0,code:"CNY",name_plural:"Chinese yuan"},COP:{symbol:"CO$",name:"Colombian Peso",symbol_native:"$",decimal_digits:0,rounding:0,code:"COP",name_plural:"Colombian pesos"},CRC:{symbol:"\u20a1",name:"Costa Rican Col\xf3n",symbol_native:"\u20a1",decimal_digits:0,rounding:0,code:"CRC",name_plural:"Costa Rican col\xf3ns"},CVE:{symbol:"CV$",name:"Cape Verdean Escudo",symbol_native:"CV$",decimal_digits:2,rounding:0,code:"CVE",name_plural:"Cape Verdean escudos"},CZK:{symbol:"K\u010d",name:"Czech Republic Koruna",symbol_native:"K\u010d",decimal_digits:2,rounding:0,code:"CZK",name_plural:"Czech Republic korunas"},DJF:{symbol:"Fdj",name:"Djiboutian Franc",symbol_native:"Fdj",decimal_digits:0,rounding:0,code:"DJF",name_plural:"Djiboutian francs"},DKK:{symbol:"Dkr",name:"Danish Krone",symbol_native:"kr",decimal_digits:2,rounding:0,code:"DKK",name_plural:"Danish kroner"},DOP:{symbol:"RD$",name:"Dominican Peso",symbol_native:"RD$",decimal_digits:2,rounding:0,code:"DOP",name_plural:"Dominican pesos"},DZD:{symbol:"DA",name:"Algerian Dinar",symbol_native:"\u062f.\u062c.\u200f",decimal_digits:2,rounding:0,code:"DZD",name_plural:"Algerian dinars"},EEK:{symbol:"Ekr",name:"Estonian Kroon",symbol_native:"kr",decimal_digits:2,rounding:0,code:"EEK",name_plural:"Estonian kroons"},EGP:{symbol:"EGP",name:"Egyptian Pound",symbol_native:"\u062c.\u0645.\u200f",decimal_digits:2,rounding:0,code:"EGP",name_plural:"Egyptian pounds"},ERN:{symbol:"Nfk",name:"Eritrean Nakfa",symbol_native:"Nfk",decimal_digits:2,rounding:0,code:"ERN",name_plural:"Eritrean nakfas"},ETB:{symbol:"Br",name:"Ethiopian Birr",symbol_native:"Br",decimal_digits:2,rounding:0,code:"ETB",name_plural:"Ethiopian birrs"},GBP:{symbol:"\xa3",name:"British Pound Sterling",symbol_native:"\xa3",decimal_digits:2,rounding:0,code:"GBP",name_plural:"British pounds sterling"},GEL:{symbol:"GEL",name:"Georgian Lari",symbol_native:"GEL",decimal_digits:2,rounding:0,code:"GEL",name_plural:"Georgian laris"},GHS:{symbol:"GH\u20b5",name:"Ghanaian Cedi",symbol_native:"GH\u20b5",decimal_digits:2,rounding:0,code:"GHS",name_plural:"Ghanaian cedis"},GNF:{symbol:"FG",name:"Guinean Franc",symbol_native:"FG",decimal_digits:0,rounding:0,code:"GNF",name_plural:"Guinean francs"},GTQ:{symbol:"GTQ",name:"Guatemalan Quetzal",symbol_native:"Q",decimal_digits:2,rounding:0,code:"GTQ",name_plural:"Guatemalan quetzals"},HKD:{symbol:"HK$",name:"Hong Kong Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"HKD",name_plural:"Hong Kong dollars"},HNL:{symbol:"HNL",name:"Honduran Lempira",symbol_native:"L",decimal_digits:2,rounding:0,code:"HNL",name_plural:"Honduran lempiras"},HRK:{symbol:"kn",name:"Croatian Kuna",symbol_native:"kn",decimal_digits:2,rounding:0,code:"HRK",name_plural:"Croatian kunas"},HUF:{symbol:"Ft",name:"Hungarian Forint",symbol_native:"Ft",decimal_digits:0,rounding:0,code:"HUF",name_plural:"Hungarian forints"},IDR:{symbol:"Rp",name:"Indonesian Rupiah",symbol_native:"Rp",decimal_digits:0,rounding:0,code:"IDR",name_plural:"Indonesian rupiahs"},ILS:{symbol:"\u20aa",name:"Israeli New Sheqel",symbol_native:"\u20aa",decimal_digits:2,rounding:0,code:"ILS",name_plural:"Israeli new sheqels"},INR:{symbol:"\u20b9",name:"Indian Rupee",symbol_native:"\u099f\u0995\u09be",decimal_digits:2,rounding:0,code:"INR",name_plural:"Indian rupees"},IQD:{symbol:"IQD",name:"Iraqi Dinar",symbol_native:"\u062f.\u0639.\u200f",decimal_digits:0,rounding:0,code:"IQD",name_plural:"Iraqi dinars"},IRR:{symbol:"IRR",name:"Iranian Rial",symbol_native:"\ufdfc",decimal_digits:0,rounding:0,code:"IRR",name_plural:"Iranian rials"},ISK:{symbol:"Ikr",name:"Icelandic Kr\xf3na",symbol_native:"kr",decimal_digits:0,rounding:0,code:"ISK",name_plural:"Icelandic kr\xf3nur"},JMD:{symbol:"J$",name:"Jamaican Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"JMD",name_plural:"Jamaican dollars"},JOD:{symbol:"JD",name:"Jordanian Dinar",symbol_native:"\u062f.\u0623.\u200f",decimal_digits:3,rounding:0,code:"JOD",name_plural:"Jordanian dinars"},JPY:{symbol:"\xa5",name:"Japanese Yen",symbol_native:"\uffe5",decimal_digits:0,rounding:0,code:"JPY",name_plural:"Japanese yen"},KES:{symbol:"Ksh",name:"Kenyan Shilling",symbol_native:"Ksh",decimal_digits:2,rounding:0,code:"KES",name_plural:"Kenyan shillings"},KHR:{symbol:"KHR",name:"Cambodian Riel",symbol_native:"\u17db",decimal_digits:2,rounding:0,code:"KHR",name_plural:"Cambodian riels"},KMF:{symbol:"CF",name:"Comorian Franc",symbol_native:"FC",decimal_digits:0,rounding:0,code:"KMF",name_plural:"Comorian francs"},KRW:{symbol:"\u20a9",name:"South Korean Won",symbol_native:"\u20a9",decimal_digits:0,rounding:0,code:"KRW",name_plural:"South Korean won"},KWD:{symbol:"KD",name:"Kuwaiti Dinar",symbol_native:"\u062f.\u0643.\u200f",decimal_digits:3,rounding:0,code:"KWD",name_plural:"Kuwaiti dinars"},KZT:{symbol:"KZT",name:"Kazakhstani Tenge",symbol_native:"\u0442\u04a3\u0433.",decimal_digits:2,rounding:0,code:"KZT",name_plural:"Kazakhstani tenges"},LBP:{symbol:"LB\xa3",name:"Lebanese Pound",symbol_native:"\u0644.\u0644.\u200f",decimal_digits:0,rounding:0,code:"LBP",name_plural:"Lebanese pounds"},LKR:{symbol:"SLRs",name:"Sri Lankan Rupee",symbol_native:"SL Re",decimal_digits:2,rounding:0,code:"LKR",name_plural:"Sri Lankan rupees"},LTL:{symbol:"Lt",name:"Lithuanian Litas",symbol_native:"Lt",decimal_digits:2,rounding:0,code:"LTL",name_plural:"Lithuanian litai"},LVL:{symbol:"Ls",name:"Latvian Lats",symbol_native:"Ls",decimal_digits:2,rounding:0,code:"LVL",name_plural:"Latvian lati"},LYD:{symbol:"LD",name:"Libyan Dinar",symbol_native:"\u062f.\u0644.\u200f",decimal_digits:3,rounding:0,code:"LYD",name_plural:"Libyan dinars"},MAD:{symbol:"MAD",name:"Moroccan Dirham",symbol_native:"\u062f.\u0645.\u200f",decimal_digits:2,rounding:0,code:"MAD",name_plural:"Moroccan dirhams"},MDL:{symbol:"MDL",name:"Moldovan Leu",symbol_native:"MDL",decimal_digits:2,rounding:0,code:"MDL",name_plural:"Moldovan lei"},MGA:{symbol:"MGA",name:"Malagasy Ariary",symbol_native:"MGA",decimal_digits:0,rounding:0,code:"MGA",name_plural:"Malagasy Ariaries"},MKD:{symbol:"MKD",name:"Macedonian Denar",symbol_native:"MKD",decimal_digits:2,rounding:0,code:"MKD",name_plural:"Macedonian denari"},MMK:{symbol:"MMK",name:"Myanma Kyat",symbol_native:"K",decimal_digits:0,rounding:0,code:"MMK",name_plural:"Myanma kyats"},MOP:{symbol:"MOP$",name:"Macanese Pataca",symbol_native:"MOP$",decimal_digits:2,rounding:0,code:"MOP",name_plural:"Macanese patacas"},MUR:{symbol:"MURs",name:"Mauritian Rupee",symbol_native:"MURs",decimal_digits:0,rounding:0,code:"MUR",name_plural:"Mauritian rupees"},MXN:{symbol:"MX$",name:"Mexican Peso",symbol_native:"$",decimal_digits:2,rounding:0,code:"MXN",name_plural:"Mexican pesos"},MYR:{symbol:"RM",name:"Malaysian Ringgit",symbol_native:"RM",decimal_digits:2,rounding:0,code:"MYR",name_plural:"Malaysian ringgits"},MZN:{symbol:"MTn",name:"Mozambican Metical",symbol_native:"MTn",decimal_digits:2,rounding:0,code:"MZN",name_plural:"Mozambican meticals"},NAD:{symbol:"N$",name:"Namibian Dollar",symbol_native:"N$",decimal_digits:2,rounding:0,code:"NAD",name_plural:"Namibian dollars"},NGN:{symbol:"\u20a6",name:"Nigerian Naira",symbol_native:"\u20a6",decimal_digits:2,rounding:0,code:"NGN",name_plural:"Nigerian nairas"},NIO:{symbol:"C$",name:"Nicaraguan C\xf3rdoba",symbol_native:"C$",decimal_digits:2,rounding:0,code:"NIO",name_plural:"Nicaraguan c\xf3rdobas"},NOK:{symbol:"Nkr",name:"Norwegian Krone",symbol_native:"kr",decimal_digits:2,rounding:0,code:"NOK",name_plural:"Norwegian kroner"},NPR:{symbol:"NPRs",name:"Nepalese Rupee",symbol_native:"\u0928\u0947\u0930\u0942",decimal_digits:2,rounding:0,code:"NPR",name_plural:"Nepalese rupees"},NZD:{symbol:"NZ$",name:"New Zealand Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"NZD",name_plural:"New Zealand dollars"},OMR:{symbol:"OMR",name:"Omani Rial",symbol_native:"\u0631.\u0639.\u200f",decimal_digits:3,rounding:0,code:"OMR",name_plural:"Omani rials"},PAB:{symbol:"B/.",name:"Panamanian Balboa",symbol_native:"B/.",decimal_digits:2,rounding:0,code:"PAB",name_plural:"Panamanian balboas"},PEN:{symbol:"S/.",name:"Peruvian Nuevo Sol",symbol_native:"S/.",decimal_digits:2,rounding:0,code:"PEN",name_plural:"Peruvian nuevos soles"},PHP:{symbol:"\u20b1",name:"Philippine Peso",symbol_native:"\u20b1",decimal_digits:2,rounding:0,code:"PHP",name_plural:"Philippine pesos"},PKR:{symbol:"PKRs",name:"Pakistani Rupee",symbol_native:"\u20a8",decimal_digits:0,rounding:0,code:"PKR",name_plural:"Pakistani rupees"},PLN:{symbol:"z\u0142",name:"Polish Zloty",symbol_native:"z\u0142",decimal_digits:2,rounding:0,code:"PLN",name_plural:"Polish zlotys"},PYG:{symbol:"\u20b2",name:"Paraguayan Guarani",symbol_native:"\u20b2",decimal_digits:0,rounding:0,code:"PYG",name_plural:"Paraguayan guaranis"},QAR:{symbol:"QR",name:"Qatari Rial",symbol_native:"\u0631.\u0642.\u200f",decimal_digits:2,rounding:0,code:"QAR",name_plural:"Qatari rials"},RON:{symbol:"RON",name:"Romanian Leu",symbol_native:"RON",decimal_digits:2,rounding:0,code:"RON",name_plural:"Romanian lei"},RSD:{symbol:"din.",name:"Serbian Dinar",symbol_native:"\u0434\u0438\u043d.",decimal_digits:0,rounding:0,code:"RSD",name_plural:"Serbian dinars"},RUB:{symbol:"RUB",name:"Russian Ruble",symbol_native:"\u0440\u0443\u0431.",decimal_digits:2,rounding:0,code:"RUB",name_plural:"Russian rubles"},RWF:{symbol:"RWF",name:"Rwandan Franc",symbol_native:"FR",decimal_digits:0,rounding:0,code:"RWF",name_plural:"Rwandan francs"},SAR:{symbol:"SR",name:"Saudi Riyal",symbol_native:"\u0631.\u0633.\u200f",decimal_digits:2,rounding:0,code:"SAR",name_plural:"Saudi riyals"},SDG:{symbol:"SDG",name:"Sudanese Pound",symbol_native:"SDG",decimal_digits:2,rounding:0,code:"SDG",name_plural:"Sudanese pounds"},SEK:{symbol:"Skr",name:"Swedish Krona",symbol_native:"kr",decimal_digits:2,rounding:0,code:"SEK",name_plural:"Swedish kronor"},SGD:{symbol:"S$",name:"Singapore Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"SGD",name_plural:"Singapore dollars"},SOS:{symbol:"Ssh",name:"Somali Shilling",symbol_native:"Ssh",decimal_digits:0,rounding:0,code:"SOS",name_plural:"Somali shillings"},SYP:{symbol:"SY\xa3",name:"Syrian Pound",symbol_native:"\u0644.\u0633.\u200f",decimal_digits:0,rounding:0,code:"SYP",name_plural:"Syrian pounds"},THB:{symbol:"\u0e3f",name:"Thai Baht",symbol_native:"\u0e3f",decimal_digits:2,rounding:0,code:"THB",name_plural:"Thai baht"},TND:{symbol:"DT",name:"Tunisian Dinar",symbol_native:"\u062f.\u062a.\u200f",decimal_digits:3,rounding:0,code:"TND",name_plural:"Tunisian dinars"},TOP:{symbol:"T$",name:"Tongan Pa\u02bbanga",symbol_native:"T$",decimal_digits:2,rounding:0,code:"TOP",name_plural:"Tongan pa\u02bbanga"},TRY:{symbol:"TL",name:"Turkish Lira",symbol_native:"TL",decimal_digits:2,rounding:0,code:"TRY",name_plural:"Turkish Lira"},TTD:{symbol:"TT$",name:"Trinidad and Tobago Dollar",symbol_native:"$",decimal_digits:2,rounding:0,code:"TTD",name_plural:"Trinidad and Tobago dollars"},TWD:{symbol:"NT$",name:"New Taiwan Dollar",symbol_native:"NT$",decimal_digits:2,rounding:0,code:"TWD",name_plural:"New Taiwan dollars"},TZS:{symbol:"TSh",name:"Tanzanian Shilling",symbol_native:"TSh",decimal_digits:0,rounding:0,code:"TZS",name_plural:"Tanzanian shillings"},UAH:{symbol:"\u20b4",name:"Ukrainian Hryvnia",symbol_native:"\u20b4",decimal_digits:2,rounding:0,code:"UAH",name_plural:"Ukrainian hryvnias"},UGX:{symbol:"USh",name:"Ugandan Shilling",symbol_native:"USh",decimal_digits:0,rounding:0,code:"UGX",name_plural:"Ugandan shillings"},UYU:{symbol:"$U",name:"Uruguayan Peso",symbol_native:"$",decimal_digits:2,rounding:0,code:"UYU",name_plural:"Uruguayan pesos"},UZS:{symbol:"UZS",name:"Uzbekistan Som",symbol_native:"UZS",decimal_digits:0,rounding:0,code:"UZS",name_plural:"Uzbekistan som"},VEF:{symbol:"Bs.F.",name:"Venezuelan Bol\xedvar",symbol_native:"Bs.F.",decimal_digits:2,rounding:0,code:"VEF",name_plural:"Venezuelan bol\xedvars"},VND:{symbol:"\u20ab",name:"Vietnamese Dong",symbol_native:"\u20ab",decimal_digits:0,rounding:0,code:"VND",name_plural:"Vietnamese dong"},XAF:{symbol:"FCFA",name:"CFA Franc BEAC",symbol_native:"FCFA",decimal_digits:0,rounding:0,code:"XAF",name_plural:"CFA francs BEAC"},XOF:{symbol:"CFA",name:"CFA Franc BCEAO",symbol_native:"CFA",decimal_digits:0,rounding:0,code:"XOF",name_plural:"CFA francs BCEAO"},YER:{symbol:"YR",name:"Yemeni Rial",symbol_native:"\u0631.\u064a.\u200f",decimal_digits:0,rounding:0,code:"YER",name_plural:"Yemeni rials"},ZAR:{symbol:"R",name:"South African Rand",symbol_native:"R",decimal_digits:2,rounding:0,code:"ZAR",name_plural:"South African rand"},ZMK:{symbol:"ZK",name:"Zambian Kwacha",symbol_native:"ZK",decimal_digits:0,rounding:0,code:"ZMK",name_plural:"Zambian kwachas"}},e.ConstantService=Ri,e.CoreModule=Bi,e.CustomIconsLoaderService=Fi,e.CustomPipeManager=Li,e.DataSource=we,e.DynamicComponentRefProvider=class{},e.EventNotifier=Oi,e.FIRST_TIME_WATCH=ie,e.FieldTypeService=_i,e.FieldWidgetService=Mi,e.IDGenerator=O,e.IDataSource=class{},e.LRUCache=class{constructor(e=100,t=60,i){this.maxSize=e,this.maxAge=t,this.onEvict=i,this.cache=new Map,this.evictQueue=[""],this.evictQueue.shift(),this.maxAge>0&&(this.maxAge<=30&&console.warn(`Cache age ${this.maxAge}s is very less. Keep it atleast 30s.`),this.maxAge=1e3*this.maxAge,setInterval((()=>{const e=Date.now()-this.maxAge,t=this.evictQueue.filter((t=>this.cache.get(t).lastAccessedTime<=e));this.evict(t.length)}),this.maxAge))}addToEvictQueue(e){const t=this.evictQueue.findIndex((t=>t===e));t>=0&&this.evictQueue.splice(t,1),this.evictQueue.push(e)}evict(e=1){for(let t=0;t<e;t++)this.delete(this.evictQueue[0])}keys(){return this.cache.keys()}set(e,t){if(i.isNil(t))return;const n={instance:t,lastAccessedTime:Date.now()};this.cache.set(e,n),this.addToEvictQueue(e),this.evict(this.evictQueue.length-this.maxSize)}get(e){const t=this.cache.get(e);return t?(t.lastAccessedTime=Date.now(),this.addToEvictQueue(e),t.instance):null}delete(e){if(e&&this.cache.has(e)){const t=this.cache.get(e);this.cache.delete(e),this.onEvict&&this.onEvict(e,t.instance);const i=this.evictQueue.findIndex((t=>t===e));i>=0&&this.evictQueue.splice(i,1)}}has(e){return this.cache.has(e)}size(){return this.evictQueue.length}clear(){this.evict(this.evictQueue.length)}},e.PaginationService=$i,e.PartialRefProvider=class{},e.ScriptLoaderService=ki,e.ScriptStore=Ni,e.StatePersistence=ji,e.UserDefinedExecutionContext=class{},e.UtilsService=Si,e.VALIDATOR=bi,e.Viewport=Di,e._WM_APP_PROJECT=Lt,e.addClass=C,e.addEventListenerOnElement=lt,e.addForIdAttributes=ri,e.adjustContainerPosition=li,e.adjustContainerRightEdges=ci,e.appendNode=(e,t,i)=>{const n=()=>t.appendChild(e);i?n():y(n)},e.appendScriptToHead=wi,e.checkIsCustomPipeExpression=m,e.closePopover=ui,e.convertToBlob=Bt,e.createCSSRule=Qt,e.createElement=(e,t,i)=>{const n=document.createElement(e);return t&&Object.keys(t).forEach((e=>{I(n,e,t[e],i)})),n},e.deHyphenate=Qe,e.debounce=se,e.defer=Jt,e.detectChanges=hi,e.encodeUrl=Ve,e.encodeUrlParams=Ge,e.executePromiseChain=Zt,e.extendProto=ni,e.extractCurrentItemExpr=fi,e.extractType=vt,e.fetchContent=Ut,e.findParent=Ii,e.findRootContainer=vi,e.findValueOf=ft,e.generateGUId=ut,e.getAbortableDefer=Ht,e.getAndroidVersion=$e,e.getAppSetting=Ci,e.getBlob=xt,e.getClonedObject=ct,e.getDatasourceFromExpr=gi,e.getDateObj=rt,e.getDisplayDateTimeFormat=oi,e.getEvaluatedExprValue=Je,e.getFiles=dt,e.getFnByExpr=X,e.getFnForBindExpr=J,e.getFnForEventExpr=Z,e.getFormWidgetTemplate=(t,i,n,a={})=>{let s;const o=n.get("updateon"),r=o?`updateon="${o}"`:"",l=n.get("showineditmode")||n.get("showineditmode.bind")||!0,c="false"==l?`show="${l}"`:`show.bind="${l}"`;switch(t){case e.FormWidgetType.AUTOCOMPLETE:case e.FormWidgetType.TYPEAHEAD:s=`<div wmSearch type="autocomplete" debouncetime="${n.get("debouncetime")}" ${i} ${c}></div>`;break;case e.FormWidgetType.CHECKBOX:s=`<div wmCheckbox ${i} ${"true"===n.get("required")?"required=true":""} ${c}></div>`;break;case e.FormWidgetType.CHECKBOXSET:s=`<ul role="group" wmCheckboxset ${i} ${"true"===n.get("required")?"required=true":""} ${c}></ul>`;break;case e.FormWidgetType.CHIPS:s=`<ul wmChips role="input" debouncetime="${n.get("debouncetime")}" ${i} ${c}></ul>`;break;case e.FormWidgetType.COLORPICKER:s=`<div wmColorPicker ${"true"===n.get("required")?"required=true":""} ${i} ${c}></div>`;break;case e.FormWidgetType.CURRENCY:s=`<div wmCurrency ${"true"===n.get("required")?"required=true":""} ${r} ${i} ${c}></div>`;break;case e.FormWidgetType.DATE:s=`<div wmDate ${"true"===n.get("required")?"required=true":""} dataentrymode="${n.get("dataentrymode")}" ${i} ${c}></div>`;break;case e.FormWidgetType.DATETIME:s=`<div wmDateTime ${"true"===n.get("required")?"required=true":""} dataentrymode="${n.get("dataentrymode")}" ${i} ${c}></div>`;break;case e.FormWidgetType.NUMBER:s=`<div wmNumber ${i} ${"true"===n.get("required")?"required=true":""} type="number" aria-label="Only numbers" ${r} ${c}></div>`;break;case e.FormWidgetType.PASSWORD:s=`<wm-input ${i} ${"true"===n.get("required")?"required=true":""} type="password" aria-label="Enter password" ${r} ${c}></wm-input>`;break;case e.FormWidgetType.RADIOSET:s=`<ul role="radiogroup" wmRadioset ${i} ${c}></ul>`;break;case e.FormWidgetType.RATING:s=`<div wmRating ${i} ${c}></div>`;break;case e.FormWidgetType.RICHTEXT:s=`<div wmRichTextEditor role="textbox" ${i} ${c}></div>`;break;case e.FormWidgetType.SELECT:s=`<wm-select ${"true"===n.get("required")?"required=true":""} ${i} ${c}></wm-select>`;break;case e.FormWidgetType.TOGGLE:s=`<div wmCheckbox ${i} ${"true"===n.get("required")?"required=true":""} type="toggle" role="checkbox" aria-label="Toggle button" ${c}></div>`;break;case e.FormWidgetType.SLIDER:s=`<div wmSlider ${i} ${c}></div>`;break;case e.FormWidgetType.SWITCH:s=`<div wmSwitch ${i} ${c}></div>`;break;case e.FormWidgetType.TEXT:const t=a.inputType||"inputtype";s=`<wm-input ${i} ${"true"===n.get("required")?"required=true":""} type="${n.get(t)||"text"}" ${r} ${c}></wm-input>`;break;case e.FormWidgetType.TEXTAREA:s=`<wm-textarea ${i} ${"true"===n.get("required")?"required=true":""} role="textbox" ${r} ${c}></wm-textarea>`;break;case e.FormWidgetType.TIME:s=`<div wmTime ${"true"===n.get("required")?"required=true":""} dataentrymode="${n.get("dataentrymode")}" ${i} ${c}></div>`;break;case e.FormWidgetType.TIMESTAMP:s=`<div wmDateTime ${"true"===n.get("required")?"required=true":""} dataentrymode="${n.get("dataentrymode")}" ${i} role="input" ${c}></div>`;break;case e.FormWidgetType.UPLOAD:const o=a.counter,l=a.pCounter,d=a.uploadProps,p=((e,t,i)=>{let n="";return e.forEach(((e,a)=>{if(a&&a.endsWith(".event")){const e=a.split(".")[0];n=` ${n} (${e})="${t?`${t}.`:""}triggerUploadEvent($event, '${e}', '${i}', row)" `}})),n})(n,o,d&&d.name);s=d?`<form name="${d.formName}" ${i}>\n <input focus-target class="file-upload" type="file" name="${d.name}" ${p} ${c}/>\n </form>`:`<a class="form-control-static" href="{{${o}.href}}" target="_blank" *ngIf="${o}.filetype === 'image' && ${o}.href">\n <img style="height:2em" class="wi wi-file" [src]="${o}.href"/></a>\n <a class="form-control-static" target="_blank" href="{{${o}.href}}" *ngIf="${o}.filetype !== 'image' && ${o}.href">\n <i class="wi wi-file"></i></a>\n <input ${i} class="app-blob-upload" [ngClass]="{'file-readonly': ${o}.readonly}" ${p}\n [required]="${o}.required" type="file" name="${n.get("key")||n.get("name")}_formWidget" [readonly]="${o}.readonly"\n [class.hidden]="!${l}.isUpdateMode" [accept]="${o}.permitted" ${c}>`;break;default:s=`<wm-input ${i} ${"true"===n.get("required")?"required=true":""} type="text" ${r} ${c}></wm-input>`}return s},e.getFormattedDate=st,e.getMomentLocaleObject=Mt,e.getNativeDateObject=Tt,e.getNgModelAttr=e=>e.has("formControlName")||e.has("formControlName.bind")?"":"ngModel",e.getRequiredFormWidget=t=>{switch(t){case e.FormWidgetType.AUTOCOMPLETE:case e.FormWidgetType.TYPEAHEAD:return"wm-search";case e.FormWidgetType.CHIPS:return"wm-chips";case e.FormWidgetType.COLORPICKER:return"wm-colorpicker";case e.FormWidgetType.CURRENCY:return"wm-currency";case e.FormWidgetType.DATE:return"wm-date";case e.FormWidgetType.DATETIME:return"wm-datetime";case e.FormWidgetType.TIME:case e.FormWidgetType.TIMESTAMP:return"wm-time";case e.FormWidgetType.RATING:return"wm-rating";case e.FormWidgetType.RICHTEXT:return"wm-richtexteditor";case e.FormWidgetType.SLIDER:return"wm-slider";default:return"wm-text"}},e.getResourceURL=nt,e.getRouteNameFromLink=Xt,e.getRowActionAttrs=e=>{let t="";return e.forEach(((e,i)=>{const n=f.get(i);n&&(t+=`${n}="${e}" `)})),t},e.getSessionStorageItem=jt,e.getUrlParams=Yt,e.getValidDateObject=Ot,e.getValidJSON=mt,e.getWebkitTraslationMatrix=pi,e.getWmProjectProperties=E,e.hasCordova=Vt,e.hasOffsetStr=ot,e.initCaps=We,e.insertAfter=(e,t,i)=>{const n=()=>t.parentNode.insertBefore(e,t.nextSibling);i?n():y(n)},e.insertBefore=(e,t,i)=>{const n=()=>t.parentNode.insertBefore(e,t);i?n():y(n)},e.isAndroid=De,e.isAndroidTablet=Re,e.isAppleProduct=Kt,e.isAudioFile=et,e.isChangeFromWatch=()=>de,e.isDataSourceEqual=ei,e.isDateTimeType=At,e.isDefined=Ee,e.isElementInViewport=Ct,e.isEmptyObject=yt,e.isEqualWithFields=Dt,e.isFirstTimeChange=e=>e===ie,e.isIE=xe,e.isImageFile=Ze,e.isInsecureContentRequest=Xe,e.isIos=Ne,e.isIpad=Me,e.isIphone=Se,e.isIpod=_e,e.isKitkatDevice=Be,e.isLargeTabletLandscape=ke,e.isLargeTabletPortrait=Le,e.isMobile=Fe,e.isMobileApp=je,e.isNumberType=bt,e.isObject=Oe,e.isPageable=Pt,e.isValidWebURL=it,e.isVideoFile=tt,e.loadScript=Nt,e.loadScripts=kt,e.loadStyleSheet=St,e.loadStyleSheets=_t,e.muteWatchers=()=>{ae=!0},e.noop=$t,e.openLink=Wt,e.periodSeparate=ze,e.prettifyLabel=He,e.prettifyLabels=Ye,e.processFilterExpBindNode=ii,e.registerFnByExpr=(e,t,i)=>{t.usedPipes=i||[],Y.set(e,t)},e.removeAttr=(e,t,i)=>{const n=()=>e.removeAttribute(t);i?n():y(n)},e.removeClass=w,e.removeExtraSlashes=ai,e.removeNode=(e,t)=>{const i=()=>e.remove();t?i():y(i)},e.replace=It,e.replaceAt=qe,e.resetChangeFromWatch=me,e.retryIfFails=zt,e.scrollToElement=wt,e.setAppRef=e=>{ne=e},e.setAttr=I,e.setCSS=P,e.setCSSFromObj=(e,t,i)=>{Object.keys(t||{}).forEach((n=>P(e,n,t[n],i)))},e.setHtml=(e,t,i)=>{const n=()=>e.innerHTML=t;i?n():y(n)},e.setListClass=Pi,e.setNgZone=e=>ue=e,e.setPipeProvider=function(e){U=e},e.setProperty=(e,t,i,n)=>{const a=()=>e[t]=i;n?a():y(a)},e.setSessionStorageItem=Ft,e.setTranslation3dPosition=di,e.setWmProjectProperties=function(e){Object.setPrototypeOf(A,e)},e.spaceSeparate=Ue,e.stringStartsWith=Ke,e.switchClass=(e,t="",i="",n)=>{e.classList.contains("ng-untouched")&&e.classList.contains("ng-valid")&&t.includes("ng-untouched")&&t.includes("ng-invalid")&&(t=t.replace("ng-invalid","")),w(e,i,n),C(e,t,n)},e.toBoolean=Te,e.toDimension=e=>e==+e?`${e}px`:e,e.toPromise=qt,e.toggleClass=(e,t,i,n)=>{i?C(e,t,n):w(e,t,n)},e.transformFileURI=yi,e.triggerFn=at,e.triggerItemAction=mi,e.unMuteWatchers=()=>{ae=!1,he()},e.updateTemplateAttrs=g,e.validateAccessRoles=ht,e.validateDataSourceCtx=ti,e.xmlToJson=gt})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).swipey={})}(this,(function(e){"use strict";e.SwipeAnimation=class{bindEvents(){return window.PointerEvent?["pointer"]:["touch"]}bounds(e,t){return{}}context(){return{}}direction(){return $.fn.swipey.DIRECTIONS.HORIZONTAL}setGesturesEnabled(e){this._isGesturesEnabled=e}isGesturesEnabled(){return this._isGesturesEnabled}goToLower(e){this._$ele.swipeAnimation("gotoLower",e)}goToUpper(e){this._$ele.swipeAnimation("gotoUpper",e)}onAnimation(e,t){}onUpper(e){}onLower(e){}threshold(){return 30}constructor(){this._isGesturesEnabled=!0}init(e,t){this._$ele=e,e.swipeAnimation({animation:this.animation(),target:t,bounds:this.bounds.bind(this),bindEvents:this.bindEvents(),context:this.context.bind(this),direction:this.direction(),enableGestures:this.isGesturesEnabled.bind(this),onAnimation:this.onAnimation.bind(this),onLower:this.onLower.bind(this),onUpper:this.onUpper.bind(this),threshold:this.threshold(),disableMouse:!0})}}})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/compiler"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/compiler","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.transpiler={}),e.ng.compiler,e.wm.core,e._)}(this,(function(e,t,i,n){"use strict";const a=[{from:"@angular/forms",name:"FormsModule",as:"ngFormsModule"}],s=[{from:"@angular/forms",name:"ReactiveFormsModule",as:"ngReactiveFormsModule"}],o=[{from:"ngx-bootstrap/datepicker",name:"BsDatepickerModule",as:"ngx_BsDatepickerModule"}],r=[{from:"ngx-bootstrap/dropdown",name:"BsDropdownModule",as:"ngxBsDropdownModule",forRoot:!0}],l=[{from:"@wm/components/basic/progress",name:"ProgressModule"}],c=[{from:"@wm/components/page",name:"PageModule"},{from:"@wm/mobile/components/page",name:"PageModule",as:"WM_MobilePageModule",platformType:"MOBILE"}],d=[{from:"@wm/components/basic",name:"BasicModule"},...[...l,{from:"@wm/mobile/components/basic",name:"BasicModule",as:"WM_MobileBasicModule",platformType:"MOBILE"}]],p=[...a,{from:"@wm/components/input",name:"InputModule"}],u=[{from:"ngx-bootstrap/modal",name:"ModalModule",as:"ngx_ModalModule"},...p,{from:"@wm/components/dialogs",name:"DialogModule"}],h=[...a,{from:"ngx-bootstrap/pagination",name:"PaginationModule",as:"ngxPaginationModule",forRoot:!0},{from:"@wm/components/data/pagination",name:"PaginationModule"}],m=[...a,{from:"ngx-bootstrap/typeahead",name:"TypeaheadModule",as:"ngxTypeaheadModule",forRoot:!0},{from:"@wm/components/basic/search",name:"SearchModule"}],g=[{from:"@wm/components/containers/accordion",name:"AccordionModule"}],f=[{from:"@wm/components/containers/linear-layout",name:"LinearLayoutModule"}],v=[...u,{from:"@wm/components/dialogs/alert-dialog",name:"AlertDialogModule"}],b=[...d,...r,...p,{from:"@wm/components/navigation/menu",name:"MenuModule"}],y=[...b,{from:"@wm/components/navigation/breadcrumb",name:"BreadcrumbModule"}],w=[...a,...o,{from:"@wm/components/input/calendar",name:"CalendarModule"}],C=[{from:"ngx-bootstrap/carousel",name:"CarouselModule",as:"ngxCarouselModule",forRoot:!0},{from:"@wm/components/advanced/carousel",name:"CarouselModule"}],P=[...d,{from:"@wm/components/chart",name:"ChartModule"}],I=[...m,{from:"@wm/components/input/chips",name:"ChipsModule"}],A=[...a,{from:"ngx-color-picker",name:"ColorPickerModule",as:"ngx_ColorPickerModule"},{from:"@wm/components/input/color-picker",name:"ColorPickerModule"}],E=[...u,{from:"@wm/components/dialogs/confirm-dialog",name:"ConfirmDialogModule"}],O=[...p,{from:"@wm/components/input/currency",name:"CurrencyModule"}],T=[...u,{from:"@wm/components/dialogs/design-dialog",name:"DesignDialogModule"}],x=[...a,...o,{from:"ngx-bootstrap/timepicker",name:"TimepickerModule",as:"ngx_TimepickerModule",forRoot:!0},...r,{from:"@wm/components/input/epoch",name:"EpochModule"}],D=[{from:"@wm/mobile/components/input/file-upload",name:"FileUploadModule",as:"WM_MobileFileUploadModule",platformType:"MOBILE"},{from:"@wm/components/input/file-upload",name:"FileUploadModule"}],R=[...d,...u,{from:"@wm/components/dialogs/iframe-dialog",name:"IframeDialogModule"}],S=[{from:"@wm/components/containers/layout-grid",name:"LayoutGridModule"}],_=[...u,{from:"@wm/components/dialogs/login-dialog",name:"LoginDialogModule"}],M=[...r,...b,...d,{from:"@wm/components/data/card",name:"CardModule"}],N=[{from:"@wm/components/page/left-panel",name:"LeftPanelModule"},{from:"@wm/mobile/components/page/left-panel",name:"LeftPanelModule",as:"WM_MobileLeftPanelModule",platformType:"MOBILE"}],k=[...h,...p,{from:"@wm/components/data/list",name:"ListModule"}],L=[...N,...m,...c,{from:"@wm/mobile/components/page/mobile-navbar",name:"MobileNavbarModule"}],F=[...d,...c,...L,{from:"@wm/mobile/components/data/media-list",name:"MediaListModule"}],j=[{from:"ngx-bootstrap/popover",name:"PopoverModule",as:"ngxPopoverModule",forRoot:!0},...d,{from:"@wm/components/navigation/popover",name:"PopoverModule"}],$=[...b,{from:"@wm/components/containers/panel",name:"PanelModule"}],B=[...u,{from:"@wm/components/dialogs/partial-dialog",name:"PartialDialogModule"}],V=[{from:"@wm/components/prefab",name:"PrefabModule"}],G=[{from:"@wm/mobile/components/containers/segmented-control",name:"SegmentedControlModule"}],W=[...a,{from:"@wm/components/input/slider",name:"SliderModule"}],U=[{from:"@wm/components/containers/tabs",name:"TabsModule"}],q=[...a,...s,...h,...b,...d,...p,{from:"ngx-bootstrap/tooltip",name:"TooltipModule",as:"ngxTooltipModule",forRoot:!0},...k,{from:"@wm/components/data/table",name:"TableModule"}],z=[...a,{from:"@wm/components/containers/wizard",name:"WizardModule"}],H=[...q,{from:"@wm/components/data/live-table",name:"LiveTableModule"}],Q=[...a,...s,...d,...p,...c,...T,{from:"@wm/components/data/form",name:"FormModule"}],Y=new Map([["wm-accordion",g],["wm-accordionpane",g],["wm-anchor",d],["wm-alertdialog",v],["wm-audio",d],["wm-barcodescanner",[{from:"@wm/mobile/components/device/barcode-scanner",name:"BarcodeScannerModule"}]],["wm-button",p],["wm-buttongroup",p],["wm-breadcrumb",y],["wm-camera",[{from:"@wm/mobile/components/device/camera",name:"CameraModule"}]],["wm-calendar",w],["wm-card",M],["wm-card-actions",M],["wm-card-content",M],["wm-card-footer",M],["wm-carousel",C],["wm-carousel-content",C],["wm-carousel-template",C],["wm-chart",P],["wm-checkbox",p],["wm-checkboxset",p],["wm-chips",I],["wm-colorpicker",A],["wm-confirmdialog",E],["wm-content",[{from:"@wm/components/page",name:"PageModule"}]],["wm-currency",O],["wm-date",x],["wm-datetime",x],["wm-dialog",T],["wm-footer",[{from:"@wm/components/page/footer",name:"FooterModule"}]],["wm-form",Q],["wm-form-action",Q],["wm-form-field",Q],["wm-filter-field",Q],["wm-fileupload",D],["wm-gridrow",S],["wm-gridcolumn",S],["wm-header",[{from:"@wm/components/page/header",name:"HeaderModule"}]],["wm-html",d],["wm-icon",d],["wm-iframe",d],["wm-iframedialog",R],["wm-label",d],["wm-layoutgrid",S],["wm-left-panel",N],["wm-linearlayout",f],["wm-linearlayoutitem",f],["wm-list",k],["wm-livetable",H],["wm-login",[{from:"@wm/components/advanced/login",name:"LoginModule"}]],["wm-logindialog",_],["wm-marquee",[{from:"@wm/components/advanced/marquee",name:"MarqueeModule"}]],["wm-menu",b],["wm-media-list",F],["wm-mobile-navbar",L],["wm-mobile-tabbar",[{from:"@wm/mobile/components/page/tab-bar",name:"TabBarModule"}]],["wm-nav",b],["wm-navbar",[{from:"@wm/components/navigation/navbar",name:"NavbarModule"}]],["wm-nav-item",b],["wm-network-info-toaster",d],["wm-number",p],["wm-page",c],["wm-layout",c],["wm-page-content",c],["wm-pagedialog",B],["wm-pagination",h],["wm-panel",$],["wm-panel-footer",$],["wm-picture",d],["wm-popover",j],["wm-progress-bar",l],["wm-prefab",V],["wm-prefab-container",V],["wm-progress-circle",l],["wm-radioset",p],["wm-rating",[{from:"@wm/components/input/rating",name:"RatingModule"}]],["wm-richtexteditor",[{from:"@wm/components/basic/rich-text-editor",name:"RichTextEditorModule"}]],["wm-right-panel",[{from:"@wm/components/page/right-panel",name:"RightPanelModule"}]],["wm-select",p],["wm-search",m],["wm-segmented-content",G],["wm-segmented-control",G],["wm-slider",W],["wm-spinner",d],["wm-switch",p],["wm-table",q],["wm-tabs",U],["wm-tabpane",U],["wm-text",p],["wm-textarea",p],["wm-time",x],["wm-tile",[{from:"@wm/components/containers/tile",name:"TileModule"}]],["wm-top-nav",[{from:"@wm/components/page/top-nav",name:"TopNavModule"}]],["wm-tree",[{from:"@wm/components/basic/tree",name:"TreeModule"}]],["wm-video",d],["wm-wizard",z],["wm-wizardstep",z]]),X={COMMENTS_FORMAT:/\/\*((?!\*\/).|\n)+\*\//g,SELECTOR_FORMAT:/[^\{\}]*\{/gi,SELECTOR_EXCLUDE_FORMAT:/(@keyframes|@media|@font-face|@comment[0-9]+|from|to|[0-9]+%)\b/i},K={accessroles:"*accessroles","ng-if":"*ngIf",showindevice:"*wmShowInDevice","ng-class":"[ngClass]","data-ng-class":"[ngClass]","data-ng-src":"src","ng-src":"src","data-ng-href":"href","ng-href":"href","ng-disabled":"disabled","data-ng-disabled":"disabled","ng-model":'[ngModelOptions]="{standalone: true}" [(ngModel)]'},J=e=>e?(e=e.trim()).startsWith("bind:")?e.substr(5):void 0:null,Z=e=>(""+e).replace(/&/g,"&amp;").replace(/'/g,"&apos;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),ee=new Map,te=new t.HtmlParser,ie=()=>"",ne=".wm-app",ae=e=>{let t=K[e.name];const n=e.valueSpan?e.value:void 0;if("showindevice"===e.name&&i.isMobileApp()&&(t=""),t)return"accessroles"===e.name||"showindevice"===e.name?[t,`'${n}'`]:[t,Z(n)];if("o"===(a=e.name)[0]&&"n"===a[1]&&"-"===a[2])return(e=>[`${e.name.substr(3)}.event`,e.value])(e);var a;const s=J(e.value);return s?((e,t)=>[`${e.name}.bind`,Z(t)])(e,s):[e.name,Z(n)]},se=e=>{const t=e.split(".");if("Variables"===t[0]||"Widgets"===t[0])return`${t[0]}.${t[1]}`},oe=(()=>{const e=new Map,t=["required"];return{set:i=>{i.forEach(((i,n)=>{t.includes(n)&&e.set(n,i)}))},get:t=>{const i=new Map;return e.forEach(((e,n)=>{!t.get(n)&&i.set(n,e)})),i},clear:()=>{e.clear()}}})(),re=e=>{let t="";return e.forEach(((i,n)=>{if(t+=` ${n}`,i&&(i=i.trim(),"[ngClass]"===n&&i.startsWith("{")&&(i=i.replace(/"/g,"'")),"show.bind"===n&&"true"===e.get("deferload")&&(i=i+'" *lazyLoad="'+`&apos;${i.replace(/&apos/g,"&quot").replace(/&quot/g,"\\&quot")}&apos;`),t+=`="${i}"`,"showindevice"===n&&"all"!==i)){const e=[];i.includes("xs")&&e.push("Viewport.isMobileType"),i.includes("sm")&&e.push("(Viewport.isTabletType && Viewport.orientation.isPortrait)"),i.includes("md")&&e.push("(Viewport.isTabletType && Viewport.orientation.isLandscape)"),t+=` *ngIf="${e.join(" || ")}"`}})),t},le=["padding","borderwidth","margin"],ce="unset",de=e=>{Array.from(e.keys()).forEach((t=>{if(le.includes(t)){const i={},n=e.get(t);e.delete(t),((e,t,i)=>{let n,a,s,o,r,l=t,c="";function d(t,i){i===ce&&(i=""),e[l+t+c]=i}"borderwidth"===t&&(c="width",l="border"),n=i,-1!==n.indexOf(ce)?(n=n.split(" "),a=n[0],s=n[1]||n[0],o=n[2]||n[0],r=n[3]||n[1]||n[0],d("top",a),d("right",s),d("bottom",o),d("left",r)):("borderwidth"===t&&(l="borderwidth"),e[l]=i)})(i,t,n),Object.keys(i).forEach((t=>{i[t]&&e.set(t,i[t])}))}}))},pe=(e,i,a)=>{const s=ee.get(e.name);let o,r,l;s&&(o=s.pre||ie,r=s.post||ie,l=s.template||ie);let c,d,p,u="";a||(a=[]);if(e instanceof t.Element){let h;s&&(d=((e,t,i)=>{if(!e.requires)return[];let n=e.requires;return"string"==typeof n&&(n=[n]),Array.isArray(n)?n.map((n=>{for(let t=i.length-1;t>=0;t--)if("tableName"===i[t].name)return e[i[t].value];for(let e=t.length-1;e>=0;e--)if(t[e].nodeName===n)return t[e].provide})):[]})(s,a,e.attrs),p=new Map,l(e,p,...d)),c=(e=>{const t=new Map;if(e.forEach((e=>{let[i,n]=ae(e);t.set(i,n)})),t.get("dataset.bind")){const e=se(t.get("dataset.bind"));e&&t.set("datasource.bind",e)}return t})(e.attrs),de(c);const m=e.name.replace(":svg:svg","svg").replace(":svg:","svg:");if(s){if(u=o(c,p,...d),s.provide){if(h={nodeName:e.name,provide:n.isFunction(s.provide)?s.provide(c,p,...d):s.provide},"wm-table"===e.name){const t=ee.get("wm-table-column");t[n.find(e.attrs,(e=>"name"===e.name)).value+h.provide.get("table_reference")]=h.provide,ee.set("wm-table-column",t)}a.push(h)}}else u=`<${m} ${re(c)}>`;e.children.forEach((e=>{if(e.attrs){let i,a,s,o;if(e.attrs.forEach((function(e){"showindevice"===e.name?i=e:"accessroles"===e.name?a=e:"deferload"===e.name?s=e:"show"===e.name&&(o=e)})),i&&a||i&&s||a&&s){const r={},l=i?new t.Element("ng-container",[],[],r,r,r):"",c=a?new t.Element("ng-container",[],[],r,r,r):"",d=s?new t.Element("ng-container",[],[],r,r,r):"";let p,u;if(l&&l.attrs.push(i),c&&c.attrs.push(a),d&&(d.attrs.push(s),o&&d.attrs.push(o)),n.remove(e.attrs,(function(e){return"showindevice"===e.name||"accessroles"===e.name||"deferload"===e.name})),i&&a?(p=l,u=c):i&&s?(p=l,u=d):a&&s&&(p=d,u=c),p.children=[e],u.children=[p],i&&a&&s){const t=d;t.children=[u],e=t}else e=u}}return u+=pe(e,i,a)})),s?(h&&a.splice(a.indexOf(h),1),u+=r(c,p,...d)):e.endSourceSpan&&!t.getHtmlTagDefinition(e.name).isVoid&&(u+=`</${m}>`)}else e instanceof t.Text&&(u+=e.value);if(i(Y.get(e.name)),s&&s.imports){let e=[];e="function"==typeof s.imports?s.imports(c):s.imports,e.forEach((e=>{i(Y.get(e))}))}return u};e.WIDGET_IMPORTS=Y,e.clearChildAttrs=()=>(oe.clear(),""),e.getAttrMarkup=re,e.getBoundToExpr=J,e.getChildAttrs=e=>re(oe.get(e)),e.getDataSource=se,e.getFormMarkupAttr=e=>{if(e.get("datavalue.bind")){const t=se(e.get("datavalue.bind"));e.set("datavaluesource.bind",t)}return re(e)},e.processNode=pe,e.register=(e,t)=>ee.set(e,t()),e.scopeComponentStyles=(e,t,i="")=>{e=e.toLowerCase();const n={};let a=0;if(i.startsWith("/*DISABLE_SCOPING*/"))return i;i=(i=i.replace(X.COMMENTS_FORMAT,(e=>{const t=`@comment${a++}{`;return n[t]=e,t}))).replace(X.SELECTOR_FORMAT,(i=>{if(!X.SELECTOR_EXCLUDE_FORMAT.test(i)){const n=i.match(/\S/).index;let a="";n>0&&(a=i.substring(0,n),i=i.substring(n)),!i.startsWith("/*")&&i.trim().length>0&&(i=i.split(",").map((i=>{let n=ne;const a=(i=i.trim()).indexOf(" ");if(i.startsWith(ne)){if(!(a>0))return i;n=i.substring(0,a),i=i.substring(a+1)}return 0===t||"PAGE"===t?i=`${n} app-page-${e} ${i}`:1===t||"PREFAB"===t?i=`${n} app-prefab-${e} ${i}`:2!==t&&"PARTIAL"!==t||(i=`${n} app-partial-${e} ${i}`),i})).join(",")),i=a+i}return i}));for(const e in n)i=i.replace(e,n[e]);return i},e.setChildAttrs=e=>(oe.set(e),""),e.transpile=(e="")=>{if(!e.length)return;let t=[];const i=te.parse(e,"");if(i.errors.length)return;let a="";for(const e of i.rootNodes)a+=pe(e,(e=>{e&&(t=t.concat(e))}));return t=n.uniqWith(t,n.isEqual),t=n.sortBy(t,["from","name"]),{markup:a,requiredWMComponents:t}}})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/common/http"),require("@wm/core"),require("rxjs"),require("@wavemaker/variables"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/common/http","@wm/core","rxjs","@wavemaker/variables","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.http={}),e.ng.core,e.ng.common,e.ng.common.http,e.wm.core,e.rxjs,e.wm_common_variables,e._)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c,d=l(t),p=l(n);!function(e){e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User"}(c||(c={}));class u extends a.AbstractHttpService{constructor(e){super(),this.httpClient=e,this.nonBodyTypeMethods=["GET","DELETE","HEAD","OPTIONS","JSONP"],this.sessionTimeoutObservable=new s.Subject,this.sessionTimeoutQueue=[]}handleSessionTimeout(e,t){this.sessionTimeoutQueue.push({requestInfo:e,sub401:t}),this.on401()}generateRequest(e){let t=new n.HttpHeaders,i=new n.HttpParams;const a=e.headers,s=e.params,o=e.responseType,l=e.withCredentials;let c,d;e.isDirectCall||(t=t.append("X-Requested-With","XMLHttpRequest")),a&&Object.entries(a).forEach((([e,i])=>{(r.isNumber(i)||r.isBoolean(i))&&(i=i.toString()),t=t.append(e,i)})),s&&Object.entries(s).forEach((([e,t])=>i=i.append(e,t)));const p={headers:t,params:i,responseType:o,withCredentials:l};return r.includes(this.nonBodyTypeMethods,e.method&&e.method.toUpperCase())&&void 0===e.data?(c=p,d=null):(c=e.data,d=p),new n.HttpRequest(e.method,e.url,c,d)}sendCallAsObservable(e,t){const i=this.generateRequest(e);return this.httpClient.request(i)}sendCall(e,t,i){return new Promise(((n,a)=>{t._observable=this.sendCallAsObservable(e,i).subscribe((e=>{e&&e.type&&n(e)}),(e=>{a(e)}))}))}send(e){const t=this.generateRequest(e);return new Promise(((e,i)=>{this.httpClient.request(t).toPromise().then((t=>{e(t)}),(t=>{if(this.isPlatformSessionTimeout(t))t._401Subscriber.asObservable().subscribe((t=>{e(t)}),(e=>{i(e)}));else{const e=o.getErrMessage(t,this.getLocale());i({error:e,details:t})}}))}))}cancel(e,t){e._observable&&e._observable.unsubscribe(),t&&t._uploadProgress&&t._uploadProgress.unsubscribe()}setLocale(e){this.localeObject=e}getLocale(){return this.localeObject}getHeader(e,t){return e.headers.get(t)}isPlatformSessionTimeout(e){return 401===e.status&&"Session Not Found"===this.getHeader(e,"x-wm-login-errormessage")}get(e,t){return(t=t||{}).url=e,t.method="get",this.send(t).then((e=>e.body))}post(e,t,i){return(i=i||{}).url=e,i.method="post",i.data=t,this.send(i)}put(e,t,i){return(i=i||{}).url=e,i.method="put",i.data=t,this.send(i)}patch(e,t,i){return(i=i||{}).url=e,i.method="patch",i.data=t,this.send(i)}delete(e,t){return(t=t||{}).url=e,t.method="delete",this.send(t)}head(e,t){return(t=t||{}).url=e,t.method="head",this.send(t)}jsonp(e,t){return(t=t||{}).url=e,t.method="jsonp",this.send(t)}upload(e,t,i){const a=new n.HttpRequest("POST",e,t,{reportProgress:!0});return this.httpClient.request(a)}uploadFile(e,t,i,n){return new Promise(((a,s)=>{i.request=this.upload(e,t,n).subscribe((e=>{if(e.type===c.UploadProgress){const t=Math.round(100*e.loaded/e.total);n.notify(t)}e.type===c.Response&&a(e.body)}),(e=>{s(e)}))}))}registerOnSessionTimeout(e){this.sessionTimeoutObservable.asObservable().subscribe(e)}on401(){this.sessionTimeoutObservable.next(void 0)}pushToSessionFailureQueue(e){this.sessionTimeoutQueue.push({callback:e})}executeSessionFailureRequests(){const e=this.sessionTimeoutQueue,t=this;t.sessionTimeoutQueue=[],e.forEach((e=>{r.isFunction(e.callback)?e.callback():(e.requestInfo.headers.headers.delete("x-wm-xsrf-token"),t.httpClient.request(e.requestInfo).subscribe((t=>{t&&t.type&&e.sub401&&e.sub401.next(t)}),(t=>{e.sub401.error(t)})))}))}static{this.\u0275fac=function(e){return new(e||u)(d.\u0275\u0275inject(p.HttpClient))}}static{this.\u0275prov=d.\u0275\u0275defineInjectable({token:u,factory:u.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassMetadata(u,[{type:t.Injectable}],(()=>[{type:p.HttpClient}]),null);class h{constructor(){this.headers=[]}wmToAngularRequest(e){let t;return t=new n.HttpRequest(e.method,e.url),t=t.clone(),t.body=e.body,t.method=e.method,t.responseType=e.responseType,t.reportProgress=e.reportProgress,t.urlWithParams=e.url,t.withCredentials=e.withCredentials,e.headers.forEach(((e,i)=>{t.headers=t.headers.append(i,e)})),t}angularToWmRequest(e){let t=new h,i=new Map;return t.body=e.body,t.method=e.method,t.responseType=e.responseType,t.reportProgress=e.reportProgress,t.url=e.urlWithParams,t.withCredentials=e.withCredentials,e.headers.keys().forEach((t=>{i.set(t,e.headers.headers.get(t.toLowerCase())[0])})),t.headers=i,t}}class m extends h{constructor(){super()}wmToAngularResponse(e){let t;return t=new n.HttpResponse,t=t.clone(),t.body=e.body,t.error=e.error,t.message=e.message,t.url=e.url,t.ok=e.ok,t.status=e.status,t.statusText=e.statusText,e.headers.forEach(((e,i)=>{t.headers=t.headers.append(i,e)})),t}angularToWmResponse(e){let t,i=new Map;return t=new m,t.body=e.body,t.error=e.error,t.message=e.message,t.url=e.url,t.ok=e.ok,t.status=e.status,t.statusText=e.statusText,e.headers.keys().forEach((t=>{i.set(t,e.headers.headers.get(t.toLowerCase())[0])})),t.headers=i,t}}class g{static forRoot(){return{ngModule:i.CommonModule,providers:[{provide:a.AbstractHttpService,useClass:u}]}}static{this.\u0275fac=function(e){return new(e||g)}}static{this.\u0275mod=d.\u0275\u0275defineNgModule({type:g})}static{this.\u0275inj=d.\u0275\u0275defineInjector({imports:[i.CommonModule,n.HttpClientModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassMetadata(g,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.HttpClientModule],declarations:[]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&d.\u0275\u0275setNgModuleScope(g,{imports:[i.CommonModule,n.HttpClientModule]}),e.HttpServiceImpl=u,e.HttpServiceModule=g,e.WmHttpRequest=h,e.WmHttpResponse=m})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("rxjs"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","rxjs","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.oAuth={}),e.ng.core,e.rxjs,e.wm.core,e._)}(this,(function(e,t,i,n,a){"use strict";function s(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var o=s(t),r=s(n);const l=".access_token",c="pkce",d="implicit";let p,u;const h=e=>{let t,i,n;const s=e.urlParams;if(n={url:"services/oauth2/:providerId/authorizationUrl",method:"GET"},e.config){n.url=(e.config.url||"")+n.url,n.method=e.config.method||n.method,n.headers=n.headers||{};for(const i in e.config.headers)t=e.config.headers[i],n.headers[i]=t}if(s)for(i in s)s.hasOwnProperty(i)&&(t=s[i],a.isUndefined(t)||null===t||(n.url=n.url.replace(new RegExp(":"+i,"g"),t)));return e.params&&(n.params=e.params),a.isUndefined(e.data)||(n.data=e.data),e.dataParams&&(n.data.params=e.dataParams),e.headers&&(n.headers=e.headers),n.byPassResult=e.byPassResult,n.isDirectCall=e.isDirectCall,n.isExtURL=e.isExtURL,n.preventMultiple=e.preventMultiple,n.responseType=e.responseType,n},m={},g={STUDIO:"WM_STUDIO_",RUN:"WM_RUN_"},f="width=400,height=600",v=e=>{const t=b(e);localStorage.removeItem(t)};function b(e){let t;return t=g.RUN+n._WM_APP_PROJECT.id+"_"+e+l,t}function y(e,t){const i=b(e);localStorage.setItem(i,t)}function w(e,t,i,n,a,s){const o=e+l,r=localStorage.getItem(o);if((!n||n.origin===window.location.origin)&&r)if(E(s,c)){const n="client_id="+s.clientId+"&code="+r+"&grant_type=authorization_code&code_verifier="+p+"&redirect_uri="+u;a.send({method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},url:s.accessTokenUrl,data:n}).then((function(n){C(e,t,i,o,n.body.access_token)}))}else C(e,t,i,o,r)}function C(e,t,i,n,a){i(e),localStorage.removeItem(n),y(e,a),window.removeEventListener("message",m[e]),setTimeout((()=>{delete m[e],t&&t(a)}))}function P(e,t,i,n,a,s){!function(){const e="dummy_key";localStorage.setItem(e,e),localStorage.removeItem(e)}();const o=moment.duration(moment().format("HH:mm"),"HH:mm").subtract(n),r=R(e,!0);r?(a.accesstoken_retrieved=!0,y(e,r),localStorage.removeItem(e+l),s(e),t&&t()):o.minutes()>1&&t&&!a.accesstoken_retrieved?t("error"):setTimeout((()=>{P(e,t,i,n,a,s)}),3e3)}function I(e,t,i,n){e&&m[t]&&(e.closed?E(n,c)||(window.removeEventListener("message",m[t]),delete m[t],i&&i("error")):setTimeout(I.bind(void 0,e,t,i,n),3e3))}function A(e,t,i,n,a,s,o,r,l){E(s,d)&&(e=x(t,s,o,null,r,l)),window.open(e,"_blank",f),P(t,i,n,moment.duration(moment().format("HH:mm"),"HH:mm"),{accesstoken_retrieved:!1},a)}function E(e,t){let i=a.get(e,"oauth2Flow");return i=i?i.toLowerCase():i,t===c&&!0===a.get(e,"oAuth2Pkce.enabled")&&(i=c),i===t}function O(e,t,i,n,s,o,r,l,u){if(E(s,d))T(e=x(t,s,o,null,r,l),t,i,n,s,o,r,l,u);else if(E(s,c)){let c;if(p=function(){const e=new Uint32Array(28);return window.crypto.getRandomValues(e),Array.from(e,(e=>("0"+e.toString(16)).substr(-2))).join("")}(),"plain"===a.get(s,"oAuth2Pkce.challengeMethod"))c=p,T(e=x(t,s,o,c,r,l),t,i,n,s,o,r,l,u);else{const a=function(e){const t=(new TextEncoder).encode(e),i=new jsSHA("SHA-256","UINT8ARRAY",{encoding:"UTF8"});return i.update(t),i.getHash("ARRAYBUFFER")}(p);h=a,c=btoa(String.fromCharCode.apply(null,new Uint8Array(h))).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""),T(e=x(t,s,o,c,r,l),t,i,n,s,o,r,l,u)}}else T(e,t,i,n,s,o,r,l,u);var h}function T(e,t,i,a,s,o,r,c,d){let p;n.hasCordova()?(window.open(e,"_system"),window.OAuthInMobile(t).then((e=>{const n=t+l;e?(localStorage.setItem(n,e),w(t,i,a,null,d,s)):i("error")}))):(p=window.open(e,"_blank",f),function(e,t,i,n,a){m[e]=w.bind(void 0,e,t,i,null,n,a),window.addEventListener("message",m[e],!1)}(t,i,a,d,s),I(p,t,i,s))}function x(e,t,i,s,o,r){u=window.location.href.split("/#/")[0]+"/oAuthCallback.html";const p=t.clientId,h=t.scopes.map((function(e){return e.name})).join(" ");let m;!0===n.getWmProjectProperties().isTestRuntime&&(u=location.protocol+"//"+window.location.host+"/studio/oAuthCallback.html"),"MOBILE"===i&&(u=r+"oAuthCallback.html");const g=E(t,d)?d:c;m={providerId:e,suffix:l,requestSourceType:i,flow:g,scheme:o};const f=t.authorizationUrl.split("?");let v;v=1===f.length?"?":f.length>1&&""!==f[1]?"&":"";const b=t.authorizationUrl+v+"client_id="+p+"&redirect_uri="+u+"&state="+encodeURIComponent(JSON.stringify(m))+"&scope="+encodeURIComponent(h);let y;if(g===d){y=b+"&response_type="+(t.responseType?t.responseType:"token")}else y=b+"&response_type=code&code_challenge="+s+"&code_challenge_method="+a.get(t,"oAuth2Pkce.challengeMethod");return y}function D(e,t,i,a,s,o,r,l,p,u,h){const m=E(l,d)||E(l,c)?e:e.body;o({name:t,url:m,invoke:()=>{n.isIE()?A(e,t,i,a,r,l,p,u,h):O(m,t,i,r,l,p,u,h,s)}})}const R=(e,t)=>{const i=b(e);return t?localStorage.getItem(e+l):localStorage.getItem(i)},S=(e,t,i,a,s,o,r,l,p,u)=>{let m="WEB";if(e)n.isIE()?A(e,t,i,a,r):O(e,t,i,r,l,m,s);else{if(n.hasCordova()&&(m="MOBILE"),!E(l,d)&&!E(l,c))return function(e,t){const i=h({target:"oauthConfiguration",action:"getAuthorizationUrl",urlParams:{projectId:n._WM_APP_PROJECT.id,providerId:e.providerId},params:{requestSourceType:e.requestSourceType}});return t.send(i)}({providerId:t,requestSourceType:m},s).then((e=>{D(e,t,i,a,s,o,r,l,m,p,u)}));D(e,t,i,a,s,o,r,l,m,p,u)}};class _{constructor(e){this.httpService=e,this.providers=new i.Subject,this.providersConfig=[]}getOAuthProvidersAsObservable(){return this.providers.asObservable()}addProviderConfig(e){a.find(this.providersConfig,{name:e.name})||this.providersConfig.push(e),this.providers.next(this.providersConfig)}removeProviderConfig(e){a.remove(this.providersConfig,(t=>t.name===e)),this.providers.next(this.providersConfig)}perfromOAuthorization(e,t,i,n,a,s,o){S(e,t,i,n,this.httpService,this.addProviderConfig.bind(this),this.removeProviderConfig.bind(this),a,s,o)}getAccessToken(e,t){return R(e,t)}removeAccessToken(e){v(e)}static{this.\u0275fac=function(e){return new(e||_)(o.\u0275\u0275inject(r.AbstractHttpService))}}static{this.\u0275prov=o.\u0275\u0275defineInjectable({token:_,factory:_.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(_,[{type:t.Injectable}],(()=>[{type:r.AbstractHttpService}]),null);class M{static forRoot(){return{ngModule:M,providers:[_]}}static{this.\u0275fac=function(e){return new(e||M)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:M})}static{this.\u0275inj=o.\u0275\u0275defineInjector({})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(M,[{type:t.NgModule,args:[{}]}],null,null),e.OAuthModule=M,e.OAuthService=_,e.getAccessToken=R,e.parseConfig=h,e.performAuthorization=S,e.removeAccessToken=v})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/router"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/router","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.security={}),e.ng.core,e.ng.common,e.ng.router,e.wm.core,e._)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r=o(t),l=o(i),c=o(n),d=o(a);const p="wm_xsrf_token";class u{constructor(e,t,i,n,a){this.injector=e,this.$http=t,this.routerService=i,this.activatedRoute=n,this._location=a,this.requestQueue={}}isLoaded(){return this.config}get(){return this.config}load(e){return this.loadPromise?this.loadPromise:!e&&this.config?Promise.resolve(this.config):(this.loadPromise=new Promise(((e,t)=>{this.$http.send({url:"./services/security/info",method:"GET"}).then((t=>{this.config=t.body,this.lastLoggedInUser=a.getClonedObject(this.loggedInUser),this.loggedInUser=this.config.userInfo,e(t.body)})).catch((e=>{t(e)})).finally((()=>{this.loadPromise=null}))})),this.loadPromise)}getWebConfig(e,t){this.get()?a.triggerFn(e,this.get()):this.load().then((t=>{a.triggerFn(e,t)}),t)}getConfig(e,t){function i(e,t,i){s.forEach(this.requestQueue[e],(e=>a.triggerFn(e[t],i))),this.requestQueue[e]=null}this.get()?a.triggerFn(e,this.get()):(this.requestQueue.config=this.requestQueue.config||[],this.requestQueue.config.push({success:e,error:t}),this.requestQueue.config.length>1||a.hasCordova()||this.getWebConfig(function(e){e.homePage=a.getWmProjectProperties().homePage,e.userInfo,this.config=e,this.lastLoggedInUser=a.getClonedObject(this.loggedInUser),this.loggedInUser=e.userInfo,i.call(this,"config","success",this.get())}.bind(this),function(e){i.call(this,"config","error",e)}.bind(this)))}getLastLoggedInUsername(){return this.lastLoggedInUser&&this.lastLoggedInUser.userName}getCurrentRoutePage(){const e=this._location.path();let t=e.indexOf("?");return t=-1===t?e.length:t-1,e.substr(1,t)}getCurrentRouteQueryParam(e){let t;return this.activatedRoute.queryParams.subscribe((i=>{t=i[e]})),t}isNoPageLoaded(){return!s.isEmpty(this.getCurrentRoutePage())}getPageByLoggedInUser(){const e=this;return new Promise((t=>{let i;e.getConfig((n=>{n.securityEnabled&&n.authenticated?(i=n.userInfo.landingPage||a.getWmProjectProperties().homePage,e.isXsrfEnabled()):i=a.getWmProjectProperties().homePage,t(i)}),(function(){t(a.getWmProjectProperties().homePage)}))}))}loadPageByUserRole(e){const t=this;return this.getPageByLoggedInUser().then((i=>{(t.isNoPageLoaded()||e)&&(t.getCurrentRoutePage()===i?window.location.reload():t.routerService.navigate([`/${i}`]))}))}navigateOnLogin(){this.loadPageByUserRole(!0)}getRedirectPage(e,t){const i=a.getWmProjectProperties().homePage,n=s.get(e,"loginConfig.pageName");let o,r=t||this.getCurrentRoutePage();return r!==i&&r!==n||(o=this.getCurrentRouteQueryParam("redirectTo"),r=s.isEmpty(o)?void 0:o),r}getRedirectedRouteQueryParams(){let e={};return this.activatedRoute.queryParams.subscribe((t=>{s.forEach(t,((t,i)=>{e[i]=t}))})),e}getQueryString(e){const t=[];return s.forEach(e,(function(e,i){t.push(i+"="+e)})),s.join(t,"&")}appLogin(e,t,i){let n="";return s.each(e,(function(e,t){n+=(n?"&":"")+encodeURIComponent(t)+"="+encodeURIComponent(e)})),this.$http.send({method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},url:"j_spring_security_check",data:n}).then((e=>{const i=e.body?e.body[p]:"";i&&a.hasCordova()&&localStorage.setItem(p,i||""),this.injector.get(a.App).notify("userLoggedIn",{}),a.triggerFn(t,e)}),i)}isAuthenticated(e,t){this.getConfig((function(t){a.triggerFn(e,t.authenticated)}),t)}appLogout(e,t){return this.$http.send({target:"Security",url:"j_spring_security_logout",method:"POST",responseType:"text",byPassResult:!0}).then((t=>{s.set(this.get(),"authenticated",!1),s.set(this.get(),"userInfo",null),this.injector.get(a.App).notify("userLoggedOut",{}),a.triggerFn(e,t)}),t)}getCookieByName(e){return"cookie"}isXsrfEnabled(){return a.hasCordova()?localStorage.getItem(p):this.getCookieByName(p)}onUserLogin(){return new Promise(((e,t)=>{this.getConfig((t=>{if(t.securityEnabled)if(t.authenticated)e();else{const t=this.injector.get(a.App).subscribe("userLoggedIn",(()=>{e(),t()}))}else e()}),t)}))}getLoggedInUser(){return new Promise(((e,t)=>{this.getConfig((i=>{i&&i.userInfo?e(i.userInfo):t()}),t)}))}authInBrowser(){return Promise.reject("This authInBrowser should not be called")}static{this.\u0275fac=function(e){return new(e||u)(r.\u0275\u0275inject(r.Injector),r.\u0275\u0275inject(d.AbstractHttpService),r.\u0275\u0275inject(c.Router),r.\u0275\u0275inject(c.ActivatedRoute),r.\u0275\u0275inject(l.Location))}}static{this.\u0275prov=r.\u0275\u0275defineInjectable({token:u,factory:u.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(u,[{type:t.Injectable}],(()=>[{type:r.Injector},{type:d.AbstractHttpService},{type:c.Router},{type:c.ActivatedRoute},{type:l.Location}]),null);class h{static forRoot(){return{ngModule:h,providers:[u]}}static{this.\u0275fac=function(e){return new(e||h)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:h})}static{this.\u0275inj=r.\u0275\u0275defineInjector({})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(h,[{type:t.NgModule,args:[{}]}],null,null),e.SecurityModule=h,e.SecurityService=u})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/core"),require("@wm/security"),require("@wavemaker/focus-trap"),require("lodash-es"),require("@angular/platform-browser"),require("rxjs"),require("rxjs/operators"),require("tslib"),require("@angular/forms"),require("@swipey")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/core","@wm/security","@wavemaker/focus-trap","lodash-es","@angular/platform-browser","rxjs","rxjs/operators","tslib","@angular/forms","@swipey"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.base={}),e.ng.core,e.ng.common,e.wm.core,e.wm.security,e.focusTrap,e._,e.ng.platformBrowser,e.rxjs,e.rxjs.operators,e.tslib,e.ng.forms,e.swipey)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u){"use strict";function h(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var m=h(t),g=h(i),f=h(n),v=h(r);const b=new t.InjectionToken("WidgetConfig");class y{}class w{}const C=new t.InjectionToken("Context Provider Reference"),P=new Set([n.FormWidgetType.SELECT,n.FormWidgetType.CHECKBOXSET,n.FormWidgetType.RADIOSET,n.FormWidgetType.SWITCH,n.FormWidgetType.AUTOCOMPLETE,n.FormWidgetType.CHIPS,n.FormWidgetType.TYPEAHEAD,n.FormWidgetType.RATING]),I=(e,t)=>{if(t){let i;return t.replace(/\[(\w+)\]/g,".$1").split(".").forEach((t=>{i=i&&i[t]||(o.isNull(e)?e:e[t])})),i}return e},A=(e,t,i)=>{let a;const s=t.field,r=t.expression,l=t.bindExpression;return l?(a=l.replace("bind:",""),n.checkIsCustomPipeExpression(a)&&(a+=": __1"),a=(e=>{let t,i,n,a,s,o,r,l,c,d="";for(e=e.replace(/\$\[data\[\$i\]/g,"$[__1"),n=0;n<e.length;n++)if(t=e[n],i=e[n+1],"$"===t&&"["===i){for(o=1,c=!1,r=!1,a=n+2;a<e.length;a++)if(s=e[a]," "!==s&&(c||(r='"'===e[a]||"'"===e[a],c=!0),"["===s?o++:"]"===s&&o--,!o)){l=e.substring(n+2,a),d+=r?"__1["+l+"]":l;break}n=a}else d+=t;return d})(a)):a=r||s,l||r?n.$parseExpr(a)(i,Object.assign({},e,{__1:e})):o.get(e,s)},E=(e,t)=>{if(!e||!t)return!1;t=-1===t.indexOf("?")?t:t.substring(0,t.indexOf("?")),e=-1===e.indexOf("?")?e:e.substring(0,e.indexOf("?"));return new RegExp("^(#/|#)"+t+"$").test(e)},O=(e,t)=>e.some((e=>!!E(e.link,t)||(e.children?O(e.children,t):void 0))),T=e=>P.has(e),x=(e,t,i)=>(n.isValidWebURL(e)||(e||(e=i||"resources/images/imagelists/default-image.png"),e=t?n.encodeUrl(e):e,n.stringStartsWith(e,"services/prefabs")),e),D=e=>""===e||"none"===e?e:"url("+x(e)+")";function R(e,i,n){return{provide:i,useExisting:t.forwardRef((()=>e)),multi:n}}function S(e){return R(e,y)}const _=(...e)=>e.join("_"),M={number:["number","integer","big_integer","short","float","big_decimal","double","long","byte"],string:["string","text"],character:["character"],date:["date","time","timestamp","datetime"]},N={number:["exact","notequals","lessthan","lessthanequal","greaterthan","greaterthanequal","null","isnotnull"],string:["anywhereignorecase","anywhere","startignorecase","start","endignorecase","end","exactignorecase","exact","notequalsignorecase","notequals","null","isnotnull","empty","isnotempty","nullorempty"],character:["exactignorecase","exact","notequalsignorecase","notequals","null","isnotnull","empty","isnotempty","nullorempty"],date:["exact","lessthan","lessthanequal","greaterthan","greaterthanequal","null","notequals","isnotnull"]},k={boolean:["exact","null","isnotnull"],clob:[],blob:[]},L=e=>{let t=[];return o.isArray(e)?(e.forEach((e=>{t=t.concat(L(e))})),t):o.isObject(e)?(o.forEach(e,((e,i)=>{e&&(t=t.concat(i.split(" ")))})),t):void 0},F=(e,t)=>{let i,n;const a=e.toAdd||e,s=e.toRemove||t;return o.isObject(e)?(i=o.isArray(a)?a:L(a||[]),n=s?o.isArray(s)?s:L(s):[]):(i=a?[a]:[],n=s?[s]:[]),{toAdd:i,toRemove:n}},j=(e,t,i,a)=>{let s,r,l,c,d,p;a||(a={}),o.forEach(e,((e,u)=>{o.includes(u,".")&&(c=o.split(u,"."),r=c[0],l=c[1],p=!0),a.noModifyTitle?s=u:o.isString(u)?(s=n.prettifyLabel(u),s=n.deHyphenate(s),s=i?n.initCaps(i)+" "+s:s):s=u,u=i?i+"."+u:u,p?(d=o.split(s," "),d=d.length>1?d[d.length-2]+" "+d[d.length-1]:d[0]):d=s;const h=a.setBindingField?{displayName:d,field:u,relatedTable:r,relatedField:l||s}:{displayName:d,relatedTable:r,relatedField:l||s};if(!o.isObject(e)||o.isArray(e)&&!e[0]){if(a.upperBound&&a.columnCount===a.upperBound)return;t.terminals.push(h),a.columnCount+=1}else a.columnCount!==a.upperBound&&t.objects.push(h),o.isArray(e)&&e[0]?j(e[0],t,u+"[0]",a):j(e,t,u,a)}))};var B;e.APPLY_STYLES_TYPE=void 0,(B=e.APPLY_STYLES_TYPE||(e.APPLY_STYLES_TYPE={}))[B.CONTAINER=0]="CONTAINER",B[B.SCROLLABLE_CONTAINER=1]="SCROLLABLE_CONTAINER",B[B.INNER_SHELL=2]="INNER_SHELL",B[B.SHELL=3]="SHELL";const V={backgroundattachment:"backgroundAttachment",backgroundcolor:"backgroundColor",backgroundgradient:"backgroundGradient",backgroundimage:"backgroundImage",backgroundposition:"backgroundPosition",backgroundrepeat:"backgroundRepeat",backgroundsize:"backgroundSize",bordercolor:"borderColor",borderradius:"borderRadius",borderstyle:"borderStyle",borderwidth:"borderWidth",borderbottomwidth:"borderBottomWidth",borderleftwidth:"borderLeftWidth",borderrightwidth:"borderRightWidth",bordertopwidth:"borderTopWidth",color:"color",cursor:"cursor",display:"display",fontsize:"fontSize",fontfamily:"fontFamily",fontstyle:"fontStyle",fontunit:"fontunit",fontvariant:"fontVariant",fontweight:"fontWeight",height:"height",horizontalalign:"textAlign",lineheight:"lineHeight",margin:"margin",marginbottom:"marginBottom",marginleft:"marginLeft",marginright:"marginRight",margintop:"marginTop",opacity:"opacity",overflow:"overflow",padding:"padding",paddingbottom:"paddingBottom",paddingleft:"paddingLeft",paddingright:"paddingRight",paddingtop:"paddingTop",picturesource:"backgroundImage",textalign:"textAlign",textdecoration:"textDecoration",verticalalign:"verticalAlign",visibility:"visibility",whitespace:"whiteSpace",width:"width",wordbreak:"wordbreak",zindex:"zIndex"},G=e=>!!V[e],W={height:!0,overflow:!0,padding:!0,paddingbottom:!0,paddingleft:!0,paddingright:!0,paddingtop:!0},U={textalign:!0},q={textalign:!0,width:!0};function z(t,i,a,s){const o=Object.create(null);s&&s.forEach((e=>o[e]=!0)),i.registerStyleChangeListener(((s,r)=>{if(!(o[s]||a===e.APPLY_STYLES_TYPE.SHELL&&W[s])){if(a===e.APPLY_STYLES_TYPE.INNER_SHELL){if(!W[s])return;"height"===s&&n.setCSS(t,"overflow",r?"auto":"")}if(a!==e.APPLY_STYLES_TYPE.CONTAINER||!U[s]){if(a===e.APPLY_STYLES_TYPE.SCROLLABLE_CONTAINER){if(q[s])return;"height"===s&&n.setCSS(t,"overflow",r?"auto":"")}"fontsize"===s||"fontunit"===s?n.setCSS(t,"fontSize",""===i.fontsize?"":i.fontsize+(i.fontunit||"px")):"backgroundimage"===s?n.setCSS(t,"backgroundImage",i.picturesource||D(r)):V[s]&&n.setCSS(t,V[s],r)}}}))}const H="wm-form-field-",Q=(()=>{const e=new Map;for(const t in n.FormWidgetType)e.set(H+n.FormWidgetType[t],new Map);return e})(),Y=e=>Q.get(e),X=(e,t)=>{Q.set(e,t),window.WM_LOADED_COMPONENTS=[...window.WM_LOADED_COMPONENTS||[],e]};var K;e.PROP_TYPE=void 0,(K=e.PROP_TYPE||(e.PROP_TYPE={}))[K.BOOLEAN=1]="BOOLEAN",K[K.NUMBER=2]="NUMBER",K[K.STRING=3]="STRING";const J={type:e.PROP_TYPE.STRING},Z={type:e.PROP_TYPE.NUMBER},ee={type:e.PROP_TYPE.BOOLEAN},te={arrayType:!0},ie=new Map,ne=new n.IDGenerator("widget-id"),ae=new Map([["tap","click"]]),se={BLOCK:"block",INLINE_BLOCK:"inline-block",INLINE:"inline"},oe=new Set(["readonly","autofocus","disabled","startchecked","multiple","selected","required","controls","autoplay","loop","muted","show"]),re=e=>oe.has(e),le=new Set(["width","height","iconheight","iconwidth","popoverwidth","popoverheight","imagewidth","imageheight"]),ce=e=>le.has(e),de=(t,i,a)=>{const s=t.widgetId,r=t[i];n.isChangeFromWatch()||n.$unwatch(_(s,i)),n.resetChangeFromWatch();const l=Y(t.getWidgetSubType()).get(i);if(l){const t=l.type;t&&(a=((t,i,a)=>a===e.PROP_TYPE.BOOLEAN?n.toBoolean(i,re(t)&&t):a===e.PROP_TYPE.NUMBER?+i:i)(i,a,t))}if(a!==r||n.isObject(a)||n.isObject(r)){if(ce(i))a=n.toDimension(a);else if(o.startsWith(a,"resources/")){const e=t;void 0===e._parentPrefab_&&(e._parentPrefab_=t.$element.parent().closest('[prefabname][prefabname!="__self__"]').attr("prefabname")||""),e._parentPrefab_?a=`./app/prefabs/${e._parentPrefab_}/${a}`:l&&a!=l.value&&(a="./"+a)}t[i]=a,G(i)?t.notifyStyleChange(i,a,r):("conditionalclass"===i&&(a=F(a,r)),l&&t.notifyPropertyChange(i,a,r)),n.$appDigest()}},pe={set:(e,t,i)=>(de(e,t,i),!0),get:(e,t)=>{const i=e[t];return o.isFunction(i)?i.bind(e):i}},ue=window.requestAnimationFrame,he=[];class me{static create(e,t,i){if(window.Proxy)return new Proxy(e,pe);{const t=Object.create(e);return n=()=>{for(const t in e)o.isFunction(e[t])&&"constructor"!==t&&"super"!==t&&!o.startsWith(t,"ng")&&(e[t]=e[t].bind(e))},he.length||ue((()=>{he.forEach((e=>e())),he.length=0})),he.push(n),Object.keys(V).forEach((i=>{Object.defineProperty(t,i,{get:()=>e[i],set:t=>de(e,i,t)})})),i&&i.forEach(((i,n)=>{Object.defineProperty(t,n,{get:()=>e[n],set:t=>de(e,n,t)})})),t}var n}}class ge{get $element(){return $(this.nativeElement)}constructor(e,i,a,s){this.inj=e,this.isAttached=!1,this.styleChange=new l.ReplaySubject,this.propertyChange=new l.Subject,this.readyState=new l.Subject,this.destroy=new l.Subject,this.eventHandlers=new Map,this.toBeSetupEventsQueue=[],this.__cloneable__=!1,this.$attrs=new Map,this.isMuted=!1,this.customInjectorMap={};const c=e.get(t.ElementRef);this.nativeElement=c.nativeElement,this.viewParentApp=e?e.get(n.App):t.inject(n.App),this.widgetType=i.widgetType,this.widgetSubType=i.widgetSubType||i.widgetType,this.viewContainerRef=e.get(t.ViewContainerRef);let d=this.inj._lView;this.viewParent=n.findParent(d,this.viewParentApp),this.context=this.inj._lView[8],this.displayType=i.displayType||se.BLOCK,this.widget=this.createProxy(),this.eventManager=e.get(r.EventManager),this.nativeElement.widget=this.widget,this.appLocale=e.get(n.App).appLocale||{},this.initContext(),i.hostClass&&n.addClass(this.nativeElement,i.hostClass),this.widgetId=this.generateWidgetId(),this.trackId=this.generateWidgetId(),n.setAttr(this.nativeElement,"widget-id",this.widgetId,!0),this.registerStyleChangeListener(this.onStyleChange,this),this.registerPropertyChangeListener(this.onPropertyChange,this),s?(this.delayedInit=!0,s.then((()=>{this.initWidget(),this.setInitProps()}))):this.initWidget(),a&&o.extend(this.context,a)}getNativeElement(){return this.nativeElement}getWidgetType(){return this.widgetType}getWidgetSubType(){return this.widgetSubType}getWidget(){return this.widget}setProperty(e,t){this.widget[e]=t}getViewParent(){return this.viewParent}notifyStyleChange(e,t,i){this.styleChange.next({key:e,nv:t,ov:i})}notifyPropertyChange(e,t,i){this.propertyChange.next({key:e,nv:t,ov:i})}registerStyleChangeListener(e,t){t&&(e=e.bind(t)),this.styleChange.subscribe((({key:t,nv:i,ov:n})=>e(t,i,n)))}registerReadyStateListener(e,t){t&&(e=e.bind(t)),this.readyState.isStopped?e():this.readyState.subscribe((()=>e()))}registerPropertyChangeListener(e,t){t&&(e=e.bind(t)),this.propertyChange.subscribe((({key:t,nv:i,ov:n})=>e(t,i,n)))}registerDestroyListener(e,t){t&&(e=e.bind(t)),this.destroy.subscribe((()=>{}),(()=>{}),(()=>e()))}getDisplayType(){return this.displayType}createProxy(){return me.create(this,this.widgetSubType,Y(this.widgetSubType))}initContext(){const e=this.context||{},t=this.inj.get(C,{});if(this.viewParent!==e?this.context=e:this.context={},t){let e={};o.isArray(t)?o.forEach(t,(t=>{Object.assign(e,t)})):e=t,this.context=Object.assign({},e,this.context)}}setWidgetProperty(e,t){this.widget[e]=t}getAttr(e){return this.$attrs.get(e)}getAppInstance(){return this.inj.get(n.App)}generateWidgetId(){return ne.nextUid()}onPropertyChange(e,t,i){if("show"===e)this.nativeElement.hidden=!t;else if("hint"===e)n.isMobileApp()||n.setAttr(this.nativeElement,"title",t);else if("class"===e){n.switchClass(this.nativeElement,t,i);let e=t.match(/(\W|^)(h([0-6]))(?=\s|$)/);e&&(n.setAttr(this.nativeElement,"role","heading"),n.setAttr(this.nativeElement,"aria-level",e[3]))}else if("name"===e||"tabindex"===e)n.setAttr(this.nativeElement,e,t),"name"===e&&t&&((e,t,i,a)=>{n.isDefined(e.Widgets)&&(a&&(e.Widgets[a]=void 0),i&&(e.Widgets[i]=t))})(this.viewParent,this.widget,t,i);else if("conditionalclass"===e)a=t.toAdd,s=t.toRemove,r=this.nativeElement,s&&s.length&&n.removeClass(r,o.join(s," ")),a&&a.length&&n.addClass(r,o.join(a," "));else if("autoplay"===e){const e="wm-audio"===this.widgetType?"audio":"video";this.nativeElement.querySelector(e).load()}else"conditionalstyle"===e?((e,t,i)=>{t&&o.isObject(t)&&Object.keys(t||{}).forEach((function(e){n.setCSS(i,e,"")}));e&&o.isObject(e)&&n.setCSSFromObj(i,e)})(t,i,this.nativeElement):"animation"===e?n.addClass(this.nativeElement,"animated "+t):"disabled"===e&&(!0===t?n.setAttr(this.nativeElement,"disabled","true",!0):n.removeAttr(this.nativeElement,"disabled",!0));var a,s,r}onStyleChange(e,t,i){}registerWidget(e){this.registerDestroyListener(((e,t,i,a)=>{let s=!1;return ie.set(i,e),a&&n.isDefined(t.Widgets)&&(s=!0,t.Widgets[a]=e),()=>{ie.delete(i),s&&(t.Widgets[a]=void 0)}})(this.widget,this.viewParent,this.widgetId,e))}getMappedEventName(e){return ae.get(e)||e}handleEvent(e,t,i,n,a){this.eventManager.addEventListener(e,t,(e=>{if(n.$event=e,"delayed"!==a)return i();setTimeout((()=>i()),150)}))}processEventAttr(e,t,i){const a=n.$parseEvent(t),s=this.context;s.widget=this.widget;const r=a.bind(void 0,this.viewParent,s),l=()=>{let t;n.$invokeWatchers(!0);try{if(s.$event=s.$event||new window.CustomEvent(e),t=r(),!(t instanceof Promise))return t;t.then((e=>e),(e=>e))}catch(e){console.error(e)}};this.eventHandlers.set(this.getMappedEventName(e),{callback:l,locals:s});this[o.camelCase(`on-${e}`)]=l,this.toBeSetupEventsQueue.push((()=>{this.handleEvent(this.nativeElement,this.getMappedEventName(e),l,s,i)}))}processBindAttr(e,t){this.initState.delete(e),this.registerDestroyListener(n.$watch(t,this.viewParent,this.context,(t=>this.widget[e]=t),_(this.widgetId,e),"datasource"===e,this.widgetProps.get(e),(()=>this.isMuted)))}removePropertyBinding(e){n.$unwatch(_(this.widgetId,e))}invokeEventCallback(e,t){const i=this.eventHandlers.get(e);if(i){const e=i.callback,n=i.locals||{};if(e)return e(Object.assign(n,t))}}processAttr(e,t){const{0:i,1:a,2:s,length:o}=e.split(".");"bind"===a?("show"===i&&(this.nativeElement.hidden=!0),this.processBindAttr(i,t)):"event"===a?this.processEventAttr(i,t,s):1===o&&("class"===e?n.removeClass(this.nativeElement,t):"tabindex"!==e&&"name"!==e||n.removeAttr(this.nativeElement,e),this.initState.set(i,t))}getAttributes(){let e=this.inj._tNode.attrs,t=Array.from(this.nativeElement.attributes).map((e=>e.name));return null===e||o.forEach(e,((e,i)=>{if("number"==typeof e)return!1;if("string"==typeof e&&i%2==0){let i=e.toLowerCase();if(t.includes(i)){let n=t.indexOf(i);t[n]=e}}})),t.sort()}processAttrs(){o.map(this.getAttributes(),(e=>{let t=this.nativeElement.attributes[e].value;this.$attrs.set(e,t),this.processAttr(e,t)}))}initWidget(){this.initState=new Map;const e=Y(this.widgetSubType);e.forEach(((e,t)=>{n.isDefined(e.value)&&this.initState.set(t,e.value)})),this.widgetProps=e,this.processAttrs(),this.registerWidget(this.initState.get("name"))}setInitProps(){this.initState.get("name")&&(this.widget.name=this.initState.get("name")),this.initState.forEach(((e,t)=>{(this.widgetProps.get(t)||G(t))&&"name"!==t&&(this.widget[t]=e)})),this.initState.clear(),this.initState=void 0,this.readyState.next(null),this.readyState.complete()}hasEventCallback(e){return this.eventHandlers.has(e)}focus(){let e=this.$element[0].querySelector("[focus-target]");e||(e=this.$element[0]),e.focus()}execute(e,t){}mute(){this.isMuted=!0}unmute(){this.isMuted=!1}createCustomInjector(e,i){if(this.customInjectorMap[e])return this.customInjectorMap[e].injector;const n=t.Injector.create({providers:[{provide:"EXPLICIT_CONTEXT",useFactory:()=>i}]});return this.customInjectorMap[e]={context:i,injector:n},n}ngOnAttach(){this.isAttached=!0}ngOnDetach(){this.isAttached=!1}ngOnInit(){this.delayedInit||this.setInitProps()}ngAfterViewInit(){if(this.toBeSetupEventsQueue.length)for(const e of this.toBeSetupEventsQueue)e();this.toBeSetupEventsQueue.length=0,this.isAttached=!0}ngAfterContentInit(){}ngOnDestroy(){this.isDestroyed=!0,this.widget=Object.create(null),this.styleChange.complete(),this.propertyChange.complete(),this.destroy.complete(),this.isAttached=!1}static{this.\u0275fac=function(e){return new(e||ge)(m.\u0275\u0275inject(m.Injector),m.\u0275\u0275inject(b),m.\u0275\u0275inject("EXPLICIT_CONTEXT",8),m.\u0275\u0275inject(Promise))}}static{this.\u0275prov=m.\u0275\u0275defineInjectable({token:ge,factory:ge.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(ge,[{type:t.Injectable}],(()=>[{type:m.Injector},{type:void 0,decorators:[{type:t.Inject,args:[b]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]},{type:Promise}]),null);class fe extends ge{static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=m.\u0275\u0275getInheritedFactory(fe)))(t||fe)}})()}static{this.\u0275prov=m.\u0275\u0275defineInjectable({token:fe,factory:fe.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(fe,[{type:t.Injectable}],null,null);class ve{constructor(e){this.redraw=()=>{const t=e.$element.closest("[wmtabpane]"),i=e.$element.closest("[wmaccordionpane]").find(".panel-heading");if(!(t.length&&!t.hasClass("active")||i.length&&!i.hasClass("active")))return e.redraw&&e.redraw()}}static{this.\u0275fac=function(e){return new(e||ve)(m.\u0275\u0275directiveInject(y,2))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:ve,selectors:[["","redrawable",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(ve,[{type:t.Directive,args:[{selector:"[redrawable]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[y]}]}]),null);class be extends fe{constructor(e,t,i){super(e,t,i)}updateRedrawableComponents(e){o.pickBy(e,(e=>{e&&e.nativeElement&&e.nativeElement.hasAttribute("redrawable")&&!o.includes(this.reDrawableComponents._results,e)&&this.reDrawableComponents._results.push(e),e&&e.Widgets&&this.updateRedrawableComponents(e.Widgets)}))}redrawChildren(){this.content&&this.Widgets&&this.updateRedrawableComponents(this.Widgets),setTimeout((()=>{this.reDrawableComponents&&this.reDrawableComponents.forEach((e=>e.redraw()))}),100)}onPropertyChange(e,t,i){super.onPropertyChange(e,t,i),"show"===e&&t&&this.redrawChildren()}static{this.\u0275fac=function(e){m.\u0275\u0275invalidFactory()}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:be,contentQueries:function(e,t,i){if(1&e&&m.\u0275\u0275contentQuery(i,ve,5),2&e){let e;m.\u0275\u0275queryRefresh(e=m.\u0275\u0275loadQuery())&&(t.reDrawableComponents=e)}},features:[m.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(be,[{type:t.Directive}],(()=>[{type:m.Injector},{type:void 0},{type:void 0}]),{reDrawableComponents:[{type:t.ContentChildren,args:[ve,{descendants:!0}]}]});const ye="app-container",we={widgetType:"wm-container",hostClass:ye};class Ce extends be{static{this.initializeProps=void X("wm-container",new Map([["animation",J],["class",J],["conditionalclass",te],["conditionalstyle",te],["content",J],["name",J],["show",{value:!0,...ee}]]))}constructor(t,i){super(t,we,i),n.addClass(this.nativeElement,ye),z(this.nativeElement,this,e.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||Ce)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Ce,selectors:[["","wmContainer",""]],features:[m.\u0275\u0275ProvidersFeature([S(Ce)]),m.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ce,[{type:t.Directive,args:[{selector:"[wmContainer]",providers:[S(Ce)]}]}],(()=>[{type:m.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);class Pe{transform(e,t,i){return n.transformFileURI(x(e,t,i))}static{this.\u0275fac=function(e){return new(e||Pe)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"image",type:Pe,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Pe,[{type:t.Pipe,args:[{name:"image"}]}],null,null);const Ie={widgetType:"wm-item-template"};class Ae extends fe{static{this.initializeProps=void X("wm-item-template",new Map([["content",J]]))}get $index(){return this.context.index}set wmItemTemplate(e){this.widget.content=e}constructor(e,t,i,n){super(e,Ie,n),this.app=i,this.nativeElement=t.nativeElement,this.context=this.inj._lView[8]}ngOnInit(){super.ngOnInit(),this.partialParams.item=this.userComponentParams.dataObject}static{this.\u0275fac=function(e){return new(e||Ae)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject(m.ElementRef),m.\u0275\u0275directiveInject(f.App),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Ae,selectors:[["","wmItemTemplate",""]],inputs:{userComponentParams:"userComponentParams",wmItemTemplate:"wmItemTemplate"},exportAs:["itemTemplateRef"],features:[m.\u0275\u0275ProvidersFeature([S(Ae)]),m.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ae,[{type:t.Directive,args:[{selector:"[wmItemTemplate]",exportAs:"itemTemplateRef",providers:[S(Ae)]}]}],(()=>[{type:m.Injector},{type:m.ElementRef},{type:f.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{userComponentParams:[{type:t.Input}],wmItemTemplate:[{type:t.Input}]});const Ee={widgetType:"wm-repeat-template",hostClass:"app-repeat-item"};class Oe extends fe{static{this.initializeProps=void X("wm-repeat-template",new Map([["show",ee]]))}constructor(e,t){super(e,Ee,t),z(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||Oe)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Oe,selectors:[["","wmRepeatTemplate",""]],exportAs:["repeatItemRef"],features:[m.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Oe,[{type:t.Directive,args:[{selector:"[wmRepeatTemplate]",exportAs:"repeatItemRef"}]}],(()=>[{type:m.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);class Te{constructor(e,i,a,s={}){this.templateRef=i,this.viewContainer=a,this.context={};let r=e?e.get(n.App):t.inject(n.App),l=e._lView;this.viewParent=n.findParent(l,r),o.extend(this.context,e._lView[8],s)}set lazyLoad(e){this.unSubscribeFn=n.$watch(e,this.viewParent,this.context,(e=>{!this.embeddedView&&e&&(this.embeddedView=this.viewContainer.createEmbeddedView(this.templateRef,this.context),this.unSubscribeFn())}))}ngOnDestroy(){this.unSubscribeFn()}static{this.\u0275fac=function(e){return new(e||Te)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject(m.TemplateRef),m.\u0275\u0275directiveInject(m.ViewContainerRef),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Te,selectors:[["","lazyLoad",""]],inputs:{lazyLoad:"lazyLoad"}})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Te,[{type:t.Directive,args:[{selector:"[lazyLoad]"}]}],(()=>[{type:m.Injector},{type:m.TemplateRef},{type:m.ViewContainerRef},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{lazyLoad:[{type:t.Input}]});const xe=["wmMessage",""],De={widgetType:"wm-message",hostClass:"alert app-message"};class Re extends fe{static{this.initializeProps=void X("wm-message",new Map([["animation",J],["caption",{value:"Message",...J}],["class",J],["hideclose",{value:!1,...ee}],["name",J],["show",{value:!0,...ee}],["type",{value:"success",...J}]]))}constructor(e,t){super(e,De,t),this.messageClass="",this.messageIconClass="",this.type="",z(this.nativeElement,this)}showMessage(e,t){e&&(this.caption=e),t&&this.setWidgetProperty("type",t),this.setWidgetProperty("show",!0)}hideMessage(){this.setWidgetProperty("show",!1)}dismiss(e){this.hideMessage(),this.invokeEventCallback("close",{$event:e})}onMessageTypeChange(e){let t,i;switch(e){case"success":t="alert-success",i="wm-sl-l sl-check";break;case"error":t="alert-danger",i="wi wi-cancel";break;case"warn":case"warning":t="alert-warning",i="wm-sl-l sl-alarm-bell";break;case"info":t="alert-info",i="wi wi-info";break;case"loading":t="alert-info alert-loading",i="fa fa-spinner fa-spin"}n.switchClass(this.nativeElement,t,this.messageClass),this.messageClass=t,this.messageIconClass=i}onPropertyChange(e,t,i){"type"===e?this.onMessageTypeChange(t):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||Re)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=m.\u0275\u0275defineComponent({type:Re,selectors:[["","wmMessage",""]],exportAs:["wmMessage"],features:[m.\u0275\u0275ProvidersFeature([S(Re)]),m.\u0275\u0275InheritDefinitionFeature],attrs:xe,decls:5,vars:7,consts:[["aria-hidden","true",3,"title"],[3,"innerHtml"],["title","Close","type","button","aria-label","Close",1,"btn-transparent","close",3,"click","hidden"],["aria-hidden","true"]],template:function(e,t){1&e&&(m.\u0275\u0275element(0,"i",0)(1,"span",1),m.\u0275\u0275elementStart(2,"button",2),m.\u0275\u0275listener("click",(function(e){return t.dismiss(e)})),m.\u0275\u0275elementStart(3,"span",3),m.\u0275\u0275text(4,"\xd7"),m.\u0275\u0275elementEnd()()),2&e&&(m.\u0275\u0275classMapInterpolate2("icon ",t.type," ",t.messageIconClass,""),m.\u0275\u0275property("title",t.type+"Alert"),m.\u0275\u0275advance(),m.\u0275\u0275property("innerHtml",t.caption,m.\u0275\u0275sanitizeHtml),m.\u0275\u0275advance(),m.\u0275\u0275property("hidden",t.hideclose))},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Re,[{type:t.Component,args:[{selector:"[wmMessage]",providers:[S(Re)],exportAs:"wmMessage",template:'<i aria-hidden="true" [title]="type + \'Alert\'" class="icon {{type}} {{messageIconClass}}"></i>\n<span [innerHtml]="caption"></span>\n<button title="Close" type="button" class="btn-transparent close" [hidden]="hideclose" (click)="dismiss($event)" aria-label="Close">\n <span aria-hidden="true">&times;</span>\n</button>\n'}]}],(()=>[{type:m.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassDebugInfo(Re,{className:"MessageComponent",filePath:"widgets/common/message/message.component.ts",lineNumber:22});const Se={widgetType:"wm-partial",hostClass:"app-partial clearfix"};class _e extends fe{static{this.initializeProps=void X("wm-partial",new Map([["name",J]]))}constructor(e,t,i){super(e,Se,i),this.viewport=t,this.registerDestroyListener(this.viewport.subscribe("resize",(e=>this.callback("resize",e)))),this.registerDestroyListener(this.viewport.subscribe("orientationchange",(e=>this.callback("orientationchange",e))))}callback(e,t){t=o.assign({widget:this},t),this.invokeEventCallback(e,t)}ngOnAttach(){this.callback("attach")}ngOnDetach(){this.callback("detach")}ngOnDestroy(){this.callback("destroy"),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||_e)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject(f.Viewport),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:_e,selectors:[["","wmPartial",""]],features:[m.\u0275\u0275ProvidersFeature([S(_e)]),m.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(_e,[{type:t.Directive,args:[{selector:"[wmPartial]",providers:[S(_e)]}]}],(()=>[{type:m.Injector},{type:f.Viewport},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);class Me{constructor(e){this.widgetRef=e,this.widgetRef.partialParams={},this.widgetRef.pageParams=this.widgetRef.partialParams,this.widgetRef.params$=new l.Subject}registerParams(e,t,i,a){this.widgetRef.partialParams[e]=t,!t&&i?this.widgetRef.registerDestroyListener(n.$watch(i,this.widgetRef.getViewParent(),o.get(this.widgetRef,"context"),(t=>{this.widgetRef.partialParams[e]=t,this.widgetRef.params$.next()}))):this.widgetRef.params$.next()}static{this.\u0275fac=function(e){return new(e||Me)(m.\u0275\u0275directiveInject(y,2))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Me,selectors:[["","partialContainer",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Me,[{type:t.Directive,args:[{selector:"[partialContainer]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[y]}]}]),null);class Ne{constructor(e,t,i){this.bindValue=e,this.type=t,this.partialParamsProvider=i}ngOnInit(){this.partialParamsProvider.registerParams(this.name,this.value,this.bindValue,this.type)}static{this.\u0275fac=function(e){return new(e||Ne)(m.\u0275\u0275injectAttribute("value.bind"),m.\u0275\u0275injectAttribute("type"),m.\u0275\u0275directiveInject(Me))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Ne,selectors:[["","wmParam",""]],inputs:{name:"name",value:"value"}})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ne,[{type:t.Directive,args:[{selector:"[wmParam]"}]}],(()=>[{type:void 0,decorators:[{type:t.Attribute,args:["value.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["type"]}]},{type:Me}]),{name:[{type:t.Input}],value:[{type:t.Input}]});class ke{get name(){return this.componentInstance.name}async _renderPartial(e){this.vcRef.clear(),n.$invokeWatchers(!0);const t=$(this.elRef.nativeElement).closest(".app-prefab");let i;t.length?i=t.attr("prefabname"):this.componentInstance.viewParent&&(i=this.componentInstance.viewParent.prefabName);const a=await this.partialRefProvider.getComponentFactoryRef(e,n.ComponentType.PARTIAL,{prefab:i});if(a){const e=this.vcRef.createComponent(a,0,this.inj);e&&e.instance&&i&&(e.instance.prefabName=i),this.$target||(this.$target=this.elRef.nativeElement.querySelector("[partial-container-target]")||this.elRef.nativeElement),this.$target.innerHTML="",this.$target.appendChild(e.location.nativeElement),this.contentInitialized=!0,setTimeout((()=>this.onLoadSuccess()),200)}}onLoadSuccess(){this.componentInstance.invokeEventCallback("load"),this.app.notify("partialLoaded")}constructor(e,t,i,a,s,r,l,d){this.componentInstance=e,this.vcRef=t,this.elRef=i,this.inj=a,this.app=s,this.resolver=l,this.partialRefProvider=d,this.contentInitialized=!1,this.renderPartial=o.debounce(this._renderPartial,200),e.registerPropertyChangeListener(((t,i,a)=>{"content"===t&&(e.$lazyLoad?e.$lazyLoad=()=>{this.renderPartial(i),e.$lazyLoad=n.noop}:this.renderPartial(i))}));const p=e.params$.pipe(c.filter((()=>this.contentInitialized)),c.debounceTime(200)).subscribe((()=>this.renderPartial(e.content)));e.registerDestroyListener((()=>p.unsubscribe()))}static{this.\u0275fac=function(e){return new(e||ke)(m.\u0275\u0275directiveInject(y,2),m.\u0275\u0275directiveInject(m.ViewContainerRef),m.\u0275\u0275directiveInject(m.ElementRef),m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject(f.App),m.\u0275\u0275injectAttribute("content"),m.\u0275\u0275directiveInject(m.ComponentFactoryResolver),m.\u0275\u0275directiveInject(f.PartialRefProvider))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:ke,selectors:[["","partialContainer",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(ke,[{type:t.Directive,args:[{selector:"[partialContainer]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[y]}]},{type:m.ViewContainerRef},{type:m.ElementRef},{type:m.Injector},{type:f.App},{type:void 0,decorators:[{type:t.Attribute,args:["content"]}]},{type:m.ComponentFactoryResolver},{type:f.PartialRefProvider}]),null);class Le{constructor(e,t,i,n){this.viewContainerRef=e,this.templateRef=i,this.context={},o.extend(this.context,t._lView[8],n),window.addEventListener("resize",this.onResize.bind(this))}set wmShowInDevice(e){this.devices=e.split(","),this.onResize()}onResize(e){const t=getComputedStyle(document.documentElement).getPropertyValue("--screen-lg")||"1200px",i=getComputedStyle(document.documentElement).getPropertyValue("--screen-md")||"992px",a=getComputedStyle(document.documentElement).getPropertyValue("--screen-sm")||"768px",s=getComputedStyle(document.documentElement).getPropertyValue("--screen-lg-tab-landscape")||"1366px",o=getComputedStyle(document.documentElement).getPropertyValue("--screen-lg-tab-portrait")||"1024px",r=parseFloat(t)-1+"px",l=parseFloat(i)-1+"px",c=parseFloat(a)-1+"px";this.devices.indexOf("lg")>-1&&window.matchMedia("(min-width: "+t+")").matches&&!n.isLargeTabletLandscape(s,o)||this.devices.indexOf("md")>-1&&(n.isLargeTabletLandscape(s,o)||window.matchMedia("(min-width: "+i+") and (max-width: "+r+")").matches&&!n.isLargeTabletPortrait(s,o))||this.devices.indexOf("sm")>-1&&(window.matchMedia("(min-width: "+a+") and (max-width: "+l+")").matches||n.isLargeTabletPortrait(s,o))||this.devices.indexOf("xs")>-1&&window.matchMedia("(max-width: "+c+")").matches||this.devices.indexOf("all")>-1?this.embeddedView||(this.embeddedView=this.viewContainerRef.createEmbeddedView(this.templateRef,this.context)):(this.viewContainerRef.clear(),this.embeddedView="")}ngOnDestroy(){window.removeEventListener("resize",this.onResize)}static{this.\u0275fac=function(e){return new(e||Le)(m.\u0275\u0275directiveInject(m.ViewContainerRef),m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject(m.TemplateRef),m.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Le,selectors:[["","wmShowInDevice",""]],inputs:{wmShowInDevice:"wmShowInDevice"}})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Le,[{type:t.Directive,args:[{selector:"[wmShowInDevice]"}]}],(()=>[{type:m.ViewContainerRef},{type:m.Injector},{type:m.TemplateRef},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{wmShowInDevice:[{type:t.Input}]});class Fe{constructor(e,t,i){this._isEnabled=!1,this._lastScrollY=-1,this._waitRefreshTill=-1,this.pendingIscrolls=[],this._$el=$(t.nativeElement),this.app=i}ngOnInit(){this.cancelSubscription=this.app.subscribe("no-iscroll",(e=>{this.pendingIscrolls.push(e)}))}ngDoCheck(){this._isEnabled?this._smoothScrollInstance?this.refreshIScroll():this._smoothScrollInstance=this.applySmoothScroll():this._smoothScrollInstance&&this._smoothScrollInstance.destroy&&this._smoothScrollInstance.destroy()}ngOnDestroy(){this._smoothScrollInstance&&this._smoothScrollInstance.destroy&&this._smoothScrollInstance.destroy(),this.cancelSubscription&&this.cancelSubscription()}set wmSmoothscroll(e){this._isEnabled=!0===e||"true"===e,this._isEnabled?this._smoothScrollInstance||(this._smoothScrollInstance=this.applySmoothScroll()):this.ngOnDestroy()}applySmoothScroll(e,t){if(!n.isMobileApp()||n.isKitkatDevice())return null;const i={scrollbars:!0,preventDefault:!1,momentum:!0,bounce:!1,mouseWheel:!0,disablePointer:!0,disableTouch:!1,disableMouse:!1},a=this._$el[0];if(!a.children.length)return null;this._$el.addClass("smoothscroll-wrapper"),a.onscroll=function(e){e.target.iscroll&&e.target.scrollTop&&(e.target.iscroll.scrollTo(e.target.iscroll.x,e.target.iscroll.y-e.target.scrollTop),e.target.scrollTop=0)},t&&"INPUT"===t.tagName&&t.focus(),e&&(i.fadeScrollbars=!0);let s=new IScroll(a,i);if(e){o.forEach(e,((e,t)=>{o.forEach(e,(e=>{s.on(t,e)}))}));const t=this;s.on("scrollStart",(function(){this._scrolling=!0,n.isMobileApp()&&t.app.notify("iscroll-start",{})})),s.on("scrollEnd",(function(){this._scrolling=!1})),s.refresh()}return this.app.notify("iscroll-start",{}),s.indicatorRefresh=()=>{const e=this._$el[0].iscroll.indicators;let t;if(e.length)for(t=0;t<e.length;t++)e[t].refresh()},this._$el[0].iscroll=s,o.forEach(this.pendingIscrolls,((e,t)=>{if(e.isSameNode(this._$el[0]))return this.app.notify("iscroll-update",{el:e}),void this.pendingIscrolls.splice(t,1)})),this.app.notify("iscroll-update",{}),{iScroll:s,destroy:function(){s.destroy(),$(s.scroller).css({"transition-timing-function":"","transition-duration":"",transform:""}),s=null,delete a.iscroll}}}refreshIScroll(){const e=this._smoothScrollInstance.iScroll;if(!(e._scrolling||this._waitRefreshTill>Date.now())){if(e.wrapper&&!o.includes(e.wrapper.children[0].classList,"smoothscroll-container")&&e.wrapper.scrollHeight>e.wrapper.clientHeight){const t=e._events,i=document.activeElement;$(e.wrapper.children).wrapAll('<div class="smoothscroll-container"></div>'),this._smoothScrollInstance.destroy(),this._smoothScrollInstance=this.applySmoothScroll(t,i)}this._lastScrollY!==this._$el[0].iscroll.maxScrollY?(je(this._smoothScrollInstance.iScroll),this._lastScrollY=this._$el[0].iscroll.maxScrollY):this._smoothScrollInstance.iScroll.refresh(),this._waitRefreshTill=Date.now()+500}}static{this.\u0275fac=function(e){return new(e||Fe)(m.\u0275\u0275directiveInject(m.Injector),m.\u0275\u0275directiveInject(m.ElementRef),m.\u0275\u0275directiveInject(f.App))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:Fe,selectors:[["","wmSmoothscroll",""]],inputs:{wmSmoothscroll:"wmSmoothscroll"}})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Fe,[{type:t.Directive,args:[{selector:"[wmSmoothscroll]"}]}],(()=>[{type:m.Injector},{type:m.ElementRef},{type:f.App}]),{wmSmoothscroll:[{type:t.Input}]});const je=function(e){const t=!e&&$(".smoothscroll-container");e&&e.wrapper&&e.wrapper.contains(document.activeElement)&&"INPUT"===document.activeElement.tagName&&$(document.activeElement).offset().top+document.activeElement.clientHeight>.9*window.innerHeight&&document.activeElement.scrollIntoView({behavior:"auto",block:"end",inline:"end"}),e?(e.indicatorRefresh&&e.indicatorRefresh(),e.refresh&&e.refresh()):t.length&&t.parent().each(((e,t)=>{t.iscroll.indicatorRefresh(),t.iscroll.refresh()}))};window.addEventListener("resize",n.debounce(je,200));class $e{set textContent(e){let t=e;null==e&&(t=""),this.elRef.nativeElement.textContent=t}constructor(e){this.elRef=e}static{this.\u0275fac=function(e){return new(e||$e)(m.\u0275\u0275directiveInject(m.ElementRef))}}static{this.\u0275dir=m.\u0275\u0275defineDirective({type:$e,selectors:[["","textContent",""]],inputs:{textContent:"textContent"}})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata($e,[{type:t.Directive,args:[{selector:"[textContent]"}]}],(()=>[{type:m.ElementRef}]),{textContent:[{type:t.Input}]});class Be{constructor(e,t){this.pipeName=e,this.customPipeManager=t,this.pipeRef=this.customPipeManager?this.customPipeManager.getCustomPipe(e):null,this.isCustomPipe=this.pipeRef&&o.isFunction(this.pipeRef.formatter)}customFormatter(e,t){try{return this.pipeRef.formatter(...t)}catch(t){return e}}}const Ve=e=>{let t;return o.isDate(e)||isNaN(e)||(e=parseInt(e,10)),t=moment(e).valueOf()||moment((new Date).toDateString()+" "+e).valueOf(),t};class Ge{transform(e,t,i,n,a,s,o,r){i=a&&!o?`1.${s.length}-16`:i;const l=r?r.number:void 0;return this.decimalPipe.transform(e,i,n||l||t)}constructor(e){this.decimalPipe=e}static{this.\u0275fac=function(e){return new(e||Ge)(m.\u0275\u0275directiveInject(g.DecimalPipe,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"trailingZeroDecimalPipe",type:Ge,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ge,[{type:t.Pipe,args:[{name:"trailingZeroDecimalPipe"}]}],(()=>[{type:g.DecimalPipe}]),null);class We extends Be{returnFn(e,t){return this.isCustomPipe?(t&&(t[0]=e),this.customFormatter(e,t)):e}transform(e,t,i,a){let s;if("null"===e||""===e)return this.returnFn("",arguments);if(!n.isDefined(e))return this.returnFn("",arguments);if(s=Ve(e),s){if("timestamp"===t)return this.returnFn(s,arguments);if("UTC"===t)return this.returnFn(new Date(s).toISOString(),arguments);let o;const r=this.i18nService?this.i18nService.getTimezone(a):i;return o=r&&(e===s||n.hasOffsetStr(e))?moment(s).tz(r).format(t.replaceAll("y","Y").replaceAll("d","D").replace("a","A")):this.datePipe.transform(s,t),this.returnFn(o,arguments)}return this.returnFn("",arguments)}constructor(e,t,i){super("toDate",i),this.datePipe=e,this.i18nService=t,this.customPipeManager=i}static{this.\u0275fac=function(e){return new(e||We)(m.\u0275\u0275directiveInject(g.DatePipe,16),m.\u0275\u0275directiveInject(f.AbstractI18nService,16),m.\u0275\u0275directiveInject(f.CustomPipeManager,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"toDate",type:We,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(We,[{type:t.Pipe,args:[{name:"toDate"}]}],(()=>[{type:g.DatePipe},{type:f.AbstractI18nService},{type:f.CustomPipeManager}]),null);class Ue{transform(e,t){if(t&&!String(t).match(/^(\d+)?\.((\d+)(-(\d+))?)?$/)&&(t="1."+t+"-"+t),!isNaN(+e)){const i=this.i18nService&&this.i18nService.getwidgetLocale()?this.i18nService.getwidgetLocale():void 0,n=i?i.number:null;return this.decimalPipe.transform(e,t,n)}}constructor(e,t){this.decimalPipe=e,this.i18nService=t}static{this.\u0275fac=function(e){return new(e||Ue)(m.\u0275\u0275directiveInject(g.DecimalPipe,16),m.\u0275\u0275directiveInject(n.AbstractI18nService,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"toNumber",type:Ue,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ue,[{type:t.Pipe,args:[{name:"toNumber"}]}],(()=>[{type:g.DecimalPipe},{type:f.AbstractI18nService,decorators:[{type:t.Inject,args:[n.AbstractI18nService]}]}]),null);class qe{transform(e,t,i){const a=(n.CURRENCY_INFO[t]||{}).symbol||t||"";let s=new Ue(this.decimalPipe,this.i18nService).transform(e,i);const r=o.startsWith(s,"-");return r&&(s=s.replace("-","")),s?r?"-"+a+s:a+s:""}constructor(e,t){this.decimalPipe=e,this.i18nService=t}static{this.\u0275fac=function(e){return new(e||qe)(m.\u0275\u0275directiveInject(g.DecimalPipe,16),m.\u0275\u0275directiveInject(n.AbstractI18nService,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"toCurrency",type:qe,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(qe,[{type:t.Pipe,args:[{name:"toCurrency"}]}],(()=>[{type:g.DecimalPipe},{type:f.AbstractI18nService,decorators:[{type:t.Inject,args:[n.AbstractI18nService]}]}]),null);class ze{transform(e,t){return o.isUndefined(e)||null===e||""===e?e:(t||"")+e}static{this.\u0275fac=function(e){return new(e||ze)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"prefix",type:ze,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(ze,[{type:t.Pipe,args:[{name:"prefix"}]}],null,null);class He{transform(e,t){return o.isUndefined(e)||null===e||""===e?e:e+(t||"")}static{this.\u0275fac=function(e){return new(e||He)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"suffix",type:He,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(He,[{type:t.Pipe,args:[{name:"suffix"}]}],null,null);class Qe{constructor(e){this.custmeUserPipe=e}transform(e,t){let i=[];for(let e=2;e<arguments.length;e++)i.push(arguments[e]);let n=this.custmeUserPipe.getCustomPipe(t);if(!n||!o.isFunction(n.formatter))return console.warn("formatter is not defined, please check the custom pipes documentation"),e;try{return n.formatter(e,...i)}catch(i){return console.error("Pipe name: "+t,i),e}}static{this.\u0275fac=function(e){return new(e||Qe)(m.\u0275\u0275directiveInject(f.CustomPipeManager,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"custom",type:Qe,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Qe,[{type:t.Pipe,args:[{name:"custom"}]}],(()=>[{type:f.CustomPipeManager}]),null);class Ye{transform(e){let t;if(n.isDefined(e))return t=Ve(e),t?moment(t).fromNow():void 0}static{this.\u0275fac=function(e){return new(e||Ye)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"timeFromNow",type:Ye,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ye,[{type:t.Pipe,args:[{name:"timeFromNow"}]}],null,null);class Xe extends Ue{static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=m.\u0275\u0275getInheritedFactory(Xe)))(t||Xe)}})()}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"numberToString",type:Xe,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Xe,[{type:t.Pipe,args:[{name:"numberToString"}]}],null,null);class Ke{transform(e){return Number(e)||void 0}static{this.\u0275fac=function(e){return new(e||Ke)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"stringToNumber",type:Ke,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ke,[{type:t.Pipe,args:[{name:"stringToNumber"}]}],null,null);class Je{transform(e,t,i){return e?o.isObject(t)?o.filter(e,t):o.filter(e,(e=>o.includes(e[t],i))):[]}static{this.\u0275fac=function(e){return new(e||Je)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"filter",type:Je,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Je,[{type:t.Pipe,args:[{name:"filter"}]}],null,null);class Ze{transform(e,t){let i=0;for(;e>=1024;)e/=1024,i++;return e.toFixed(+t)+" "+["bytes","KB","MB","GB","TB","PB"][i]}static{this.\u0275fac=function(e){return new(e||Ze)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"filesize",type:Ze,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(Ze,[{type:t.Pipe,args:[{name:"filesize"}]}],null,null);class et{transform(e){return"fa "+({zip:"fa-file-zip-o",pdf:"fa-file-pdf-o",rar:"fa-file-archive-o",txt:"fa-file-text-o",ppt:"fa-file-powerpoint-o",pot:"fa-file-powerpoint-o",pps:"fa-file-powerpoint-o",pptx:"fa-file-powerpoint-o",potx:"fa-file-powerpoint-o",ppsx:"fa-file-powerpoint-o",mpg:"fa-file-movie-o",mp4:"fa-file-movie-o",mov:"fa-file-movie-o",avi:"fa-file-movie-o",mp3:"fa-file-audio-o",docx:"fa-file-word-o",js:"fa-file-code-o",md:"fa-file-code-o",html:"fa-file-code-o",css:"fa-file-code-o",xlsx:"fa-file-excel-o",png:"fa-file-image-o",jpg:"fa-file-image-o",jpeg:"fa-file-image-o",file:"fa-file-o",default:"fa-file-o"}[e]||"fa-file-o")}static{this.\u0275fac=function(e){return new(e||et)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"fileIconClass",type:et,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(et,[{type:t.Pipe,args:[{name:"fileIconClass"}]}],null,null);class tt{transform(e){return{success:"wi wi-done text-success",error:"wi wi-error text-danger"}[e.toLowerCase()]}static{this.\u0275fac=function(e){return new(e||tt)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"stateClass",type:tt,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(tt,[{type:t.Pipe,args:[{name:"stateClass"}]}],null,null);class it{transform(e){return{"audio/aac":".aac","application/x-abiword":".abw","application/vnd.android.package-archive":".apk","video/x-msvideo":".avi","application/vnd.amazon.ebook":".azw","application/octet-stream":".bin","image/bmp":".bmp","application/x-bzip":".bz","application/x-bzip2":".bz2","application/x-csh":".csh","text/css":".css","text/csv":".csv","application/msword":".doc","application/vnd.openxmlformats-officedocument.wordprocessingml.document":".docx","application/vnd.ms-fontobject":".eot","application/epub+zip":".epub","application/ecmascript":".es","image/gif":".gif","text/html":".html","image/x-icon":".ico","text/calendar":".ics","application/java-archive":".jar","image/jpeg":[".jpeg",".jpg"],"application/javascript":".js","application/json":".json","audio/midi":".mid","audio/x-midi":".midi","video/mpeg":".mpeg","application/vnd.apple.installer+xml":"mpkg","application/vnd.oasis.opendocument.presentation":".odp","application/vnd.oasis.opendocument.spreadsheet":".ods","application/vnd.oasis.opendocument.text":".odt","audio/ogg":".oga","video/ogg":".ogv","application/ogg":".ogx","font/otf":".otf","image/png":".png","application/pdf":".pdf","application/vnd.ms-powerpoint":".ppt","application/vnd.openxmlformats-officedocument.presentationml.presentation":".pptx","application/x-rar-compressed":".rar","application/rtf":".rtf","application/x-sh":".sh","image/svg+xml":".svg","application/x-shockwave-flash":".swf","application/x-tar":".tar","image/tiff":".tiff","application/typescript":".ts","font/ttf":".ttf","text/plain":".txt","application/vnd.visio":".vsd","audio/wav":".wav","audio/webm":".weba","video/webm":".webm","image/webp":".webp","font/woff":".woff","font/woff2":".woff2","application/xhtml+xml":".xhtml","application/vnd.ms-excel":".xls","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":".xlsx","application/xml":".xml","application/vnd.mozilla.xul+xml":".xul","application/zip":".zip","video/3gpp":".3gp","audio/3gpp":".3gp","video/3gpp2":".3g2","audio/3gpp2":".3g2","application/x-7z-compressed":".7z"}[e]}static{this.\u0275fac=function(e){return new(e||it)}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"fileExtensionFromMime",type:it,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(it,[{type:t.Pipe,args:[{name:"fileExtensionFromMime"}]}],null,null);class nt{constructor(e){this.domSanitizer=e}transform(e,i){if(null==e)return"";switch(i){case"html":case t.SecurityContext.HTML:return this.domSanitizer.bypassSecurityTrustHtml(e);case"style":case t.SecurityContext.STYLE:return this.domSanitizer.bypassSecurityTrustStyle(e);case"script":case t.SecurityContext.SCRIPT:return this.domSanitizer.bypassSecurityTrustScript(e);case"url":case t.SecurityContext.URL:return this.domSanitizer.bypassSecurityTrustUrl(e);case"resource":case t.SecurityContext.RESOURCE_URL:return this.domSanitizer.bypassSecurityTrustResourceUrl(e)}}static{this.\u0275fac=function(e){return new(e||nt)(m.\u0275\u0275directiveInject(v.DomSanitizer,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"trustAs",type:nt,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(nt,[{type:t.Pipe,args:[{name:"trustAs"}]}],(()=>[{type:v.DomSanitizer}]),null);const at=[],st=[];class ot{constructor(){this.dialogRefsCollection=new Map,this.appConfirmDialog="_app-confirm-dialog"}register(e,t,i){e&&(this.dialogRefsCollection.get(e)?this.dialogRefsCollection.get(e).set(i,t):this.dialogRefsCollection.set(e,new Map([[i,t]])))}getDialogRefsCollection(){return this.dialogRefsCollection}deRegister(e,t){e&&this.dialogRefsCollection.get(e)&&this.dialogRefsCollection.get(e).delete(t)}getDialogRef(e,t){const i=this.dialogRefsCollection.get(e);let n;return t?(n=i.get(t),n||(t.pageName||t.partialName||t.prefabName?console.error('No dialog with the name "'+e+'" found in the given scope.'):i.forEach(((t,i)=>{i&&"Common"===i.partialName?n=t:console.error('No dialog with the name "'+e+'" found in the App scope.')})))):1===i.size?n=i.entries().next().value[1]:console.error("There are multiple instances of this dialog name. Please provide the Page/Partial/App instance in which the dialog exists."),n}open(e,t,i){const n=this.getDialogRef(e,t);n&&n.open(i)}close(e,t,i){const n=this.getDialogRef(e,t);n&&(n.closeCallBackFn=i,n.close())}closeAllDialogs(){o.forEach(at.reverse(),(e=>{e.close()}))}showAppConfirmDialog(e){this.open(this.getAppConfirmDialog(),void 0,e)}closeAppConfirmDialog(){this.close(this.getAppConfirmDialog())}getAppConfirmDialog(){return this.appConfirmDialog}setAppConfirmDialog(e){this.appConfirmDialog=e}addToOpenedDialogs(e){at.push(e)}getLastOpenedDialog(){return at[at.length-1]}removeFromOpenedDialogs(e){if(-1!==at.indexOf(e)&&at.splice(at.indexOf(e),1),0===at.length&&(n.isMobile()||n.isMobileApp())){$("body > app-root")[0].removeAttribute("aria-hidden")}}getOpenedDialogs(){return at}addToClosedDialogs(e){st.push(e)}removeFromClosedDialogs(e){-1!==st.indexOf(e)&&st.splice(st.indexOf(e),1)}getDialogRefFromClosedDialogs(){return st[st.length-1]}static{this.\u0275fac=function(e){return new(e||ot)}}static{this.\u0275prov=m.\u0275\u0275defineInjectable({token:ot,factory:ot.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(ot,[{type:t.Injectable}],(()=>[]),null);class rt{constructor(e){this.domSanitizer=e}transform(e,i){if(null==e)return"";switch(i){case"html":case t.SecurityContext.HTML:return this.domSanitizer.sanitize(t.SecurityContext.HTML,e);case"style":case t.SecurityContext.STYLE:return this.domSanitizer.sanitize(t.SecurityContext.STYLE,e);case"script":case t.SecurityContext.SCRIPT:return this.domSanitizer.sanitize(t.SecurityContext.SCRIPT,e);case"url":case t.SecurityContext.URL:return this.domSanitizer.sanitize(t.SecurityContext.URL,e);case"resource":case t.SecurityContext.RESOURCE_URL:return this.domSanitizer.sanitize(t.SecurityContext.RESOURCE_URL,e);case"none":case t.SecurityContext.NONE:return this.domSanitizer.sanitize(t.SecurityContext.NONE,e)}}static{this.\u0275fac=function(e){return new(e||rt)(m.\u0275\u0275directiveInject(v.DomSanitizer,16))}}static{this.\u0275pipe=m.\u0275\u0275definePipe({name:"sanitize",type:rt,pure:!0})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(rt,[{type:t.Pipe,args:[{name:"sanitize"}]}],(()=>[{type:v.DomSanitizer}]),null);const lt=[Ce,Ae,Oe,Te,Re,_e,Me,Ne,ke,ve,Le,Fe,$e],ct=[We,et,it,Je,Ze,Ue,qe,ze,He,Ye,Xe,tt,Ke,Ge,nt,Pe,Qe,rt];class dt{static forRoot(){return{ngModule:dt,providers:[We,Je,Ge,nt,Pe,Qe,rt,i.Location,{provide:n.AbstractDialogService,useClass:ot}]}}static{this.\u0275fac=function(e){return new(e||dt)}}static{this.\u0275mod=m.\u0275\u0275defineNgModule({type:dt})}static{this.\u0275inj=m.\u0275\u0275defineInjector({imports:[i.CommonModule,a.SecurityModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&m.\u0275setClassMetadata(dt,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.SecurityModule],declarations:[...lt,...ct],exports:[...lt,...ct]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&m.\u0275\u0275setNgModuleScope(dt,{declarations:[Ce,Ae,Oe,Te,Re,_e,Me,Ne,ke,ve,Le,Fe,$e,We,et,it,Je,Ze,Ue,qe,ze,He,Ye,Xe,tt,Ke,Ge,nt,Pe,Qe,rt],imports:[i.CommonModule,a.SecurityModule],exports:[Ce,Ae,Oe,Te,Re,_e,Me,Ne,ke,ve,Le,Fe,$e,We,et,it,Je,Ze,Ue,qe,ze,He,Ye,Xe,tt,Ke,Ge,nt,Pe,Qe,rt]});const pt=()=>{};var ut;e.Live_Operations=void 0,(ut=e.Live_Operations||(e.Live_Operations={})).INSERT="insert",ut.UPDATE="update",ut.DELETE="delete",ut.READ="read";const ht="All Fields",mt={EMPTY_KEY:"EMPTY_NULL_FILTER",EMPTY_VALUE:"No Value",LABEL_KEY:"key",LABEL_VALUE:"value",NULL_EMPTY:["null","empty"],NULL:"null",EMPTY:"empty"};function gt(e){return o.includes([n.FormWidgetType.AUTOCOMPLETE,n.FormWidgetType.TYPEAHEAD,n.FormWidgetType.CHIPS],e)}const ft=(e,t,i)=>{const a=n.debounce((()=>{o.isFunction(i)&&i(t)}),300);a();const s=t?o.isObject(t)?t:JSON.parse(t):{},r=e.registerDestroyListener?e.registerDestroyListener.bind(e):pt,l=n.processFilterExpBindNode(e,s).subscribe((e=>{t=JSON.stringify(e.filterExpressions),a()}));r((()=>l.unsubscribe()))},vt=(e,t)=>{const i={};let a;return t["is-related"]?(i.tableName=t["lookup-type"],a=t["lookup-field"],i.distinctField=a,i.aliasColumn=a.replace(".","$"),i.filterExpr=t.filterexpressions?o.isObject(t.filterexpressions)?t.filterexpressions:JSON.parse(t.filterexpressions):{}):(i.tableName=e.execute(n.DataSource.Operation.GET_ENTITY_NAME),a=t.field||t.key,i.distinctField=a,i.aliasColumn=a),i};function bt(e,t,i){let a;return new Promise(((s,o)=>{!T(t[i])||t.isDataSetBound&&"filterwidget"!==i||(a=vt(e,t),e.execute(n.DataSource.Operation.GET_DISTINCT_DATA_BY_FIELDS,{fields:a.distinctField,entityName:a.tableName,pagesize:t.limit,filterExpr:t.filterexpressions?JSON.parse(t.filterexpressions):{}}).then((e=>{s({field:t,data:e.data,aliasColumn:a.aliasColumn})}),o))}))}function yt(e,t){if(gt(e[t.widget]))return e.datafield=t.aliasColumn||mt.LABEL_KEY,e.searchkey=t.distinctField||mt.LABEL_KEY,void(e.displaylabel=e.displayfield=t.aliasColumn||mt.LABEL_VALUE);e.datafield=mt.LABEL_KEY,e.displayfield=mt.LABEL_VALUE}function wt(e,t,i){const a=[n.FormWidgetType.SELECT,n.FormWidgetType.RADIOSET],s={},r=[];i.isEnableEmptyFilter&&o.includes(a,e[i.widget])&&!e["is-range"]&&!e.multiple&&(s[mt.LABEL_KEY]=mt.EMPTY_KEY,s[mt.LABEL_VALUE]=i.EMPTY_VALUE||mt.EMPTY_VALUE,r.push(s)),o.each(t,(e=>{const t=e[i.aliasColumn],n={};null!==t&&""!==t&&(n[mt.LABEL_KEY]=t,n[mt.LABEL_VALUE]=t,r.push(n))})),yt(e,i),e.dataset=r}function Ct(e,t,i){if(e&&t&&!t.isDataSetBound)if(gt(t[i.widget])){const n=vt(e,t);t.dataoptions=n,yt(t,Object.assign(i||{},n)),t.datasource=e}else ft(t.viewParent,t.filterexpressions,(n=>{t.filterexpressions=n,bt(e,t,i.widget).then((e=>{wt(e.field,e.data,{aliasColumn:e.aliasColumn,widget:i.widget,isEnableEmptyFilter:Et(i.enableemptyfilter),EMPTY_VALUE:i.EMPTY_VALUE})}))}))}function Pt(e){return n.isDefined(e)&&""!==e&&null!==e}function It(e,t){let i;return Pt(e)&&Pt(t)?i=[e,t]:Pt(e)?i=e:Pt(t)&&(i=t),i}function At(e,t){let i;return Pt(e)&&Pt(t)?i=n.MatchMode.BETWEEN:Pt(e)?i=n.MatchMode.GREATER:Pt(t)&&(i=n.MatchMode.LESSER),i}function Et(e){return e&&o.intersection(e.split(","),mt.NULL_EMPTY).length>0}function Ot(e){let t;const i=o.split(e,",");return 2===o.intersection(i,mt.NULL_EMPTY).length?t=n.MatchMode.NULLOREMPTY:o.includes(i,mt.NULL)?t=n.MatchMode.NULL:o.includes(i,mt.EMPTY)&&(t=n.MatchMode.EMPTY),t}const Tt=e=>o.isUndefined(e)||o.isNull(e)?[]:(o.isString(e)&&(e=e.split(",").map(Function.prototype.call,String.prototype.trim)),o.isArray(e)||(e=[e]),e);const xt=moment.localeData(),Dt=n.getClonedObject(xt._calendar),Rt=xt._calendarDay||{lastDay:"[Yesterday]",lastWeek:"[Last] dddd",nextDay:"[Tomorrow]",nextWeek:"dddd",sameDay:"[Today]",sameElse:"L"},St="alphabet",_t="Others",Mt={HOUR:"hour",DAY:"day",WEEK:"week",MONTH:"month",YEAR:"year"},Nt="yyyy-MM-dd",kt="w 'Week', yyyy",Lt="MMM, yyyy",Ft="YYYY",jt="hh:mm a",$t=(e,t,i)=>{if(!t)return o.cloneDeep(e);const n=t.split(","),a=[],s=[];return n.forEach((e=>{const t=e.split(":");a.push(i?i+"."+t[0]:t[0]),s.push(t[1])})),o.orderBy(e,a,s)},Bt=e=>(o.isString(e)&&(e=o.split(e,",").map((e=>e.trim()))),e),Vt=(e,t,i,a)=>{if(e&&"wm-search"===e.widgetType)if(e.groupby)if(o.includes(e.groupby,"(")){const a=n.$parseEvent(e.groupby);i.groupby=a(t,{row:i.dataObject||i})}else i.groupby=qt(e.groupby,e.match,a,e.dateformat,e.datePipe,e.appDefaults,i);else i.groupby=""},Gt=(e,t,i,n,a,s,r,l)=>{i===Mt.DAY&&(xt._calendar=Rt),e=o.orderBy(e,(e=>{const i=o.get(r?e[r]:e,t);if(i)return o.toLower(i)}));const c=o.groupBy(e,qt.bind(void 0,t,i,r,a,s,l));return xt._calendar=Dt,c},Wt=(e,t,i,a)=>"timestamp"===t?e:n.getFormattedDate(a,e,t||i),Ut=(e,t,i,n,a)=>{let s,o=moment(e),r=i;const l=moment(),c=function(){return"["+Wt(this.valueOf(),r,Nt,n)+"]"};switch(t){case Mt.HOUR:r=r||a.timeFormat,o.isValid()||(o=moment((new Date).toDateString()+" "+e),o.isValid()&&(xt._calendar.sameDay=function(){return"["+Wt(this.valueOf(),r,jt,n)+"]"})),o=o.startOf("hour"),xt._calendar.sameElse=c,s=o.calendar(l);break;case Mt.WEEK:s=Wt(o.valueOf(),r,kt,n);break;case Mt.MONTH:s=Wt(o.valueOf(),r,Lt,n);break;case Mt.YEAR:s=o.format(Ft);break;case Mt.DAY:r=r||a.dateFormat,o=o.startOf("day"),xt._calendar.sameElse=c,s=o.calendar(l)}return"Invalid date"===s?_t:s},qt=(e,t,i,n,a,s,r)=>{let l=o.get(i?r[i]:r,e);return o.isUndefined(l)||o.isNull(l)||""===l.toString().trim()?_t:(t===St&&(l=l.substr(0,1)),o.includes(o.values(Mt),t)&&(l=Ut(l,t,n,a,s)),l)};const zt="default",Ht="label",Qt=(e,t,i,n)=>{o.forEach(e,(e=>{o.get(e,"isGroup")&&(e.field===i?e.columns[n]=t:Qt(e.columns,t,i,n))}))},Yt=e=>"true"===e||"false"!==e&&(/^\d+$/.test(e)?+e:e),Xt={integer:["number","text","select","checkboxset","radioset","rating","slider","currency","autocomplete","chips"],big_integer:["number","text","select","checkboxset","radioset","rating","slider","currency","autocomplete","chips"],short:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],float:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],big_decimal:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],number:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],double:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],long:["number","text","select","checkboxset","radioset","rating","slider","currency","autocomplete","chips"],byte:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],string:["text","number","textarea","password","richtext","select","checkboxset","radioset","date","time","timestamp","switch","currency","autocomplete","chips","colorpicker"],character:["text","number","textarea","password","richtext","select","checkboxset","radioset","switch","currency","autocomplete","chips"],text:["text","number","textarea","password","richtext","select","checkboxset","radioset","date","time","timestamp","switch","currency","autocomplete","chips","colorpicker"],date:["date","text","number","select","checkboxset","radioset","autocomplete","chips"],time:["time","text","number","select","checkboxset","radioset","autocomplete","chips"],timestamp:["timestamp","text","number","select","checkboxset","radioset","autocomplete","chips"],datetime:["datetime","text","select","checkboxset","radioset","autocomplete","chips"],boolean:["checkbox","radioset","toggle","select"],list:["select","radioset","checkboxset","switch","autocomplete","chips"],clob:["text","textarea","richtext"],blob:["upload"],file:["upload"],custom:["text","number","textarea","password","checkbox","toggle","slider","richtext","currency","switch","select","checkboxset","radioset","date","time","timestamp","rating","datetime","autocomplete","chips","colorpicker"]},Kt=e=>{if(e)return/^(\/|#\/|#)(?!\W).*/.test(e)?`#/${e=o.first(e.match(/[\w]+.*/g))||""}`:o.startsWith(e,"www.")?`//${e}`:e};e.DatasetAwareNavComponent=class extends fe{constructor(e,t,i){super(e,t,i),this.nodes=[],this.nodes$=new l.Subject,this._resetNodes=o.debounce(this.resetNodes,50),this.securityService=this.inj.get(a.SecurityService),this.binditemlabel=this.nativeElement.getAttribute("itemlabel.bind"),this.binditemicon=this.nativeElement.getAttribute("itemicon.bind"),this.binditemaction=this.nativeElement.getAttribute("itemaction.bind"),this.binditembadge=this.nativeElement.getAttribute("itembadge.bind"),this.binditemchildren=this.nativeElement.getAttribute("itemchildren.bind"),this.binditemid=this.nativeElement.getAttribute("itemid.bind"),this.binditemlink=this.nativeElement.getAttribute("itemlink.bind"),this.binditemtarget=this.nativeElement.getAttribute("itemtarget.bind"),this.binduserrole=this.nativeElement.getAttribute("userrole.bind"),this.bindisactive=this.nativeElement.getAttribute("isactive.bind")}getNode(e,t){const i=this.viewParent.pageScope||this.viewParent,a=A(t,{field:this.itemchildren,bindExpression:this.binditemchildren},i)||o.get(t,e.childrenField),s={action:A(t,{field:this.itemaction,bindExpression:this.binditemaction},i)||o.get(t,e.actionField),badge:A(t,{field:this.itembadge,bindExpression:this.binditembadge},i)||o.get(t,e.badgeField),children:Array.isArray(a)?this.getNodes(a):[],class:o.get(t,e.classField),disabled:t.disabled,icon:A(t,{field:this.itemicon,bindExpression:this.binditemicon},i)||o.get(t,e.iconField),id:A(t,{field:this.itemid,bindExpression:this.binditemid},i)||o.get(t,e.idField),label:A(t,{field:this.itemlabel,bindExpression:this.binditemlabel},i)||o.get(t,e.labelField),link:Kt(A(t,{field:this.itemlink,bindExpression:this.binditemlink},i)||o.get(t,e.linkField)),target:Kt(A(t,{field:this.itemtarget,bindExpression:this.binditemtarget},i)||o.get(t,e.targetField)),role:A(t,{field:this.userrole,bindExpression:this.binduserrole},i),isactive:A(t,{field:this.isactive,bindExpression:this.bindisactive},i),value:this.datafield?"All Fields"===this.datafield?t:n.findValueOf(t,this.datafield):t};return o.omitBy(s,o.isUndefined)}resetItemFieldMap(){this._itemFieldMap=null}getItemFieldsMap(){return this._itemFieldMap||(this._itemFieldMap={idField:this.itemid||"itemid",iconField:this.itemicon||"icon",labelField:this.itemlabel||"label",linkField:this.itemlink||"link",targetField:this.itemtarget||"target",badgeField:this.itembadge||"badge",childrenField:this.itemchildren||"children",classField:this.itemclass||"class",actionField:this.itemaction||"action",isactiveField:this.isactive||"isactive"}),this._itemFieldMap}prepareNodeDataSet(e){return(e=Tt(e)).map((e=>n.isObject(e)?e:{label:e,value:e}))}getNodes(e=this.dataset||{}){let t=$t(this.prepareNodeDataSet(e),this.orderby)||[];if(t.length){const e=this.userrole,i=this.getItemFieldsMap();t=t.reduce(((t,a)=>(n.validateAccessRoles(a[e],this.securityService.loggedInUser)&&t.push(this.getNode(i,a)),t)),[])}return t}resetNodes(){this.resetItemFieldMap(),this.nodes=this.getNodes(),n.$appDigest(),this.nodes$.next(null)}onPropertyChange(e,t,i){switch(e){case"dataset":case"itemicon":case"itemlabel":case"itemlink":case"itemtarget":case"itemclass":case"itemchildren":case"isactive":case"orderby":this._resetNodes()}super.onPropertyChange(e,t,i)}},e.DatasetAwareNavComponent=d.__decorate([d.__param(2,t.Inject("EXPLICIT_CONTEXT")),d.__param(2,t.Optional()),d.__metadata("design:paramtypes",[t.Injector,Object,Object])],e.DatasetAwareNavComponent);const Jt={pattern:"regexp",max:"maxvalue",min:"minvalue",required:"required",maxlength:"maxchars",mindate:"mindate",maxdate:"maxdate",excludedates:"excludedates",excludedays:"excludedays",invalidNumber:"invalidNumber"};class Zt extends u.SwipeAnimation{constructor(e,t,i){super(),this.$el=e,this.app=t,this.onPullToRefresh=i,this.count=0;this.$el.prepend('<div class="refresh-container"></div>'),this.infoContainer=this.$el.find(".refresh-container"),n.isIos()&&this.infoContainer.addClass("ios-refresh-container"),this.init(this.$el)}threshold(){return 10}direction(){return $.fn.swipey.DIRECTIONS.VERTICAL}subscribe(){this.cancelSubscription=this.app.subscribe("toggle-variable-state",(e=>{e.active&&this.animationInProgress?(this.count++,this.wait()):this.count>0&&this.count--,!this.count&&this.animationInProgress&&this.stopAnimation()}))}bounds(e,t){const i=this.$el[0].iscroll;return t<0||i&&!isNaN(i.y)&&0!==i.y?{lower:void 0,upper:void 0}:(this.spinner||(this.spinner=n.isIos()?new ti(this.infoContainer):new ei(this.infoContainer),this.subscribe()),{lower:0,center:0,upper:n.isIos()?0:150,strict:!n.isIos()})}context(){return this.infoContainer.show(),n.isIos()&&this.infoContainer.addClass("entry"),{spin:e=>{this.spinner.setRotation(2*e)}}}animation(){return n.isIos()?{css:{transform:"translate3d(0, ${{$D + $d}}px, 0)",spin:"${{spin($d)}}"}}:{target:this.infoContainer,css:{transform:"translate3d(0, ${{$D + $d}}px, 0)",spin:"${{spin($d)}}",opacity:"${{min(($D + $d) / 100, 1)}}"}}}onAnimation(){this.animationInProgress=!0,this.spinner.start(),this.onPullToRefresh&&this.onPullToRefresh(),setTimeout((()=>{this.runAnimation||this.stopAnimation()}))}stopAnimation(){setTimeout((()=>{this.runAnimation=!1,this.animationInProgress=!1,this.spinner.stop(),this.infoContainer.hide(),n.setCSS(this.infoContainer[0],"transform","none"),n.isIos()||n.setCSS(this.infoContainer[0],"opacity",0),this.infoContainer.removeClass("entry")}),800)}wait(){this.runAnimation=!0}}class ei{constructor(e,t){this.$el=e,this.options=t||{}}polarToCartesian(e,t,i,n){const a=(n-90)*Math.PI/180;return{x:e+i*Math.cos(a),y:t+i*Math.sin(a)}}describeArc(e,t,i,n,a){const s=this.polarToCartesian(e,t,i,a),o=this.polarToCartesian(e,t,i,n),r=a-n<=180?"0":"1";return["M",s.x,s.y,"A",i,i,0,r,0,o.x,o.y,"L",o.x,o.y].join(" ")}init(){if(this.initialized)return;const e=$('<svg><path id="arc1"/></svg>'),t=$('<div class="android-spinner"></div>');t.append(e),this.$el.append(t),this.cx=t.outerWidth()/2,this.cy=t.outerHeight()/2,this.r=.6*this.cx,this.path=t.find("path"),this.initialized=!0,this.container=t}setRotation(e){this.init(),this.path.attr("d",this.describeArc(this.cx,this.cy,this.r,0,e))}start(){this.init();const e=this,t=this.options.time||1800;let i=0;this.container.addClass("spin"),this.intervalId=setInterval((()=>{let t;i+=10,t=i>720?i=0:i>360?720-i:i,e.path.attr("d",this.describeArc(e.cx,e.cy,e.r,0,t))}),10*t/360)}stop(){this.intervalId&&(clearInterval(this.intervalId),this.intervalId=0),this.container.removeClass("spin")}}class ti{constructor(e){this.$el=e}init(){if(this.svg)return;const e=$('<div class="ios-spinner"><svg></svg></div>'),t=e.find("svg");this.$el.append(e);const i=e.width();for(let e=0;e<12;e++)t[0].innerHTML+=`<line y1="${.15*i}" y2="${.3*i}"\n transform="translate(${.5*i}, ${.5*i}) rotate(${30*e})">\n </line>`;e.append(t),this.svg=t}setRotation(e){this.init(),this.svg.css("transform",`rotateZ( ${30*Math.round(e/30)}deg)`)}start(){this.init();let e=0;this.intervalId=setInterval((()=>{e+=10,this.setRotation(e)}),20)}stop(){this.intervalId&&(clearInterval(this.intervalId),this.intervalId=0)}}var ii;!function(e){e.LEFT_PANEL="page-left-panel",e.RIGHT_PANEL="page-right-panel",e.SWIPE_ELEM="page-left-panel-icon",e.CONTENT="app-content-column",e.HEADER="page-header",e.SEARCH="app-search"}(ii||(ii={}));const ni=e=>`[data-role='${e}']`,ai=(e,t)=>{"string"==typeof e&&(e=document.querySelector(e)),e&&(e.removeEventListener("click",t),e.addEventListener("click",t))},si=(e,t)=>{if(n.isMobile()){if(e)try{e.widget.collapse()}catch(e){}t&&n.setCSS(t,"display","none")}},oi=(e,t)=>{$(e).each(((e,i)=>{const a=$('<a class="app-header-action"><i class="wi wi-search"></i></a>');$(i).before(a),ai(a,(()=>((e,t)=>{"none"===$(e).css("display")?(si(t),n.setCSS(e,"display","inline-table")):si(t,e)})(i,t)))}))};e.ALLFIELDS=ht,e.AUTOCLOSE_TYPE={OUTSIDECLICK:"outsideClick",ALWAYS:"always",DISABLED:"disabled"},e.BaseComponent=ge,e.BaseContainerComponent=be,e.BaseFieldValidations=class{constructor(e,t,i,n,a,s){this.instance=e,this.formwidget=t,this.widgettype=i,this.widgetControl=n,this.widgetContext=a,this.defaultValidatorMessages=[],s&&(this.tableFieldType=s)}getDefaultValidators(){const e=[];return this.instance.required&&!1!==this.instance.show&&(this.widgettype===n.FormWidgetType.CHECKBOX||this.widgettype===n.FormWidgetType.TOGGLE?e.push(p.Validators.requiredTrue):e.push(p.Validators.required)),this.instance.maxchars&&e.push(p.Validators.maxLength(this.instance.maxchars)),this.instance.minvalue&&e.push(p.Validators.min(this.instance.minvalue)),this.instance.maxvalue&&this.widgettype!==n.FormWidgetType.RATING&&e.push(p.Validators.max(this.instance.maxvalue)),this.instance.regexp&&e.push(p.Validators.pattern(this.instance.regexp)),this.formwidget&&o.isFunction(this.formwidget.validate)&&e.push(this.formwidget.validate.bind(this.formwidget)),e}setUpValidators(e){if(!this.hasValidators&&(this.instance._validators=this.getDefaultValidators(),e&&this.instance._validators.push(e),this.widgetContext.ngform)){this.widgetControl.setValidators(this.instance._validators);const e={};this.formwidget&&(this.instance.value===this.formwidget.prevDatavalue||this.isNullOrEmptyOrFalsy(this.instance.value))&&(e.emitEvent=!1),this.widgetControl.updateValueAndValidity(e)}}getPromiseList(e){const t=[];return o.forEach(e,((e,i)=>{let n=e;e instanceof Function&&e.bind&&(n=e(this.widgetControl,this.widgetContext)),n instanceof Promise&&t.push(n)})),t}setAsyncValidators(e){if(this._asyncValidatorFn=()=>()=>Promise.all(this.getPromiseList(e)).then((()=>(this.instance.validationmessage="",null)),(e=>{if(e.hasOwnProperty("errorMessage"))this.instance.validationmessage=o.get(e,"errorMessage");else{const t=o.keys(e);this.instance.validationmessage=e[t[0]].toString()}return e})).then((e=>{const t=()=>{setTimeout((()=>{"PENDING"===this.widgetControl.status?t():this.instance.onStatusChange(this.widgetControl.status,this.tableFieldType)}),100)};return t(),e})),this.widgetControl.setAsyncValidators([this._asyncValidatorFn()]),this.widgetContext.ngform.touched){const e={};this.formwidget&&(this.instance.value===this.formwidget.prevDatavalue||this.isNullOrEmptyOrFalsy(this.instance.value))&&(e.emitEvent=!1),this.widgetControl.updateValueAndValidity(e)}}isDefaultValidator(e){return o.get(n.VALIDATOR,o.toUpper(e))}setDefaultValidator(e,t){t&&t instanceof Function?this.watchDefaultValidatorExpr(t.bind(void 0,this.widgetControl,this.widgetContext),e):(this.instance.widget[e]=t,this.instance[e]=t)}setValidators(e){let t=o.cloneDeep(e);this.hasValidators=!0,this._syncValidators=[],o.forEach(t,((e,i)=>{if(e&&e instanceof Function)t[i]=e.bind(void 0,this.widgetControl,this.widgetContext),this._syncValidators.push(t[i]);else{const n=o.get(e,"type");if(this.defaultValidatorMessages[n]=o.get(e,"errorMessage"),this.isDefaultValidator(n)){const a=o.get(e,"validator");this.setDefaultValidator(n,a),t[i]=""}}})),this._syncValidators=o.filter(t,(e=>{if(e)return e})),this.applyDefaultValidators()}observeOn(e,t){o.forEach(e,(e=>{const i=o.find(this.widgetContext[t],{key:e});i&&(i.notifyForFields||(i.notifyForFields=[]),i.notifyForFields.push(this.instance))}))}validate(){if(this.applyDefaultValidators(),this._asyncValidatorFn){const e={};this.formwidget&&(this.instance.value===this.formwidget.prevDatavalue||this.isNullOrEmptyOrFalsy(this.instance.value))&&(e.emitEvent=!1),this.widgetControl.setAsyncValidators([this._asyncValidatorFn()]),this.widgetControl.updateValueAndValidity(e)}this.widgetContext.ngform.touched&&this.widgetControl.markAsTouched()}watchDefaultValidatorExpr(e,t){const i=`${this.instance.widgetId}_`+t+"_formField";n.$unwatch(i),this.instance.registerDestroyListener(n.$watch("boundFn(fn)",o.extend(this.instance,this.instance.viewParent),{fn:e},((e,i)=>{this.instance.widget[t]=e,this.applyDefaultValidators()}),i))}isNullOrEmptyOrFalsy(e){return o.isEmpty(e)}applyDefaultValidators(){const e=this.getDefaultValidators(),t={};this.formwidget&&(this.instance.value===this.formwidget.prevDatavalue||this.isNullOrEmptyOrFalsy(this.instance.value))&&(t.emitEvent=!1),this.widgetControl.setValidators(o.concat(this._syncValidators||[],e)),this.widgetControl.updateValueAndValidity(t),this.setCustomValidationMessage()}setCustomValidationMessage(){const e=this.widgetControl&&this.widgetControl.errors;if(e)if(e.hasOwnProperty("errorMessage"))this.instance.validationmessage=o.get(e,"errorMessage");else{const t=o.keys(e)[0],i=o.get(Jt,t)||this.formwidget.validateType;if(i){const e=o.get(this.defaultValidatorMessages,i)||this.instance.validationmessage;this.instance.validationmessage=e&&e instanceof Function?e(this.widgetControl,this.widgetContext):e}else this.instance.validationmessage=""}}},e.ContainerDirective=Ce,e.Context=C,e.CustomPipe=Qe,e.DEBOUNCE_TIMES={PAGINATION_DEBOUNCE_TIME:250},e.DISPLAY_TYPE=se,e.DataSetItem=class{},e.DialogRef=w,e.DialogServiceImpl=ot,e.EDIT_MODE={QUICK_EDIT:"quickedit",INLINE:"inline",FORM:"form",DIALOG:"dialog"},e.EVENTS_MAP=ae,e.FileExtensionFromMimePipe=it,e.FileIconClassPipe=et,e.FileSizePipe=Ze,e.FilterPipe=Je,e.INPUTMODE={FINANCIAL:"financial",NATURAL:"natural"},e.ImagePipe=Pe,e.ItemTemplateDirective=Ae,e.LIVE_CONSTANTS=mt,e.LazyLoadDirective=Te,e.MessageComponent=Re,e.NAVIGATION_TYPE={ADVANCED:"Advanced",BASIC:"Basic",CLASSIC:"Classic",INLINE:"Inline",NONE:"None",ONDEMAND:"On-Demand",PAGER:"Pager",SCROLL:"Scroll"},e.NumberToStringPipe=Xe,e.PROP_ANY=te,e.PROP_BOOLEAN=ee,e.PROP_NUMBER=Z,e.PROP_STRING=J,e.PartialContainerDirective=ke,e.PartialDirective=_e,e.PartialParamDirective=Ne,e.PartialParamHandlerDirective=Me,e.PrefixPipe=ze,e.PullToRefresh=Zt,e.RedrawableDirective=ve,e.RepeatTemplateDirective=Oe,e.SanitizePipe=rt,e.ShowInDeviceDirective=Le,e.SmoothScrollDirective=Fe,e.StateClassPipe=tt,e.StringToNumberPipe=Ke,e.StylableComponent=fe,e.SuffixPipe=He,e.TextContentDirective=$e,e.TimeFromNowPipe=Ye,e.ToCurrencyPipe=qe,e.ToDatePipe=We,e.ToNumberPipe=Ue,e.TrailingZeroDecimalPipe=Ge,e.TrustAsPipe=nt,e.WidgetConfig=b,e.WidgetRef=y,e.WmComponentsModule=dt,e.applyFilterOnField=function(e,t,i,a,s={}){const r=t.field||t.key,l=o.filter(i,{"filter-on":r});a=t["is-range"]?It(t.minValue,t.maxValue):n.isDefined(a)?a:t.value,!e||s.isFirst&&(o.isUndefined(a)||""===a)||o.forEach(l,(i=>{const r=i.field||i.key,l=t["lookup-field"]||t._primaryKey,c=i["edit-widget-type"]||i.widgettype;let d,p,u,h={},m=i["filter-on"];T(c)&&!i.isDataSetBound&&m!==r&&(t&&t["is-related"]&&(m+="."+l),n.isDefined(a)?(u=t["is-range"]?At(t.minValue,t.maxValue):Et(s.enableemptyfilter)&&a===mt.EMPTY_KEY?Ot(s.enableemptyfilter):n.MatchMode.EQUALS,d=o.isObject(a)&&!o.isArray(a)?a[l]:a,h[m]={value:d,matchMode:u}):h={},p=r,gt(c)&&i.dataoptions?i.dataoptions.filterFields=h:e.execute(n.DataSource.Operation.GET_DISTINCT_DATA_BY_FIELDS,{fields:p,filterFields:h,pagesize:i.limit}).then((e=>{wt(i,e.data,{aliasColumn:p,widget:s.widget||"widgettype",isEnableEmptyFilter:Et(s.enableemptyfilter),EMPTY_VALUE:s.EMPTY_VALUE})}),pt))}))},e.configureDnD=(e,t,i,n,a)=>{const s=Object.assign({containment:e,delay:100,opacity:.8,helper:"clone",zIndex:1050,tolerance:"pointer",start:i,update:n,sort:a},t);e.sortable(s)},e.convertDataToObject=Bt,e.createArrayFrom=Tt,e.extractDataAsArray=e=>o.isUndefined(e)||o.isNull(e)||""===o.trim(e)?[]:(o.isString(e)&&(e=o.split(e,",").map((e=>e.trim()))),o.isArray(e)||(e=[e]),e),e.extractDataSourceName=e=>{if(!e)return;let t;const i=e.split(".");return i.length>1&&"Variables"===i[0]&&(t=i[1]),t},e.fetchDistinctValues=function(e,t,i){o.isEmpty(t)||t.forEach((t=>{Ct(e,t,i)}))},e.fetchRelatedFieldData=function(e,t,i){let a,s;const r=i.relatedField,l=i.datafield;e&&(a=e.execute(n.DataSource.Operation.GET_RELATED_PRIMARY_KEYS,r),t.datafield=l,t._primaryKey=o.isEmpty(a)?void 0:a[0],t.compareby=a&&a.join(","),s=l===ht?void 0:l,t.displayfield=s=t.displayfield||s||t._primaryKey,gt(t[i.widget])?(t.dataoptions={relatedField:r,filterExpr:t.filterexpressions?t.filterexpressions:{}},t.datasource=e,t.searchkey=t.searchkey||s,t.displaylabel=t.displayfield=t.displaylabel||s,t.showPendingSpinner&&(t.showPendingSpinner=!1)):ft(t.viewParent,t.filterexpressions,(i=>{t.filterexpressions=i,e.execute(n.DataSource.Operation.GET_RELATED_TABLE_DATA,{relatedField:r,pagesize:t.limit,orderBy:t.orderby?o.replace(t.orderby,/:/g," "):"",filterFields:{},filterExpr:t.filterexpressions?t.filterexpressions:{}}).then((e=>{t.dataset=e.data,t.displayfield=t.displayfield||o.head(o.keys(o.get(e,"[0]"))),t.showPendingSpinner&&(t.showPendingSpinner=!1)}),pt)})))},e.filterDate=Wt,e.getBackGroundImageUrl=D,e.getConditionalClasses=F,e.getContainerTargetClass=e=>".wm-app",e.getDataTableFilterWidget=e=>{let t=Xt[e]&&Xt[e][0];return e===n.DataType.BOOLEAN&&(t=n.FormWidgetType.SELECT),o.includes([n.FormWidgetType.TEXT,n.FormWidgetType.NUMBER,n.FormWidgetType.SELECT,n.FormWidgetType.AUTOCOMPLETE,n.FormWidgetType.DATE,n.FormWidgetType.TIME,n.FormWidgetType.DATETIME],t)?t:n.FormWidgetType.TEXT},e.getDefaultValue=(e,t,i)=>i?i===n.FormWidgetType.NUMBER||i===n.FormWidgetType.SLIDER||i===n.FormWidgetType.CURRENCY?isNaN(Number(e))?null:Number(e):i===n.FormWidgetType.CHECKBOX||i===n.FormWidgetType.TOGGLE?Yt(e):e:n.isNumberType(t)?isNaN(Number(e))?null:Number(e):t===n.DataType.BOOLEAN?Yt(e):e,e.getDefaultViewModeWidget=e=>o.includes(["checkbox","toggle","rating"],e)?zt:Ht,e.getDistinctFieldProperties=vt,e.getDistinctValues=bt,e.getDistinctValuesForField=Ct,e.getEditModeWidget=e=>e["related-entity-name"]&&e["primary-key"]?n.FormWidgetType.SELECT:Xt[e.type]&&Xt[e.type][0]||n.FormWidgetType.TEXT,e.getEmptyMatchMode=Ot,e.getEnableEmptyFilter=Et,e.getEvaluatedData=A,e.getFieldLayoutConfig=(e,t,i)=>{let a="",s="";return"top"===(t=t||"top")||"floating"===t?i&&"android"===i||!n.isMobileApp()||n.isAndroid()?a=s="col-xs-12":n.isMobileApp()&&(a="col-xs-4",s="col-xs-8"):e&&o.forEach(o.split(e," "),(function(e){const t=o.split(e,"-"),i=t[0];let n,r;n=parseInt(t[1],10),r=12-n,r=r<=0?12:r,a+=" col-"+i+"-"+n,s+=" col-"+i+"-"+r})),{captionCls:a,widgetCls:s}},e.getFieldTypeWidgetTypesMap=()=>Xt,e.getImageUrl=x,e.getKeyboardFocusableElements=e=>{const t=e.querySelectorAll("a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable]");return Array.from(t).filter((e=>!e.hasAttribute("disabled")&&!e.hasAttribute("hidden")&&(!e.hasAttribute("tabindex")||e.hasAttribute("tabindex")&&!e.getAttribute("tabindex").startsWith("-"))))},e.getMatchModeMsgs=e=>({start:e.LABEL_STARTS_WITH,startignorecase:e.LABEL_STARTS_WITH_IGNORECASE,end:e.LABEL_ENDS_WITH,endignorecase:e.LABEL_ENDS_WITH_IGNORECASE,anywhere:e.LABEL_CONTAINS,anywhereignorecase:e.LABEL_CONTAINS_IGNORECASE,exact:e.LABEL_IS_EQUAL_TO,exactignorecase:e.LABEL_IS_EQUAL_TO_IGNORECASE,notequals:e.LABEL_IS_NOT_EQUAL_TO,notequalsignorecase:e.LABEL_IS_NOT_EQUAL_TO_IGNORECASE,lessthan:e.LABEL_LESS_THAN,lessthanequal:e.LABEL_LESS_THAN_OR_EQUALS_TO,greaterthan:e.LABEL_GREATER_THAN,greaterthanequal:e.LABEL_GREATER_THAN_OR_EQUALS_TO,null:e.LABEL_IS_NULL,isnotnull:e.LABEL_IS_NOT_NULL,empty:e.LABEL_IS_EMPTY,isnotempty:e.LABEL_IS_NOT_EMPTY,nullorempty:e.LABEL_IS_NULL_OR_EMPTY,in:e.LABEL_IN,notin:e.LABEL_NOT_IN,between:e.LABEL_BETWEEN}),e.getMatchModeTypesMap=e=>(e&&(N.number.push("in","notin","between"),N.date.push("between"),N.string.push("in","notin"),N.character.push("in","notin")),o.forEach(M,((e,t)=>{o.forEach(e,(e=>{k[e]=N[t]}))})),k.default=o.union(N.number,N.string,N.character,N.date,N.date),k),e.getObjValueByKey=I,e.getOrderByExpr=e=>{e=e||[];const t=[];return o.forEach(e,(e=>{e.direction&&t.push(e.property+" "+e.direction.toLowerCase())})),o.join(t,",")},e.getOrderedDataset=$t,e.getRangeFieldValue=It,e.getRangeMatchMode=At,e.getRowOperationsColumn=()=>({field:"rowOperations",type:"custom",displayName:"Actions",width:"120px",readonly:!0,sortable:!1,searchable:!1,resizable:!1,selectable:!1,show:!0,operations:[],opConfig:{},pcDisplay:!0,mobileDisplay:!0,tabletDisplay:!0,include:!0,isRowOperation:!0}),e.getUniqObjsByDataField=(e,t,i,n)=>{let a;const s=t===ht;return a=s?o.uniqWith(e,o.isEqual):o.uniqBy(e,"key"),!i||n?a:o.filter(a,(e=>(s||o.trim(e.key))&&o.trim(e.label)))},e.getWatchIdentifier=_,e.getWidgetPropsByType=Y,e.groupData=(e,t,i,a,s,r,l,c,d)=>{let p={};if(o.includes(i,"(")){const a=n.$parseEvent(i);p=o.groupBy(t,(t=>a(e.viewParent,{row:t.dataObject||t})))}else p=Gt(t,i,a,s,r,l,c,d);return((e,t,i)=>{const n=[];return o.forEach(o.keys(e),((a,s)=>{const r=$t(e[a],i,"dataObject");n.push({key:a,data:o.sortBy(r,(e=>(e._groupIndex=s+1,o.get(e,t)||o.get(e.dataObject,t))))})})),n})(p,i,s)},e.handleHeaderClick=e=>{const t=$(e.target).closest(".item-group"),i=t.find("li.list-group-header .app-icon");i.hasClass("wi-chevron-down")?i.removeClass("wi-chevron-down").addClass("wi-chevron-up"):i.removeClass("wi-chevron-up").addClass("wi-chevron-down"),t.find(".group-list-item").toggle()},e.hasLinkToCurrentPage=O,e.interpolateBindExpressions=ft,e.isActiveNavItem=E,e.isBooleanAttr=re,e.isDataSetWidget=T,e.isDimensionProp=ce,e.isStyle=G,e.parseValueByType=(e,t,i,a)=>i?i===n.FormWidgetType.NUMBER||i===n.FormWidgetType.SLIDER||i===n.FormWidgetType.CURRENCY?isNaN(Number(e))?null:a?e:Number(e):i===n.FormWidgetType.CHECKBOX||i===n.FormWidgetType.TOGGLE?Yt(e):e:n.isNumberType(t)?isNaN(Number(e))?null:Number(e):t===n.DataType.BOOLEAN?Yt(e):e,e.performDataOperation=function(t,i,a){return new Promise(((s,o)=>{if(t.execute(n.DataSource.Operation.SUPPORTS_CRUD)){let r;switch(a.operationType){case e.Live_Operations.UPDATE:r=n.DataSource.Operation.UPDATE_RECORD;break;case e.Live_Operations.INSERT:r=n.DataSource.Operation.INSERT_RECORD;break;case e.Live_Operations.DELETE:r=n.DataSource.Operation.DELETE_RECORD}t.execute(r,i).then((e=>function(e,t,i){e.error?i(e):t(e)}(e,s,o)),o)}else if(t.execute(n.DataSource.Operation.IS_API_AWARE))if("wm.CrudVariable"===t.category){const e="insert"===a.operationType?"create":"delete"===a.operationType?"delete":"update";t.execute(n.DataSource.Operation.INVOKE,{skipNotification:!0,operation:e,inputFields:i}).then(s,o)}else t.execute(n.DataSource.Operation.SET_INPUT,i),t.execute(n.DataSource.Operation.INVOKE,{skipNotification:!0}).then(s,o);else s(i)}))},e.prepareFieldDefs=(e,t)=>{let i;const a={objects:[],terminals:[]};if(e||(e=[]),t||(t={}),t.setBindingField=!0,t.columnCount=0,i=(e=>{let t;return o.isArray(e)?o.isObject(e[0])?(t=n.getClonedObject(e[0]),o.forEach(e,((e,i)=>{if(i+1>=10)return!1;o.assignWith(t,e,((e,t)=>null==e?t:e))}))):t=e[0]:t=e,t})(e),j(i,a,"",t),!t||t&&!t.filter)return a.terminals;switch(t.filter){case"all":return a;case"objects":return a.objects;case"terminals":return a.terminals}return a},e.propNameCSSKeyMap=V,e.provideAs=R,e.provideAsDialogRef=function(e){return R(e,w)},e.provideAsWidgetRef=S,e.refreshDataSource=function(e,t){return new Promise(((i,a)=>{e?e.execute(n.DataSource.Operation.LIST_RECORDS,{filterFields:t.filterFields||{},orderBy:t.orderBy,page:t.page||1,logicalOp:t.condition||""}).then(i,a):a()}))},e.register=X,e.registerFormWidget=(e,t)=>{const i=H+e,n=Q.get(i);n&&t.forEach(((e,t)=>n.set(t,e)))},e.setFocusTrap=(e,t,i)=>s.createFocusTrap(e,{onActivate:()=>e.classList.add("is-active"),onDeactivate:()=>e.classList.remove("is-active"),allowOutsideClick:t,setReturnFocus:i}),e.setHeaderConfig=Qt,e.setHeaderConfigForTable=(e,t,i,n)=>{i?Qt(e,t,i,n):e[n]=t},e.setItemByCompare=(e,t,i)=>{o.forEach(e,(e=>{if(n.isEqualWithFields(e.value,t,i))return e.selected=!0,!1}))},e.styler=z,e.toggleAllHeaders=e=>{const t=$(e.nativeElement).find(".item-group");t.find(".group-list-item").toggle();const i=t.find("li.list-group-header .app-icon");i&&o.forEach(i,(e=>{const t=$(e);t.hasClass("wi-chevron-down")?t.removeClass("wi-chevron-down").addClass("wi-chevron-up"):t.removeClass("wi-chevron-up").addClass("wi-chevron-down")}))},e.transformData=function(e,t){let i,n,a,s,r,l,c;return e=e||[],o.isArray(e)?o.isString(e[0])&&(n=[],o.forEach(e,(e=>{i={},i[t.split(".").join("-")]=e,n.push(i)})),e=n):(o.isString(e)&&(a=t.substring(t.indexOf(".")+1,t.length).split("."),s=[],r=a.length,l={},c=l,a.forEach(((t,i)=>{s.forEach((e=>{c=l[e]})),c[t]=i===r-1?e:{},s.push(t)})),e=l),e=[e]),e},e.transformDataWithKeys=e=>{const t=[];if(o.isObject(e[0])||o.isObject(e)&&!(e instanceof Array)){const i=Object.keys(e[0]||e);o.forEach(i,((e,i)=>{t.push({key:e,label:e,value:e,index:i+1})}))}return t},e.transformFormData=(e,t,i,a,s,r)=>{const l=[];if(t)return t=Bt(t),o.isUndefined(s)&&(s=1),o.isString(t)?(t=t.split(",").map((e=>e.trim()))).forEach(((t,i)=>{const a={key:t,value:t,label:n.isDefined(t)&&null!==t?t.toString():"",index:s+i};Vt(r,e,a,"value"),l.push(a)})):o.isArray(t)&&!o.isObject(t[0])?t.forEach(((t,i)=>{const a={key:t,value:t,label:n.isDefined(t)&&null!==t?t.toString():"",index:s+i};Vt(r,e,a,"value"),l.push(a)})):t instanceof Array||!o.isObject(t)?(i||(i=ht),t.forEach(((t,c)=>{const d=i===ht?s+c:I(t,i);if(!o.isUndefined(d)&&!o.isNull(d)){const o=A(t,{field:a.displayField,expression:a.displayExpr,bindExpression:a.bindDisplayExpr},e),p={key:d,label:n.isDefined(o)&&null!==o?o.toString():"",value:i===ht?t:d,dataObject:t,index:s+c};(a.displayImgSrc||a.bindDisplayImgSrc)&&(p.imgSrc=A(t,{expression:a.displayImgSrc,bindExpression:a.bindDisplayImgSrc},e)),Vt(r,e,p,"dataObject"),l.push(p)}}))):o.forEach(t,((i,a)=>{const c={key:o.trim(a),value:a,label:n.isDefined(i)&&null!==i?i.toString():"",index:s,dataObject:t};Vt(r,e,c,"value"),l.push(c)})),l},e.unsupportedStatePersistenceTypes=["On-Demand","Scroll"],e.updateDeviceView=(e,t=!1)=>{const i=e.querySelector(ni(ii.LEFT_PANEL)),a=e.querySelector(ni(ii.RIGHT_PANEL)),s=e.querySelector(ni(ii.HEADER)),o=s&&s.querySelector(`.${ii.SEARCH}`);((e,t,i,n=!1)=>{n||ai(t,si.bind(void 0,e,i))})(i,e.querySelector(`.${ii.CONTENT}`),o,t),i?((e,t)=>{ai(ni(ii.SWIPE_ELEM),(()=>{e&&(e.widget.toggle(),e.classList.contains("visible")&&t&&n.setCSS(t,"display","none"))}))})(i,o):$(s).find(ni(ii.SWIPE_ELEM)).remove(),a&&(e=>{ai(e,si)})(a),o&&oi(o,i)},e.widgetIdGenerator=ne})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@wm/transpiler"),require("@wm/core"),require("@angular/compiler"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@wm/transpiler","@wm/core","@angular/compiler","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.buildTask={}),e.wm.transpiler,e.wm.core,e.ng.compiler,e._)}(this,(function(e,t,i,n,a){"use strict";const s="carousel",o=new i.IDGenerator("wm_carousel_ref_");t.register("wm-carousel",(()=>({pre:(e,i)=>{const n=o.nextUid();return i.set("carousel_ref",n),`<div class="app-carousel carousel"><${s} wmCarousel #${n}="wmCarousel" ${t.getAttrMarkup(e)} interval="0" [ngClass]="${n}.navigationClass">`},post:()=>`</${s}></div>`,template:e=>{if((e=>e.attrs.find((e=>"type"===e.name&&"dynamic"===e.value)))(e)){const n=e.attrs.find((e=>"dataset"===e.name)),a=e.attrs.find((e=>"name"===e.name));if(!n)return;const s=t.getBoundToExpr(n.value);if(!s)return;i.updateTemplateAttrs(e,s,a.value)}},provide:(e,t)=>{const i=new Map;return i.set("carousel_ref",t.get("carousel_ref")),i}})));var r=Object.freeze({__proto__:null,default:()=>{}});const l="slide";let c=1;t.register("wm-carousel-content",(()=>({pre:e=>`<${l} wmCarouselTemplate ${t.getAttrMarkup(e)}>`,post:()=>`</${l}>`}))),t.register("wm-carousel-template",(()=>({requires:["wm-carousel"],pre:(e,i,n)=>{const a=n.get("carousel_ref");return`<div *ngIf="!${a}.fieldDefs">{{${a}.nodatamessage}}</div>\n <${l} wmCarouselTemplate #carouselTemplateRef="carouselTemplateRef" ${t.getAttrMarkup(e)} *ngFor="let item of ${a}.fieldDefs; let i = index;">\n <ng-container [ngTemplateOutlet]="carouselTempRef${c}"\n [ngTemplateOutletContext]="{item:item, index:i}"\n [ngTemplateOutletInjector]="${a}.createCustomInjector('carousel_item_' + carouselTemplateRef.trackId, {item:item, index:i})"></ng-container>\n </${l}>\n <ng-template #carouselTempRef${c++} let-item="item" let-index="index">`},post:()=>"</ng-template>"})));var d=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-login",(()=>({pre:e=>`<div wmLogin ${t.getAttrMarkup(e)} eventsource.bind="Actions.loginAction">`,post:()=>"</div>",provide:()=>{const e=new Map;return e.set("isLogin",!0),e}})));var p=Object.freeze({__proto__:null,default:()=>{}});const u="marquee";t.register("wm-marquee",(()=>({pre:e=>`<${u} onmouseover="this.stop();" onmouseout="this.start();" wmMarquee role="marquee" aria-live="off" ${t.getAttrMarkup(e)}>`,post:()=>`</${u}>`})));var h=Object.freeze({__proto__:null,default:()=>{}});const m=new i.IDGenerator("wm_anchor");t.register("wm-anchor",(()=>({pre:e=>{const i=m.nextUid();return`<a wmAnchor #${i}="wmAnchor" role="link" data-identifier="anchor" [attr.aria-label]="${i}.hint || ${i}.caption" ${t.getAttrMarkup(e)}>`},post:()=>"</a>"})));var g=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-audio",(()=>({pre:e=>`<div wmAudio ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var f=Object.freeze({__proto__:null,default:()=>{}});const v=new i.IDGenerator("wm_html");t.register("wm-html",(()=>({pre:e=>{const i=v.nextUid();return`<div wmHtml #${i}="wmHtml" [attr.aria-label]="${i}.hint || 'HTML content'" ${t.getAttrMarkup(e)}>`},post:()=>"</div>"})));var b=Object.freeze({__proto__:null,default:()=>{}});const y="span";t.register("wm-icon",(()=>({pre:e=>`<${y} wmIcon aria-hidden="true" ${t.getAttrMarkup(e)}>`,post:()=>`</${y}>`})));var w=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-iframe",(()=>({pre:e=>`<div wmIframe ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var C=Object.freeze({__proto__:null,default:()=>{}});let P="p";const I=new i.IDGenerator("wm_label");t.register("wm-label",(()=>({pre:e=>{if(e.get("notag"))P="label";else{if(!e.get("type")){const t=e.get("class")?e.get("class").split(" ").filter((e=>["h1","h2","h3","h4","h5","h6","p"].includes(e))):[];e.set("type",t.length?t[0]:"p")}P=e.get("type")}const i=I.nextUid();return`<${P} wmLabel #${i}="wmLabel" [attr.aria-label]="${i}.hint" ${t.getAttrMarkup(e)}>`},post:()=>`</${P}>`})));var A=Object.freeze({__proto__:null,default:()=>{}});const E=new i.IDGenerator("wm_picture");t.register("wm-picture",(()=>({pre:e=>{const i=E.nextUid();return`<img wmPicture #${i}="wmPicture" alt="image" wmImageCache="${e.get("offline")||"true"}" [attr.aria-label]="${i}.hint || 'Image'" ${t.getAttrMarkup(e)}>`}})));var O=Object.freeze({__proto__:null,default:()=>{}});const T=new i.IDGenerator("wm_spinner");t.register("wm-spinner",(()=>({pre:e=>{const i=T.nextUid();return`<div wmSpinner #${i}="wmSpinner" role="alert" [attr.aria-label]="${i}.hint || 'Loading...'" aria-live="assertive" aria-busy="true" ${t.getAttrMarkup(e)}>`},post:()=>"</div>"})));var x=Object.freeze({__proto__:null,default:()=>{}});const D=(e,t)=>e.attrs.find((e=>e.name===t)),R=(e,t)=>{const i=D(e,t);if(i)return i.value};t.register("wm-progress-bar",(()=>({template:e=>{const i=R(e,"dataset"),n=t.getBoundToExpr(i);if(n){let t=R(e,"type"),i=R(e,"datavalue");const s=(a=n,new RegExp(`bind:(${a}|${a}\\[\\$i])\\.`,"g"));t&&t.includes(n)&&(t=t.replace(s,""),D(e,"type").value=t),i&&i.includes(n)&&(i=i.replace(s,""),D(e,"datavalue").value=i)}var a},pre:e=>`<div wmProgressBar ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var S=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-progress-circle",(()=>({pre:e=>`<div wmProgressCircle ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var _=Object.freeze({__proto__:null,default:()=>{}});const M=new i.IDGenerator("wm_richtexteditor");t.register("wm-richtexteditor",(()=>({pre:e=>{const i=M.nextUid();return`<div wmRichTextEditor #${i}="wmRichTextEditor" role="textbox" [attr.aria-label]="${i}.hint || 'Richtext editor'" ${t.getFormMarkupAttr(e)}>`},post:()=>"</div>"})));var N=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-search",(()=>({pre:e=>`<div wmSearch ${t.getFormMarkupAttr(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var k=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-tree",(()=>({pre:e=>`<ul wmTree class="ztree" ${t.getAttrMarkup(e)}>`,post:()=>"</ul>"})));var L=Object.freeze({__proto__:null});t.register("wm-card",(()=>({pre:e=>`<div wmCard ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var F=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-card-content",(()=>({pre:e=>`<div wmCardContent partialContainer ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var j=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-card-actions",(()=>({pre:e=>`<div wmCardActions ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var $=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-card-footer",(()=>({pre:e=>`<div wmCardFooter ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var B=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-chart",(()=>({pre:e=>`<div wmChart redrawable aria-label="${e.get("type")} Chart" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var V=Object.freeze({__proto__:null,default:()=>{}});const G=new i.IDGenerator("wm_accordion_ref_");t.register("wm-accordion",(()=>({pre:(e,i)=>{const n=G.nextUid();return i.set("accordion_ref",n),`<div wmAccordion #${n}="wmAccordion" role="tablist" aria-multiselectable="true" ${t.getAttrMarkup(e)}>`},post:()=>"</div>",template:(e,n)=>{if((e=>e.attrs.find((e=>"type"===e.name&&"dynamic"===e.value)))(e)){const n=e.attrs.find((e=>"dataset"===e.name)),a=e.attrs.find((e=>"name"===e.name));if(!n)return;const s=t.getBoundToExpr(n.value);if(!s)return;i.updateTemplateAttrs(e,s,a.value)}},provide:(e,t)=>{const i=new Map;return i.set("accordion_ref",t.get("accordion_ref")),i}})));var W=Object.freeze({__proto__:null,default:()=>{}});const U=new i.IDGenerator("wm_accordionpane");t.register("wm-accordionpane",(()=>({pre:e=>{const i=U.nextUid();return`<div #${i}="wmAccordionPane" [attr.aria-expanded]="${i}.isActive" wmAccordionPane partialContainer wm-navigable-element="true" role="tab" ${t.getAttrMarkup(e)}>`},post:()=>"</div>"})));var q=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-container",(()=>({pre:e=>`<div wmContainer partialContainer wmSmoothscroll="${e.get("smoothscroll")||"false"}" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var z=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-gridcolumn",(()=>({pre:e=>`<div wmLayoutGridColumn ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var H=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-gridrow",(()=>({pre:e=>`<div wmLayoutGridRow ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Q=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-layoutgrid",(()=>({pre:e=>`<div wmLayoutGrid ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Y=Object.freeze({__proto__:null,default:()=>{}});const X="div",K=new i.IDGenerator("wm_panel");t.register("wm-panel",(()=>({pre:e=>{const i=K.nextUid();return`<${X} wmPanel #${i}="wmPanel" partialContainer wm-navigable-element="true" ${t.getAttrMarkup(e)}>`},post:()=>`</${X}>`}))),t.register("wm-panel-footer",(()=>({pre:e=>`<${X} wmPanelFooter ${t.getAttrMarkup(e)}>`,post:()=>`</${X}>`})));var J=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-segmented-control",(()=>({pre:e=>`<div wmSegmentedControl ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Z=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-segment-content",(()=>({pre:e=>`<li wmSegmentContent partialContainer wmSmoothscroll=${e.get("smoothscroll")||"false"} wm-navigable-element="true" ${t.getAttrMarkup(e)}>`,post:()=>"</li>"})));var ee=Object.freeze({__proto__:null,default:()=>{}});let te=1;t.register("wm-repeat-template",(()=>({requires:["wm-accordion","wm-tabs"],pre:(e,i,n,a)=>{const s=n&&n.get("accordion_ref")||a&&a.get("tabs_ref");if(s)return`<div *ngIf="${s}.fieldDefs && !${s}.fieldDefs.length">{{${s}.nodatamessage}}</div>\n <div wmRepeatTemplate #repeatItemRef="repeatItemRef" ${t.getAttrMarkup(e)} *ngFor="let item of ${s}.fieldDefs; let i = index;">\n <ng-container [ngTemplateOutlet]="widgetRef${te}"\n [ngTemplateOutletContext]="{item:item, index:i}"\n [ngTemplateOutletInjector]="${s}.createCustomInjector('dynamic_pane_' + repeatItemRef.trackId, {item:item, index:i})"></ng-container>\n </div>\n <ng-template #widgetRef${te++} let-item="item" let-index="index">`},post:()=>"</ng-template>"})));var ie=Object.freeze({__proto__:null,default:()=>{}});const ne=new i.IDGenerator("wm_tabs_ref_");t.register("wm-tabs",(()=>({pre:(e,i)=>{const n=ne.nextUid();return i.set("tabs_ref",n),`<div wmTabs #${n}="wmTabs" ${t.getAttrMarkup(e)}>`},post:()=>"</div>",template:(e,n)=>{if((e=>e.attrs.find((e=>"type"===e.name&&"dynamic"===e.value)))(e)){const n=e.attrs.find((e=>"dataset"===e.name)),a=e.attrs.find((e=>"name"===e.name));if(!n)return;const s=t.getBoundToExpr(n.value);if(!s)return;i.updateTemplateAttrs(e,s,a.value)}},provide:(e,t)=>{const i=new Map;return i.set("tabs_ref",t.get("tabs_ref")),i}})));var ae=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-tabpane",(()=>({pre:e=>`<div wmTabPane partialContainer ${t.getAttrMarkup(e)} wm-navigable-element="true" role="tabpanel">`,post:()=>"</div>"})));var se=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-tile",(()=>({pre:e=>`<div wmTile aria-describedby="Tile" wm-navigable-element="true" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var oe=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-wizard",(()=>({pre:e=>`<div wmWizard role="tablist" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var re=Object.freeze({__proto__:null,default:()=>{}});const le="form",ce=new i.IDGenerator("wizard_step_id_");t.register("wm-wizardstep",(()=>({pre:e=>{const i=ce.nextUid();return`<${le} wmWizardStep #${i}="wmWizardStep" ${t.getAttrMarkup(e)}>\n <ng-template [ngIf]="${i}.isInitialized">`},post:()=>`</ng-template></${le}>`})));var de=Object.freeze({__proto__:null,default:()=>{}});const pe="button",ue=new i.IDGenerator("wm_barcodescanner");t.register("wm-barcodescanner",(()=>({pre:e=>{const i=ue.nextUid();return`<${pe} wmBarcodescanner #${i}="wmBarcodescanner" [attr.aria-label]="${i}.hint || 'Barcode scanner'" ${t.getAttrMarkup(e)}>`},post:()=>`</${pe}>`})));var he=Object.freeze({__proto__:null,default:()=>{}});const me="button",ge=new i.IDGenerator("wm_camera");t.register("wm-camera",(()=>({pre:e=>{const i=ge.nextUid();return`<${me} type='button' wmCamera #${i}="wmCamera" [attr.aria-label]="${i}.hint || 'Camera'" ${t.getAttrMarkup(e)}>`},post:()=>`</${me}>`})));var fe=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-alertdialog",(()=>({pre:e=>`<div wmAlertDialog role="alertdialog" wm-navigable-element="true" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var ve=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-confirmdialog",(()=>({pre:e=>`<div wmConfirmDialog wm-navigable-element="true" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var be=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-dialogactions",(()=>({pre:e=>`<ng-template #dialogFooter><div wmDialogFooter data-identfier="actions" ${t.getAttrMarkup(e)}>`,post:()=>"</div></ng-template>"})));var ye=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-dialog",(()=>({pre:e=>`<div wmDialog ${t.getAttrMarkup(e)} aria-modal="true" role="dialog" wm-navigable-element="true"><ng-template #dialogBody>`,post:()=>"</ng-template></div>"}))),t.register("wm-view",(()=>({pre:e=>"",post:()=>""})));var we=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-iframedialog",(()=>({pre:e=>`<div wmIframeDialog wm-navigable-element="true" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Ce=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-logindialog",(()=>({pre:e=>`<div wmDialog wmLoginDialog ${t.getAttrMarkup(e)} eventsource.bind="Actions.loginAction" wm-navigable-element="true"><ng-template #dialogBody>`,post:()=>"</ng-template></div>"})));var Pe=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-pagedialog",(()=>({pre:(e,i)=>{const n=e.get("content");e.delete("content");const a=e.get("content.bind");e.delete("content.bind");const s=e.get("load.event");e.delete("load.event");let o="",r="";s&&(o=`load.event="${s}"`),a?r=`content.bind="${a}"`:n&&(r=`content="${n}"`);let l="";return r&&(i.set("hasPartialContent",!0),l+=`<ng-template><div wmContainer #partial partialContainer ${r} width="100%" height="100%" ${o}>`),`<div wmPartialDialog ${t.getAttrMarkup(e)}>${l}`},post:(e,t)=>{let i="";return t.get("hasPartialContent")&&(i="</div></ng-template>"),`${i}</div>`}})));var Ie=Object.freeze({__proto__:null,default:()=>{}});const Ae="quickedit",Ee="form",Oe="dialog",Te={integer:["number","text","select","checkboxset","radioset","rating","slider","currency","autocomplete","chips"],big_integer:["number","text","select","checkboxset","radioset","rating","slider","currency","autocomplete","chips"],short:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],float:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],big_decimal:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],number:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],double:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],long:["number","text","select","checkboxset","radioset","rating","slider","currency","autocomplete","chips"],byte:["number","text","select","checkboxset","radioset","slider","currency","autocomplete","chips"],string:["text","number","textarea","password","richtext","select","checkboxset","radioset","date","time","timestamp","switch","currency","autocomplete","chips","colorpicker"],character:["text","number","textarea","password","richtext","select","checkboxset","radioset","switch","currency","autocomplete","chips"],text:["text","number","textarea","password","richtext","select","checkboxset","radioset","date","time","timestamp","switch","currency","autocomplete","chips","colorpicker"],date:["date","text","number","select","checkboxset","radioset","autocomplete","chips"],time:["time","text","number","select","checkboxset","radioset","autocomplete","chips"],timestamp:["timestamp","text","number","select","checkboxset","radioset","autocomplete","chips"],datetime:["datetime","text","select","checkboxset","radioset","autocomplete","chips"],boolean:["checkbox","radioset","toggle","select"],list:["select","radioset","checkboxset","switch","autocomplete","chips"],clob:["text","textarea","richtext"],blob:["upload"],file:["upload"],custom:["text","number","textarea","password","checkbox","toggle","slider","richtext","currency","switch","select","checkboxset","radioset","date","time","timestamp","rating","datetime","autocomplete","chips","colorpicker"]},xe=new Set([i.FormWidgetType.SELECT,i.FormWidgetType.CHECKBOXSET,i.FormWidgetType.RADIOSET,i.FormWidgetType.SWITCH,i.FormWidgetType.AUTOCOMPLETE,i.FormWidgetType.CHIPS,i.FormWidgetType.TYPEAHEAD,i.FormWidgetType.RATING]),De=e=>{let t=Te[e]&&Te[e][0];e===i.DataType.BOOLEAN&&(t=i.FormWidgetType.SELECT);return[i.FormWidgetType.TEXT,i.FormWidgetType.NUMBER,i.FormWidgetType.SELECT,i.FormWidgetType.AUTOCOMPLETE,i.FormWidgetType.DATE,i.FormWidgetType.TIME,i.FormWidgetType.DATETIME].includes(t)?t:i.FormWidgetType.TEXT},Re=new i.IDGenerator("formfield_"),Se=new Map([[i.FormWidgetType.SELECT,["Select Min value","Select Max value","Select value"]],[i.FormWidgetType.DATETIME,["Select Min date time","Select Max date time","Select date time"]],[i.FormWidgetType.TIME,["Select Min time","Select Max time","Select time"]],[i.FormWidgetType.DATE,["Select Min date","Select Max date","Select date"]],[i.FormWidgetType.TEXTAREA,["","","Enter value"]],[i.FormWidgetType.RICHTEXT,["","","Enter value"]],[i.FormWidgetType.COLORPICKER,["Select Color","Select Color","Select Color"]],[i.FormWidgetType.CHIPS,["","","Type here..."]],[i.FormWidgetType.PASSWORD,["Enter Min value","Enter Max value","Enter value"]],[i.FormWidgetType.NUMBER,["Enter Min value","Enter Max value","Enter value"]],[i.FormWidgetType.TEXT,["Enter Min value","Enter Max value","Enter value"]],[i.FormWidgetType.CURRENCY,["Enter Min value","Enter Max value","Enter value"]],[i.FormWidgetType.AUTOCOMPLETE,["","","Search"]]]),_e=(e,t,i)=>{const n=1===i?"maxplaceholder":"placeholder";let a=e.get(n);a||""===a||(a=Se.get(t)&&Se.get(t)[i],a&&e.set(n,a))},Me=(e,t)=>{const n=e.get("name"),a=(e.get("key")||n||"").trim(),s=t.isMaxWidget?`formControlName="${a}_max"`:t.isInList?`[formControlName]="${t.counter}._fieldName"`:`formControlName="${a}"`,o=t.isMaxWidget?"#formWidgetMax":"#formWidget",r=n?t.isMaxWidget?`name="${n}_formWidgetMax"`:`name="${n}_formWidget"`:"",l=`[ngClass]="${e.get("ngclass")}"`,c=`[class.hidden]="!${t.pCounter}.isUpdateMode && ${t.counter}.viewmodewidget !== 'default'" ${s} ${t.eventsTmpl} ${l} ${o} ${r}`;return i.getFormWidgetTemplate(t.widgetType,c,e,{counter:t.counter,pCounter:t.pCounter})},Ne=(e,t,n)=>{if("true"===e.get("is-related"))return`${n}.getDisplayExpr()`;if(t===i.FormWidgetType.PASSWORD)return"'********'";let a=`${n}.value`;return t===i.FormWidgetType.DATETIME||t===i.FormWidgetType.TIMESTAMP?(a+=` | toDate:${n}.formWidget.datepattern || 'yyyy-MM-dd hh:mm:ss a'`,a):t===i.FormWidgetType.TIME?(a+=` | toDate:${n}.formWidget.timepattern || 'hh:mm a'`,a):t===i.FormWidgetType.DATE?(a+=` | toDate:${n}.formWidget.datepattern || 'yyyy-MMM-dd'`,a):t===i.FormWidgetType.RATING||t===i.FormWidgetType.UPLOAD?"":(s=t,xe.has(s)&&"All Fields"===e.get("datafield")?`${n}.getDisplayExpr()`:`${n}.getCaption()`);var s},ke=e=>({requires:["wm-form","wm-liveform","wm-livefilter","wm-list"],pre:(n,a,s,o,r,l)=>{const c=Re.nextUid(),d=s||o||r,p=d&&d.get("form_reference")||"form",u=n.get("widget")||i.FormWidgetType.TEXT,h=e?"form-field":"filter-field",m="wmform-field-error-"+i.generateGUId(),g=e?`<p *ngIf="${c}._control?.invalid && ${c}._control?.touched && ${p}.isUpdateMode"\n class="help-block text-danger" aria-hidden="false"\n aria-live="assertive" [attr.aria-label]="${c}.validationmessage" id="${m}"><span aria-hidden="true" [textContent]="${c}.validationmessage"></span></p>`:"",f=u===i.FormWidgetType.UPLOAD?"":(e=>{const i=new Map;return e.has("focus.event")||e.set("focus.event",""),e.has("blur.event")||e.set("blur.event",""),e.forEach(((t,n)=>{n.endsWith(".event")&&("focus.event"===n?t=`_onFocusField($event);${t}`:"blur.event"===n&&(t=`_onBlurField($event);${t}`),i.set(n,t),e.delete(n))})),t.getFormMarkupAttr(i)})(n),v=i.isMobileApp()?"col-xs-12":"col-sm-12",b=p===(l&&l.get("parent_form_reference"));return n.set("__validationId",m),n.set("__widgetType",u),n.delete("widget"),a.set("counter",c),"true"===n.get("is-range")?(_e(n,u,0),_e(n,u,1)):_e(n,u,2),`<div data-role="${h}" [formGroup]="${p}.ngform" wmFormField wmCaptionPosition #${c}="wmFormField" widgettype="${u}" ${t.getFormMarkupAttr(n)}>\n <div class="live-field form-group app-composite-widget clearfix caption-{{${p}.captionposition}}" widget="${u}">\n <label [hidden]="!${c}.displayname" class="app-label control-label formfield-label {{${p}._captionClass}}"\n [ngStyle]="{width: ${p}.captionsize}" [ngClass]="{'text-danger': ${c}._control?.invalid && ${c}._control?.touched && ${p}.isUpdateMode,\n required: ${p}.isUpdateMode && ${c}.required}" [textContent]="${c}.displayname"> </label>\n <div [ngClass]="${c}.displayname ? ${p}._widgetClass : '${v}'">\n <label class="form-control-static app-label"\n [hidden]="${p}.isUpdateMode || ${c}.viewmodewidget === 'default' || ${c}.widgettype === 'upload'" [innerHTML]="${Ne(n,u,c)}"></label>\n ${((e,t,n,a,s,o)=>{if("true"!==e.get("is-range"))return Me(e,{widgetType:t,eventsTmpl:n,counter:a,pCounter:s,isInList:o});const r=i.isMobileApp()?"col-xs-6":"col-sm-6";return`<div class="${r}">${Me(e,{widgetType:t,eventsTmpl:n,counter:a,pCounter:s})}</div>\n <div class="${r}">${Me(e,{widgetType:t,eventsTmpl:n,counter:a,pCounter:s,isMaxWidget:!0})}</div>`})(n,u,f,c,p,b)}\n <span aria-hidden="true" *ngIf="${c}.showPendingSpinner" class="form-field-spinner fa fa-circle-o-notch fa-spin form-control-feedback"></span>\n <p *ngIf="!(${c}._control?.invalid && ${c}._control?.touched) && ${p}.isUpdateMode"\n class="help-block" aria-hidden="true" role="alert" aria-live="polite" [textContent]="${c}.hint"></p>\n ${g}\n </div>\n </div>`},post:()=>"</div>",provide:(e,t)=>{const i=new Map;return i.set("form_reference",t.get("counter")),i},imports:e=>{const t=i.getRequiredFormWidget(e.get("__widgetType")||e.get("type"));return e.delete("__widgetType"),[t,"wm-form"]}});t.register("wm-form-field",ke.bind(void 0,!0)),t.register("wm-filter-field",ke.bind(void 0,!1));var Le=Object.freeze({__proto__:null,default:()=>{}});const Fe=e=>({pre:i=>`<div wmFormAction name="${i.get("name")||i.get("key")}" ${t.getAttrMarkup(i)} ${e}>`,post:()=>"</div>"});t.register("wm-form-action",Fe.bind(void 0,"")),t.register("wm-filter-action",Fe.bind(void 0,' update-mode="true" '));var je=Object.freeze({__proto__:null,default:()=>{}});const $e="form",Be=new i.IDGenerator("form_"),Ve=new Set(["wm-text","wm-textarea","wm-checkbox","wm-slider","wm-richtexteditor","wm-currency","wm-switch","wm-select","wm-checkboxset","wm-radioset","wm-date","wm-time","wm-timestamp","wm-upload","wm-rating","wm-datetime","wm-search","wm-chips","wm-colorpicker","wm-table"]);let Ge;const We=(e=[])=>{e.forEach((e=>{if("wm-form-field"===e.name&&Ge++,Ve.has(e.name)){let t=e.attrs.find((e=>"key"===e.name||"name"===e.name));if(t=t&&t.value,!t){let i=e.attrs.find((e=>"datavalue"===e.name));if(i&&i.value){const e=/\((.*)\)/;i=i.value.match(e),i&&i.length>1&&(t=i[1].replace(/["']/g,""))}}e.attrs.push(new n.Attribute("formControlName",t,1,1,1,void 0,void 0)),e.attrs.push(new n.Attribute("wmFormWidget","",1,1,1,void 0,void 0))}We(e.children)}))},Ue=(e="")=>({requires:["wm-livetable","wm-login"],template:e=>{Ge=0,We(e.children)},pre:(i,n,a,s)=>{let o,r;const l=s&&s.get("isLogin")?"app-login":"",c=Be.nextUid(),d=i.get("dependson")?`dependson="${i.get("dependson")}"`:"";d&&i.set("dependsontable",i.get("dependson"));const p="page"===i.get("formlayout")?"app-device-liveform panel liveform-inline":"",u=["title","title.bind","iconclass","iconclass.bind","width"];i.delete("dependson");const h=`<${$e} wmForm data-role="${l}" ${e} #${c} ngNativeValidate [formGroup]="${c}.ngform" [noValidate]="${c}.validationtype !== 'html'"\n class="${p}" [class]="${c}.captionAlignClass" [autocomplete]="${c}.autocomplete ? 'on' : 'off'" captionposition=${i.get("captionposition")}`;if(i.set("numberOfFields",`${Ge}`),n.set("counter",c),(e=>{if(e.get("formdata.bind")){const i=t.getDataSource(e.get("formdata.bind"));i&&e.set("formdatasource.bind",i)}})(i),"dialog"===i.get("formlayout")){r=a?a.get("liveform_dialog_id"):`liveform_dialog_id_${c}`,i.set("dialogId",r);const e=new Map;return u.forEach((t=>{i.get(t)&&e.set(t,i.get(t))})),i.set("width","100%"),o=t.getAttrMarkup(i),`<div data-identifier="liveform" init-widget class="app-liveform liveform-dialog" ${d} dialogid="${r}">\n <div wmDialog class="app-liveform-dialog" name="${r}" role="form" ${t.getAttrMarkup(e)} modal="true">\n <ng-template #dialogBody>\n ${h} ${o}>`}let m="",g="";if("page"===i.get("formlayout")){const e=`device_liveform_header_${c}`,n=new Map;n.set("title",i.get("title")),n.set("backbtnclick.event",i.get("backbtnclick.event")),g=`<ng-template #buttonRef let-btn="btn">\n <button wmButton name="{{btn.key}}" class="navbar-btn btn-primary btn-transparent" iconclass.bind="btn.iconclass" show.bind="btn.show"\n (click)="${c}.invokeActionEvent($event, btn.action)" type.bind="btn.type" hint.bind="btn.title" shortcutkey.bind="btn.shortcutkey" disabled.bind="btn.disabled"\n tabindex.bind="btn.tabindex" [class.hidden]="btn.updateMode ? !${c}.isUpdateMode : ${c}.isUpdateMode"></button>\n </ng-template>`,m=`<header wmMobileNavbar name="${e}" ${t.getAttrMarkup(n)}>\n <ng-container *ngFor="let btn of ${c}.buttonArray; let i = index"\n [ngTemplateOutlet]="buttonRef"\n [ngTemplateOutletContext]="{btn:btn}"\n [ngTemplateOutletInjector]="${c}.createCustomInjector('mobile_' + i, {item:item, index:i})">\n </ng-container>\n </header>\n <div class="form-elements panel-body" >`}o=t.getAttrMarkup(i);return`${d?`<div ${d}>`:""}${h} ${o}>\n ${g} ${m}`},post:e=>"dialog"===e.get("formlayout")?"</form></ng-template></div></div>":"page"===e.get("formlayout")?`</div></${$e}>`:e.get("dependsontable")?`</${$e}></div>`:`</${$e}>`,provide:(e,t)=>{const i=new Map;return i.set("form_reference",t.get("counter")),i}});t.register("wm-form",Ue),t.register("wm-liveform",(()=>Ue("wmLiveForm"))),t.register("wm-livefilter",(()=>Ue("wmLiveFilter")));var qe=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-calendar",(()=>({pre:e=>`<div wmCalendar redrawable style="width:100%" aria-label="${e.get("view")?e.get("view")+" view":"month view"}" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var ze=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-chips",(()=>({pre:e=>`<ul wmChips role="listbox" ${t.getAttrMarkup(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</ul>"})));var He=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-colorpicker",(()=>({pre:e=>`<div wmColorPicker ${t.getAttrMarkup(e)} role="input" ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var Qe=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-currency",(()=>({pre:e=>`<div wmCurrency ${t.getAttrMarkup(e)} role="input" ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var Ye=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-buttongroup",(()=>({pre:e=>`<div wmButtonGroup role="group" aria-labelledby="button group" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Xe=Object.freeze({__proto__:null,default:()=>{}});const Ke="button",Je=new i.IDGenerator("wm_button");t.register("wm-button",(()=>({pre:e=>{const i=Je.nextUid();return`<${Ke} wmButton #${i}="wmButton" [attr.aria-label]="${i}.hint || ${i}.caption || null" ${t.getAttrMarkup(e)}>`},post:()=>`</${Ke}>`})));var Ze=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-checkbox",(()=>({pre:e=>`<div wmCheckbox ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var et=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-checkboxset",(()=>({pre:e=>`<ul role="group" wmCheckboxset ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</ul>"})));var tt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-composite",(()=>({pre:e=>`<div wmComposite wmCaptionPosition ${t.setChildAttrs(e)} ${t.getAttrMarkup(e)}>`,post:()=>`</div${t.clearChildAttrs()}>`})));var it=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-number",(()=>({pre:e=>`<div wmNumber ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var nt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-radioset",(()=>({pre:e=>`<ul role="radiogroup" wmRadioset ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</ul>"})));var at=Object.freeze({__proto__:null,default:()=>{}});const st="wm-select";t.register("wm-select",(()=>({pre:e=>`<${st} ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>`</${st}>`})));var ot=Object.freeze({__proto__:null,default:()=>{}});const rt=new i.IDGenerator("wm_switch");t.register("wm-switch",(()=>({pre:e=>{const n=rt.nextUid();return`<div wmSwitch #${n}="wmSwitch" [attr.aria-label]="${n}.hint || 'Switch button'" ${t.getFormMarkupAttr(e)} ${i.getNgModelAttr(e)}>`},post:()=>"</div>"})));var lt=Object.freeze({__proto__:null,default:()=>{}});const ct="wm-input";t.register("wm-text",(()=>({pre:e=>`<${ct} ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>`</${ct}>`})));var dt=Object.freeze({__proto__:null,default:()=>{}});const pt="wm-textarea";t.register("wm-textarea",(()=>({pre:e=>`<${pt} ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>`</${pt}>`})));var ut=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-datetime",(()=>({pre:e=>`<div wmDateTime ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var ht=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-date",(()=>({pre:e=>`<div wmDate ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var mt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-time",(()=>({pre:e=>`<div wmTime ${t.getFormMarkupAttr(e)} ${t.getChildAttrs(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var gt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-fileupload",(()=>({pre:e=>{if(e.get("select.event")){const i=t.getDataSource(e.get("select.event"));e.set("datasource.bind",i)}return`<div wmFileUpload ${t.getAttrMarkup(e)} role="input">`},post:()=>"</div>"})));var ft=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-rating",(()=>({pre:e=>`<div wmRating ${t.getFormMarkupAttr(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var vt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-slider",(()=>({pre:e=>`<div wmSlider ${t.getAttrMarkup(e)} ${i.getNgModelAttr(e)}>`,post:()=>"</div>"})));var bt=Object.freeze({__proto__:null,default:()=>{}});function yt(e,t,i,a){const s=e.attrs.find((e=>e.name===t));s&&i.attrs.push(new n.Attribute(a,s.value,s.sourceSpan,s.keySpan,s.valueSpan,void 0,void 0))}t.register("wm-media-list",(()=>({template:e=>{let t;const i=e.attrs.find((e=>"dataset"===e.name)),a=(e=[])=>{e.forEach((e=>{e.name&&"wm-list"!==e.name&&(e.attrs.forEach((e=>{e.value.startsWith(`bind:${t}.data[$i]`)?e.value=e.value.replace(`${t}.data[$i]`,"item"):e.value.startsWith(`bind:${t}`)&&(e.value=e.value.replace(t,"item"))})),a(e.children))}))};i&&i.value.startsWith("bind:")&&(t=i.value.replace("bind:","")),t&&a(e.children);const s=e.children.find((e=>e instanceof n.Element&&"wm-media-template"===e.name));null!=s&&(yt(s,"width",e,"thumbnailwidth"),yt(s,"height",e,"thumbnailheight"))},pre:e=>`<div wmMediaList ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var wt=Object.freeze({__proto__:null,default:()=>{}});const Ct="ng-template";t.register("wm-media-template",(()=>({pre:()=>`<${Ct} #mediaListTemplate let-item="item" let-index="index">`,post:()=>`</${Ct}>`})));var Pt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-list",(()=>({requires:["wm-form","wm-liveform"],template:e=>{const n=e.attrs.find((e=>"dataset"===e.name)),a=e.attrs.find((e=>"name"===e.name));if(!n)return;const s=t.getBoundToExpr(n.value);s&&i.updateTemplateAttrs(e,s,a.value,"itemRef.")},pre:(e,i,n,a)=>{const s=n||a;return i.set("form_reference",s&&s.get("form_reference")),`<div wmList wmLiveActions ${t.getAttrMarkup(e)}>`},post:()=>"</div>",provide:(e,t)=>{const i=new Map;return i.set("parent_form_reference",t.get("form_reference")),i}}))),t.register("wm-listtemplate",(()=>({pre:()=>'<ng-template #listTemplate let-item="item" let-$index="$index" let-itemRef="itemRef" let-$first="$first" let-$last="$last" let-currentItemWidgets="currentItemWidgets" >',post:()=>"</ng-template>"}))),t.register("wm-list-action-template",(()=>({template:e=>{e.attrs.find((e=>"position"===e.name)).value;e.children.filter((e=>e instanceof n.Element&&"wm-button"===e.name)).forEach((t=>{!function(e,t,i,a){const s=e.attrs.find((e=>e.name===t));s&&i.attrs.push(new n.Attribute(a,s.value,s.sourceSpan,s.keySpan,s.valueSpan,void 0,void 0))}(e,"position",t,"swipe-position")}))},pre:(e,i)=>"left"===e.get("position")?`<ng-template #listLeftActionTemplate>\n <li class="app-list-item-action-panel app-list-item-left-action-panel actionMenu" ${t.getAttrMarkup(e)}>`:"right"===e.get("position")?`<ng-template #listRightActionTemplate>\n <li class="app-list-item-action-panel app-list-item-right-action-panel actionMenu" ${t.getAttrMarkup(e)}>`:void 0,post:()=>"</li></ng-template>"})));var It=Object.freeze({__proto__:null,default:()=>{}});const At=new i.IDGenerator("liveform_dialog_id_");t.register("wm-livetable",(()=>({pre:(e,i)=>{const n=At.nextUid();return i.set("counter",n),`<div wmLiveTable ${t.getAttrMarkup(e)} dialogid="${n}">`},post:()=>"</div>",provide:(e,t)=>{const i=new Map;return i.set("liveform_dialog_id",t.get("counter")),i}})));var Et=Object.freeze({__proto__:null,default:()=>{}});const Ot=new i.IDGenerator("wm_message");t.register("wm-message",(()=>({pre:e=>`<p wmMessage tabindex="0" #${Ot.nextUid()}="wmMessage" ${t.getAttrMarkup(e)}>`,post:()=>"</p>"})));var Tt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-breadcrumb",(()=>({pre:e=>`<ol wmBreadcrumb ${t.getAttrMarkup(e)}>`,post:()=>"</ol>"})));var xt=Object.freeze({__proto__:null,default:()=>{}});const Dt="div";t.register("wm-menu",(()=>({pre:e=>{const i=e.get("width");let n="";if(i){return n=["%","px"].some((e=>i.includes(e)))?`[ngStyle]="{'width': '${i}'}"`:`[ngStyle]="{'width': '${i}px'}"`,`<${Dt} wmMenu dropdown ${t.getAttrMarkup(e)} ${n}>`}return`<${Dt} wmMenu dropdown ${t.getAttrMarkup(e)}>`},post:()=>`</${Dt}>`})));var Rt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-nav-item",(()=>({pre:e=>`<li wmNavItem role="listitem" ${t.getAttrMarkup(e)}>`,post:()=>"</li>"})));var St=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-nav",(()=>({pre:e=>`<ul wmNav data-element-type="wmNav" data-role="page-header" role="list" ${t.getAttrMarkup(e)}>`,post:()=>"</ul>"})));var _t=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-navbar",(()=>({pre:e=>`<nav wmNavbar data-element-type="wmNavbar" role="navigation" ${t.getAttrMarkup(e)}>`,post:()=>"</nav>"})));var Mt=Object.freeze({__proto__:null,default:()=>{}});const Nt="wm-popover";t.register("wm-popover",(()=>({requires:["wm-table"],pre:(e,i,n)=>{let a;if("inline"!==e.get("contentsource")){const t=e.get("content"),n=e.get("content.bind");let s="";t?s=`content="${t}"`:n&&(s=`content.bind="${n}"`),a=`<div wmContainer #partial partialContainer ${s}>`,i.set("hasPopoverContent",!0)}let s=`<${Nt} wmPopover ${t.getAttrMarkup(e)}>`;return s+=`<ng-template ${n?'let-row="row"':""}><div tabindex="0" class="popover-start sr-only" aria-label="">popover content start</div>`,a&&(s+=`${a||""}`),s},post:(e,t)=>{let i="";return t.get("hasPopoverContent")&&(i+="</div>"),`${i}<div tabindex="0" class="popover-end sr-only" aria-label="">popover content ended</div></ng-template></${Nt}>`}})));var kt=Object.freeze({__proto__:null,default:()=>{}});const Lt=(e,t)=>e&&e.children.find((e=>e instanceof n.Element&&e.name===t)),Ft=e=>new n.Element(e,[],[],Bt,Bt,Bt),jt=(e,t,i)=>{const a=new n.Attribute(t,i,Bt,Bt,Bt,void 0,void 0);e.attrs.push(a)},$t=(e,t)=>{let i;if(t)return a.forEach(t.children,(t=>(t instanceof n.Element&&(t.name===e?i=t:t.children&&(i=$t(e,t))),!i))),i},Bt={},Vt=new i.IDGenerator("wm_page");t.register("wm-page",(()=>({template:e=>{let t=Lt(Lt(e,"wm-content"),"wm-page-content");if(t||(t=$t("wm-page-content",$t("wm-content",e))),t){const e=Ft("ng-container");if(jt(e,"*ngIf","compilePageContent"),e.children=e.children.concat(t.children),e.children.push(new n.Text("{{onPageContentReady()}}",null,void 0,void 0)),t.children=[e],i.isMobileApp()){const e=Ft("div");jt(e,"wmPageContentLoader",""),jt(e,"*ngIf","!showPageContent"),t.children.push(e)}}},pre:e=>{const i=Vt.nextUid();return`<div wmPage #${i}="wmPage" data-role="pageContainer" [attr.aria-label]="${i}.hint" ${t.getAttrMarkup(e)}>`},post:()=>"</div>"})));var Gt=Object.freeze({__proto__:null,default:()=>{}});const Wt=new i.IDGenerator("wm_layout");t.register("wm-layout",(()=>({pre:e=>{const i=Wt.nextUid();return`<div wmLayout #${i}="wmLayout" data-role="pageContainer" [attr.aria-label]="${i}.hint || 'Main page content'" ${t.getAttrMarkup(e)}>`},post:()=>"</div>"})));var Ut=Object.freeze({__proto__:null,default:()=>{}});const qt="router-outlet";t.register("wm-router-outlet",(()=>({pre:e=>`<div wmRouterOutlet name="wmRouterOutlet" ${t.getAttrMarkup(e)}><${qt} (activate)="onActivate($event)">`,post:()=>`</${qt}></div>`})));var zt=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-pagination",(()=>({pre:e=>`<nav wmPagination data-identifier="pagination" aria-label="Page navigation" ${t.getAttrMarkup(e)}>`,post:()=>"</nav>"})));var Ht=Object.freeze({__proto__:null,default:()=>{}});const Qt="main";t.register("wm-content",(()=>({pre:e=>`<${Qt} wmContent data-role="page-content" role="main" ${t.getAttrMarkup(e)}>`,post:()=>`</${Qt}>`})));var Yt=Object.freeze({__proto__:null,default:()=>{}});const Xt="footer",Kt=new i.IDGenerator("wm_footer");t.register("wm-footer",(()=>({pre:e=>{const i=Kt.nextUid();return`<${Xt} wmFooter #${i}="wmFooter" partialContainer data-role="page-footer" role="contentinfo" [attr.aria-label]="${i}.hint || 'Page footer'" ${t.getAttrMarkup(e)}>`},post:()=>`</${Xt}>`})));var Jt=Object.freeze({__proto__:null,default:()=>{}});const Zt="header",ei=new i.IDGenerator("wm_header");t.register("wm-header",(()=>({pre:e=>{const i=ei.nextUid();return`<${Zt} wmHeader #${i}="wmHeader" partialContainer data-role="page-header" role="banner" [attr.aria-label]="${i}.hint || 'Page header'" ${t.getAttrMarkup(e)}>`},post:()=>`</${Zt}>`})));var ti=Object.freeze({__proto__:null,default:()=>{}});const ii="aside",ni=new i.IDGenerator("wm_left_panel");t.register("wm-left-panel",(()=>({pre:e=>{const i=ni.nextUid();return`<${ii} wmLeftPanel #${i}="wmLeftPanel" partialContainer data-role="page-left-panel" [attr.aria-label]="${i}.hint || 'Left navigation panel'" wmSmoothscroll="${e.get("smoothscroll")||"false"}" ${t.getAttrMarkup(e)}>`},post:()=>`</${ii}>`})));var ai=Object.freeze({__proto__:null,default:()=>{}});const si="header";t.register("wm-mobile-navbar",(()=>({pre:e=>`<${si} wmMobileNavbar ${t.getAttrMarkup(e)}>`,post:()=>`</${si}>`})));var oi=Object.freeze({__proto__:null,default:()=>{}});const ri="aside",li=new i.IDGenerator("wm_right_panel");t.register("wm-right-panel",(()=>({pre:e=>{const i=li.nextUid();return`<${ri} wmRightPanel #${i}="wmRightPanel" partialContainer data-role="page-right-panel" role="complementary" [attr.aria-label]="${i}.hint || 'Right navigation panel'" ${t.getAttrMarkup(e)}>`},post:()=>`</${ri}>`})));var ci=Object.freeze({__proto__:null,default:()=>{}});const di=(e,t,i)=>{const a=new n.Attribute(t,i,pi,pi,pi,void 0,void 0);e.attrs.push(a)},pi={};t.register("wm-page-content",(()=>({template:e=>{for(let i of e.attrs)if("spa"===i.name&&"true"===i.value){const i=(t="ng-container",new n.Element(t,[],[],pi,pi,pi));di(i,"*ngIf","compilePageContent"),i.children=i.children.concat(e.children),i.children.push(new n.Text("{{onPageContentReady()}}",null,void 0,void 0)),e.children=[i];break}var t},pre:e=>`<div wmPageContent ${e.get("spa")?"wmSpaPage":""} wmSmoothscroll="${e.get("smoothscroll")||"false"}" ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var ui=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-mobile-tabbar",(()=>({pre:e=>`<div wmMobileTabbar ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var hi=Object.freeze({__proto__:null,default:()=>{}});const mi="section",gi=new i.IDGenerator("wm_top_nav");t.register("wm-top-nav",(()=>({pre:e=>{const i=gi.nextUid();return`<${mi} wmTopNav #${i}="wmTopNav" partialContainer data-role="page-topnav" role="navigation" [attr.aria-label]="${i}.hint || 'Second level navigation'" ${t.getAttrMarkup(e)}>`},post:()=>`</${mi}>`})));var fi=Object.freeze({__proto__:null,default:()=>{}});const vi="section",bi={};t.register("wm-partial",(()=>({template:e=>{const t=(i="ng-container",new n.Element(i,[],[],bi,bi,bi));var i;((e,t,i)=>{const a=new n.Attribute(t,i,bi,bi,bi,void 0,void 0);e.attrs.push(a)})(t,"*ngIf","compileContent"),t.children=t.children.concat(e.children),e.children.length=0,e.children.push(t)},pre:e=>`<${vi} wmPartial data-role="partial" ${t.getAttrMarkup(e)}>`,post:()=>`</${vi}>`})));var yi=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-param",(()=>({pre:e=>`<div wmParam hidden ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var wi=Object.freeze({__proto__:null,default:()=>{}});const Ci="section";t.register("wm-prefab",(()=>({pre:e=>`<${Ci} wmPrefab redrawable data-role="prefab" ${t.getAttrMarkup(e)}>`,post:()=>`</${Ci}>`})));var Pi=Object.freeze({__proto__:null,default:()=>{}});const Ii={};t.register("wm-prefab-container",(()=>({template:e=>{const t=(i="ng-container",new n.Element(i,[],[],Ii,Ii,Ii));var i;((e,t,i)=>{const a=new n.Attribute(t,i,Ii,Ii,Ii,void 0,void 0);e.attrs.push(a)})(t,"*ngIf","compileContent"),t.children=t.children.concat(e.children),e.children.length=0,e.children.push(t)},pre:e=>`<div wmPrefabContainer ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Ai=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-table-action",(()=>({pre:e=>`<div name="${e.get("name")||e.get("key")}" wmTableAction ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Ei=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-table-column-group",(()=>({pre:e=>`<div wmTableColumnGroup ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Oi=Object.freeze({__proto__:null,default:()=>{}});const Ti=new i.IDGenerator("data_table_form_"),xi=new Set(["wm-text","wm-textarea","wm-checkbox","wm-slider","wm-currency","wm-switch","wm-select","wm-checkboxset","wm-radioset","wm-date","wm-time","wm-timestamp","wm-rating","wm-datetime","wm-search","wm-chips","wm-colorpicker"]),Di=(e=[])=>{let t=[];e.forEach((e=>{if(xi.has(e.name)){if("wm-checkbox"===e.name&&(t=e.attrs.filter((function(e){return"formControlName"===e.name})),t.length))return;e.attrs.push(new n.Attribute("[ngModelOptions]","{standalone: true}",1,1,1,void 0,void 0))}Di(e.children)}))},Ri=(e,n,a,s)=>{const o={},r=e.get("binding"),l=e.get("edit-widget-type")||((c={type:e.get("type"),"related-entity-name":e.get("related-entity-name"),"primary-key":e.get("primary-key")})["related-entity-name"]&&c["primary-key"]?i.FormWidgetType.SELECT:Te[c.type]&&Te[c.type][0]||i.FormWidgetType.TEXT);var c;let d="",p="",u="";l===i.FormWidgetType.UPLOAD?(o.uploadProps={formName:Ti.nextUid(),name:r},o.counter=s):(d=n?"#inlineWidgetNew":"#inlineWidget",p=n?`formControlName="${r}_new"`:`formControlName="${r}"`,u="wmFormWidget"),o.inputType="editinputtype";const h=n?"#inlineWidgetTmplNew":"#inlineWidgetTmpl",m=l===i.FormWidgetType.UPLOAD?"":(e=>{let t="";return e.forEach(((e,i)=>{i.endsWith(".event")&&(t+=`${i}="${e}" `)})),t})(e),g=(e=>{const i=new Map;return["disabled","disabled.bind"].forEach((t=>{e.get(t)&&(i.set(t,e.get(t)),e.delete(t))})),t.getAttrMarkup(i)})(e),f=`${d} ${u} key="${r}" data-field-name="${r}" ${p} ${m} ${g}`,v=n?"getPendingSpinnerStatusNew":"getPendingSpinnerStatus";return`<ng-template ${h} let-row="row" let-getControl="getControl" let-getValidationMessage="getValidationMessage" let-${v}="${v}">\n <div data-col-identifier="${r}" >\n ${i.getFormWidgetTemplate(l,f,e,o)}\n ${Si(a)}\n <div class="overlay" *ngIf="${v}()"><span aria-hidden="true" class="form-field-spinner fa fa-circle-o-notch fa-spin form-control-feedback"></span></div>\n <span class="sr-only" *ngIf="getValidationMessage()">{{getValidationMessage()}}</span>\n </div>\n </ng-template>`},Si=e=>{let t="";if("bottom"===e)t='<span class="help-block text-danger" *ngIf="getValidationMessage() && getControl() && getControl().invalid && getControl().touched">{{getValidationMessage()}}</span>';else t='<span placement="top" container="body" tooltip="{{getValidationMessage()}}" class="text-danger wi wi-error"\n *ngIf="getValidationMessage() && getControl() && getControl().invalid && getControl().touched">\n </span>';return t};t.register("wm-table-column",(()=>({requires:["wm-table"],template:(e,t)=>{if(e.children.length){if(1===e.children.length&&e.children[0]instanceof n.Text&&0===e.children[0].value.trim().length)return;t.set("customExpression",!0),Di(e.children)}},pre:(e,n,a)=>{let s="",o="",r="",l="";if(a){const n=a.get("table_reference");s="multicolumn"===a.get("filtermode")&&"false"!==e.get("searchable")?((e,n)=>{const a=e.get("filterwidget")||De(e.get("type")||i.DataType.STRING),s=e.get("binding"),o=e.get("type")||"string";let r,l;const c=e.get("filterdataset.bind");"autocomplete"===e.get("filterwidget")&&(c&&(r=`dataset.bind="${c}" datasource.bind="${t.getDataSource(c)}"`),l=`submit.event="changeFn('${s}')"`);const d=`#filterWidget formControlName="${s+"_filter"}" ${r} ${l} change.event="changeFn('${s}')"\n disabled.bind="isDisabled('${s}')"`;return`<ng-template #filterTmpl let-changeFn="changeFn" let-isDisabled="isDisabled">\n <div class="input-group ${a}" data-col-identifier="${s}">\n ${i.getFormWidgetTemplate(a,d,e,{inputType:"filterinputtype"})}\n <span class="input-group-addon filter-clear-icon" *ngIf="${n}.showClearIcon('${s}')">\n <button class="btn-transparent btn app-button" aria-label="Clear button" type="button" (click)="${n}.clearRowFilter('${s}')">\n <i class="app-icon wi wi-clear" aria-hidden="true"></i>\n </button>\n </span>\n <span class="input-group-addon" dropdown container="body" (onShown)="${n}.adjustContainer('${s}');">\n <button class="btn-transparent btn app-button" type="button" dropdownToggle><i class="app-icon wi wi-filter-list"></i></button>\n <ul class="matchmode-dropdown dropdown-menu" *dropdownMenu>\n <li *ngFor="let matchMode of ${n}.matchModeTypesMap['${o}']"\n [ngClass]="{active: matchMode === (${n}.rowFilter['${s}'].matchMode || ${n}.matchModeTypesMap['${o}'][0])}">\n <a href="javascript:void(0);" (click)="${n}.onFilterConditionSelect('${s}', matchMode)" [innerText]="${n}.matchModeMsgs[matchMode]"></a>\n </li>\n </ul>\n </span>\n </div></ng-template>`})(e,n):"";const c=a.get("editmode"),d=c!==Oe&&c!==Ee&&"true"!==e.get("readonly");o=d?Ri(e,!1,a.get("errorstyle"),n):"",r=d&&c===Ae&&"false"!==a.get("shownewrow")?Ri(e,!0,e.get("errorstyle")):"",l=` [formGroup]="${n}.ngform" `}const c=e.get("formatpattern"),d='<ng-template #customExprTmpl let-row="row" let-colDef="colDef" let-editRow="editRow" let-deleteRow="deleteRow" let-addNewRow="addNewRow">';let p="",u="";return n.get("customExpression")?(e.set("customExpression","true"),p=`${d}<div data-col-identifier="${e.get("binding")}">`):(c&&"None"!==c||i.isDateTimeType(e.get("type")))&&(u=(e=>{const t=`row.getProperty('${e.get("binding")}')`;let n=e.get("custompipeformat")||e.get("formatpattern"),a="";switch(!i.isDateTimeType(e.get("type"))||n&&"None"!==n||(e.set("formatpattern","toDate"),e.delete("datepattern"),n="toDate"),n){case"toDate":a=`{{${t} | toDate: colDef.datepattern}}`;break;case"toCurrency":e.get("currencypattern")&&(a=`{{${t} | toCurrency: '${e.get("currencypattern")}`,e.get("fractionsize")?a+=`': ${e.get("fractionsize")}}}`:a+="'}}");break;case"numberToString":e.get("fractionsize")&&(a=`{{${t} | numberToString: '${e.get("fractionsize")}'}}`);break;case"stringToNumber":a=`{{${t} | stringToNumber}}`;break;case"timeFromNow":a=`{{${t} | timeFromNow}}`;break;case"prefix":e.get("prefix")&&(a=`{{${t} | prefix: '${e.get("prefix")}'}}`);break;case"suffix":e.get("suffix")&&(a=`{{${t} | suffix: '${e.get("suffix")}'}}`);break;default:i.checkIsCustomPipeExpression(n)&&(a=`{{${t} | ${n} : row}}`)}return a})(e),u&&(n.set("customExpression",!0),e.set("customExpression","true"),p=`${d}<div data-col-identifier="${e.get("binding")}" title="${u}">${u}`)),`<div wmTableColumn ${t.getAttrMarkup(e)} ${l}>\n ${s}\n ${o}\n ${r}\n ${p}`},post:(e,t)=>{let i="";return t.get("customExpression")&&(i="</div></ng-template>"),`${i}</div>`},imports:e=>{const t=e.get("edit-widget-type"),n=e.get("filterwidget")||De(e.get("type")||i.DataType.STRING);return[i.getRequiredFormWidget(t),i.getRequiredFormWidget(n),"wm-table"]}})));var _i=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-table-row",(()=>({pre:e=>`<div wmTableRow ${t.getAttrMarkup(e)}>\n ${(e=>{const t="anchor"===e.get("widget-type")?"a":"button",n="anchor"===e.get("widget-type")?"wmAnchor":"wmButton",a=e.get("display-name")||e.get("title")||"Collapse/Expand";return`<ng-template #rowExpansionActionTmpl let-row="row">\n <${t} ${n}\n ${i.getRowActionAttrs(e)}\n class="${e.get("class")} row-expansion-button"\n iconclass="${e.get("collapseicon")}"\n type="button" aria-label="${a}"></${t}>\n </ng-template>`})(e)}\n <ng-template #rowExpansionTmpl let-row="row" let-rowDef="rowDef" let-containerLoad="containerLoad">\n <div wmContainer partialContainer content.bind="rowDef.content" load.event="containerLoad(widget)"\n [ngStyle]="{'height': rowDef.height, 'overflow-y': 'auto'}">\n <div *ngFor="let param of rowDef.partialParams | keyvalue" wmParam hidden\n [name]="param.key" [value]="param.value"></div>`,post:()=>"</div></ng-template></div>"})));var Mi=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-table-row-action",(()=>({pre:e=>`<div wmTableRowAction ${t.getAttrMarkup(e)}>\n ${(e=>{const t=e.get("action"),n=t?` click.event.delayed="${t}" `:"",a=t&&t.includes("editRow(")?'<button type="button" aria-label="Save edit icon" class="save row-action-button btn app-button btn-transparent save-edit-row-button hidden" title="Save">\n <i class="wi wi-done" aria-hidden="true"></i>\n </button>\n <button type="button" aria-label="Cancel edit icon" class="cancel row-action-button btn app-button btn-transparent cancel-edit-row-button hidden" title="Cancel">\n <i class="wi wi-cancel" aria-hidden="true"></i>\n </button>':"",s=t?t.includes("editRow(")?"edit edit-row-button":t.includes("deleteRow(")?"delete delete-row-button":"":"",o=e.get("tabindex")?`tabindex="${e.get("tabindex")}"`:"",r="anchor"===e.get("widget-type")?"a":"button";return`<ng-template #rowActionTmpl let-row="row">\n <${r} ${"anchor"===e.get("widget-type")?"wmAnchor":"wmButton"} data-action-key="${e.get("key")}"\n ${i.getRowActionAttrs(e)}\n class="row-action row-action-button ${e.get("class")} ${s}"\n iconclass="${e.get("iconclass")}"\n ${n}\n ${o}\n type="button"></${r}>\n ${a}\n </ng-template>`})(e)}`,post:()=>"</div>"})));var Ni=Object.freeze({__proto__:null,default:()=>{}});const ki=new i.IDGenerator("table_");let Li=0;function Fi(e,t){let i=0;e.forEach((e=>{const a=e.name,s=void 0!==t?t:i;"wm-table-column"!==a&&"wm-table-column-group"!==a||(e.attrs.push(new n.Attribute("index",""+Li,1,1,1,void 0,void 0)),e.attrs.push(new n.Attribute("headerIndex",""+s,1,1,1,void 0,void 0)),"wm-table-column-group"===a&&Fi(e.children,i),Li++,i++)}))}t.register("wm-table",(()=>({template:(e,n)=>{if(e.children.length){const t=e.children.some((e=>"wm-table-column"===e.name||"wm-table-column-group"===e.name));Fi(e.children),n.set("isdynamictable",t?"false":"true");const i=e.children.some((e=>"wm-table-row"===e.name));n.set("isrowexpansionenabled",i?"true":"false")}else n.set("isdynamictable","true");const a=e.attrs.find((e=>"dataset"===e.name)),s=e.attrs.find((e=>"name"===e.name));if(!a)return;const o=t.getBoundToExpr(a.value);o&&i.updateTemplateAttrs(e,o,s.value,"","row")},pre:(e,i)=>{const n=ki.nextUid();return i.set("counter",n),e.set("isdynamictable",i.get("isdynamictable")),e.set("isrowexpansionenabled",i.get("isrowexpansionenabled")),e.set("table_reference",n),`<div wmTable="${n}" wmTableFilterSort wmTableCUD #${n} data-identifier="table" ${t.getAttrMarkup(e)}>`},post:()=>"</div>",provide:(e,t)=>{const i=new Map;return i.set("table_reference",t.get("counter")),i.set("filtermode",e.get("filtermode")),i.set("errorstyle",e.get("errorstyle")),i.set("editmode",e.get("editmode")),i.set("shownewrow",e.get("shownewrow")),i}})));var ji=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-video",(()=>({pre:e=>`<div wmVideo ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var $i=Object.freeze({__proto__:null,default:()=>{}});const Bi="parentLinearLayout.spacing";t.register("wm-linearlayout",(()=>({requires:["wm-linearlayout"],pre:(e,i,n)=>{let a=e.get("spacing");return e.set("spacing",a&&"0"!==a||!n?a:n.get(Bi)),`<div wmLinearLayout ${t.getAttrMarkup(e)}>`},post:()=>"</div>",provide:(e,t)=>{const i=new Map;return i.set(Bi,e.get("spacing")),i}})));var Vi=Object.freeze({__proto__:null,default:()=>{}});t.register("wm-linearlayoutitem",(()=>({pre:e=>`<div wmLinearLayoutItem ${t.getAttrMarkup(e)}>`,post:()=>"</div>"})));var Gi=Object.freeze({__proto__:null,default:()=>{}});e.accordionBuild=W,e.accordionPaneBuild=q,e.alertDlgBuild=ve,e.anchorBuild=g,e.audioBuild=f,e.barcodeScannerBuild=he,e.breadcrumbBuild=xt,e.buttonBuild=Ze,e.buttonGroupBuild=Xe,e.calendarBuild=ze,e.cameraBuild=fe,e.cardActionsBuild=$,e.cardBuild=F,e.cardContentBuild=j,e.cardFooterBuild=B,e.carouselBuild=r,e.carouselTemplateBuild=d,e.chartBuild=V,e.checkboxBuild=et,e.checkboxSetBuild=tt,e.chipsBuild=He,e.colorPickerBuild=Qe,e.compositeBuild=it,e.confirmDlgBuild=be,e.containerBuild=z,e.contentBuild=Yt,e.currencyBuild=Ye,e.dateBuild=mt,e.dateTimeBuild=ht,e.dlgBuild=we,e.dlgFooterBuild=ye,e.fileUploadBuild=ft,e.footerBuild=Jt,e.formActionBuild=je,e.formBuild=qe,e.formFieldBuild=Le,e.headerBuild=ti,e.htmlBuild=b,e.iconBuild=w,e.iframeBuild=C,e.iframeDlgBuild=Ce,e.initComponentsBuildTask=()=>{},e.labelBuild=A,e.layoutBuild=Ut,e.leftPanelBuild=ai,e.lgBuild=Y,e.lgcolBuild=H,e.lgrowBuild=Q,e.linearLayoutBuild=Vi,e.linearLayoutItemBuild=Gi,e.listBuild=It,e.liveTableBuild=Et,e.loginBuild=p,e.loginDlgBuild=Pe,e.marqueeBuild=h,e.mediaListBuild=wt,e.mediaListItemBuild=Pt,e.menuBuild=Rt,e.messageBuild=Tt,e.mobileNavbarBuild=oi,e.navBuild=_t,e.navItemBuild=St,e.navbarBuild=Mt,e.numberBuild=nt,e.pageBuild=Gt,e.pageContentBuild=ui,e.paginationBuild=Ht,e.panelBuild=J,e.partialBuild=yi,e.partialDlgBuild=Ie,e.partialParamBuild=wi,e.pictureBuild=O,e.popoverBuild=kt,e.prefabBuild=Pi,e.prefabContainerBuild=Ai,e.progressBarBuild=S,e.progressCircleBuild=_,e.radiosetBuild=at,e.ratingBuild=vt,e.repeatTemplateBuild=ie,e.rightPanelBuild=ci,e.routerOutletBuild=zt,e.rteBuild=N,e.searchBuild=k,e.segContentBuild=ee,e.segControlBuild=Z,e.selectBuild=ot,e.sliderBuild=bt,e.spinnerBuild=x,e.switchBuild=lt,e.tabBarBuild=hi,e.tabPaneBuild=se,e.tableActionBuild=Ei,e.tableBuild=ji,e.tableColumnBuild=_i,e.tableColumnGroupBuild=Oi,e.tableRowActionBuild=Ni,e.tableRowBuild=Mi,e.tabsBuild=ae,e.textAreaBuild=ut,e.textBuild=dt,e.tileBuild=oe,e.timeBuild=gt,e.topNavBuild=fi,e.treeBuild=L,e.videoBuild=$i,e.wizardBuild=re,e.wizardStepBuild=de,Object.keys(t).forEach((function(i){"default"===i||Object.prototype.hasOwnProperty.call(e,i)||Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[i]}})}))})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("angular-imask"),require("@wm/components/base"),require("@wm/core"),require("lodash-es"),require("rxjs"),require("tslib")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","angular-imask","@wm/components/base","@wm/core","lodash-es","rxjs","tslib"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input={}),e.ng.core,e.ng.common,e.ng.forms,e.angularIMask,e.wm.components.base,e.wm.core,e._,e.rxjs,e.tslib)}(this,(function(e,t,i,n,a,s,o,r,l,c){"use strict";function d(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var p=d(t),u=d(i),h=d(n),m=d(a),g=d(s),f=d(o);const v=["wmButton",""],b=[[["",8,"caret"]]],y=[".caret"],w=(e,t,i)=>({width:e,height:t,margin:i}),C=(e,t,i,n)=>({width:e,height:t,margin:i,fontSize:n});function P(e,t){if(1&e&&(p.\u0275\u0275element(0,"img",5),p.\u0275\u0275pipe(1,"image")),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("src",p.\u0275\u0275pipeBind1(1,2,e.iconurl),p.\u0275\u0275sanitizeUrl)("ngStyle",p.\u0275\u0275pureFunction3(4,w,e.iconwidth,e.iconheight,e.iconmargin))}}function I(e,t){if(1&e&&p.\u0275\u0275element(0,"i",6),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("app-icon ",e.iconclass,""),p.\u0275\u0275property("ngStyle",p.\u0275\u0275pureFunction4(4,C,e.iconwidth,e.iconheight,e.iconmargin,e.iconwidth))}}function A(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"span",7),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275textInterpolate2("",e.caption," ",e.appLocale.LABEL_ICON,"")}}function E(e,t){if(1&e&&p.\u0275\u0275element(0,"span",8),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("textContent",e.badgevalue)}}const O={widgetType:"wm-button",hostClass:"btn app-button",displayType:s.DISPLAY_TYPE.INLINE_BLOCK};class T extends s.StylableComponent{static{this.initializeProps=void s.register("wm-button",new Map([["animation",s.PROP_STRING],["badgevalue",s.PROP_STRING],["caption",s.PROP_STRING],["class",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["iconclass",s.PROP_STRING],["iconheight",s.PROP_STRING],["iconmargin",s.PROP_STRING],["iconposition",s.PROP_STRING],["iconurl",s.PROP_STRING],["iconwidth",s.PROP_STRING],["name",s.PROP_STRING],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}],["type",s.PROP_STRING]]))}constructor(e,t){super(e,O,t),s.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||T)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:T,selectors:[["button","wmButton",""]],hostVars:5,hostBindings:function(e,t){2&e&&(p.\u0275\u0275hostProperty("type",t.type)("tabIndex",t.tabindex)("disabled",t.disabled),p.\u0275\u0275attribute("accesskey",t.shortcutkey)("icon-position",t.iconposition))},exportAs:["wmButton"],features:[p.\u0275\u0275ProvidersFeature([s.provideAsWidgetRef(T)]),p.\u0275\u0275InheritDefinitionFeature],attrs:v,ngContentSelectors:y,decls:6,vars:5,consts:[["data-identifier","img","alt","button image","class","button-image-icon",3,"src","ngStyle",4,"ngIf"],["aria-hidden","true",3,"class","ngStyle",4,"ngIf"],["class","sr-only",4,"ngIf"],[1,"btn-caption",3,"innerHTML"],["class","badge pull-right",3,"textContent",4,"ngIf"],["data-identifier","img","alt","button image",1,"button-image-icon",3,"src","ngStyle"],["aria-hidden","true",3,"ngStyle"],[1,"sr-only"],[1,"badge","pull-right",3,"textContent"]],template:function(e,t){1&e&&(p.\u0275\u0275projectionDef(b),p.\u0275\u0275template(0,P,2,8,"img",0)(1,I,1,9,"i",1)(2,A,2,2,"span",2),p.\u0275\u0275element(3,"span",3),p.\u0275\u0275projection(4),p.\u0275\u0275template(5,E,1,1,"span",4)),2&e&&(p.\u0275\u0275property("ngIf",t.iconurl),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.iconclass),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.iconclass),p.\u0275\u0275advance(),p.\u0275\u0275property("innerHTML",t.caption,p.\u0275\u0275sanitizeHtml),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",t.badgevalue))},dependencies:[u.NgIf,u.NgStyle,g.TextContentDirective,g.ImagePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(T,[{type:t.Component,args:[{selector:"button[wmButton]",providers:[s.provideAsWidgetRef(T)],exportAs:"wmButton",template:'<img data-identifier="img" alt="button image" class="button-image-icon" [src]="iconurl | image" *ngIf="iconurl" [ngStyle]="{width:iconwidth, height:iconheight, margin:iconmargin}"/>\n<i class="app-icon {{iconclass}}" aria-hidden="true" [ngStyle]="{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}" *ngIf="iconclass"></i>\n<span class="sr-only" *ngIf="iconclass">{{caption}} {{appLocale.LABEL_ICON}}</span>\n<span class="btn-caption" [innerHTML]="caption"></span>\n<ng-content select=".caret"></ng-content>\n<span *ngIf="badgevalue" class="badge pull-right" [textContent]="badgevalue"></span>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{type:[{type:t.HostBinding,args:["type"]}],tabindex:[{type:t.HostBinding,args:["tabIndex"]}],disabled:[{type:t.HostBinding,args:["disabled"]}],shortcutkey:[{type:t.HostBinding,args:["attr.accesskey"]}],iconposition:[{type:t.HostBinding,args:["attr.icon-position"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(T,{className:"ButtonComponent",filePath:"button/button.component.ts",lineNumber:22});const x={widgetType:"wm-buttongroup",hostClass:"btn-group app-button-group"};class D extends s.StylableComponent{static{this.initializeProps=void s.register("wm-buttongroup",new Map([["class",s.PROP_STRING],["name",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["vertical",s.PROP_BOOLEAN]]))}handleClick(e){const t=$(e.target).closest(".app-button");this.$element.find(".app-button").removeClass("selected"),t.addClass("selected")}constructor(e,t){super(e,x,t),s.styler(this.nativeElement,this,s.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||D)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:D,selectors:[["","wmButtonGroup",""]],hostVars:2,hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("click",(function(e){return t.handleClick(e)})),2&e&&p.\u0275\u0275classProp("btn-group-vertical",t.vertical)},features:[p.\u0275\u0275ProvidersFeature([s.provideAsWidgetRef(D)]),p.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(D,[{type:t.Directive,args:[{selector:"[wmButtonGroup]",providers:[s.provideAsWidgetRef(D)]}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{vertical:[{type:t.HostBinding,args:["class.btn-group-vertical"]}],handleClick:[{type:t.HostListener,args:["click",["$event"]]}]});class R extends s.StylableComponent{constructor(e,t,i,n){super(e,t,i,n),this.inj=e,this.binddatavalue=this.$element.attr("datavalue.bind")}set datavalue(e){this.dataval=e}get datavalue(){return this.dataval}updateBoundVariable(e){let t=this.binddatavalue;this.datavaluesource&&this.datavaluesource.execute(o.DataSource.Operation.IS_API_AWARE)||this.datavaluesource&&!this.datavaluesource.twoWayBinding||!t||t.startsWith("Widgets.")||t.startsWith("itemRef.currentItemWidgets")||(t=t.replace(/\[\$i\]/g,"[0]"),r.has(this.context,t.split(".")[0])?r.set(this.context,t,e):r.set(this.viewParent,t,e))}invokeOnChange(e,t){t&&this.datavalue!==this.prevDatavalue&&(this.updateBoundVariable(e),this.invokeEventCallback("change",{$event:t,newVal:e,oldVal:this.prevDatavalue})),this.prevDatavalue=e}updatePrevDatavalue(e){this.prevDatavalue=e}ngAfterViewInit(){super.ngAfterViewInit(),$(this.nativeElement).parents().closest("[wmList]").length&&this.$element.keydown((function(e){37!==e.keyCode&&38!==e.keyCode&&39!==e.keyCode&&40!==e.keyCode||e.stopPropagation()}))}static{this.\u0275fac=function(e){return new(e||R)(p.\u0275\u0275inject(p.Injector),p.\u0275\u0275inject(s.WidgetConfig),p.\u0275\u0275inject("EXPLICIT_CONTEXT",8),p.\u0275\u0275inject(Promise))}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:R,factory:R.\u0275fac})}}function S(e){return t=>e?function(e){switch(typeof e){case"object":return!(!e||!e.length&&!Object.keys(e).length);case"number":return!!e||0===e;default:return!(null==e||""===e)}}(t.value)?null:{required:!0}:null}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(R,[{type:t.Injectable}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:[s.WidgetConfig]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]},{type:Promise}]),null);class _ extends R{constructor(){super(...arguments),this._onChange=()=>{},this._onTouched=()=>{}}ngOnInit(){super.ngOnInit(),this._formControl=this.inj.get(n.FormControlName,null)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}writeValue(e){this.isDestroyed||(this._formControl&&(this.datavalue=e,this.onPropertyChange("datavalue",e),this.updatePrevDatavalue(e)),e!==this.datavalue&&this._onChange(this.datavalue))}invokeOnChange(e,t,i){this._onChange(e),t?super.invokeOnChange(e,t):i&&this.updatePrevDatavalue(e)}invokeOnTouched(e){this._onTouched(),e&&this.invokeEventCallback("blur",{$event:e})}invokeOnFocus(e){this.invokeEventCallback("focus",{$event:e})}validate(e){return this.show?S(this.required)(e):null}static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=p.\u0275\u0275getInheritedFactory(_)))(t||_)}})()}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:_,factory:_.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(_,[{type:t.Injectable}],null,null);const M=new Map([["caption",s.PROP_STRING],["class",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY],["checkedvalue",{value:!0,...s.PROP_STRING}],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["name",s.PROP_STRING],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}],["uncheckedvalue",{value:!1,...s.PROP_STRING}]]),N=["checkbox"],k=["wmCheckbox",""],L=(e,t,i)=>({unchecked:e,disabled:t,required:i}),F=()=>({standalone:!0}),j={widgetType:"wm-checkbox",hostClass:"app-checkbox checkbox"},B=(e,t)=>{if(null===e)return t;if(!0===e||"true"===e)return!0;if(!1===e||"false"===e)return!1;const i=parseInt(e,10);return isNaN(i)?e:i};class V extends _{static{this.initializeProps=(s.register("wm-checkbox",M),s.registerFormWidget(o.FormWidgetType.CHECKBOX,M),void s.registerFormWidget(o.FormWidgetType.TOGGLE,M))}get datavalue(){return o.isDefined(this.proxyModel)?this.proxyModel?this._checkedvalue:this._uncheckedvalue:void 0}set datavalue(e){this.proxyModel=o.isDefined(e)&&""!==e?e===this._checkedvalue:void 0,this.updatePrevDatavalue(this.datavalue)}constructor(e,t,i,n,a){super(e,j,a),this.type=n,this._caption="&nbsp",this._checkedvalue=B(t,!0),this._uncheckedvalue=B(i,!1),o.toggleClass(this.nativeElement,"app-toggle","toggle"===n)}onPropertyChange(e,t,i){"tabindex"!==e&&("required"!==e?"caption"===e?o.isDefined(t)&&""!==t?this._caption=t:this._caption="&nbsp;":"checkedvalue"===e?this._checkedvalue=B(t,!0):"uncheckedvalue"===e?this._uncheckedvalue=B(t,!1):"datavalue"===e?(this.datavalue=B(t),this._onChange(this.datavalue)):super.onPropertyChange(e,t,i):this._onChange(this.datavalue))}handleEvent(e,t,i,n){if("change"!==t&&"blur"!==t){const e="tap"===t?this.nativeElement.querySelector("label"):this.checkboxEl.nativeElement;super.handleEvent(e,t,i,n)}}handleChange(e){this.invokeOnChange(this.datavalue,{type:"change"},this.ngModel.valid)}onKeyDown(e){e.preventDefault(),this.checkboxEl.nativeElement.click()}ngAfterViewInit(){super.ngAfterViewInit(),s.styler(this.nativeElement.querySelector("label"),this)}static{this.\u0275fac=function(e){return new(e||V)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275injectAttribute("checkedvalue"),p.\u0275\u0275injectAttribute("uncheckedvalue"),p.\u0275\u0275injectAttribute("type"),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:V,selectors:[["","wmCheckbox",""]],viewQuery:function(e,i){if(1&e&&(p.\u0275\u0275viewQuery(n.NgModel,5),p.\u0275\u0275viewQuery(N,7,t.ElementRef)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(i.ngModel=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(i.checkboxEl=e.first)}},hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("keydown.enter",(function(e){return t.onKeyDown(e,"ENTER")}))},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(V,n.NG_VALUE_ACCESSOR,!0),s.provideAs(V,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(V)]),p.\u0275\u0275InheritDefinitionFeature],attrs:k,decls:6,vars:19,consts:[["checkbox",""],[3,"ngClass"],["type","checkbox","role","checkbox","focus-target","",3,"ngModelChange","blur","ngModel","ngModelOptions","readonly","required","disabled","tabindex"],[1,"caption",3,"innerHtml"],["alt","Checkbox Image","aria-hidden","true","src","data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",1,"switch"],["type","hidden","aria-hidden","true","tabindex","-1",1,"ng-hide","model-holder",3,"disabled","value"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"label",1)(1,"input",2,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.proxyModel,i)||(t.proxyModel=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("blur",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.invokeOnTouched(i))}))("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleChange(i))})),p.\u0275\u0275elementEnd(),p.\u0275\u0275element(3,"span",3)(4,"img",4),p.\u0275\u0275elementEnd(),p.\u0275\u0275element(5,"input",5)}2&e&&(p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction3(14,L,!t.proxyModel,t.disabled||t.readonly,t.required&&t._caption)),p.\u0275\u0275advance(),p.\u0275\u0275twoWayProperty("ngModel",t.proxyModel),p.\u0275\u0275property("ngModelOptions",p.\u0275\u0275pureFunction0(18,F))("readonly",t.readonly)("required",t.required)("disabled",t.disabled||t.readonly)("tabindex",t.tabindex),p.\u0275\u0275attribute("name",t.name)("aria-label",t.hint)("aria-checked",!!t.proxyModel)("accesskey",t.shortcutkey),p.\u0275\u0275advance(2),p.\u0275\u0275property("innerHtml",t._caption,p.\u0275\u0275sanitizeHtml),p.\u0275\u0275advance(2),p.\u0275\u0275property("disabled",t.disabled)("value",t.proxyModel))},dependencies:[u.NgClass,h.CheckboxControlValueAccessor,h.NgControlStatus,h.CheckboxRequiredValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(V,[{type:t.Component,args:[{selector:"[wmCheckbox]",providers:[s.provideAs(V,n.NG_VALUE_ACCESSOR,!0),s.provideAs(V,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(V)],template:'<label [ngClass]="{\'unchecked\': !proxyModel, \'disabled\': (disabled || readonly), \'required\': (required && _caption)}">\n <input type="checkbox"\n role="checkbox"\n #checkbox\n [attr.name]="name"\n [attr.aria-label]="hint"\n [attr.aria-checked]="!!proxyModel"\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"></span>\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'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["checkedvalue"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["uncheckedvalue"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["type"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{ngModel:[{type:t.ViewChild,args:[n.NgModel]}],checkboxEl:[{type:t.ViewChild,args:["checkbox",{static:!0,read:t.ElementRef}]}],onKeyDown:[{type:t.HostListener,args:["keydown.enter",["$event",'"ENTER"']]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(V,{className:"CheckboxComponent",filePath:"checkbox/checkbox.component.ts",lineNumber:59});class G extends _{get modelByKey(){return this._modelByKey}set modelByKey(e){this.selectByKey(e),this.invokeOnChange(this._modelByValue)}get datavalue(){return this._modelByValue}set datavalue(e){this.multiple&&(e=s.extractDataAsArray(e)),this._modelByValue=e,this.selectByValue(e),this.datavalue$.next(e),this.invokeOnChange(e,void 0,!0)}constructor(e,t,i,n){super(e,t,i),this.groupby=n,this.datasetItems=[],this.acceptsArray=!1,this.dataset$=new l.Subject,this.datavalue$=new l.Subject,this.allowempty=!0,this._debounceDatavalueUpdation=r.debounce((e=>{!o.isDefined(this._modelByKey)||r.isArray(this._modelByKey)&&!this._modelByKey.length?(this.toBeProcessedDatavalue=e,this._modelByValue=""):o.isDefined(this.toBeProcessedDatavalue)&&(o.isDefined(this._modelByValue)||(this._modelByValue=!this.multiple&&r.isArray(this.toBeProcessedDatavalue)?this.toBeProcessedDatavalue[0]:this.toBeProcessedDatavalue),this.toBeProcessedDatavalue=void 0),this.initDisplayValues()}),150),this.datePipe=this.inj.get(s.ToDatePipe),this.appDefaults=this.inj.get(o.AppDefaults),this.binddisplayexpression=this.nativeElement.getAttribute("displayexpression.bind"),this.binddisplayimagesrc=this.nativeElement.getAttribute("displayimagesrc.bind"),this.binddisplaylabel=this.nativeElement.getAttribute("displaylabel.bind"),this._debouncedInitDatasetItems=o.debounce((()=>{this.initDatasetItems(),o.$appDigest()}),150),this.handleHeaderClick=o.noop,this.cancelLocaleChangeSubscription=this.getAppInstance().subscribe("locale-changed",(()=>{this._debouncedInitDatasetItems()}))}selectByKey(e){if(this.resetDatasetItems(),this.datasetItems.length){if(this.multiple&&!r.isArray(e)&&(e=[e]),this._modelByKey=e,this.multiple)this._modelByValue=[],e.forEach((e=>{const t=r.find(this.datasetItems,(t=>r.toString(t.key)===r.toString(e)));t&&(t.selected=!0,this._modelByValue=[...this._modelByValue,t.value])}));else{this._modelByValue="";const t=r.find(this.datasetItems,(t=>r.toString(t.key)===r.toString(e)));t&&(t.selected=!0,this._modelByValue=t.value)}this.initDisplayValues()}}selectByValue(e){if(this.resetDatasetItems(),(!o.isDefined(e)||""===e||r.isNull(e)||e instanceof Array&&!e.length)&&(this._modelByKey=void 0,!this.allowempty||!o.isDefined(e)))return;if(this.acceptsArray&&!r.isArray(e)&&(e=this.allowempty?[e]:s.extractDataAsArray(e)),!this.datasetItems.length&&o.isDefined(e))return void(this.toBeProcessedDatavalue=e);const t=this.datafield===s.ALLFIELDS?"dataObject":"key";if(r.isArray(e))this._modelByKey=[],e.forEach((e=>{const i=r.find(this.datasetItems,(i=>"dataObject"===t&&this.compareby&&this.compareby.length?o.isEqualWithFields(i[t],e,this.compareby):r.isObject(i.value)?r.isEqual(i.value,e):r.toString(i.value).toLowerCase()===r.toString(e).toLowerCase()));i&&(i.selected=!0,this._modelByKey.push(i.key))}));else{this._modelByKey=void 0;const i=r.find(this.datasetItems,(i=>"dataObject"===t&&this.compareby&&this.compareby.length?o.isEqualWithFields(i[t],e,this.compareby):r.isObject(i.value)?r.isEqual(i.value,e):r.toString(i.value).toLowerCase()===r.toString(e).toLowerCase()));i&&(i.selected=!0,this._modelByKey=i.key)}this._debounceDatavalueUpdation(e)}initDisplayValues(){const e=[];this.datasetItems.forEach((t=>{t.selected&&e.push(t.label)})),this.displayValue=this.multiple?e:e[0]||""}initDatasetItems(){if(!this.dataset||r.isEmpty(this.dataset))return this.datasetItems=[],void this.dataset$.next(this.datasetItems);const e=s.getOrderedDataset(s.convertDataToObject(this.dataset),this.orderby);if(this.usekeys)this.datasetItems=s.transformDataWithKeys(e);else{const t=s.transformFormData(this.viewParent,e,this.datafield,{displayField:this.displayfield||this.displaylabel,displayExpr:this.displayexpression,bindDisplayExpr:this.binddisplayexpression||this.binddisplaylabel,bindDisplayImgSrc:this.binddisplayimagesrc,displayImgSrc:this.displayimagesrc});this.datasetItems=[...s.getUniqObjsByDataField(t,this.datafield,this.displayfield||this.displaylabel,o.toBoolean(this.allowempty))]}this.postDatasetItemsInit()}postDatasetItemsInit(){if(this.datasetItems.length&&!this._defaultQueryInvoked){const e=r.isEmpty(this.toBeProcessedDatavalue)?this.datavalue:this.toBeProcessedDatavalue;this.selectByValue(e)}this.dataset$.next(this.datasetItems)}resetDatasetItems(){this.datasetItems.forEach((e=>e.selected=!1))}setTemplate(e){this.content=e,this.viewParent&&this.viewParent.prefabName&&(this.prefabName=this.viewParent.prefabName)}getGroupedData(){return this.datasetItems.length?s.groupData(this,s.convertDataToObject(this.datasetItems),this.groupby,this.match,this.orderby,this.dateformat,this.datePipe,"dataObject",this.appDefaults):[]}datasetSubscription(){const e=this.dataset$.subscribe((()=>{this.groupedData=this.getGroupedData()}));this.registerDestroyListener((()=>e.unsubscribe()))}setGroupData(){this.datasetSubscription(),this.groupedData=this.getGroupedData()}onPropertyChange(e,t,i){switch(super.onPropertyChange(e,t,i),e){case"dataset":case"datafield":case"displayfield":case"displaylabel":case"displayexpression":case"orderby":case"usekeys":this._debouncedInitDatasetItems();break;case"required":case"datavalue":this._onChange(this.datavalue);break;case"groupby":case"match":"wm-search"!==this.widgetType&&"wm-chips"!==this.widgetType&&this.setGroupData()}}ngOnInit(){super.ngOnInit(),this.groupby&&"wm-search"!==this.widgetType&&"wm-chips"!==this.widgetType&&this.setGroupData(),this.groupby&&this.collapsible&&(this.handleHeaderClick=s.handleHeaderClick,this.toggleAllHeaders=s.toggleAllHeaders.bind(void 0,this))}ngOnDestroy(){this.cancelLocaleChangeSubscription&&this.cancelLocaleChangeSubscription()}static{this.\u0275fac=function(e){return new(e||G)(p.\u0275\u0275inject(p.Injector),p.\u0275\u0275inject(s.WidgetConfig),p.\u0275\u0275inject("EXPLICIT_CONTEXT",8),p.\u0275\u0275injectAttribute("groupby"))}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(G,[{type:t.Injectable}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:[s.WidgetConfig]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]},{type:void 0,decorators:[{type:t.Attribute,args:["groupby"]}]}]),null);const W=new Map([["class",s.PROP_STRING],["collapsible",s.PROP_BOOLEAN],["compareby",s.PROP_STRING],["datafield",s.PROP_STRING],["dataset",{value:"Option 1, Option 2, Option 3",...s.PROP_ANY}],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["dateformat",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["displayexpression",s.PROP_STRING],["displayfield",s.PROP_STRING],["displayValue",s.PROP_STRING],["groupby",s.PROP_STRING],["itemclass",{value:"",...s.PROP_STRING}],["itemsperrow",{value:"xs-1 sm-1 md-1 lg-1",...s.PROP_STRING}],["listclass",{value:"",...s.PROP_STRING}],["match",s.PROP_STRING],["name",s.PROP_STRING],["orderby",s.PROP_STRING],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["show",{value:!0,...s.PROP_BOOLEAN}],["showcount",s.PROP_BOOLEAN],["showindevice",{displayType:"inline-block",value:"all",...s.PROP_STRING}],["tabindex",{value:0,...s.PROP_NUMBER}],["usekeys",s.PROP_BOOLEAN]]),U=["wmCheckboxset",""],q=(e,t)=>["checkbox","app-checkbox",e,t],z=e=>({disabled:e}),H=e=>({"collapsible-content":e}),Q=(e,t)=>["checkbox","app-checkbox","group-list-item",e,t];function Y(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",8),p.\u0275\u0275element(1,"input",9)(2,"span",10),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(12,z,n.disabled||n.readonly))("title",t.label),p.\u0275\u0275advance(),p.\u0275\u0275property("name","checkboxset_"+n.widgetId)("tabindex",n.tabindex)("disabled",n.disabled||n.readonly)("value",t.key)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("aria-label",t.key)("aria-checked",t.selected)("data-attr-index",i),p.\u0275\u0275advance(),p.\u0275\u0275property("textContent",t.label)}}function X(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",11),p.\u0275\u0275element(1,"input",9)(2,"span",12),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(10,z,n.disabled||n.readonly)),p.\u0275\u0275advance(),p.\u0275\u0275property("name","checkboxset_"+n.widgetId)("tabindex",n.tabindex)("disabled",n.disabled||n.readonly)("value",t.key)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("aria-label",t.key)("aria-checked",t.selected)("data-attr-index",i)}}function K(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",5),p.\u0275\u0275listener("click",(function(t){const i=p.\u0275\u0275restoreView(e).$implicit,n=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(n.onCheckboxLabelClick(t,i.key))})),p.\u0275\u0275template(1,Y,3,14,"label",6)(2,X,3,12,"label",7),p.\u0275\u0275elementEnd()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(2);p.\u0275\u0275classProp("active",e.selected),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction2(7,q,i.itemclass,i.itemsPerRowClass))("wmItemTemplate",i.content)("userComponentParams",e),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!i.content),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.content)}}function J(e,t){if(1&e&&p.\u0275\u0275template(0,K,3,10,"li",4),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngForOf",e.datasetItems)}}function Z(e,t){1&e&&p.\u0275\u0275element(0,"div",13)}function ee(e,t){if(1&e&&p.\u0275\u0275element(0,"i",23),2&e){const e=p.\u0275\u0275nextContext(3);p.\u0275\u0275propertyInterpolate2("title","",e.appLocale.LABEL_COLLAPSE,"/",e.appLocale.LABEL_EXPAND,"")}}function te(e,t){if(1&e&&p.\u0275\u0275element(0,"span",24),2&e){const e=p.\u0275\u0275nextContext().$implicit;p.\u0275\u0275property("textContent",e.data.length)}}function ie(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",8),p.\u0275\u0275element(1,"input",26)(2,"span",10),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(3);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(10,z,n.disabled||n.readonly))("title",t.label),p.\u0275\u0275advance(),p.\u0275\u0275property("name","checkboxset_"+n.widgetId)("tabindex",n.tabindex)("disabled",n.disabled||n.readonly)("value",t.key)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("data-attr-index",i),p.\u0275\u0275advance(),p.\u0275\u0275property("textContent",t.label)}}function ne(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",11),p.\u0275\u0275element(1,"input",26)(2,"span",27),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(3);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(8,z,n.disabled||n.readonly)),p.\u0275\u0275advance(),p.\u0275\u0275property("name","checkboxset_"+n.widgetId)("tabindex",n.tabindex)("disabled",n.disabled||n.readonly)("value",t.key)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("data-attr-index",i)}}function ae(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",25),p.\u0275\u0275listener("click",(function(t){const i=p.\u0275\u0275restoreView(e).$implicit,n=p.\u0275\u0275nextContext(3);return p.\u0275\u0275resetView(n.onCheckboxLabelClick(t,i))})),p.\u0275\u0275template(1,ie,3,12,"label",6)(2,ne,3,10,"label",7),p.\u0275\u0275elementEnd()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(3);p.\u0275\u0275classProp("active",e.selected),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction2(7,Q,i.itemclass,i.itemsPerRowClass))("wmItemTemplate",i.content)("userComponentParams",e),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!i.content),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.content)}}function se(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",15)(1,"ul",16)(2,"li",17),p.\u0275\u0275listener("click",(function(t){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(i.handleHeaderClick(t))})),p.\u0275\u0275elementStart(3,"h4",18),p.\u0275\u0275text(4),p.\u0275\u0275elementStart(5,"div",19),p.\u0275\u0275template(6,ee,1,3,"i",20)(7,te,1,1,"span",21),p.\u0275\u0275elementEnd()()(),p.\u0275\u0275template(8,ae,3,10,"li",22),p.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(2);p.\u0275\u0275advance(2),p.\u0275\u0275property("title",e.key)("ngClass",p.\u0275\u0275pureFunction1(6,H,i.collapsible)),p.\u0275\u0275advance(2),p.\u0275\u0275textInterpolate1("",e.key," "),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",i.collapsible),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.showcount),p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",e.data)}}function oe(e,t){if(1&e&&p.\u0275\u0275template(0,se,9,8,"li",14),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngForOf",e.groupedData)}}const re={widgetType:"wm-checkboxset",hostClass:"app-checkboxset list-group inline"};class le extends G{static{this.initializeProps=(s.register("wm-checkboxset",W),void s.registerFormWidget(o.FormWidgetType.CHECKBOXSET,new Map(W)))}constructor(e,t){super(e,re,t),this.layout="",s.styler(this.nativeElement,this),this.multiple=!0}onCheckboxLabelClick(e,t){if(!$(e.target).is("input"))return;const i=this.nativeElement.querySelectorAll("input:checked"),n=[];r.forEach(i,(e=>{n.push(e.value)})),this.modelByKey=n,this.invokeOnTouched(),this.invokeOnChange(this.datavalue,e||{},!0)}handleEvent(e,t,i,n){"click"===t?this.eventManager.addEventListener(e,t,(e=>{if($(e.target).is("input"))return n.$event=e,i()})):r.includes(["change"],t)||super.handleEvent(e,t,i,n)}onKeyDown(e){e.preventDefault(),e.target.click()}onPropertyChange(e,t,i){"tabindex"!==e&&("required"!==e?"itemsperrow"===e?o.setListClass(this):super.onPropertyChange(e,t,i):this._onChange(this.datavalue))}static{this.\u0275fac=function(e){return new(e||le)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:le,selectors:[["","wmCheckboxset",""]],hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("keydown.enter",(function(e){return t.onKeyDown(e,"ENTER")}))},exportAs:["wmCheckboxset"],features:[p.\u0275\u0275ProvidersFeature([s.provideAs(le,n.NG_VALUE_ACCESSOR,!0),s.provideAs(le,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(le)]),p.\u0275\u0275InheritDefinitionFeature],attrs:U,decls:5,vars:4,consts:[["groupedListTemplate",""],[3,"ngIf","ngIfElse"],["hidden","",1,"model-holder",3,"disabled"],["class","readonly-wrapper",4,"ngIf"],["partialContainer","","role","presentation",3,"ngClass","active","wmItemTemplate","userComponentParams","click",4,"ngFor","ngForOf"],["partialContainer","","role","presentation",3,"click","ngClass","wmItemTemplate","userComponentParams"],["class","app-checkboxset-label",3,"ngClass","title",4,"ngIf"],["class","app-checkboxset-label",3,"ngClass",4,"ngIf"],[1,"app-checkboxset-label",3,"ngClass","title"],["type","checkbox",3,"name","tabindex","disabled","value","checked"],[1,"caption",3,"textContent"],[1,"app-checkboxset-label",3,"ngClass"],["partial-container-target","",1,"caption","customTemplate"],[1,"readonly-wrapper"],["class","app-list-item-group","role","presentation",4,"ngFor","ngForOf"],["role","presentation",1,"app-list-item-group"],[1,"item-group"],[1,"list-group-header",3,"click","title","ngClass"],[1,"group-title"],[1,"header-action"],["class","app-icon wi action wi-chevron-up",3,"title",4,"ngIf"],["class","label label-default",3,"textContent",4,"ngIf"],["partialContainer","",3,"ngClass","active","wmItemTemplate","userComponentParams","click",4,"ngFor","ngForOf"],[1,"app-icon","wi","action","wi-chevron-up",3,"title"],[1,"label","label-default",3,"textContent"],["partialContainer","",3,"click","ngClass","wmItemTemplate","userComponentParams"],["type","checkbox","aria-label","checkbox group",3,"name","tabindex","disabled","value","checked"],["partial-container-target","",1,"caption"]],template:function(e,t){if(1&e&&(p.\u0275\u0275template(0,J,1,1,"ng-template",1),p.\u0275\u0275element(1,"input",2),p.\u0275\u0275template(2,Z,1,0,"div",3)(3,oe,1,1,"ng-template",null,0,p.\u0275\u0275templateRefExtractor)),2&e){const e=p.\u0275\u0275reference(4);p.\u0275\u0275property("ngIf",!t.groupby)("ngIfElse",e),p.\u0275\u0275advance(),p.\u0275\u0275property("disabled",t.disabled||t.readonly),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.readonly||t.disabled)}},dependencies:[u.NgClass,u.NgForOf,u.NgIf,g.ItemTemplateDirective,g.PartialParamHandlerDirective,g.PartialContainerDirective,g.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(le,[{type:t.Component,args:[{selector:"[wmCheckboxset]",exportAs:"wmCheckboxset",providers:[s.provideAs(le,n.NG_VALUE_ACCESSOR,!0),s.provideAs(le,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(le)],template:'<ng-template [ngIf]="!groupby" [ngIfElse]="groupedListTemplate">\n <li [ngClass]="[\'checkbox\', \'app-checkbox\', itemclass, itemsPerRowClass]"\n [class.active]="item.selected"\n *ngFor="let item of datasetItems; let i = index"\n [wmItemTemplate]="content" [userComponentParams]="item" partialContainer\n (click)="onCheckboxLabelClick($event, item.key)" role="presentation">\n \x3c!-- Default item template --\x3e\n <label *ngIf="!content" class="app-checkboxset-label" [ngClass]="{\'disabled\':disabled || readonly}" [title]="item.label">\n <input [name]="\'checkboxset_\' + widgetId" type="checkbox" [attr.aria-label]="item.key"\n [tabindex]="tabindex" [attr.aria-checked]="item.selected"\n [disabled]="disabled || readonly" [attr.data-attr-index]="i"\n [value]="item.key" [tabindex]="tabindex" [checked]="item.selected"/>\n <span class="caption" [textContent]="item.label"></span>\n </label>\n \x3c!-- Custom partial template --\x3e\n <label *ngIf="content" class="app-checkboxset-label" [ngClass]="{\'disabled\':disabled || readonly}" >\n <input [name]="\'checkboxset_\' + widgetId" type="checkbox" [attr.aria-label]="item.key"\n [tabindex]="tabindex" [attr.aria-checked]="item.selected"\n [disabled]="disabled || readonly" [attr.data-attr-index]="i"\n [value]="item.key" [tabindex]="tabindex" [checked]="item.selected"/>\n <span class="caption customTemplate" partial-container-target></span>\n </label>\n </li>\n</ng-template>\n<input [disabled]="disabled || readonly" hidden class="model-holder">\n<div *ngIf="readonly || disabled" class="readonly-wrapper"></div>\n\n\x3c!-- This template will be displayed when groupby is specified. --\x3e\n<ng-template #groupedListTemplate>\n <li *ngFor="let groupObj of groupedData" class="app-list-item-group" role="presentation">\n <ul class="item-group">\n <li class="list-group-header" (click)="handleHeaderClick($event)" [title]="groupObj.key" [ngClass]="{\'collapsible-content\': collapsible}">\n <h4 class="group-title">{{groupObj.key}}\n <div class="header-action">\n <i class="app-icon wi action wi-chevron-up" *ngIf="collapsible" title="{{appLocale.LABEL_COLLAPSE}}/{{appLocale.LABEL_EXPAND}}"></i>\n <span *ngIf="showcount" class="label label-default" [textContent]="groupObj.data.length"></span>\n </div>\n </h4>\n </li>\n <li *ngFor="let item of groupObj.data; let i = index;"\n [ngClass]="[\'checkbox\', \'app-checkbox\', \'group-list-item\', itemclass, itemsPerRowClass]"\n [class.active]="item.selected"\n [wmItemTemplate]="content" [userComponentParams]="item" partialContainer\n (click)="onCheckboxLabelClick($event, item)">\n \x3c!-- Default item template --\x3e\n <label *ngIf="!content" class="app-checkboxset-label" [ngClass]="{\'disabled\':disabled || readonly}" [title]="item.label">\n <input [name]="\'checkboxset_\' + widgetId" type="checkbox" aria-label="checkbox group"\n [tabindex]="tabindex"\n [disabled]="disabled || readonly" [attr.data-attr-index]="i"\n [value]="item.key" [tabindex]="tabindex" [checked]="item.selected"/>\n <span class="caption" [textContent]="item.label"></span>\n </label>\n \x3c!-- Custom partial template --\x3e\n <label *ngIf="content" class="app-checkboxset-label" [ngClass]="{\'disabled\':disabled || readonly}" >\n <input [name]="\'checkboxset_\' + widgetId" type="checkbox" aria-label="checkbox group"\n [tabindex]="tabindex"\n [disabled]="disabled || readonly" [attr.data-attr-index]="i"\n [value]="item.key" [tabindex]="tabindex" [checked]="item.selected"/>\n <span class="caption" partial-container-target></span>\n </label>\n </li>\n </ul>\n </li>\n</ng-template>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{onKeyDown:[{type:t.HostListener,args:["keydown.enter",["$event",'"ENTER"']]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(le,{className:"CheckboxsetComponent",filePath:"checkboxset/checkboxset.component.ts",lineNumber:27});const ce={widgetType:"wm-form-group",hostClass:"form-group app-composite-widget clearfix"},de={left:"caption-left",right:"caption-right",top:"caption-top",floating:"caption-floating"};class pe extends s.StylableComponent{static{this.initializeProps=void s.register("wm-form-group",new Map([["captionposition",s.PROP_STRING],["name",s.PROP_STRING],["required",s.PROP_BOOLEAN],["show",{value:!0,...s.PROP_BOOLEAN}]]))}constructor(e,t){super(e,ce,t),s.styler(this.nativeElement,this,s.APPLY_STYLES_TYPE.CONTAINER)}onPropertyChange(e,t,i){"captionposition"===e?o.switchClass(this.nativeElement,de[t],de[i]):"required"===e?(this.required=t,this.assignRequiredToSubComponents()):super.onPropertyChange(e,t,i)}assignRequiredToSubComponents(){this.required&&this.componentRefs&&setTimeout((()=>{this.componentRefs.forEach((e=>e.widget.required=!0))}),50)}ngAfterViewInit(){super.ngAfterViewInit(),o.addForIdAttributes(this.nativeElement),this.assignRequiredToSubComponents()}static{this.\u0275fac=function(e){return new(e||pe)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:pe,selectors:[["div","wmComposite",""]],contentQueries:function(e,t,i){if(1&e&&p.\u0275\u0275contentQuery(i,s.WidgetRef,5),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.componentRefs=e)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAsWidgetRef(pe)]),p.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(pe,[{type:t.Directive,args:[{selector:"div[wmComposite]",providers:[s.provideAsWidgetRef(pe)]}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{componentRefs:[{type:t.ContentChildren,args:[s.WidgetRef,{descendants:!0}]}]});const ue=new Map([["autofocus",s.PROP_BOOLEAN],["class",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["localefilter",s.PROP_STRING],["minvalue",s.PROP_NUMBER],["maxvalue",s.PROP_NUMBER],["name",s.PROP_STRING],["numberfilter",s.PROP_STRING],["placeholder",{value:"Enter number",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["regexp",s.PROP_STRING],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["step",{value:1,...s.PROP_NUMBER}],["tabindex",{value:0,...s.PROP_NUMBER}],["trailingzero",{value:!1,...s.PROP_BOOLEAN}],["updateon",s.PROP_STRING],["inputmode",{value:"natural",...s.PROP_STRING}],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]);class he extends _{onPropertyChange(e,t,i){"tabindex"!==e&&("required"===e&&this._onChange(this.datavalue),"class"===e?this.inputEl.nativeElement&&o.switchClass(this.inputEl.nativeElement,t,i):"datavalue"===e?(this.updatePrevDatavalue(t),this._onChange(this.datavalue)):super.onPropertyChange(e,t,i))}handleChange(e){this.autotrim&&this.datavalue&&r.isString(this.datavalue)&&(this.datavalue=this.datavalue.trim()),this.invokeOnChange(this.datavalue,{type:"change"},this.ngModel.valid)}handleEvent(e,t,i,n){"change"!==t&&"blur"!==t&&super.handleEvent(this.inputEl.nativeElement,t,i,n)}handleBlur(e){this.invokeOnTouched(e)}flushViewChanges(e){const t=r.get(this.imask,"maskRef.unmaskedValue");e=t||e,this.ngModel.update.next(e),o.$appDigest()}ngAfterViewInit(){super.ngAfterViewInit(),this.class&&o.addClass(this.inputEl.nativeElement,this.class),s.styler(this.inputEl.nativeElement,this)}constructor(e,t,i){super(e,t,i),this.ngModelOptions={updateOn:"",standalone:!0};let n=this.nativeElement.getAttribute("updateon")||"blur";n="default"===n?"change":n,this.ngModelOptions.updateOn=n}static{this.\u0275fac=function(e){return new(e||he)(p.\u0275\u0275inject(p.Injector),p.\u0275\u0275inject(s.WidgetConfig),p.\u0275\u0275inject("EXPLICIT_CONTEXT",8))}}static{this.\u0275prov=p.\u0275\u0275defineInjectable({token:he,factory:he.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(he,[{type:t.Injectable}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:[s.WidgetConfig]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),e.NumberLocale=class extends he{constructor(e,t,n,a,s){super(e,t,s),this.i18nService=n,this.trailingZeroDecimalPipe=a,this.isDefaultQuery=!0,this.decimalValue="",this.selectedLocale=n.getSelectedLocale(),this.DECIMAL=i.getLocaleNumberSymbol(this.localefilter||this.selectedLocale,i.NumberSymbol.Decimal),this.GROUP=i.getLocaleNumberSymbol(this.localefilter||this.selectedLocale,i.NumberSymbol.Group),this.numberfilter="1.0-16",this.resetValidations()}set datavalue(e){if(this.lastValIsDecimal=!1,r.includes([null,void 0,""],e)){const t=this.inputEl.nativeElement,i=this.prevDatavalue;return this.displayValue=t.value=this.proxyModel=null,this.resetValidations(),void(i&&!this.isDefaultQuery&&(this.handleChange(e),this._onChange()))}if(this.isDefaultQuery){const t=r.isString(e)&&r.includes(e,this.DECIMAL),i=t?e.split(this.DECIMAL):r.isString(e)&&e.split(".");this.decimalValue=i[1]||"",e=t?e:this.transformNumber(e)}const t=e.toString();let i;i=/\d/.test(t)?this.parseNumber(t):NaN,isNaN(i)&&t[t.length-1]===this.DECIMAL&&"change"===this.ngModelOptions.updateOn&&this.$element.find("input:focus").length&&(this.lastValIsDecimal=!0),!this.lastValIsDecimal&&this.isValid(i)?(this.proxyModel=i,this.updateDisplayText(),this.isDefaultQuery||this.handleChange(i)):(this.displayValue=e.toString(),this.proxyModel=null,this.handleChange(null))}get datavalue(){return this.proxyModel}resetValidations(){this.isInvalidNumber=!1,this.numberNotInRange=!1}isValid(e){return isNaN(e)||!isFinite(e)||!Number.isInteger(this.step)&&this.countDecimals(e)>this.countDecimals(this.step)?(this.isInvalidNumber=!0,!1):e!==this.getValueInRange(e)?(this.numberNotInRange=!0,!0):(this.resetValidations(),!0)}getValueInRange(e){return!isNaN(this.minvalue)&&e<this.minvalue?(this.validateType="minvalue",this.minvalue):!isNaN(this.maxvalue)&&e>this.maxvalue?(this.validateType="maxvalue",this.maxvalue):e}transformNumber(e,t){const i=t||this.numberfilter;return this.trailingZeroDecimalPipe.transform(e,this.selectedLocale,i,this.localefilter,this.trailingzero,this.decimalValue,!!t,this.i18nService?.getwidgetLocale())}resetCursorPosition(e){const t=this.inputEl.nativeElement;let i=t.value.length-e;i=i<0?0:i,t.setSelectionRange(i,i)}parseNumber(e){const t=e.split(this.inputmode===s.INPUTMODE.FINANCIAL?e.indexOf(this.DECIMAL)>-1?this.DECIMAL:".":this.DECIMAL);if(!t.length)return null;if(t.length>2)return NaN;if(""===t[1])return NaN;const i=Number(t[0].split(this.GROUP).join("")),n=Number(`0.${t[1]||0}`);if(Number.isNaN(i)||Number.isNaN(n))return NaN;const a=t.length>1?parseFloat((i+n).toFixed(t[1].length)):i+n;return 0===i?Object.is(0,i)?a:i-n:i>0?a:i-n}updateDisplayText(){const e=this.inputEl.nativeElement,t=e.selectionStart,i=e.value;if(!this.isDefaultQuery){const e=i.split(this.DECIMAL);this.decimalValue=e[1]||""}const n=this.stepLength();this.inputmode===s.INPUTMODE.FINANCIAL&&n?(this.displayValue=e.value=this.transformNumber(this.proxyModel,`1.${n}-${n}`),this.decimalValue=this.decimalValue.replace(/\D/g,"")):this.displayValue=e.value=this.transformNumber(this.proxyModel),"default"!==this.updateon||this.isDefaultQuery||this.resetCursorPosition(i.length-t)}stepLength(){const e=this.step.toString().split(".");return 1===e.length?void 0:e[1].length}isNaturalCurrency(){return this.inputmode===s.INPUTMODE.NATURAL&&"wm-currency"===this.widgetType&&!!this.trailingzero}onInputChange(e){const t=this.stepLength();if(!o.isDefined(e)||""===e&&!this.datavalue)return;if(this.handleChange(e),!t||this.inputmode!==s.INPUTMODE.FINANCIAL)return;let i;if(this.isDefaultQuery)i=parseFloat(e);else{i=parseInt(e.toString().replace(/\D/g,""))*this.step}isNaN(i)?"blur"!==this.ngModelOptions.updateOn&&(this.datavalue=void 0,this.handleChange(null)):"change"===this.ngModelOptions.updateOn?(this.datavalue=parseFloat(i.toFixed(t)),this.handleChange(this.datavalue)):this.displayValue=i.toFixed(t)}checkForTrailingZeros(e){const t=this.stepLength(),i=!this.trailingzero&&this.inputmode===s.INPUTMODE.FINANCIAL;if(this.lastValIsDecimal&&this.onModelChange(this.displayValue),(i||this.isNaturalCurrency())&&t&&this.datavalue){let n;(i&&"focus"===e.type||this.isNaturalCurrency()&&"blur"===e.type)&&(n=`1.${t}-${t}`),this.displayValue=this.transformNumber(this.datavalue,n)}}countDecimals(e){if(e%1!=0){const t=e.toString().split(".")[1];return t&&t.length}return 0}onArrowPress(e,t){if(e.preventDefault(),this.readonly||0===this.step)return;const i=e.target.value.replace(/,/g,"");let n,a;if(n=i&&!isNaN(parseFloat(i))?parseFloat(i):this.proxyModel,this.numberNotInRange){const e=this.parseNumber(this.inputEl.nativeElement.value);isNaN(e)||(a=this.getValueInRange(e),n=e,this.resetValidations())}else r.isUndefined(n)||r.isNull(n)?(n=a=this.getValueInRange(this.minvalue||0),this.resetValidations()):a=this.getValueInRange(n+("UP"===t?this.step:-this.step));if("UP"===t&&n<=a||"DOWN"===t&&n>=a){const e=Math.max(this.countDecimals(n),this.countDecimals(this.step));this.proxyModel=r.round(a,e),this.updateDisplayText(),this.handleChange(this.proxyModel)}}validate(e){return this.isInvalidNumber?(this.validateType="",{invalidNumber:{valid:!1}}):this.numberNotInRange?{numberNotInRange:{valid:!1}}:(this.validateType="",this.show&&this.required?e.value||0===e.value?null:{required:!0}:null)}validateInputEntry(e){if(this.isDefaultQuery=!1,e.ctrlKey||r.includes(["Backspace","ArrowRight","ArrowLeft","Tab","Enter","Delete"],e.key))return;const t=new RegExp(`^[\\d\\s-,.e+${this.GROUP}${this.DECIMAL}]$`,"i"),i=e.target.value,n=this.inputmode===s.INPUTMODE.FINANCIAL;if(i){if(parseInt(i.toString().replace(/\D/g,"")).toString().length>15){const e=window.getSelection();return!(!e||!e.toString()||e.focusNode!==this.nativeElement)}}return!(!n&&i&&this.countDecimals(this.step)&&this.countDecimals(i)>=this.countDecimals(this.step)&&e.target.selectionStart>=i.length-1)&&(!!t.test(e.key)&&((!r.includes(i,",")||","!==i[i.length-1]||","!==e.key)&&((!r.includes(i,this.DECIMAL)||e.key!==this.DECIMAL)&&((!r.intersection(r.toArray(i),["e","E"]).length||!r.includes("eE",e.key))&&((!r.includes(i,"+")&&!r.includes(i,"-")||"+"!==e.key&&"-"!==e.key)&&(!(!i&&"Space"===e.code)&&void 0))))))}onBackspace(e){this.isDefaultQuery=!1}onEnter(e){this.datavalue=e.target.value}onModelChange(e){(this.inputmode===s.INPUTMODE.NATURAL||this.inputmode===s.INPUTMODE.FINANCIAL&&"blur"===this.ngModelOptions.updateOn)&&(this.datavalue=e)}onPropertyChange(e,t,i){"minvalue"===e||"maxvalue"===e?this.isValid(t):"datavalue"!==e||i?super.onPropertyChange(e,t,i):this.isNaturalCurrency()?this.checkForTrailingZeros({type:"blur"}):this.onInputChange(t)}},e.NumberLocale=c.__decorate([c.__param(4,t.Inject("EXPLICIT_CONTEXT")),c.__param(4,t.Optional()),c.__metadata("design:paramtypes",[t.Injector,Object,o.AbstractI18nService,s.TrailingZeroDecimalPipe,Object])],e.NumberLocale);const me=["input"],ge=["wmNumber",""],fe={widgetType:"wm-number",hostClass:"app-input-wrapper"};class ve extends e.NumberLocale{static{this.initializeProps=(s.register("wm-number",ue),void s.registerFormWidget(o.FormWidgetType.NUMBER,new Map(ue)))}constructor(e,t,i,n){super(e,fe,t,i,n)}static{this.\u0275fac=function(e){return new(e||ve)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(f.AbstractI18nService),p.\u0275\u0275directiveInject(g.TrailingZeroDecimalPipe),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:ve,selectors:[["","wmNumber",""]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(me,7),p.\u0275\u0275viewQuery(n.NgModel,7)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(ve,n.NG_VALUE_ACCESSOR,!0),s.provideAs(ve,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(ve)]),p.\u0275\u0275InheritDefinitionFeature],attrs:ge,decls:2,vars:14,consts:[["input",""],["inputmode","decimal","focus-target","","role","textbox","type","text",1,"form-control","app-textbox","app-number-input",3,"ngModelChange","blur","focus","input","keypress","keydown.backspace","keydown.enter","keydown.ArrowUp","keydown.ArrowDown","ngModel","readonly","disabled","pattern","autofocus","ngClass","ngStyle","ngModelOptions","required"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"input",1,0),p.\u0275\u0275listener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onModelChange(i))}))("blur",(function(i){return p.\u0275\u0275restoreView(e),t.handleBlur(i),p.\u0275\u0275resetView(t.checkForTrailingZeros(i))}))("focus",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.checkForTrailingZeros(i))}))("input",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onInputChange(i.target.value))}))("keypress",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.validateInputEntry(i))}))("keydown.backspace",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onBackspace(i))}))("keydown.enter",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onEnter(i))}))("keydown.ArrowUp",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onArrowPress(i,"UP"))}))("keydown.ArrowDown",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onArrowPress(i,"DOWN"))})),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("ngModel",t.displayValue)("readonly",t.readonly)("disabled",t.disabled)("pattern",t.regexp)("autofocus",t.autofocus)("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle)("ngModelOptions",t.ngModelOptions)("required",t.required),p.\u0275\u0275attribute("name",t.name)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint))},dependencies:[u.NgClass,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.PatternValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ve,[{type:t.Component,args:[{selector:"[wmNumber]",providers:[s.provideAs(ve,n.NG_VALUE_ACCESSOR,!0),s.provideAs(ve,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(ve)],template:'<input class="form-control app-textbox app-number-input"\n inputmode="decimal"\n focus-target\n [attr.name]="name"\n role="textbox"\n type="text"\n [ngModel]="displayValue"\n [readonly]="readonly"\n [disabled]="disabled"\n [pattern]="regexp"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint"\n [autofocus]="autofocus"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n (ngModelChange)="onModelChange($event)"\n (blur)="handleBlur($event); checkForTrailingZeros($event);"\n (focus)="checkForTrailingZeros($event)"\n (input)="onInputChange($event.target.value)"\n [ngModelOptions]="ngModelOptions"\n [required]="required"\n (keypress)="validateInputEntry($event)"\n (keydown.backspace)="onBackspace($event)"\n (keydown.enter)="onEnter($event)"\n (keydown.ArrowUp)="onArrowPress($event, \'UP\')"\n (keydown.ArrowDown)="onArrowPress($event, \'DOWN\')"\n #input>\n'}]}],(()=>[{type:p.Injector},{type:f.AbstractI18nService},{type:g.TrailingZeroDecimalPipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["input",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel,{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(ve,{className:"NumberComponent",filePath:"number/number.component.ts",lineNumber:24});const be=new Map([["class",s.PROP_STRING],["collapsible",s.PROP_BOOLEAN],["compareby",s.PROP_STRING],["datafield",s.PROP_STRING],["dataset",{value:"Option 1, Option 2, Option 3",...s.PROP_ANY}],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_ANY],["dateformat",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["displayexpression",s.PROP_STRING],["displayfield",s.PROP_STRING],["displayValue",s.PROP_STRING],["groupby",s.PROP_STRING],["itemclass",{value:"",...s.PROP_STRING}],["itemsperrow",{value:"xs-1 sm-1 md-1 lg-1",...s.PROP_STRING}],["listclass",{value:"",...s.PROP_STRING}],["match",s.PROP_STRING],["name",s.PROP_STRING],["orderby",s.PROP_STRING],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["show",{value:!0,...s.PROP_BOOLEAN}],["showcount",s.PROP_BOOLEAN],["showindevice",{displayType:"inline-block",value:"all",...s.PROP_STRING}],["tabindex",{value:0,...s.PROP_NUMBER}],["usekeys",s.PROP_BOOLEAN]]),ye=["wmRadioset",""],we=(e,t)=>["radio","app-radio",e,t],Ce=e=>({disabled:e}),Pe=e=>({"collapsible-content":e}),Ie=(e,t)=>["radio","app-radio","group-list-item",e,t];function Ae(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",7),p.\u0275\u0275element(1,"input",8)(2,"span",9),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(10,Ce,n.disabled||n.readonly)),p.\u0275\u0275advance(),p.\u0275\u0275property("name","radioset_"+n.widgetId)("value",t.key)("disabled",n.disabled||n.readonly)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("aria-checked",t.selected)("data-attr-index",i)("aria-label",t.key),p.\u0275\u0275advance(),p.\u0275\u0275property("textContent",t.label)}}function Ee(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",7),p.\u0275\u0275element(1,"input",8)(2,"span",10),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(9,Ce,n.disabled||n.readonly)),p.\u0275\u0275advance(),p.\u0275\u0275property("name","radioset_"+n.widgetId)("value",t.key)("disabled",n.disabled||n.readonly)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("aria-checked",t.selected)("data-attr-index",i)("aria-label",t.key)}}function Oe(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",5),p.\u0275\u0275listener("click",(function(t){const i=p.\u0275\u0275restoreView(e).$implicit,n=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(n.onRadioLabelClick(t,i.key))})),p.\u0275\u0275template(1,Ae,3,12,"label",6)(2,Ee,3,11,"label",6),p.\u0275\u0275elementEnd()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(2);p.\u0275\u0275classProp("active",e.selected),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction2(7,we,i.itemclass,i.itemsPerRowClass))("wmItemTemplate",i.content)("userComponentParams",e),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!i.content),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.content)}}function Te(e,t){if(1&e&&p.\u0275\u0275template(0,Oe,3,10,"li",4),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngForOf",e.datasetItems)}}function xe(e,t){1&e&&p.\u0275\u0275element(0,"div",11)}function De(e,t){if(1&e&&p.\u0275\u0275element(0,"i",21),2&e){const e=p.\u0275\u0275nextContext(3);p.\u0275\u0275propertyInterpolate2("title","",e.appLocale.LABEL_COLLAPSE,"/",e.appLocale.LABEL_EXPAND,"")}}function Re(e,t){if(1&e&&p.\u0275\u0275element(0,"span",22),2&e){const e=p.\u0275\u0275nextContext().$implicit;p.\u0275\u0275property("textContent",e.data.length)}}function Se(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",7),p.\u0275\u0275element(1,"input",8)(2,"span",9),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(3);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(9,Ce,n.disabled||n.readonly)),p.\u0275\u0275advance(),p.\u0275\u0275property("name","radioset_"+n.widgetId)("value",t.key)("disabled",n.disabled||n.readonly)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("aria-checked",t.selected)("data-attr-index",i),p.\u0275\u0275advance(),p.\u0275\u0275property("textContent",t.label)}}function _e(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"label",7),p.\u0275\u0275element(1,"input",8)(2,"span",10),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275nextContext(3);p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(8,Ce,n.disabled||n.readonly)),p.\u0275\u0275advance(),p.\u0275\u0275property("name","radioset_"+n.widgetId)("value",t.key)("disabled",n.disabled||n.readonly)("tabindex",n.tabindex)("checked",t.selected),p.\u0275\u0275attribute("aria-checked",t.selected)("data-attr-index",i)}}function Me(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",23),p.\u0275\u0275listener("click",(function(t){const i=p.\u0275\u0275restoreView(e).$implicit,n=p.\u0275\u0275nextContext(3);return p.\u0275\u0275resetView(n.onRadioLabelClick(t,i))})),p.\u0275\u0275template(1,Se,3,11,"label",6)(2,_e,3,10,"label",6),p.\u0275\u0275elementEnd()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(3);p.\u0275\u0275classProp("active",e.selected),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction2(7,Ie,i.itemclass,i.itemsPerRowClass))("wmItemTemplate",i.content)("userComponentParams",e),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!i.content),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.content)}}function Ne(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",13)(1,"ul",14)(2,"li",15),p.\u0275\u0275listener("click",(function(t){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(i.handleHeaderClick(t))})),p.\u0275\u0275elementStart(3,"h4",16),p.\u0275\u0275text(4),p.\u0275\u0275elementStart(5,"div",17),p.\u0275\u0275template(6,De,1,3,"i",18)(7,Re,1,1,"span",19),p.\u0275\u0275elementEnd()()(),p.\u0275\u0275template(8,Me,3,10,"li",20),p.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(2);p.\u0275\u0275advance(2),p.\u0275\u0275property("title",e.key)("ngClass",p.\u0275\u0275pureFunction1(6,Pe,i.collapsible)),p.\u0275\u0275advance(2),p.\u0275\u0275textInterpolate1("",e.key," "),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",i.collapsible),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.showcount),p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",e.data)}}function ke(e,t){if(1&e&&p.\u0275\u0275template(0,Ne,9,8,"li",12),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngForOf",e.groupedData)}}const Le={widgetType:"wm-radioset",hostClass:"app-radioset list-group inline"};class Fe extends G{static{this.initializeProps=(s.register("wm-radioset",be),void s.registerFormWidget(o.FormWidgetType.RADIOSET,new Map(be)))}constructor(e,t){super(e,Le,t),this.layout="",s.styler(this.nativeElement,this),this.multiple=!1}onRadioLabelClick(e,t){$(e.target).is("input")&&(this.modelByKey=t,this.invokeOnTouched(),this.invokeOnChange(this.datavalue,e||{},!0))}handleEvent(e,t,i,n){"click"===t?this.eventManager.addEventListener(e,t,(e=>{if($(e.target).is("input"))return n.$event=e,i()})):r.includes(["change"],t)||super.handleEvent(e,t,i,n)}onPropertyChange(e,t,i){"tabindex"!==e&&("itemsperrow"===e?o.setListClass(this):super.onPropertyChange(e,t,i))}static{this.\u0275fac=function(e){return new(e||Fe)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:Fe,selectors:[["","wmRadioset",""]],exportAs:["wmRadioset"],features:[p.\u0275\u0275ProvidersFeature([s.provideAs(Fe,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Fe,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Fe)]),p.\u0275\u0275InheritDefinitionFeature],attrs:ye,decls:5,vars:4,consts:[["groupedListTemplate",""],[3,"ngIf","ngIfElse"],["hidden","",1,"model-holder",3,"disabled"],["aria-readonly","true","class","readonly-wrapper",4,"ngIf"],["partialContainer","","role","presentation",3,"ngClass","active","wmItemTemplate","userComponentParams","click",4,"ngFor","ngForOf"],["partialContainer","","role","presentation",3,"click","ngClass","wmItemTemplate","userComponentParams"],["class","app-radioset-label",3,"ngClass",4,"ngIf"],[1,"app-radioset-label",3,"ngClass"],["type","radio",3,"name","value","disabled","tabindex","checked"],[1,"caption",3,"textContent"],["partial-container-target","",1,"caption","customTemplate"],["aria-readonly","true",1,"readonly-wrapper"],["class","app-list-item-group",4,"ngFor","ngForOf"],[1,"app-list-item-group"],[1,"item-group"],[1,"list-group-header",3,"click","title","ngClass"],[1,"group-title"],[1,"header-action"],["class","app-icon wi action wi-chevron-up",3,"title",4,"ngIf"],["class","label label-default",3,"textContent",4,"ngIf"],["partialContainer","",3,"ngClass","active","wmItemTemplate","userComponentParams","click",4,"ngFor","ngForOf"],[1,"app-icon","wi","action","wi-chevron-up",3,"title"],[1,"label","label-default",3,"textContent"],["partialContainer","",3,"click","ngClass","wmItemTemplate","userComponentParams"]],template:function(e,t){if(1&e&&(p.\u0275\u0275template(0,Te,1,1,"ng-template",1),p.\u0275\u0275element(1,"input",2),p.\u0275\u0275template(2,xe,1,0,"div",3)(3,ke,1,1,"ng-template",null,0,p.\u0275\u0275templateRefExtractor)),2&e){const e=p.\u0275\u0275reference(4);p.\u0275\u0275property("ngIf",!t.groupby)("ngIfElse",e),p.\u0275\u0275advance(),p.\u0275\u0275property("disabled",t.disabled||t.readonly),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.readonly||t.disabled)}},dependencies:[u.NgClass,u.NgForOf,u.NgIf,g.ItemTemplateDirective,g.PartialParamHandlerDirective,g.PartialContainerDirective,g.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Fe,[{type:t.Component,args:[{selector:"[wmRadioset]",exportAs:"wmRadioset",providers:[s.provideAs(Fe,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Fe,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Fe)],template:'<ng-template [ngIf]="!groupby" [ngIfElse]="groupedListTemplate">\n <li [ngClass]="[\'radio\', \'app-radio\', itemclass, itemsPerRowClass]"\n [class.active]="item.selected"\n *ngFor="let item of datasetItems;let i = index"\n [wmItemTemplate]="content" [userComponentParams]="item" partialContainer\n (click)="onRadioLabelClick($event, item.key)" role="presentation">\n \x3c!-- Default item template --\x3e\n <label *ngIf="!content" class="app-radioset-label"\n [ngClass]="{\'disabled\':disabled || readonly}">\n <input [name]="\'radioset_\' + widgetId" type="radio" [attr.aria-checked]="item.selected" [attr.data-attr-index]="i"\n [value]="item.key" [disabled]="disabled || readonly" [tabindex]="tabindex" [checked]="item.selected"\n [attr.aria-label]="item.key"/>\n <span class="caption" [textContent]="item.label"></span>\n </label>\n \x3c!-- Custom partial template --\x3e\n <label *ngIf="content" class="app-radioset-label"\n [ngClass]="{\'disabled\':disabled || readonly}">\n <input [name]="\'radioset_\' + widgetId" type="radio" [attr.aria-checked]="item.selected" [attr.data-attr-index]="i"\n [value]="item.key" [disabled]="disabled || readonly" [tabindex]="tabindex" [checked]="item.selected"\n [attr.aria-label]="item.key"/>\n <span class="caption customTemplate" partial-container-target></span>\n </label>\n </li>\n</ng-template>\n\n<input [disabled]="disabled || readonly" hidden class="model-holder">\n<div *ngIf="readonly || disabled" aria-readonly="true" class="readonly-wrapper"></div>\n\n\x3c!-- This template will be displayed when groupby is specified. --\x3e\n<ng-template #groupedListTemplate>\n <li *ngFor="let groupObj of groupedData" class="app-list-item-group">\n <ul class="item-group">\n <li class="list-group-header" (click)="handleHeaderClick($event)" [title]="groupObj.key" [ngClass]="{\'collapsible-content\': collapsible}">\n <h4 class="group-title">{{groupObj.key}}\n <div class="header-action">\n <i class="app-icon wi action wi-chevron-up" *ngIf="collapsible" title="{{appLocale.LABEL_COLLAPSE}}/{{appLocale.LABEL_EXPAND}}"></i>\n <span *ngIf="showcount" class="label label-default" [textContent]="groupObj.data.length"></span>\n </div>\n </h4>\n </li>\n <li *ngFor="let item of groupObj.data; let i = index;"\n [ngClass]="[\'radio\', \'app-radio\', \'group-list-item\', itemclass, itemsPerRowClass]"\n [class.active]="item.selected"\n [wmItemTemplate]="content" [userComponentParams]="item" partialContainer\n (click)="onRadioLabelClick($event, item)">\n \x3c!-- Default item template --\x3e\n <label *ngIf="!content" class="app-radioset-label"\n [ngClass]="{\'disabled\':disabled || readonly}">\n <input [name]="\'radioset_\' + widgetId" type="radio" [attr.aria-checked]="item.selected" [attr.data-attr-index]="i"\n [value]="item.key" [disabled]="disabled || readonly" [tabindex]="tabindex" [checked]="item.selected"/>\n <span class="caption" [textContent]="item.label"></span>\n </label>\n \x3c!-- Custom partial template --\x3e\n <label *ngIf="content" class="app-radioset-label"\n [ngClass]="{\'disabled\':disabled || readonly}">\n <input [name]="\'radioset_\' + widgetId" type="radio" [attr.aria-checked]="item.selected" [attr.data-attr-index]="i"\n [value]="item.key" [disabled]="disabled || readonly" [tabindex]="tabindex" [checked]="item.selected"/>\n <span class="caption customTemplate" partial-container-target></span>\n </label>\n </li>\n </ul>\n </li>\n</ng-template>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(Fe,{className:"RadiosetComponent",filePath:"radioset/radioset.component.ts",lineNumber:26});const je=new Map([["autofocus",s.PROP_BOOLEAN],["class",{value:"",...s.PROP_STRING}],["compareby",s.PROP_STRING],["datafield",s.PROP_STRING],["dataset",s.PROP_ANY],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["dateformat",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["displayexpression",s.PROP_STRING],["displayfield",s.PROP_STRING],["displayValue",s.PROP_STRING],["groupby",s.PROP_STRING],["hint",s.PROP_STRING],["match",s.PROP_STRING],["multiple",{value:!1,...s.PROP_BOOLEAN}],["name",s.PROP_STRING],["orderby",s.PROP_STRING],["placeholder",s.PROP_STRING],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}],["usekeys",s.PROP_BOOLEAN]]),$e=["select"],Be=e=>["app-select form-control",e],Ve=()=>({standalone:!0});function Ge(e,t){if(1&e&&p.\u0275\u0275element(0,"option",7),2&e){const e=t.$implicit;p.\u0275\u0275property("value",e.key)("selected",e.selected)("textContent",e.label)}}function We(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"optgroup",5),p.\u0275\u0275template(1,Ge,1,3,"option",6),p.\u0275\u0275elementEnd()),2&e){const e=t.$implicit;p.\u0275\u0275property("label",e.key),p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",e.data)}}function Ue(e,t){if(1&e&&(p.\u0275\u0275elementContainerStart(0),p.\u0275\u0275template(1,We,2,2,"optgroup",4),p.\u0275\u0275elementContainerEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",e.groupedData)}}function qe(e,t){if(1&e&&p.\u0275\u0275element(0,"option",7),2&e){const e=t.$implicit;p.\u0275\u0275property("value",e.key)("selected",e.selected)("textContent",e.label)}}function ze(e,t){if(1&e&&(p.\u0275\u0275elementContainerStart(0),p.\u0275\u0275template(1,qe,1,3,"option",6),p.\u0275\u0275elementContainerEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",e.datasetItems)}}const He={widgetType:"wm-select",hostClass:"app-select-wrapper"};class Qe extends G{static{this.initializeProps=(s.register("wm-select",je),s.registerFormWidget(o.FormWidgetType.SELECT,new Map(je)),void s.registerFormWidget(o.FormWidgetType.TYPEAHEAD,new Map(je)))}set datasource(e){e&&e.execute&&e.execute(o.DataSource.Operation.IS_BOUND_TO_LOCALE)&&(this.datavalue=e.execute(o.DataSource.Operation.GET_DEFAULT_LOCALE))}constructor(e,t,i){super(e,He,i),this.app=t,this.acceptsArray=!0}ngAfterViewInit(){super.ngAfterViewInit(),s.styler(this.selectEl.nativeElement,this)}handleEvent(e,t,i,n){r.includes(["blur","change"],t)||super.handleEvent(this.selectEl.nativeElement,t,i,n)}onSelectValueChange(e){if(this.readonly)return this.placeholder?this.selectEl.nativeElement.value=this.placeholder:this.selectEl.nativeElement.value="",void(this.datavalue=this.prevDatavalue);this.invokeOnTouched(),this.invokeOnChange(this.datavalue,e||{},!0)}onPropertyChange(e,t,i){if("required"!==e){if("class"!==e&&"tabindex"!==e)"readonly"===e&&(!0===t?o.setAttr(this.selectEl.nativeElement,"readonly","readonly"):o.removeAttr(this.selectEl.nativeElement,"readonly")),super.onPropertyChange(e,t,i);else if("class"===e){this.selectEl.nativeElement.classList.contains("ng-untouched")&&this.selectEl.nativeElement.classList.contains("ng-valid")&&t.includes("ng-untouched")&&t.includes("ng-invalid")&&setTimeout((()=>{this.selectEl.nativeElement.classList.contains("ng-untouched")&&this.selectEl.nativeElement.classList.contains("ng-valid")&&this.selectEl.nativeElement.classList.contains("ng-invalid")&&this.selectEl.nativeElement.classList.remove("ng-invalid")}))}}else this._onChange(this.datavalue)}checkForFloatingLabel(e){const t=$(this.selectEl.nativeElement).closest(".app-composite-widget.caption-floating");t.length>0?"focus"===e.type&&(!this.datavalue||this.datavalue&&""===$(this.selectEl).find("select option:selected").text()&&this.placeholder)?this.datavalue||this.placeholder?$(this.selectEl.nativeElement).find("option:first").text(this.placeholder):this.removePlaceholderOption():this.datavalue||($(this.selectEl.nativeElement).find("option:selected").text(""),t.removeClass("float-active")):this.datavalue||this.placeholder||this.removePlaceholderOption()}removePlaceholderOption(){const e=$(this.selectEl.nativeElement).find("#placeholderOption");e.length&&(e.remove(),this.selectEl.nativeElement.value="")}static{this.\u0275fac=function(e){return new(e||Qe)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(f.App),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:Qe,selectors:[["wm-select"]],viewQuery:function(e,i){if(1&e&&p.\u0275\u0275viewQuery($e,7,t.ElementRef),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(i.selectEl=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(Qe,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Qe,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Qe)]),p.\u0275\u0275InheritDefinitionFeature],decls:5,vars:18,consts:[["select",""],["role","listbox","aria-haspopup","true","aria-expanded","false","focus-target","",3,"ngModelChange","change","focus","blur","ngClass","disabled","required","tabindex","ngModel","ngModelOptions","multiple","autofocus"],["selected","","value","undefined","id","placeholderOption",3,"textContent","hidden"],[4,"ngIf"],[3,"label",4,"ngFor","ngForOf"],[3,"label"],["role","option",3,"value","selected","textContent",4,"ngFor","ngForOf"],["role","option",3,"value","selected","textContent"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"select",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.modelByKey,i)||(t.modelByKey=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("change",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onSelectValueChange(i))}))("focus",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.checkForFloatingLabel(i))}))("blur",(function(i){return p.\u0275\u0275restoreView(e),t.invokeOnTouched(i),p.\u0275\u0275resetView(t.checkForFloatingLabel(i))})),p.\u0275\u0275element(2,"option",2),p.\u0275\u0275template(3,Ue,2,1,"ng-container",3)(4,ze,2,1,"ng-container",3),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(15,Be,t.class))("disabled",t.disabled)("required",t.required)("tabindex",t.tabindex),p.\u0275\u0275twoWayProperty("ngModel",t.modelByKey),p.\u0275\u0275property("ngModelOptions",p.\u0275\u0275pureFunction0(17,Ve))("multiple",t.multiple)("autofocus",t.autofocus),p.\u0275\u0275attribute("name",t.name)("aria-label",t.hint)("aria-multiselectable",t.multiple),p.\u0275\u0275advance(2),p.\u0275\u0275property("textContent",t.placeholder)("hidden",!t.placeholder),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.groupby),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!t.groupby))},dependencies:[u.NgClass,u.NgForOf,u.NgIf,h.NgSelectOption,h.\u0275NgSelectMultipleOption,h.SelectMultipleControlValueAccessor,h.NgControlStatus,h.RequiredValidator,h.NgModel,g.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Qe,[{type:t.Component,args:[{selector:"wm-select",providers:[s.provideAs(Qe,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Qe,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Qe)],template:'<select role="listbox" aria-haspopup="true" aria-expanded="false" #select\n focus-target\n [ngClass]="[\'app-select form-control\', class]"\n [disabled]="disabled"\n [required]="required"\n [tabindex]="tabindex"\n [(ngModel)]="modelByKey"\n [ngModelOptions]="{standalone: true}"\n [multiple]="multiple"\n (change)="onSelectValueChange($event)"\n (focus)="checkForFloatingLabel($event)"\n (blur)="invokeOnTouched($event); checkForFloatingLabel($event)"\n [attr.name]="name"\n [attr.aria-label]="hint"\n [attr.aria-multiselectable]="multiple"\n [autofocus]="autofocus">\n\n <option selected\n value="undefined"\n [textContent]="placeholder"\n id="placeholderOption"\n [hidden]="!placeholder"></option>\n\n <ng-container *ngIf="groupby">\n <optgroup *ngFor="let groupObj of groupedData"\n [label]="groupObj.key">\n <option *ngFor="let item of groupObj.data;"\n [value]="item.key"\n [selected]="item.selected"\n [textContent]="item.label"\n role="option"></option>\n </optgroup>\n </ng-container>\n\n <ng-container *ngIf="!groupby">\n <option *ngFor="let item of datasetItems"\n [value]="item.key"\n [selected]="item.selected"\n [textContent]="item.label"\n role="option"></option>\n </ng-container>\n</select>\n'}]}],(()=>[{type:p.Injector},{type:f.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{selectEl:[{type:t.ViewChild,args:["select",{static:!0,read:t.ElementRef}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(Qe,{className:"SelectComponent",filePath:"select/select.component.ts",lineNumber:22});const Ye=new Map([["class",s.PROP_STRING],["compareby",s.PROP_STRING],["datafield",s.PROP_STRING],["dataset",{value:"yes, no, maybe",...s.PROP_ANY}],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["displayexpression",s.PROP_STRING],["displayfield",s.PROP_STRING],["hint",s.PROP_STRING],["iconclass",s.PROP_STRING],["name",s.PROP_STRING],["orderby",s.PROP_STRING],["required",s.PROP_BOOLEAN],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}]]),Xe=["wmSwitch",""],Ke=(e,t)=>({selected:e,disabled:t}),Je=e=>["app-icon",e];function Ze(e,t){if(1&e&&p.\u0275\u0275element(0,"i",8),2&e){const e=p.\u0275\u0275nextContext().$implicit,t=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(1,Je,e.dataObject[t.iconclass]||e.icon))}}function et(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"a",5),p.\u0275\u0275listener("click",(function(t){const i=p.\u0275\u0275restoreView(e),n=i.$implicit,a=i.index,s=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(s.selectOpt(t,a,n))})),p.\u0275\u0275template(1,Ze,1,3,"i",6),p.\u0275\u0275element(2,"span",7),p.\u0275\u0275elementEnd()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext();p.\u0275\u0275property("name","wm-switch-"+e.key)("ngClass",p.\u0275\u0275pureFunction2(4,Ke,e.selected,i.disabled)),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",e.dataObject&&e.dataObject[i.iconclass]),p.\u0275\u0275advance(),p.\u0275\u0275property("textContent",e[i.displayfield]||e.label)}}function tt(e,t){if(1&e&&p.\u0275\u0275element(0,"i"),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("app-icon ",e.selectedItem&&e.selectedItem.dataObject&&e.selectedItem.dataObject[e.iconclass],"")}}const it={widgetType:"wm-switch",hostClass:"app-switch"};class nt extends G{static{this.initializeProps=(s.register("wm-switch",Ye),s.registerFormWidget(o.FormWidgetType.SWITCH,new Map(Ye)),void s.registerFormWidget(o.FormWidgetType.TOGGLE,new Map(Ye)))}constructor(e,t){super(e,it,t),this.options=[],this._debounceSetSelectedValue=o.debounce((e=>{this.setSelectedValue(),this.updateHighlighter(e),e&&o.$appDigest()}),200);const i=this.dataset$.subscribe((()=>this.updateSwitchOptions()));this.registerDestroyListener((()=>i.unsubscribe()));const n=this.datavalue$.subscribe((()=>{this._debounceSetSelectedValue(!0)}));this.registerDestroyListener((()=>n.unsubscribe()))}ngAfterViewInit(){super.ngAfterViewInit(),s.styler(this.nativeElement,this)}onStyleChange(e,t,i){"height"===e?o.setCSS(this.nativeElement,"overflow",t?"auto":""):super.onStyleChange(e,t,i)}setSelectedValue(){o.isDefined(this.datavalue)||o.isDefined(this.toBeProcessedDatavalue)?this.selectedItem=r.find(this.datasetItems,{selected:!0}):this.selectOptAtIndex(0)}updateSwitchOptions(){this.datasetItems.length&&(this.btnwidth=100/this.datasetItems.length,o.setCSS(this.nativeElement.querySelector(".app-switch-overlay"),"width",this.btnwidth+"%")),this._debounceSetSelectedValue(!0)}updateHighlighter(e){const t=$(this.nativeElement).find("span.app-switch-overlay");this.setSelectedValue();let i,n=this.selectedItem?r.findIndex(this.datasetItems,{key:this.selectedItem.key}):-1;null==n&&(n=-1),i=n*this.btnwidth,e?t.css("left",i+"%"):t.animate({left:i+"%"},300)}selectOptAtIndex(e){if(!this.datasetItems.length)return;const t=this.datasetItems[e];this._modelByValue=t.value}selectOpt(e,t,i){if(e.preventDefault(),!this.disabled){if(this.modelByKey=i.key,this.invokeOnTouched(),this.selectedItem&&t===r.findIndex(this.datasetItems,{key:this.selectedItem.key})){if(2!==this.datasetItems.length)return;t=1===t?0:1}this.selectedItem=this.datasetItems[t],this.updateHighlighter(),this.invokeOnChange(this.datavalue,e||{},!0),o.$appDigest()}}onPropertyChange(e,t,i){"disabled"!==e||o.toBoolean(t)?super.onPropertyChange(e,t,i):this.nativeElement.removeAttribute(e)}static{this.\u0275fac=function(e){return new(e||nt)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:nt,selectors:[["","wmSwitch",""]],exportAs:["wmSwitch"],features:[p.\u0275\u0275ProvidersFeature([s.provideAs(nt,n.NG_VALUE_ACCESSOR,!0),s.provideAsWidgetRef(nt)]),p.\u0275\u0275InheritDefinitionFeature],attrs:Xe,decls:6,vars:8,consts:[["role","group",1,"btn-group","btn-group-justified"],["focus-target","","href","javascript:void(0);","class","btn btn-default",3,"name","ngClass","click",4,"ngFor","ngForOf"],[1,"btn","btn-primary","app-switch-overlay","switch-handle",3,"title"],[3,"class",4,"ngIf"],["aria-hidden","true",1,"model-holder","ng-hide",3,"name","disabled","value","required"],["focus-target","","href","javascript:void(0);",1,"btn","btn-default",3,"click","name","ngClass"],["aria-hidden","true",3,"ngClass",4,"ngIf"],[1,"caption",3,"textContent"],["aria-hidden","true",3,"ngClass"]],template:function(e,t){1&e&&(p.\u0275\u0275elementStart(0,"div",0),p.\u0275\u0275template(1,et,3,7,"a",1),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(2,"span",2),p.\u0275\u0275template(3,tt,1,3,"i",3),p.\u0275\u0275text(4),p.\u0275\u0275elementEnd(),p.\u0275\u0275element(5,"input",4)),2&e&&(p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",t.datasetItems),p.\u0275\u0275advance(),p.\u0275\u0275property("title",t.selectedItem?t.selectedItem.label:t.modelByKey),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.iconclass),p.\u0275\u0275advance(),p.\u0275\u0275textInterpolate1(" ",t.selectedItem?t.selectedItem.label:t.modelByKey,"\n"),p.\u0275\u0275advance(),p.\u0275\u0275property("name",t.name)("disabled",t.disabled)("value",t.modelByKey)("required",t.required))},dependencies:[u.NgClass,u.NgForOf,u.NgIf,g.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(nt,[{type:t.Component,args:[{selector:"[wmSwitch]",providers:[s.provideAs(nt,n.NG_VALUE_ACCESSOR,!0),s.provideAsWidgetRef(nt)],exportAs:"wmSwitch",template:'<div role="group" class="btn-group btn-group-justified">\n <a *ngFor="let opt of datasetItems; let $index = index;"\n focus-target\n href="javascript:void(0);"\n class="btn btn-default"\n [name]="\'wm-switch-\' + opt.key"\n [ngClass]="{\'selected\': opt.selected, \'disabled\': disabled}"\n (click)="selectOpt($event, $index, opt)"\n >\n <i *ngIf="opt.dataObject && opt.dataObject[iconclass]" aria-hidden="true" [ngClass]="[\'app-icon\', opt.dataObject[iconclass] || opt[\'icon\']]"></i>\n <span class="caption" [textContent]="opt[displayfield] || opt.label"></span>\n </a>\n</div>\n<span [title]="selectedItem ? selectedItem.label : modelByKey"\n class="btn btn-primary app-switch-overlay switch-handle">\n <i *ngIf="iconclass"\n class="app-icon {{(selectedItem && selectedItem.dataObject) && selectedItem.dataObject[iconclass]}}"></i>\n {{selectedItem ? selectedItem.label : modelByKey}}\n</span>\n<input [name]="name" class="model-holder ng-hide" [disabled]="disabled" [value]="modelByKey" [required]="required" aria-hidden="true">\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(nt,{className:"SwitchComponent",filePath:"switch/switch.component.ts",lineNumber:25});const at=new Map([["autocomplete",{value:!0,...s.PROP_BOOLEAN}],["autotrim",{value:!0,...s.PROP_BOOLEAN}],["autofocus",s.PROP_BOOLEAN],["class",s.PROP_STRING],["datasource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["maxvalue",s.PROP_NUMBER],["minvalue",s.PROP_NUMBER],["name",s.PROP_STRING],["placeholder",{value:"Enter text",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["step",s.PROP_NUMBER],["tabindex",{value:0,...s.PROP_NUMBER}],["type",s.PROP_STRING],["updateon",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]),st=["input"],ot=["type","date"],rt=()=>({standalone:!0}),lt={widgetType:"wm-input-calendar",hostClass:"app-input-wrapper"};class ct extends he{static{this.initializeProps=void s.register("wm-input-calendar",at)}constructor(e,t){super(e,lt,t)}static{this.\u0275fac=function(e){return new(e||ct)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:ct,selectors:[["wm-input","type","date"],["wm-input","type","datetime-local"],["wm-input","type","month"],["wm-input","type","time"],["wm-input","type","week"]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(st,7),p.\u0275\u0275viewQuery(n.NgModel,5)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(ct,n.NG_VALUE_ACCESSOR,!0),s.provideAs(ct,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(ct)]),p.\u0275\u0275InheritDefinitionFeature],attrs:ot,decls:2,vars:19,consts:[["input",""],["focus-target","","role","textbox",1,"form-control","app-textbox",3,"ngModelChange","blur","type","ngModel","ngModelOptions","readonly","required","disabled","min","max","step","autofocus","autocomplete","ngClass","ngStyle"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"input",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("blur",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleBlur(i))}))("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleChange(i))})),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("type",t.type),p.\u0275\u0275twoWayProperty("ngModel",t.datavalue),p.\u0275\u0275property("ngModelOptions",p.\u0275\u0275pureFunction0(18,rt))("readonly",t.readonly)("required",t.required)("disabled",t.disabled)("min",t.minvalue)("max",t.maxvalue)("step",t.step)("autofocus",t.autofocus)("autocomplete",t.autocomplete?"on":"off")("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle),p.\u0275\u0275attribute("name",t.name)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint||t.type+" field"))},dependencies:[u.NgClass,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ct,[{type:t.Component,args:[{selector:'wm-input[type="date"], wm-input[type="datetime-local"], wm-input[type="month"], wm-input[type="time"], wm-input[type="week"]',providers:[s.provideAs(ct,n.NG_VALUE_ACCESSOR,!0),s.provideAs(ct,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(ct)],template:'<input class="form-control app-textbox"\n focus-target\n role="textbox"\n [type]="type"\n [attr.name]="name"\n [(ngModel)]="datavalue"\n [ngModelOptions]="{standalone: true}"\n [readonly]="readonly"\n [required]="required"\n [disabled]="disabled"\n [min]="minvalue"\n [max]="maxvalue"\n [step]="step"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint || type + \' field\'"\n [autofocus]="autofocus"\n (blur)="handleBlur($event)"\n (ngModelChange)="handleChange($event)"\n [autocomplete]="autocomplete ? \'on\' : \'off\'"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n #input>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["input",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(ct,{className:"InputCalendarComponent",filePath:"text/calendar/input-calendar.component.ts",lineNumber:22});const dt=new Map([["autocomplete",{value:!0,...s.PROP_BOOLEAN}],["autofocus",s.PROP_BOOLEAN],["autotrim",{value:!0,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["name",s.PROP_STRING],["placeholder",{value:"Enter text",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}],["type",{value:"color",...s.PROP_STRING}],["updateon",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]),pt=["input"],ut=["type","color"],ht=()=>({standalone:!0}),mt={widgetType:"wm-input-color",hostClass:"app-input-wrapper"};class gt extends he{static{this.initializeProps=void s.register("wm-input-color",dt)}constructor(e,t){super(e,mt,t)}static{this.\u0275fac=function(e){return new(e||gt)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:gt,selectors:[["wm-input","type","color"]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(pt,7),p.\u0275\u0275viewQuery(n.NgModel,5)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(gt,n.NG_VALUE_ACCESSOR,!0),s.provideAs(gt,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(gt)]),p.\u0275\u0275InheritDefinitionFeature],attrs:ut,decls:2,vars:16,consts:[["input",""],["focus-target","","role","textbox",1,"form-control","app-textbox",3,"ngModelChange","blur","type","ngModel","ngModelOptions","readonly","required","disabled","maxlength","autofocus","ngClass","ngStyle"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"input",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("blur",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleBlur(i))}))("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleChange(i))})),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("type",t.type),p.\u0275\u0275twoWayProperty("ngModel",t.datavalue),p.\u0275\u0275property("ngModelOptions",p.\u0275\u0275pureFunction0(15,ht))("readonly",t.readonly)("required",t.required)("disabled",t.disabled)("maxlength",t.maxchars)("autofocus",t.autofocus)("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle),p.\u0275\u0275attribute("name",t.name)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint))},dependencies:[u.NgClass,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.MaxLengthValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(gt,[{type:t.Component,args:[{selector:'wm-input[type="color"]',providers:[s.provideAs(gt,n.NG_VALUE_ACCESSOR,!0),s.provideAs(gt,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(gt)],template:'<input class="form-control app-textbox"\n focus-target\n [type]="type"\n role="textbox"\n [attr.name]="name"\n [(ngModel)]="datavalue"\n [ngModelOptions]="{standalone: true}"\n [readonly]="readonly"\n [required]="required"\n [disabled]="disabled"\n [maxlength]="maxchars"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint"\n [autofocus]="autofocus"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n (blur)="handleBlur($event)"\n (ngModelChange)="handleChange($event)"\n #input>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["input",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(gt,{className:"InputColorComponent",filePath:"text/color/input-color.component.ts",lineNumber:23});const ft=new Map([["autocomplete",{value:!0,...s.PROP_BOOLEAN}],["autofocus",s.PROP_BOOLEAN],["autotrim",{value:!0,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["maxchars",s.PROP_NUMBER],["name",s.PROP_STRING],["placeholder",{value:"Enter text",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["regexp",s.PROP_STRING],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}],["type",{value:"email",...s.PROP_STRING}],["updateon",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]),vt=["input"],bt=["type","email"],yt={widgetType:"wm-input-email",hostClass:"app-input-wrapper"};class wt extends he{static{this.initializeProps=void s.register("wm-input-email",ft)}constructor(e,t){super(e,yt,t)}static{this.\u0275fac=function(e){return new(e||wt)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:wt,selectors:[["wm-input","type","email"]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(vt,7),p.\u0275\u0275viewQuery(n.NgModel,5)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(wt,n.NG_VALUE_ACCESSOR,!0),s.provideAs(wt,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(wt)]),p.\u0275\u0275InheritDefinitionFeature],attrs:bt,decls:2,vars:17,consts:[["input",""],["focus-target","","role","textbox","email","",1,"form-control","app-textbox",3,"ngModelChange","blur","keyup.enter","type","ngModel","ngModelOptions","readonly","required","disabled","maxlength","pattern","autofocus","ngClass","ngStyle","autocomplete"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"input",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("blur",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleBlur(i))}))("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleChange(i))}))("keyup.enter",(function(){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275reference(1);return p.\u0275\u0275resetView(t.flushViewChanges(i.value))})),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("type",t.type),p.\u0275\u0275twoWayProperty("ngModel",t.datavalue),p.\u0275\u0275property("ngModelOptions",t.ngModelOptions)("readonly",t.readonly)("required",t.required)("disabled",t.disabled)("maxlength",t.maxchars)("pattern",t.regexp)("autofocus",t.autofocus)("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle)("autocomplete",t.autocomplete?"on":"off"),p.\u0275\u0275attribute("name",t.name)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint))},dependencies:[u.NgClass,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.MaxLengthValidator,h.PatternValidator,h.EmailValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(wt,[{type:t.Component,args:[{selector:'wm-input[type="email"]',providers:[s.provideAs(wt,n.NG_VALUE_ACCESSOR,!0),s.provideAs(wt,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(wt)],template:'<input class="form-control app-textbox"\n focus-target\n role="textbox"\n [type]="type"\n [attr.name]="name"\n [(ngModel)]="datavalue"\n [ngModelOptions]="ngModelOptions"\n [readonly]="readonly"\n [required]="required"\n [disabled]="disabled"\n [maxlength]="maxchars"\n [pattern]="regexp"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint"\n [autofocus]="autofocus"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n (blur)="handleBlur($event)"\n (ngModelChange)="handleChange($event)"\n [autocomplete]="autocomplete ? \'on\' : \'off\'"\n (keyup.enter)="flushViewChanges(input.value)"\n email\n #input>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["input",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(wt,{className:"InputEmailComponent",filePath:"text/email/input-email.component.ts",lineNumber:23});const Ct=new Map([["autocomplete",{value:!0,...s.PROP_BOOLEAN}],["autofocus",s.PROP_BOOLEAN],["autotrim",{value:!0,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["maxchars",s.PROP_NUMBER],["maxvalue",s.PROP_NUMBER],["minvalue",s.PROP_NUMBER],["name",s.PROP_STRING],["placeholder",{value:"Enter text",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["regexp",s.PROP_STRING],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["step",s.PROP_NUMBER],["tabindex",{value:0,...s.PROP_NUMBER}],["type",{value:"number",...s.PROP_STRING}],["updateon",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]),Pt=["input"],It=["type","number"],At=e=>({"step-hidden":e}),Et={widgetType:"wm-input-number",hostClass:"app-input-wrapper"};class Ot extends he{static{this.initializeProps=void s.register("wm-input-number",Ct)}constructor(e,t){super(e,Et,t)}onArrowPress(e){0===this.step&&e.preventDefault()}validateInputEntry(e){if("e"===e.key&&-1!==e.target.value.indexOf(e.key))return!1}static{this.\u0275fac=function(e){return new(e||Ot)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:Ot,selectors:[["wm-input","type","number"]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(Pt,7),p.\u0275\u0275viewQuery(n.NgModel,5)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(Ot,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Ot,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Ot)]),p.\u0275\u0275InheritDefinitionFeature],attrs:It,decls:2,vars:22,consts:[["input",""],["focus-target","","role","textbox",1,"form-control","app-textbox",3,"ngModelChange","blur","keyup.enter","keydown.ArrowUp","keydown.ArrowDown","keypress","ngClass","type","ngModel","ngModelOptions","readonly","required","disabled","maxlength","min","max","step","autofocus","ngStyle","autocomplete"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"input",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("blur",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleBlur(i))}))("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleChange(i))}))("keyup.enter",(function(){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275reference(1);return p.\u0275\u0275resetView(t.flushViewChanges(i.value))}))("keydown.ArrowUp",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onArrowPress(i))}))("keydown.ArrowDown",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onArrowPress(i))}))("keypress",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.validateInputEntry(i))})),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(20,At,0===t.step))("type",t.type),p.\u0275\u0275twoWayProperty("ngModel",t.datavalue),p.\u0275\u0275property("ngModelOptions",t.ngModelOptions)("readonly",t.readonly)("required",t.required)("disabled",t.disabled)("maxlength",t.maxchars)("min",t.minvalue)("max",t.maxvalue)("step",t.step)("autofocus",t.autofocus)("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle)("autocomplete",t.autocomplete?"on":"off"),p.\u0275\u0275attribute("name",t.name)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint))},dependencies:[u.NgClass,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.MaxLengthValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Ot,[{type:t.Component,args:[{selector:'wm-input[type="number"]',providers:[s.provideAs(Ot,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Ot,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Ot)],template:'<input class="form-control app-textbox"\n [ngClass]="{\'step-hidden\': step === 0}"\n focus-target\n role="textbox"\n [type]="type"\n [attr.name]="name"\n [(ngModel)]="datavalue"\n [ngModelOptions]="ngModelOptions"\n [readonly]="readonly"\n [required]="required"\n [disabled]="disabled"\n [maxlength]="maxchars"\n [min]="minvalue"\n [max]="maxvalue"\n [step]="step"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint"\n [autofocus]="autofocus"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n (blur)="handleBlur($event)"\n (ngModelChange)="handleChange($event)"\n [autocomplete]="autocomplete ? \'on\' : \'off\'"\n (keyup.enter)="flushViewChanges(input.value)"\n (keydown.ArrowUp)="onArrowPress($event)"\n (keydown.ArrowDown)="onArrowPress($event)"\n (keypress)="validateInputEntry($event)"\n #input>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["input",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(Ot,{className:"InputNumberComponent",filePath:"text/number/input-number.component.ts",lineNumber:22});const Tt=new Map([["autocomplete",{value:!0,...s.PROP_BOOLEAN}],["autofocus",s.PROP_BOOLEAN],["autotrim",{value:!0,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["displayformat",s.PROP_STRING],["hint",s.PROP_STRING],["maxchars",s.PROP_NUMBER],["name",s.PROP_STRING],["placeholder",{value:"Enter text",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["regexp",s.PROP_STRING],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["showdisplayformaton",{value:"always",...s.PROP_ANY}],["tabindex",{value:0,...s.PROP_NUMBER}],["type",{value:"text",...s.PROP_STRING}],["updateon",s.PROP_STRING],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]),xt=["input"],Dt=["type","text"],Rt={widgetType:"wm-input-text",hostClass:"app-input-wrapper"};class St extends he{static{this.initializeProps=(()=>{s.register("wm-input-text",Tt),s.registerFormWidget(o.FormWidgetType.PASSWORD,new Map(Tt));const e=new Map(Tt),t=t=>{t.forEach(((t,i)=>e.set(i,t)))};t(at),t(dt),t(ft),t(Ct),s.registerFormWidget(o.FormWidgetType.TEXT,new Map(e))})()}constructor(e,t){super(e,Rt,t),this.lazy=!1}onPropertyChange(e,t,i){switch(e){case"displayformat":this.maskVal=this.displayformat,this.checkForDisplayFormat();break;case"showdisplayformaton":this.lazy="keypress"===t;break;default:super.onPropertyChange(e,t,i)}}get mask(){return!(!this.displayformat||!(!this.placeholder||this.placeholder&&this.isFocused))&&{mask:this.maskVal,lazy:this.lazy,definitions:{9:/\d/,A:/[a-zA-Z]/,a:/[a-z]/,"*":/\w/}}}checkForDisplayFormat(e){this.displayformat?(this.isFocused=!!(e&&"focus"===e.type||this.datavalue),!this.isFocused&&this.imask&&this.imask.maskRef?(this.imask.maskRef.updateOptions({lazy:!0}),!this.datavalue&&this.imask.maskRef.value&&(this.imask.maskRef.value=this.datavalue)):setTimeout((()=>{if(this.imask&&this.imask.maskRef&&this.imask.maskRef.value){const e=this.imask.maskRef.value.indexOf("_"),t=e>=0?this.imask.maskRef.value.slice(0,e).length:this.imask.maskRef.value.length;t!==this.imask.maskRef.cursorPos&&this.imask.maskRef.updateCursor(t)}}),50)):this.imask&&this.imask.maskRef&&(this.imask.maskRef.updateOptions({lazy:!0}),this.inputEl.nativeElement.value=this.datavalue)}ngOnInit(){super.ngOnInit(),this.isFocused=!!this.datavalue}static{this.\u0275fac=function(e){return new(e||St)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:St,selectors:[["wm-input","type","text"],["wm-input",3,"type",""],["wm-input","type","password"],["wm-input","type","search"],["wm-input","type","tel"],["wm-input","type","url"]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(xt,7),p.\u0275\u0275viewQuery(n.NgModel,5),p.\u0275\u0275viewQuery(xt,5,a.IMaskDirective)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.imask=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(St,n.NG_VALUE_ACCESSOR,!0),s.provideAs(St,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(St)]),p.\u0275\u0275InheritDefinitionFeature],attrs:Dt,decls:2,vars:19,consts:[["input",""],["focus-target","","role","textbox",1,"form-control","app-textbox",3,"ngModelChange","blur","focus","keyup.enter","type","ngModel","imask","unmask","ngModelOptions","readonly","required","disabled","maxlength","pattern","autofocus","ngClass","ngStyle","autocomplete"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"input",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleChange(i))}))("blur",(function(i){return p.\u0275\u0275restoreView(e),t.handleBlur(i),p.\u0275\u0275resetView(t.checkForDisplayFormat(i))}))("focus",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.checkForDisplayFormat(i))}))("keyup.enter",(function(){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275reference(1);return p.\u0275\u0275resetView(t.flushViewChanges(i.value))})),p.\u0275\u0275elementEnd()}2&e&&(p.\u0275\u0275property("type",t.type),p.\u0275\u0275twoWayProperty("ngModel",t.datavalue),p.\u0275\u0275property("imask",t.mask)("unmask",!0)("ngModelOptions",t.ngModelOptions)("readonly",t.readonly)("required",t.required)("disabled",t.disabled)("maxlength",t.maxchars)("pattern",t.regexp)("autofocus",t.autofocus)("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle)("autocomplete",t.autocomplete?"on":"off"),p.\u0275\u0275attribute("name",t.name)("aria-label",t.hint)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey))},dependencies:[u.NgClass,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.MaxLengthValidator,h.PatternValidator,h.NgModel,m.IMaskDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(St,[{type:t.Component,args:[{selector:'wm-input[type="text"], wm-input:not([type]), wm-input[type="password"], wm-input[type="search"], wm-input[type="tel"], wm-input[type="url"]',providers:[s.provideAs(St,n.NG_VALUE_ACCESSOR,!0),s.provideAs(St,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(St)],template:'<input class="form-control app-textbox"\n focus-target\n role="textbox"\n [type]="type"\n [attr.name]="name"\n [attr.aria-label]="hint"\n [(ngModel)]="datavalue"\n [imask]="mask"\n [unmask]="true"\n [ngModelOptions]="ngModelOptions"\n [readonly]="readonly"\n [required]="required"\n [disabled]="disabled"\n [maxlength]="maxchars"\n [pattern]="regexp"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [autofocus]="autofocus"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n (ngModelChange)="handleChange($event)"\n (blur)="handleBlur($event); checkForDisplayFormat($event)"\n (focus)="checkForDisplayFormat($event)"\n [autocomplete]="autocomplete ? \'on\' : \'off\'"\n (keyup.enter)="flushViewChanges(input.value)"\n #input>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["input",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel]}],imask:[{type:t.ViewChild,args:["input",{read:a.IMaskDirective}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(St,{className:"InputTextComponent",filePath:"text/text/input-text.component.ts",lineNumber:23});const _t=new Map([["autofocus",s.PROP_BOOLEAN],["autotrim",{value:!0,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["maxchars",s.PROP_NUMBER],["name",s.PROP_STRING],["placeholder",{value:"Place your text",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}],["updateon",s.PROP_STRING],["limitdisplaytext",s.PROP_STRING],["charlength",s.PROP_NUMBER],["conditionalclass",s.PROP_ANY],["conditionalstyle",s.PROP_ANY]]),Mt=["textarea"];function Nt(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",3),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275textInterpolate(e.limitdisplaytext)}}const kt={widgetType:"wm-textarea",hostClass:"app-input-wrapper"};class Lt extends he{static{this.initializeProps=(s.register("wm-textarea",_t),void s.registerFormWidget(o.FormWidgetType.TEXTAREA,new Map(_t)))}constructor(e,t){super(e,kt,t),this.charlength=0}onInputChange(){this.charlength=this.inputEl.nativeElement.value.length}static{this.\u0275fac=function(e){return new(e||Lt)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:Lt,selectors:[["wm-textarea"]],viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(Mt,7),p.\u0275\u0275viewQuery(n.NgModel,5)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.inputEl=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[p.\u0275\u0275ProvidersFeature([s.provideAs(Lt,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Lt,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Lt)]),p.\u0275\u0275InheritDefinitionFeature],decls:3,vars:15,consts:[["textarea",""],["focus-target","","role","textbox","aria-multiline","true",1,"form-control","app-textarea",3,"ngModelChange","blur","input","ngModel","ngModelOptions","readonly","required","disabled","maxlength","autofocus","ngClass","ngStyle"],["class","textarea-count",4,"ngIf"],[1,"textarea-count"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"textarea",1,0),p.\u0275\u0275twoWayListener("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),p.\u0275\u0275resetView(i)})),p.\u0275\u0275listener("blur",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleBlur(i))}))("input",(function(){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.onInputChange())}))("ngModelChange",(function(i){return p.\u0275\u0275restoreView(e),t.handleChange(i),p.\u0275\u0275resetView(t.onInputChange())})),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(2,Nt,2,1,"div",2)}2&e&&(p.\u0275\u0275twoWayProperty("ngModel",t.datavalue),p.\u0275\u0275property("ngModelOptions",t.ngModelOptions)("readonly",t.readonly)("required",t.required)("disabled",t.disabled)("maxlength",t.maxchars)("autofocus",t.autofocus)("ngClass",t.conditionalclass)("ngStyle",t.conditionalstyle),p.\u0275\u0275attribute("name",t.name)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",t.maxchars))},dependencies:[u.NgClass,u.NgIf,u.NgStyle,h.DefaultValueAccessor,h.NgControlStatus,h.RequiredValidator,h.MaxLengthValidator,h.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Lt,[{type:t.Component,args:[{selector:"wm-textarea",providers:[s.provideAs(Lt,n.NG_VALUE_ACCESSOR,!0),s.provideAs(Lt,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(Lt)],template:'<textarea class="form-control app-textarea"\n focus-target\n role="textbox"\n [attr.name]="name"\n [(ngModel)]="datavalue"\n [ngModelOptions]="ngModelOptions"\n [readonly]="readonly"\n [required]="required"\n [disabled]="disabled"\n [maxlength]="maxchars"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint"\n aria-multiline="true"\n [autofocus]="autofocus"\n [ngClass]="conditionalclass"\n [ngStyle]="conditionalstyle"\n (blur)="handleBlur($event)"\n (input)="onInputChange()"\n (ngModelChange)="handleChange($event); onInputChange();"\n #textarea\n></textarea>\n\n<div *ngIf="maxchars" class="textarea-count" >{{limitdisplaytext}}</div>\n'}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{inputEl:[{type:t.ViewChild,args:["textarea",{static:!0}]}],ngModel:[{type:t.ViewChild,args:[n.NgModel]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(Lt,{className:"TextareaComponent",filePath:"textarea/textarea.component.ts",lineNumber:22});class Ft{constructor(e,i){this.skipFloatPositionWidgets=["radioset","checkboxset","richtext","switch","chips","checkbox","slider","rating","toggle","upload"],this.elementRef=e.get(t.ElementRef),this.nativeEl=this.elementRef.nativeElement,this.app=i}onBlurCb(){let e;this.inputEl.length>1&&this.inputEl.hasClass("mobile-input")&&r.forEach(this.inputEl,(t=>{$(t).hasClass("mobile-input")&&t.value&&(e=t.value)})),this.inputEl.val()||e||(this.compositeEle.classList.remove("float-active"),this.inputEl.removeAttr("placeholder"))}onFocusCb(){this.compositeEle.classList.add("float-active"),this.inputEl.attr("placeholder",this.placeholder)}checkForSelectPlaceholder(){!$(this.nativeEl).find("select option:selected").text()||$(this.nativeEl).find("select").is(":focus")||$(this.inputEl.closest("[widget-id]")).attr("datavalue")||$(this.nativeEl).find("select option:selected").text("")}setDefaultValueAnimation(){!this._isPlaceholderBound&&this.inputEl.attr("placeholder")&&(this.placeholder=this.inputEl.attr("placeholder"),this.inputEl.removeAttr("placeholder")),this.checkForSelectPlaceholder(),(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")||this.nativeEl.getAttribute("displayformat")||$(this.nativeEl).find("select option:selected").text()||$(this.nativeEl).find("select").attr("multiple"))&&this.compositeEle.classList.add("float-active")}observeForPlaceholderAttrChange(){this._attrObserver=new MutationObserver((e=>{e.forEach((e=>{"placeholder"===e.attributeName&&this.inputEl.attr("placeholder")&&!this.compositeEle.classList.contains("float-active")&&(this.placeholder=this.inputEl.attr("placeholder"),this.inputEl.removeAttr("placeholder"))}))}));this._attrObserver.observe(this.inputEl[0],{attributes:!0,childList:!1,characterData:!1})}checkForRightAlignedForm(){const e=$(this.compositeEle);if(e.closest(".align-right").length&&e.find(".input-group-btn").length){const t=e.find("label");e.find("[wmdatetime]").length?t.addClass("input-grp-dt-icon"):t.addClass("input-grp-icon")}}ngAfterViewInit(){this.compositeEle=this.nativeEl;const e=this.nativeEl.widget;let t=e.$attrs.get("captionposition");if(e.form&&(t=e.form.$attrs.get("captionposition"),this.compositeEle=this.nativeEl.querySelector(".app-composite-widget"),this._isPlaceholderBound=this.nativeEl.getAttribute("placeholder.bind")),"floating"===t){if(e.form){const e=this.nativeEl.getAttribute("widgettype");this.skipFloatPositionWidgets.indexOf(e)>-1&&(this.compositeEle.classList.remove("caption-floating"),this.compositeEle.classList.add("caption-top")),this.checkForRightAlignedForm()}this.inputEl=$(this.nativeEl).find("input, select, textarea"),this._isPlaceholderBound||(this._isPlaceholderBound=this.inputEl.closest("[widget-id]").attr("placeholder.bind")),setTimeout(this.setDefaultValueAnimation.bind(this),0),this.inputEl.focus(this.onFocusCb.bind(this)),this.inputEl.blur(this.onBlurCb.bind(this)),this._isPlaceholderBound&&this.observeForPlaceholderAttrChange()}}ngOnInit(){this.labelAnimationSubscription=this.app.subscribe("captionPositionAnimate",(e=>{const t=this.inputEl&&this.inputEl.is(":focus");if(e.displayVal||e.isFocused||e.isSelectMultiple||t)e.nativeEl.addClass("float-active"),!e.displayVal&&t&&this.inputEl.attr("placeholder",this.placeholder);else if(e.nativeEl.removeClass("float-active"),this.inputEl){const e=this.inputEl.find("option:first");(this.inputEl.attr("placeholder")||e.text())&&(e.length?e.text(""):(this.placeholder=this.inputEl.attr("placeholder"),this.inputEl.removeAttr("placeholder")))}}))}ngOnDestroy(){this.labelAnimationSubscription&&this.labelAnimationSubscription(),this._attrObserver&&this._attrObserver.disconnect()}static{this.\u0275fac=function(e){return new(e||Ft)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(f.App))}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:Ft,selectors:[["","wmCaptionPosition",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Ft,[{type:t.Directive,args:[{selector:"[wmCaptionPosition]"}]}],(()=>[{type:p.Injector},{type:f.App}]),null);const jt=[T,D,Ft,V,le,pe,ve,Fe,Qe,nt,ct,gt,wt,Ot,St,Lt];class $t{static{this.\u0275fac=function(e){return new(e||$t)}}static{this.\u0275mod=p.\u0275\u0275defineNgModule({type:$t})}static{this.\u0275inj=p.\u0275\u0275defineInjector({imports:[i.CommonModule,n.FormsModule,s.WmComponentsModule,a.IMaskModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata($t,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.FormsModule,s.WmComponentsModule,a.IMaskModule],declarations:[...jt],exports:[...jt]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&p.\u0275\u0275setNgModuleScope($t,{declarations:[T,D,Ft,V,le,pe,ve,Fe,Qe,nt,ct,gt,wt,Ot,St,Lt],imports:[i.CommonModule,n.FormsModule,s.WmComponentsModule,a.IMaskModule],exports:[T,D,Ft,V,le,pe,ve,Fe,Qe,nt,ct,gt,wt,Ot,St,Lt]}),e.BaseFormComponent=R,e.BaseFormCustomComponent=_,e.ButtonComponent=T,e.ButtonGroupDirective=D,e.CaptionPositionDirective=Ft,e.CheckboxComponent=V,e.CheckboxsetComponent=le,e.CompositeDirective=pe,e.DatasetAwareFormComponent=G,e.InputCalendarComponent=ct,e.InputColorComponent=gt,e.InputEmailComponent=wt,e.InputModule=$t,e.InputNumberComponent=Ot,e.InputTextComponent=St,e.NumberComponent=ve,e.RadiosetComponent=Fe,e.SelectComponent=Qe,e.SwitchComponent=nt,e.TextareaComponent=Lt,e.unStringify=B})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@wm/core"),require("@wm/components/base"),require("@angular/common"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@wm/core","@wm/components/base","@angular/common","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.basic={}),e.ng.core,e.wm.core,e.wm.components.base,e.ng.common,e._)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r=o(t),l=o(i),c=o(n),d=o(a);const p=["wmAnchor",""],u=[[["",8,"caret"]]],h=[".caret"],m=(e,t,i)=>({width:e,height:t,margin:i});function g(e,t){if(1&e&&(r.\u0275\u0275element(0,"img",5),r.\u0275\u0275pipe(1,"image")),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("src",r.\u0275\u0275pipeBind1(1,2,e.iconurl),r.\u0275\u0275sanitizeUrl)("ngStyle",r.\u0275\u0275pureFunction3(4,m,e.iconwidth,e.iconheight,e.iconmargin))}}function f(e,t){if(1&e&&r.\u0275\u0275element(0,"i",6),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275classMapInterpolate1("app-icon ",e.iconclass,""),r.\u0275\u0275property("ngStyle",r.\u0275\u0275pureFunction3(4,m,e.iconwidth,e.iconheight,e.iconmargin))}}function v(e,t){if(1&e&&(r.\u0275\u0275elementStart(0,"span",7),r.\u0275\u0275text(1),r.\u0275\u0275elementEnd()),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275advance(),r.\u0275\u0275textInterpolate2("",e.caption," ",e.appLocale.LABEL_ICON,"")}}function b(e,t){if(1&e&&r.\u0275\u0275element(0,"span",8),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("textContent",e.badgevalue)}}const y={widgetType:"wm-anchor",hostClass:"app-anchor",displayType:n.DISPLAY_TYPE.INLINE_BLOCK},w=/Actions.goToPage_(\w+)\.invoke\(\)/g,C=e=>{e.preventDefault()};class P extends n.StylableComponent{static{this.initializeProps=void n.register("wm-anchor",new Map([["animation",n.PROP_STRING],["badgevalue",n.PROP_STRING],["caption",{value:"Link",...n.PROP_STRING}],["class",n.PROP_STRING],["conditionalclass",n.PROP_ANY],["conditionalstyle",n.PROP_ANY],["encodeurl",n.PROP_BOOLEAN],["hint",n.PROP_STRING],["hyperlink",{value:"",...n.PROP_STRING}],["iconclass",n.PROP_STRING],["iconheight",n.PROP_STRING],["iconmargin",n.PROP_STRING],["iconposition",n.PROP_STRING],["iconurl",n.PROP_STRING],["iconwidth",n.PROP_STRING],["name",n.PROP_STRING],["shortcutkey",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}],["target",{value:"_self",...n.PROP_STRING}]]))}constructor(e,t,a){super(e,y,a),this.app=t,this._eventNotifier=new i.EventNotifier,n.styler(this.nativeElement,this)}processEventAttr(e,t,n){if(super.processEventAttr(e,t,n),!this.hasNavigationToCurrentPageExpr){const e=this.inj.get(i.App);t.split(";").map(Function.prototype.call,String.prototype.trim).some((t=>{w.lastIndex=0;const i=w.exec(t),n=i&&i.length>0;return n&&!this.hasGoToPageExpr&&(this.hasGoToPageExpr=!0,this.goToPageName=i[1]),n&&i[1]===e.activePageName}))&&(this.hasNavigationToCurrentPageExpr=!0)}}onActive(e){this._eventNotifier.subscribe("on-active",e)}handleEvent(e,t,i,n,a){super.handleEvent(e,t,(e=>{this.hasGoToPageExpr&&n.$event&&n.$event.preventDefault(),i()}),n,a)}onPropertyChange(e,t,n){if("hyperlink"===e){if(!t)return i.setAttr(this.nativeElement,"href","javascript:void(0)"),void this.nativeElement.addEventListener("contextmenu",C);this.encodeurl&&(t=i.encodeUrl(t)),t.startsWith("www.")&&(t=`//${t}`),i.setAttr(this.nativeElement,"href",t),this.nativeElement.removeEventListener("contextmenu",C)}else super.onPropertyChange(e,t,n)}init(){this.hasNavigationToCurrentPageExpr&&(i.addClass(this.nativeElement,"active"),i.setAttr(this.nativeElement,"aria-current","page")),(this.hyperlink&&i.getRouteNameFromLink(this.hyperlink)===`/${this.app.activePageName}`||this.hasNavigationToCurrentPageExpr)&&this._eventNotifier.notify("on-active",{})}ngAfterViewInit(){super.ngAfterViewInit(),this.init(),this.hasGoToPageExpr&&(this.cancelSubscription=this.app.subscribe("highlightActiveLink",(e=>{this.hasNavigationToCurrentPageExpr&&this.goToPageName!==this.app.activePageName&&(this.hasNavigationToCurrentPageExpr=!1,i.removeClass(this.nativeElement,"active"),i.removeAttr(this.nativeElement,"aria-current")),this.goToPageName===e.pageName&&(this.hasNavigationToCurrentPageExpr=!0,i.addClass(this.nativeElement,"active"),i.setAttr(this.nativeElement,"aria-current","page"))})))}ngOnAttach(){this.init(),super.ngOnAttach()}ngOnDestroy(){this._eventNotifier.destroy(),this.cancelSubscription&&this.cancelSubscription(),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||P)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(l.App),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:P,selectors:[["a","wmAnchor",""]],hostVars:3,hostBindings:function(e,t){2&e&&(r.\u0275\u0275hostProperty("target",t.target),r.\u0275\u0275attribute("accesskey",t.shortcutkey)("icon-position",t.iconposition))},exportAs:["wmAnchor"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(P)]),r.\u0275\u0275InheritDefinitionFeature],attrs:p,ngContentSelectors:h,decls:6,vars:5,consts:[["data-identifier","img","alt","Image","class","anchor-image-icon",3,"src","ngStyle",4,"ngIf"],["aria-hidden","true",3,"class","ngStyle",4,"ngIf"],["class","sr-only",4,"ngIf"],[1,"anchor-caption",3,"innerHTML"],["class","badge pull-right",3,"textContent",4,"ngIf"],["data-identifier","img","alt","Image",1,"anchor-image-icon",3,"src","ngStyle"],["aria-hidden","true",3,"ngStyle"],[1,"sr-only"],[1,"badge","pull-right",3,"textContent"]],template:function(e,t){1&e&&(r.\u0275\u0275projectionDef(u),r.\u0275\u0275template(0,g,2,8,"img",0)(1,f,1,8,"i",1)(2,v,2,2,"span",2),r.\u0275\u0275element(3,"span",3),r.\u0275\u0275projection(4),r.\u0275\u0275template(5,b,1,1,"span",4)),2&e&&(r.\u0275\u0275property("ngIf",t.iconurl),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.iconclass),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.iconclass),r.\u0275\u0275advance(),r.\u0275\u0275property("innerHTML",t.caption,r.\u0275\u0275sanitizeHtml),r.\u0275\u0275advance(2),r.\u0275\u0275property("ngIf",t.badgevalue))},dependencies:[d.NgIf,d.NgStyle,c.TextContentDirective,c.ImagePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(P,[{type:t.Component,args:[{selector:"a[wmAnchor]",providers:[n.provideAsWidgetRef(P)],exportAs:"wmAnchor",template:'<img data-identifier="img" alt="Image" class="anchor-image-icon" [src]="iconurl | image" *ngIf="iconurl" [ngStyle]="{width:iconwidth, height:iconheight, margin:iconmargin}"/>\n<i class="app-icon {{iconclass}}" aria-hidden="true" [ngStyle]="{width:iconwidth, height:iconheight, margin:iconmargin}" *ngIf="iconclass"></i>\n<span class="sr-only" *ngIf="iconclass">{{caption}} {{appLocale.LABEL_ICON}}</span>\n<span class="anchor-caption" [innerHTML]="caption"></span>\n<ng-content select=".caret"></ng-content>\n<span *ngIf="badgevalue" class="badge pull-right" [textContent]="badgevalue"></span>\n'}]}],(()=>[{type:r.Injector},{type:l.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{target:[{type:t.HostBinding,args:["target"]}],shortcutkey:[{type:t.HostBinding,args:["attr.accesskey"]}],iconposition:[{type:t.HostBinding,args:["attr.icon-position"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(P,{className:"AnchorComponent",filePath:"anchor/anchor.component.ts",lineNumber:28});const I=["wmAudio",""],A={widgetType:"wm-audio",hostClass:"app-audio",displayType:n.DISPLAY_TYPE.INLINE_BLOCK};class E extends n.StylableComponent{static{this.initializeProps=void n.register("wm-audio",new Map([["audiopreload",{value:"none",...n.PROP_STRING}],["audiosupportmessage",{value:"Your browser does not support the audio tag.",...n.PROP_STRING}],["autoplay",n.PROP_BOOLEAN],["class",n.PROP_STRING],["controls",n.PROP_BOOLEAN],["hint",n.PROP_STRING],["loop",n.PROP_BOOLEAN],["mp3format",n.PROP_STRING],["muted",n.PROP_BOOLEAN],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}]]))}constructor(e,t){super(e,A,t),n.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||E)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:E,selectors:[["","wmAudio",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(E)]),r.\u0275\u0275InheritDefinitionFeature],attrs:I,decls:5,vars:16,consts:[["name","wmAudio","tabindex","1","role","application","aria-describedby","recorded audio",3,"src","muted","autoplay","controls","loop","preload"],["type","audio/mp3",3,"src"]],template:function(e,t){1&e&&(r.\u0275\u0275elementStart(0,"audio",0),r.\u0275\u0275pipe(1,"trustAs"),r.\u0275\u0275element(2,"source",1),r.\u0275\u0275pipe(3,"trustAs"),r.\u0275\u0275text(4),r.\u0275\u0275elementEnd()),2&e&&(r.\u0275\u0275property("src",r.\u0275\u0275pipeBind2(1,10,t.mp3format,"resource"),r.\u0275\u0275sanitizeUrl)("muted",t.muted)("autoplay",t.autoplay)("controls",t.controls)("loop",t.loop)("preload",t.audiopreload),r.\u0275\u0275attribute("aria-label",t.hint||"wmAudio")("hint",t.hint),r.\u0275\u0275advance(2),r.\u0275\u0275property("src",r.\u0275\u0275pipeBind2(3,13,t.mp3format,"resource"),r.\u0275\u0275sanitizeUrl),r.\u0275\u0275advance(2),r.\u0275\u0275textInterpolate1(" ",t.audiosupportmessage,"\n"))},dependencies:[c.TrustAsPipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(E,[{type:t.Component,args:[{selector:"[wmAudio]",providers:[n.provideAsWidgetRef(E)],template:'<audio [attr.aria-label]="hint || \'wmAudio\'" [attr.hint]="hint" [src]="mp3format | trustAs: \'resource\'"\n [muted]="muted" name="wmAudio" tabindex="1" [autoplay]="autoplay" [controls]="controls" [loop]="loop"\n [preload]="audiopreload" role="application" aria-describedby="recorded audio">\n <source type="audio/mp3" [src]="mp3format | trustAs: \'resource\'">\n {{audiosupportmessage}}\n</audio>'}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(E,{className:"AudioComponent",filePath:"audio/audio.component.ts",lineNumber:20});const O={widgetType:"wm-html",hostClass:"app-html-container"};class T extends n.StylableComponent{static{this.initializeProps=void n.register("wm-html",new Map([["class",n.PROP_STRING],["content",n.PROP_STRING],["hint",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t,a,s,o){super(e,O,o),this.boundContent=a,this.sanitizePipe=s,t&&i.setCSS(this.nativeElement,"overflow","auto"),n.styler(this.nativeElement,this)}ngOnInit(){super.ngOnInit(),this.boundContent&&(this.nativeElement.innerHTML=""),!this.content&&this.nativeElement.innerHTML&&(this.content=this.nativeElement.innerHTML)}onPropertyChange(e,n,a){if("content"===e){let e=this.nativeElement.getAttribute("content.bind"),a=!!e&&(n&&e.includes("trustAs:"));"object"==typeof n&&a?i.setProperty(this.nativeElement,"innerHTML",n[Object.keys(n)[0]]):i.setProperty(this.nativeElement,"innerHTML",this.sanitizePipe.transform(n,t.SecurityContext.HTML))}else super.onPropertyChange(e,n,a)}static{this.\u0275fac=function(e){return new(e||T)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275injectAttribute("height"),r.\u0275\u0275injectAttribute("content.bind"),r.\u0275\u0275directiveInject(c.SanitizePipe),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:T,selectors:[["","wmHtml",""]],exportAs:["wmHtml"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(T)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(T,[{type:t.Directive,args:[{selector:"[wmHtml]",providers:[n.provideAsWidgetRef(T)],exportAs:"wmHtml"}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["height"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["content.bind"]}]},{type:c.SanitizePipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const x=["wmIcon",""];function D(e,t){if(1&e&&(r.\u0275\u0275elementStart(0,"span",2),r.\u0275\u0275text(1),r.\u0275\u0275elementEnd()),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275advance(),r.\u0275\u0275textInterpolate2("",e.caption," ",e.appLocale.LABEL_ICON,"")}}function R(e,t){if(1&e&&r.\u0275\u0275element(0,"label",3),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("textContent",e.caption)}}const S={widgetType:"wm-icon",hostClass:"app-icon-wrapper"};class _ extends n.StylableComponent{static{this.initializeProps=void n.register("wm-icon",new Map([["animation",n.PROP_STRING],["caption",n.PROP_STRING],["class",n.PROP_STRING],["conditionalclass",n.PROP_ANY],["conditionalstyle",n.PROP_ANY],["hint",n.PROP_STRING],["iconclass",{value:"wm-sl-l sl-user",...n.PROP_STRING}],["iconposition",{value:"left",...n.PROP_STRING}],["iconsize",n.PROP_STRING],["iconurl",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t){super(e,S,t),n.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||_)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:_,selectors:[["","wmIcon",""]],hostVars:3,hostBindings:function(e,t){2&e&&(r.\u0275\u0275attribute("icon-position",t.iconposition),r.\u0275\u0275styleProp("font-size",t.iconsize))},features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(_)]),r.\u0275\u0275InheritDefinitionFeature],attrs:x,decls:3,vars:6,consts:[["class","sr-only",4,"ngIf"],["class","app-label",3,"textContent",4,"ngIf"],[1,"sr-only"],[1,"app-label",3,"textContent"]],template:function(e,t){1&e&&(r.\u0275\u0275element(0,"i"),r.\u0275\u0275template(1,D,2,2,"span",0)(2,R,1,1,"label",1)),2&e&&(r.\u0275\u0275classMapInterpolate1("app-icon ",t.iconclass,""),r.\u0275\u0275attribute("aria-label",t.hint||"Icon"),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.iconclass),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.caption))},dependencies:[d.NgIf,c.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(_,[{type:t.Component,args:[{selector:"[wmIcon]",providers:[n.provideAsWidgetRef(_)],template:'<i class="app-icon {{iconclass}}" [attr.aria-label]="hint || \'Icon\'"></i>\n<span class="sr-only" *ngIf="iconclass">{{caption}} {{appLocale.LABEL_ICON}}</span>\n<label class="app-label" [textContent]="caption" *ngIf="caption"></label>\n'}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{iconposition:[{type:t.HostBinding,args:["attr.icon-position"]}],iconsize:[{type:t.HostBinding,args:["style.fontSize"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(_,{className:"IconComponent",filePath:"icon/icon.component.ts",lineNumber:18});const M=["wmIframe",""];function N(e,t){if(1&e&&(r.\u0275\u0275elementStart(0,"div",2),r.\u0275\u0275element(1,"p",3),r.\u0275\u0275elementEnd()),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275advance(),r.\u0275\u0275property("title",e.hintMsg)("textContent",e.errMsg)}}const k={widgetType:"wm-iframe",hostClass:"embed-responsive app-iframe"};class L extends n.StylableComponent{static{this.initializeProps=void n.register("wm-iframe",new Map([["class",n.PROP_STRING],["encodeurl",n.PROP_BOOLEAN],["height",{value:"150px",...n.PROP_STRING}],["iframesrc",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["width",{value:"300px",...n.PROP_STRING}],["hint",n.PROP_STRING]]))}constructor(e,t,i){super(e,k,i),this.trustAsPipe=t,this.showContentLoadError=!1,n.styler(this.nativeElement,this)}computeIframeSrc(){if(this.showContentLoadError=!1,this._iframesrc=void 0,this.iframesrc){let e=this.iframesrc;this.encodeurl&&(e=i.encodeUrl(this.iframesrc));const n=this.trustAsPipe.transform(e,t.SecurityContext.RESOURCE_URL);i.isInsecureContentRequest(e)&&(this.showContentLoadError=!0,this.errorMsg=`${this.appLocale.MESSAGE_ERROR_CONTENT_DISPLAY} ${this.iframesrc}`,this.hintMsg=this.errorMsg),this._iframesrc=n}}onPropertyChange(e,t,i){"iframesrc"===e||"encodeurl"===e?this.computeIframeSrc():super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||L)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.TrustAsPipe),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:L,selectors:[["","wmIframe",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(L)]),r.\u0275\u0275InheritDefinitionFeature],attrs:M,decls:2,vars:4,consts:[["role","document","scrolling","auto","marginheight","0","marginwidth","0","frameborder","0","seamless","seamless",1,"embed-responsive-item","iframe-content",3,"name"],["class","wm-content-info readonly-wrapper",4,"ngIf"],[1,"wm-content-info","readonly-wrapper"],[1,"wm-message",3,"title","textContent"]],template:function(e,t){1&e&&(r.\u0275\u0275element(0,"iframe",0),r.\u0275\u0275template(1,N,2,2,"div",1)),2&e&&(r.\u0275\u0275property("name",t.name),r.\u0275\u0275attribute("src",t._iframesrc,r.\u0275\u0275sanitizeResourceUrl)("aria-label",t.hint||"iframe"),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.showContentLoadError))},dependencies:[d.NgIf,c.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(L,[{type:t.Component,args:[{selector:"[wmIframe]",providers:[n.provideAsWidgetRef(L)],template:'<iframe class="embed-responsive-item iframe-content" role="document"\n scrolling="auto"\n marginheight="0"\n marginwidth="0"\n frameborder="0"\n [name]="name"\n [attr.src]="_iframesrc"\n [attr.aria-label]="hint || \'iframe\'"\n seamless="seamless">\n</iframe>\n<div class="wm-content-info readonly-wrapper" *ngIf="showContentLoadError">\n <p class="wm-message" [title]="hintMsg" [textContent]="errMsg"></p>\n</div>\n'}]}],(()=>[{type:r.Injector},{type:c.TrustAsPipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(L,{className:"IframeComponent",filePath:"iframe/iframe.component.ts",lineNumber:22});const F={widgetType:"wm-label",hostClass:"app-label",displayType:n.DISPLAY_TYPE.INLINE_BLOCK};class j extends n.StylableComponent{static{this.initializeProps=void n.register("wm-label",new Map([["animation",n.PROP_STRING],["caption",{value:"Label",...n.PROP_STRING}],["class",n.PROP_STRING],["conditionalclass",n.PROP_ANY],["conditionalstyle",n.PROP_ANY],["type",n.PROP_STRING],["notag",n.PROP_BOOLEAN],["hint",n.PROP_STRING],["name",n.PROP_STRING],["required",n.PROP_BOOLEAN],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t,i){super(e,F,i),this.sanitizePipe=t,n.styler(this.nativeElement,this)}onPropertyChange(e,n,a){if("caption"===e){let e=this.nativeElement.getAttribute("caption.bind"),a=!!e&&(n&&e.includes("trustAs:"));s.isObject(n)&&!a?i.setProperty(this.nativeElement,"textContent",JSON.stringify(n)):s.isObject(n)&&a?i.setProperty(this.nativeElement,"innerHTML",n[Object.keys(n)[0]]):i.setProperty(this.nativeElement,"innerHTML",this.sanitizePipe.transform(n,t.SecurityContext.HTML))}else"required"===e?i.toggleClass(this.nativeElement,"required",n):super.onPropertyChange(e,n,a)}static{this.\u0275fac=function(e){return new(e||j)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.SanitizePipe),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:j,selectors:[["","wmLabel",""]],exportAs:["wmLabel"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(j)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(j,[{type:t.Directive,args:[{selector:"[wmLabel]",providers:[n.provideAsWidgetRef(j)],exportAs:"wmLabel"}]}],(()=>[{type:r.Injector},{type:c.SanitizePipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const $={widgetType:"wm-picture",hostClass:"app-picture",displayType:n.DISPLAY_TYPE.INLINE_BLOCK};class B extends n.StylableComponent{static{this.initializeProps=(()=>{const e=new Map([["animation",n.PROP_STRING],["class",n.PROP_STRING],["conditionalclass",n.PROP_ANY],["conditionalstyle",n.PROP_ANY],["encodeurl",n.PROP_STRING],["hint",n.PROP_STRING],["name",n.PROP_STRING],["pictureaspect",{value:"None",...n.PROP_STRING}],["pictureplaceholder",n.PROP_STRING],["picturesource",n.PROP_STRING],["resizemode",{value:"fill",...n.PROP_STRING}],["shape",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}]]);i.isMobileApp()&&e.set("offline",{value:!0,...n.PROP_BOOLEAN}),n.register("wm-picture",e)})()}constructor(e,t,i){super(e,$,i),this.imagePipe=t,n.styler(this.nativeElement,this)}setImgSource(){this.imgSource=this.imagePipe.transform(this.picturesource,this.encodeurl,this.pictureplaceholder)}onPropertyChange(e,t,n){if("pictureaspect"===e){let e="",n="";switch(t){case"None":e=this.width,n=this.height;break;case"H":e="100%";break;case"V":n="100%";break;case"Both":e="100%",n="100%"}i.setCSS(this.nativeElement,"width",e,!0),i.setCSS(this.nativeElement,"height",n,!0)}else"encodeurl"===e||"pictureplaceholder"===e?this.setImgSource():"shape"===e?i.switchClass(this.nativeElement,`img-${t}`,`img-${n}`):"hint"===e?i.setAttr(this.nativeElement,"alt",t):"resizemode"===e&&i.setCSS(this.nativeElement,"object-fit",t);super.onPropertyChange(e,t,n)}onStyleChange(e,t,i){"picturesource"===e?this.setImgSource():super.onStyleChange(e,t,i)}ngOnInit(){this.setImgSource(),super.ngOnInit()}static{this.\u0275fac=function(e){return new(e||B)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.ImagePipe),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:B,selectors:[["img","wmPicture",""]],hostVars:1,hostBindings:function(e,t){2&e&&r.\u0275\u0275hostProperty("src",t.imgSource,r.\u0275\u0275sanitizeUrl)},exportAs:["wmPicture"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(B)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(B,[{type:t.Directive,args:[{selector:"img[wmPicture]",providers:[n.provideAsWidgetRef(B)],exportAs:"wmPicture"}]}],(()=>[{type:r.Injector},{type:c.ImagePipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{imgSource:[{type:t.HostBinding,args:["src"]}]});const V=["wmSpinner",""],G=(e,t,i,n)=>({width:e,height:t,backgroundImage:i,backgroundSize:n}),W=(e,t)=>[e,t];function U(e,t){if(1&e&&r.\u0275\u0275element(0,"span",5),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("ngClass",e.animation)("ngStyle",r.\u0275\u0275pureFunction4(2,G,e.imagewidth,e.imageheight,"url("+e.picture+")",e.imagewidth))}}function q(e,t){if(1&e&&r.\u0275\u0275element(0,"i",6),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275styleProp("fon-size",e.iconsize),r.\u0275\u0275property("ngClass",r.\u0275\u0275pureFunction2(3,W,e.iconclass,e.animation))}}function z(e,t){if(1&e&&r.\u0275\u0275element(0,"span",7),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("innerHTML",e.caption,r.\u0275\u0275sanitizeHtml)}}function H(e,t){if(1&e&&r.\u0275\u0275element(0,"p",10),2&e){const e=t.$implicit;r.\u0275\u0275property("textContent",e)}}function Q(e,t){if(1&e&&(r.\u0275\u0275elementStart(0,"div",8),r.\u0275\u0275template(1,H,1,1,"p",9),r.\u0275\u0275elementEnd()),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275advance(),r.\u0275\u0275property("ngForOf",e.spinnerMessages)}}const Y={widgetType:"wm-spinner",hostClass:"app-spinner"};class X extends n.StylableComponent{static{this.initializeProps=void n.register("wm-spinner",new Map([["animation",{value:"spin",PROP_STRING:n.PROP_STRING}],["caption",{value:"Loading...",...n.PROP_STRING}],["class",n.PROP_STRING],["iconclass",{value:"fa fa-circle-o-notch fa-spin",...n.PROP_STRING}],["iconsize",n.PROP_STRING],["image",n.PROP_STRING],["imageheight",n.PROP_STRING],["imagewidth",{value:"20px",...n.PROP_STRING}],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["type",{value:"icon",...n.PROP_STRING}],["servicevariabletotrack",n.PROP_STRING],["hint",n.PROP_STRING]]))}get spinnerMessages(){return this._spinnerMessages}set spinnerMessages(e){this.showCaption=s.isEmpty(e),this._spinnerMessages=e}listenOnDataSource(){const e=s.split(this.servicevariabletotrack,",");this.getAppInstance().subscribe("toggle-variable-state",(t=>{const n=t.variable.execute(i.DataSource.Operation.GET_NAME);s.includes(e,n)&&i.validateDataSourceCtx(t.variable,this.getViewParent())&&(this.widget.show=t.active)}))}constructor(e,t,i){super(e,Y,i),this.imagePipe=t,this.iconclass="",this.animation="",this.showCaption=!0,n.styler(this.nativeElement,this)}onPropertyChange(e,t,i){"image"===e?this.picture=this.imagePipe.transform(t):"animation"===e?this.animation="spin"===t?"fa-spin":t||"":super.onPropertyChange(e,t,i)}ngOnInit(){super.ngOnInit(),this.servicevariabletotrack&&(this.widget.show=!1,this.listenOnDataSource())}static{this.\u0275fac=function(e){return new(e||X)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.ImagePipe),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:X,selectors:[["","wmSpinner",""]],exportAs:["wmSpinner"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(X)]),r.\u0275\u0275InheritDefinitionFeature],attrs:V,decls:5,vars:4,consts:[[1,"spinner-message"],["class","spinner-image animated infinite","aria-hidden","true",3,"ngClass","ngStyle",4,"ngIf"],["class","spinner-image animated infinite","aria-hidden","true",3,"ngClass","fonSize",4,"ngIf"],["class","spinner-text",3,"innerHTML",4,"ngIf"],["class","spinner-messages",4,"ngIf"],["aria-hidden","true",1,"spinner-image","animated","infinite",3,"ngClass","ngStyle"],["aria-hidden","true",1,"spinner-image","animated","infinite",3,"ngClass"],[1,"spinner-text",3,"innerHTML"],[1,"spinner-messages"],[3,"textContent",4,"ngFor","ngForOf"],[3,"textContent"]],template:function(e,t){1&e&&(r.\u0275\u0275elementStart(0,"div",0),r.\u0275\u0275template(1,U,1,7,"span",1)(2,q,1,6,"i",2)(3,z,1,1,"span",3)(4,Q,2,1,"div",4),r.\u0275\u0275elementEnd()),2&e&&(r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf","image"===t.type),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf","icon"===t.type),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.showCaption),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",!t.showCaption&&t.spinnerMessages))},dependencies:[d.NgClass,d.NgForOf,d.NgIf,d.NgStyle,c.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(X,[{type:t.Component,args:[{selector:"[wmSpinner]",providers:[n.provideAsWidgetRef(X)],exportAs:"wmSpinner",template:'<div class="spinner-message">\n <span class="spinner-image animated infinite" [ngClass]="animation" aria-hidden="true"\n [ngStyle]="{width: imagewidth, height: imageheight, backgroundImage: \'url(\' + picture + \')\', backgroundSize: imagewidth}"\n *ngIf="type === \'image\'"></span>\n <i class="spinner-image animated infinite" aria-hidden="true" [ngClass]="[iconclass, animation]" [style.fonSize]="iconsize" *ngIf="type === \'icon\'"></i>\n <span class="spinner-text" [innerHTML]="caption" *ngIf="showCaption"></span>\n <div class="spinner-messages" *ngIf="!showCaption && spinnerMessages">\n <p *ngFor="let value of spinnerMessages" [textContent]="value"></p>\n </div>\n</div>\n'}]}],(()=>[{type:r.Injector},{type:c.ImagePipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(X,{className:"SpinnerComponent",filePath:"spinner/spinner.component.ts",lineNumber:20});const K=["wmVideo",""];function J(e,t){if(1&e&&(r.\u0275\u0275element(0,"source",4),r.\u0275\u0275pipe(1,"trustAs")),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("src",r.\u0275\u0275pipeBind2(1,1,e.mp4format,"resource"),r.\u0275\u0275sanitizeUrl)}}function Z(e,t){if(1&e&&(r.\u0275\u0275element(0,"source",5),r.\u0275\u0275pipe(1,"trustAs")),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("src",r.\u0275\u0275pipeBind2(1,1,e.webmformat,"resource"),r.\u0275\u0275sanitizeUrl)}}function ee(e,t){if(1&e&&(r.\u0275\u0275element(0,"source",6),r.\u0275\u0275pipe(1,"trustAs")),2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275property("src",r.\u0275\u0275pipeBind2(1,1,e.oggformat,"resource"),r.\u0275\u0275sanitizeUrl)}}const te={widgetType:"wm-video",hostClass:"app-video",displayType:n.DISPLAY_TYPE.INLINE_BLOCK};class ie extends n.StylableComponent{static{this.initializeProps=void n.register("wm-video",new Map([["autoplay",n.PROP_BOOLEAN],["class",n.PROP_STRING],["controls",n.PROP_BOOLEAN],["hint",n.PROP_STRING],["loop",n.PROP_BOOLEAN],["mp4format",n.PROP_STRING],["muted",n.PROP_BOOLEAN],["name",n.PROP_STRING],["oggformat",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["subtitlelang",{value:"en",...n.PROP_STRING}],["subtitlesource",n.PROP_STRING],["tabindex",{value:0,...n.PROP_NUMBER}],["videoposter",{value:"resources/images/imagelists/default-image.png",...n.PROP_STRING}],["videopreload",{value:"none",...n.PROP_STRING}],["videosupportmessage",{value:"Your browser does not support the video tag.",...n.PROP_STRING}],["webmformat",n.PROP_STRING]]))}constructor(e,t,i){super(e,te,i),this.trustAsPipe=t,this.subtitlelang="en",n.styler(this.nativeElement,this)}onPropertyChange(e,n,a){if("subtitlesource"===e){let e=this.nativeElement.querySelector("track");e&&i.removeNode(e,!0),e=i.createElement("track",{kind:"subtitles",label:this.subtitlelang,srclang:this.subtitlelang,src:this.trustAsPipe.transform(n,t.SecurityContext.RESOURCE_URL),default:""},!0),i.appendNode(e,this.nativeElement.querySelector("video"))}else"mp4format"===e?this.mp4format=i.transformFileURI(n):"webmformat"===e?this.webmformat=i.transformFileURI(n):"oggformat"===e&&(this.oggformat=i.transformFileURI(n));super.onPropertyChange(e,n,a)}static{this.\u0275fac=function(e){return new(e||ie)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.TrustAsPipe),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:ie,selectors:[["","wmVideo",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(ie)]),r.\u0275\u0275InheritDefinitionFeature],attrs:K,decls:7,vars:16,consts:[["role","application",3,"preload","src","muted","poster","controls","loop","autoplay"],["type","video/mp4",3,"src",4,"ngIf"],["type","video/webm",3,"src",4,"ngIf"],["type","video/ogg",3,"src",4,"ngIf"],["type","video/mp4",3,"src"],["type","video/webm",3,"src"],["type","video/ogg",3,"src"]],template:function(e,t){1&e&&(r.\u0275\u0275elementStart(0,"video",0),r.\u0275\u0275pipe(1,"trustAs"),r.\u0275\u0275pipe(2,"image"),r.\u0275\u0275template(3,J,2,4,"source",1)(4,Z,2,4,"source",2)(5,ee,2,4,"source",3),r.\u0275\u0275text(6),r.\u0275\u0275elementEnd()),2&e&&(r.\u0275\u0275property("preload",t.videopreload)("src",r.\u0275\u0275pipeBind2(1,11,t.mp4format,"resource"),r.\u0275\u0275sanitizeUrl)("muted",t.muted)("poster",r.\u0275\u0275pipeBind1(2,14,t.videoposter),r.\u0275\u0275sanitizeUrl)("controls",t.controls)("loop",t.loop)("autoplay",t.autoplay),r.\u0275\u0275advance(3),r.\u0275\u0275property("ngIf",t.mp4format),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.webmformat),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.oggformat),r.\u0275\u0275advance(),r.\u0275\u0275textInterpolate1(" ",t.videosupportmessage,"\n"))},dependencies:[d.NgIf,c.TrustAsPipe,c.ImagePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(ie,[{type:t.Component,args:[{selector:"[wmVideo]",providers:[n.provideAsWidgetRef(ie)],template:'<video [preload]="videopreload" role="application"\n [src]="mp4format | trustAs: \'resource\'"\n [muted]="muted"\n [poster]="videoposter | image"\n [controls]="controls"\n [loop]="loop"\n [autoplay]="autoplay">\n <source type="video/mp4" [src]="mp4format | trustAs: \'resource\'" *ngIf="mp4format">\n <source type="video/webm" [src]="webmformat | trustAs: \'resource\'" *ngIf="webmformat">\n <source type="video/ogg" [src]="oggformat | trustAs: \'resource\'" *ngIf="oggformat">\n {{videosupportmessage}}\n</video>'}]}],(()=>[{type:r.Injector},{type:c.TrustAsPipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(ie,{className:"VideoComponent",filePath:"video/video.component.ts",lineNumber:22});const ne=[P,E,T,_,L,j,B,X,ie];class ae{static{this.\u0275fac=function(e){return new(e||ae)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:ae})}static{this.\u0275inj=r.\u0275\u0275defineInjector({imports:[a.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(ae,[{type:t.NgModule,args:[{imports:[a.CommonModule,n.WmComponentsModule],declarations:[...ne],exports:[...ne]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&r.\u0275\u0275setNgModuleScope(ae,{declarations:[P,E,T,_,L,j,B,X,ie],imports:[a.CommonModule,n.WmComponentsModule],exports:[P,E,T,_,L,j,B,X,ie]}),e.AnchorComponent=P,e.AudioComponent=E,e.BasicModule=ae,e.HtmlDirective=T,e.IconComponent=_,e.IframeComponent=L,e.LabelDirective=j,e.PictureDirective=B,e.SpinnerComponent=X,e.VideoComponent=ie,e.disableContextMenu=C})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("ng-circle-progress"),require("@wm/components/base"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","ng-circle-progress","@wm/components/base","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.basic=e.wm.components.basic||{},e.wm.components.basic.progress={}),e.ng.core,e.ng.common,e.ngCircleProgress,e.wm.components.base,e.wm.core,e._)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(n);const p=e=>{const t=(e=(e=e||"9").replace(/\%$/,"")).lastIndexOf(".");return-1===t?0:e.length-t-1},u=e=>!!o.isString(e)&&"%"===(e=e.trim()).charAt(e.length-1),h=["wmProgressBar",""];function m(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",1)(1,"span",2),l.\u0275\u0275text(2),l.\u0275\u0275elementEnd()()),2&e){const e=t.$implicit,i=l.\u0275\u0275nextContext();l.\u0275\u0275classMapInterpolate1("multi-bar progress-bar ",e.cls,""),l.\u0275\u0275styleProp("width",e.progressBarWidth),l.\u0275\u0275attribute("aria-valuenow",i.datavalue)("aria-valuemin",i.minvalue)("aria-valuemax",i.maxvalue)("aria-label",i.hint||"Progress bar"),l.\u0275\u0275advance(),l.\u0275\u0275attribute("data-caption-placement",i.captionplacement),l.\u0275\u0275advance(),l.\u0275\u0275textInterpolate(e.displayValue)}}const g={widgetType:"wm-progress-bar",hostClass:"progress app-progress"},f={default:"","default-striped":"progress-bar-striped",success:"progress-bar-success","success-striped":"progress-bar-success progress-bar-striped",info:"progress-bar-info","info-striped":"progress-bar-info progress-bar-striped",warning:"progress-bar-warning","warning-striped":"progress-bar-warning progress-bar-striped",danger:"progress-bar-danger","danger-striped":"progress-bar-danger progress-bar-striped"};class v extends a.StylableComponent{static{this.initializeProps=void a.register("wm-progress-bar",new Map([["captionplacement",{value:"hidden",...a.PROP_STRING}],["class",a.PROP_STRING],["dataset",a.PROP_ANY],["datavalue",a.PROP_STRING],["displayformat",a.PROP_STRING],["hint",a.PROP_STRING],["maxvalue",{value:100,...a.PROP_NUMBER}],["minvalue",{value:0,...a.PROP_NUMBER}],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["tabindex",{value:0,...a.PROP_NUMBER}],["type",{value:"default",...a.PROP_STRING}]]))}constructor(e,t,i,n){super(e,g,n),this.data=[{cls:f.default,progressBarWidth:"0%",displayValue:"0"}],this.hasDataset=!(!t&&!i),a.styler(this.nativeElement,this),this._prepareData=o.debounce((()=>this.prepareData()),50)}onTypeChange(){this.hasDataset||this.data[0]&&(this.data[0].cls=f[this.type])}getFormattedDisplayVal(e){const t=this.displayformat||"9";return e=(e=parseFloat(""+e)).toFixed(p(t)),t&&t.includes("%")&&(e=`${e}%`),e}prepareData(){if(this.dataset&&o.isArray(this.dataset)&&this.type&&this.datavalue)this.data=this.dataset.map((e=>{const t=s.findValueOf(e,this.datavalue).toString();let i=t;return t&&!t.includes("%")&&(i=`${t}%`),{cls:f[s.findValueOf(e,this.type)],progressBarWidth:i,displayValue:this.getFormattedDisplayVal(t)}}));else{let e=0,t=0;if(this.datavalue)if(u(this.datavalue)){e=t=this.datavalue||"0%"}else if(s.isDefined(this.datavalue)){const i=+this.maxvalue-+this.minvalue||1;e=t=100*(+this.datavalue-+this.minvalue)/i+"%"}this.data[0].displayValue=this.getFormattedDisplayVal(t),this.data[0].progressBarWidth=e,this.data[0].cls=f[this.type]}}onPropertyChange(e,t,i){"type"===e?this.onTypeChange():"minvalue"===e||"maxvalue"===e||"datavalue"===e||"dataset"===e||"displayformat"===e?this._prepareData():super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||v)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275injectAttribute("dataset"),l.\u0275\u0275injectAttribute("dataset.bind"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:v,selectors:[["","wmProgressBar",""]],features:[l.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(v)]),l.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:1,vars:1,consts:[["role","progressbar","tabindex","1",3,"class","width",4,"ngFor","ngForOf"],["role","progressbar","tabindex","1"],[1,"app-progress-label"]],template:function(e,t){1&e&&l.\u0275\u0275template(0,m,3,11,"div",0),2&e&&l.\u0275\u0275property("ngForOf",t.data)},dependencies:[c.NgForOf],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(v,[{type:t.Component,args:[{selector:"[wmProgressBar]",providers:[a.provideAsWidgetRef(v)],template:'<div class="multi-bar progress-bar {{bar.cls}}" *ngFor="let bar of data" [style.width]="bar.progressBarWidth"\n role="progressbar" [attr.aria-valuenow]="datavalue" [attr.aria-valuemin]="minvalue" [attr.aria-valuemax]="maxvalue"\n [attr.aria-label]="hint || \'Progress bar\'" tabindex="1">\n <span class="app-progress-label" [attr.data-caption-placement]="captionplacement">{{bar.displayValue}}</span>\n</div>'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["dataset"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(v,{className:"ProgressBarComponent",filePath:"progress-bar/progress-bar.component.ts",lineNumber:42});const b=["wmProgressCircle",""],y={widgetType:"wm-progress-circle",hostClass:"progress app-progress circle"},w={responsive:!0,innerStrokeWidth:10,outerStrokeWidth:10,unitsFontSize:"15",space:-10,toFixed:0,maxPercent:100,showSubtitle:!1,clockwise:!0,startFromZero:!1,renderOnClick:!1,innerStrokeColor:"",outerStrokeColor:""},C={default:"",success:"progress-circle-success",info:"progress-circle-info",warning:"progress-circle-warning",danger:"progress-circle-danger"};class P extends a.StylableComponent{static{this.initializeProps=void a.register("wm-progress-circle",new Map([["captionplacement",{value:"inside",...a.PROP_STRING}],["class",a.PROP_STRING],["dataset",a.PROP_ANY],["datavalue",{value:"30",...a.PROP_STRING}],["displayformat",{value:"9%",...a.PROP_STRING}],["hint",a.PROP_STRING],["maxvalue",{value:100,...a.PROP_NUMBER}],["minvalue",{value:0,...a.PROP_NUMBER}],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["subtitle",a.PROP_STRING],["tabindex",{value:0,...a.PROP_NUMBER}],["title",a.PROP_STRING],["type",{value:"default",...a.PROP_STRING}]]))}constructor(e,t){super(e,y,t),a.styler(this.nativeElement,this),this.options=o.clone(w),this.redraw=o.debounce(this._redraw,100)}_redraw(){this.circleRef.render()}ngAfterViewInit(){super.ngAfterViewInit(),this.invokeEventCallback("beforerender",{$event:{}}),this.options=Object.assign(this.circleRef.options,this.options)}getDefaultOptions(){return this.options}getLib(){return"ng-circle-progress"}overrideDefaults(e){o.extend(this.options,e)}updateDisplayValueFormat(){this.options.showTitle=this.options.showSubtitle="inside"===this.captionplacement,this.options.showUnits=!this.title&&this.options.showTitle&&u(this.displayformat),this.options.toFixed=p(this.displayformat),this.options.showTitle&&(this.options.title=this.title||"auto",this.options.showSubtitle=!!this.subtitle,this.options.subtitle=this.subtitle||""),this.redraw()}onPropertyChange(e,t,i){switch(e){case"type":this.$element.removeClass(C[i]),this.$element.addClass(C[t]);break;case"minvalue":case"maxvalue":case"datavalue":u(this.datavalue)?this.percentagevalue=parseFloat(this.datavalue):this.percentagevalue=((e,t=0,i=0)=>{const n=(e-t)/(i-t)*100;return o.isNaN(n)?(console.warn("Circle Progress Bar: One of the properties Min, Max or datavalue is not a valid number"),0):Math.abs(n)})(parseFloat(this.datavalue),this.minvalue,this.maxvalue);break;case"displayformat":case"captionplacement":case"title":case"subtitle":this.updateDisplayValueFormat()}super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||P)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:P,selectors:[["","wmProgressCircle",""]],viewQuery:function(e,t){if(1&e&&l.\u0275\u0275viewQuery(n.CircleProgressComponent,7),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.circleRef=e.first)}},features:[l.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(P)]),l.\u0275\u0275InheritDefinitionFeature],attrs:b,decls:1,vars:4,consts:[["tabindex","1",3,"percent","options"]],template:function(e,t){1&e&&l.\u0275\u0275element(0,"circle-progress",0),2&e&&(l.\u0275\u0275property("percent",t.percentagevalue)("options",t.options),l.\u0275\u0275attribute("aria-label",t.hint||"circle-progress")("hint",t.hint))},dependencies:[d.CircleProgressComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(P,[{type:t.Component,args:[{selector:"[wmProgressCircle]",providers:[a.provideAsWidgetRef(P)],template:'<circle-progress tabindex="1" [attr.aria-label]="hint || \'circle-progress\'" [attr.hint]="hint"\n [percent]="percentagevalue" [options]="options"></circle-progress>'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{circleRef:[{type:t.ViewChild,args:[n.CircleProgressComponent,{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(P,{className:"ProgressCircleComponent",filePath:"progress-circle/progress-circle.component.ts",lineNumber:46});const I=[v,P];class A{static{this.\u0275fac=function(e){return new(e||A)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:A})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.NgCircleProgressModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(A,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.NgCircleProgressModule,a.WmComponentsModule],declarations:[...I],exports:[...I]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(A,{declarations:[v,P],imports:[i.CommonModule,n.NgCircleProgressModule,a.WmComponentsModule],exports:[v,P]}),e.ProgressBarComponent=v,e.ProgressCircleComponent=P,e.ProgressModule=A,e.TYPE_CLASS_MAP=f,e.TYPE_CLASS_MAP_PC=C})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@angular/forms"),require("@wm/core"),require("@wm/components/input"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@angular/forms","@wm/core","@wm/components/input","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.basic=e.wm.components.basic||{},e.wm.components.basic.richtexteditor={}),e.ng.core,e.ng.common,e.wm.components.base,e.ng.forms,e.wm.core,e.wm.components.input,e._)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(n);const u=new Map([["class",n.PROP_STRING],["datavaluesource",n.PROP_ANY],["datavalue",n.PROP_STRING],["height",n.PROP_STRING],["hint",n.PROP_STRING],["name",n.PROP_STRING],["placeholder",n.PROP_STRING],["readonly",n.PROP_BOOLEAN],["show",{value:!0,...n.PROP_BOOLEAN}],["showpreview",{value:!1,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}]]),h=["wmRichTextEditor",""];function m(e,t){if(1&e&&c.\u0275\u0275element(0,"div",3),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275property("innerHTML",e.proxyModel,c.\u0275\u0275sanitizeHtml)}}const g={widgetType:"wm-richtexteditor",hostClass:"app-richtexteditor clearfix"};class f extends o.BaseFormCustomComponent{static{this.initializeProps=(n.register("wm-richtexteditor",u),void n.registerFormWidget(s.FormWidgetType.RICHTEXT,new Map(u)))}get htmlcontent(){return this.performEditorOperation("code")}get datavalue(){return this.htmlcontent}set datavalue(e){null!=e&&(this.$hiddenInputEle.val(e),this.performEditorOperation("reset"),this.performEditorOperation("code",e))}constructor(e,i,a,s){super(e,g,s),this.sanitizePipe=i,this.ngZone=a,this._operationStack=[],this.isEditorLoaded=!1,this.EDITOR_DEFAULT_OPTIONS={toolbar:[["misc",["undo","redo"]],["style",["style"]],["fontname",["fontname"]],["fontsize",["fontsize"]],["height",["height"]],["style",["bold","italic","underline","clear"]],["font",["strikethrough","superscript","subscript"]],["color",["color"]],["insert",["table","picture","link","video","hr"]],["para",["ul","ol","paragraph"]],["misc",["codeview","fullscreen","help"]]],callbacks:{onInit:()=>{this.isEditorLoaded=!0,this._operationStack.length&&(this._operationStack.forEach((e=>{const t=Array.from(e.keys())[0],i=e.get(t);this.performEditorOperation(t,i)})),this._operationStack=[])},onChange:(e,i)=>{this.proxyModel=this.sanitizePipe.transform(e,t.SecurityContext.HTML),this.invokeOnChange(e,(()=>{let e;return"function"==typeof Event?e=new Event("change"):(e=document.createEvent("Event"),e.initEvent("change",!0,!0)),e})(),!0),this.invokeOnTouched()}},fontNames:["Arial","Arial Black","Comic Sans MS","Courier New","Merriweather"],placeholder:"write here...",minHeight:100,disableResizeEditor:!0},n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER,["height"]),(()=>{if(!$.summernote.__overidden){const e=$.summernote.ui_template().button.bind($.summernote);$.summernote.ui_template.button=(...t)=>{const i=e(...t),n=i.callback;return i.callback=(e,t)=>(e.addClass("btn"),n(e,t)),i},$.summernote.__overidden=!0}})()}ngOnInit(){this.$richTextEditor=$(this.nativeElement.querySelector("[richTextEditor]")),this.$hiddenInputEle=$(this.nativeElement.querySelector("input.model-holder")),super.ngOnInit(),this.initEditor()}initEditor(){this.ngZone.runOutsideAngular((()=>{this.invokeEventCallback("beforerender",{$event:{}}),this.$richTextEditor.summernote(this.EDITOR_DEFAULT_OPTIONS)}))}getDefaultOptions(){return this.EDITOR_DEFAULT_OPTIONS}getLib(){return"summernote"}overrideDefaults(e){r.extend(this.EDITOR_DEFAULT_OPTIONS,e)}onPropertyChange(e,t,i){"placeholder"===e?this.performEditorOperation("placeholder",t):"disabled"===e||"readonly"===e?this.performEditorOperation(t?"disable":"enable"):super.onPropertyChange(e,t,i)}onStyleChange(e,t,i){"height"===e&&this.performEditorOperation("height",t)}performEditorOperation(e,t){if(!this.isEditorLoaded){const i=new Map;return i.set(e,t),void this._operationStack.push(i)}if("height"===e)s.setCSS(this.nativeElement.querySelector("div.note-editable"),e,t,!0);else{if("placeholder"!==e){if(1===arguments.length&&"code"===e&&this.$richTextEditor.summernote("isEmpty")){const e=this.$richTextEditor.summernote("code");return""===e?e:void 0}return this.$richTextEditor.summernote(e,t)}s.setAttr(this.nativeElement,e,t),s.setHtml(this.nativeElement.querySelector("div.note-placeholder"),t,!0)}}getCurrentPosition(){return this.performEditorOperation("createRange")}undo(){this.performEditorOperation("undo")}focus(){this.performEditorOperation("focus")}ngOnDestroy(){this.performEditorOperation("destroy"),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||f)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject(p.SanitizePipe),c.\u0275\u0275directiveInject(c.NgZone),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:f,selectors:[["div","wmRichTextEditor",""]],exportAs:["wmRichTextEditor"],features:[c.\u0275\u0275ProvidersFeature([n.provideAs(f,a.NG_VALUE_ACCESSOR,!0),n.provideAsWidgetRef(f)]),c.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:3,vars:2,consts:[["richTextEditor",""],["class","ta-preview",3,"innerHTML",4,"ngIf"],["hidden","",1,"model-holder",3,"disabled"],[1,"ta-preview",3,"innerHTML"]],template:function(e,t){1&e&&(c.\u0275\u0275element(0,"div",0),c.\u0275\u0275template(1,m,1,1,"div",1),c.\u0275\u0275element(2,"input",2)),2&e&&(c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",t.showpreview),c.\u0275\u0275advance(),c.\u0275\u0275property("disabled",t.disabled))},dependencies:[d.NgIf],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(f,[{type:t.Component,args:[{selector:"div[wmRichTextEditor]",providers:[n.provideAs(f,a.NG_VALUE_ACCESSOR,!0),n.provideAsWidgetRef(f)],exportAs:"wmRichTextEditor",template:'<div richTextEditor></div>\n<div [innerHTML]="proxyModel" class="ta-preview" *ngIf="showpreview"></div>\n<input class="model-holder" [disabled]="disabled" hidden>\n'}]}],(()=>[{type:c.Injector},{type:p.SanitizePipe},{type:c.NgZone},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(f,{className:"RichTextEditorComponent",filePath:"rich-text-editor.component.ts",lineNumber:59});const v=[f];class b{static{this.\u0275fac=function(e){return new(e||b)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:b})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(b,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...v],exports:[...v]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(b,{declarations:[f],imports:[i.CommonModule,n.WmComponentsModule],exports:[f]}),e.RichTextEditorComponent=f,e.RichTextEditorModule=b})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-bootstrap/typeahead"),require("@wm/components/base"),require("rxjs"),require("rxjs/operators"),require("@wm/core"),require("@wm/components/input"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","ngx-bootstrap/typeahead","@wm/components/base","rxjs","rxjs/operators","@wm/core","@wm/components/input","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.basic=e.wm.components.basic||{},e.wm.components.basic.search={}),e.ng.core,e.ng.common,e.ng.forms,e.typeahead,e.wm.components.base,e.rxjs,e.rxjs.operators,e.wm.core,e.wm.components.input,e._)}(this,(function(e,t,i,n,a,s,o,r,l,c,d){"use strict";function p(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var u=p(t),h=p(i),m=p(n),g=p(a),f=p(s),v=p(l);const b=new Map([["casesensitive",{value:!1,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["datacompletemsg",{value:"No more data to load",...s.PROP_STRING}],["datafield",{value:"All Fields",...s.PROP_STRING}],["dataoptions",s.PROP_ANY],["dataset",s.PROP_ANY],["datasource",s.PROP_ANY],["datavalue",s.PROP_STRING],["datavaluesource",s.PROP_ANY],["dateformat",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["displayimagesrc",s.PROP_STRING],["displaylabel",s.PROP_STRING],["displayexpression",s.PROP_STRING],["dropup",s.PROP_BOOLEAN],["groupby",s.PROP_STRING],["hint",s.PROP_STRING],["imagewidth",{value:"16px",...s.PROP_STRING}],["limit",s.PROP_NUMBER],["loadingdatamsg",{value:"Loading items...",...s.PROP_STRING}],["match",s.PROP_STRING],["matchmode",s.PROP_STRING],["minchars",s.PROP_NUMBER],["name",s.PROP_STRING],["navsearchbar",{value:!1,...s.PROP_BOOLEAN}],["orderby",s.PROP_STRING],["placeholder",{value:"Search",...s.PROP_STRING}],["position",s.PROP_STRING],["query",s.PROP_STRING],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["searchkey",s.PROP_STRING],["searchon",{value:"typing",...s.PROP_STRING}],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["showclear",{value:!1,...s.PROP_BOOLEAN}],["showsearchicon",s.PROP_BOOLEAN],["tabindex",{value:0,...s.PROP_NUMBER}],["type",{value:"search",...s.PROP_STRING}],["debouncetime",{value:250,...s.PROP_NUMBER}],["width",s.PROP_STRING]]);class y{applyFilter(e,t,i){return e=d.isNumber(e)?e.toString():e,d.includes(i,"start")?d.startsWith(e,t):d.includes(i,"end")?d.endsWith(e,t):d.includes(i,"exact")?d.isEqual(e,t):d.includes(e,t)}filter(e){const t=e.dataset;let i=e.casesensitive;const n=e.matchMode;n&&!d.includes(n,"ignorecase")&&(i=!0);let a,s=e.query;return new Promise(((o,r)=>{if(e.searchKey){const t=d.split(e.searchKey,",");a=d.filter(e.dataset,(e=>t.some((t=>{let a=d.get(e,t),o=s;return i||(a=d.toLower(d.toString(a)),o=d.toLower(d.toString(o))),this.applyFilter(a,o,n)}))))}else a=d.isArray(t)&&d.isObject(t[0])?d.filter(t,(e=>{let t=d.values(e).join(" ");return i||(t=d.toLower(t),s=d.toLower(s)),this.applyFilter(t,s)})):d.filter(t,(e=>(i||(e=d.toLower(e),s=d.toLower(s)),this.applyFilter(e,s,n))));o({data:a,hasMoreData:!1,isLastPage:!0})}))}}class w{filter(e){return this.filterData(e).then((t=>this.onFilterSuccess(e,t)),(()=>this.onFilterFailure()))}filterData(e){if(e.dataoptions){const t=e.dataoptions,i=e.datasource.execute(l.DataSource.Operation.GET_REQUEST_PARAMS,e);if(t.relatedField)return new Promise(((n,a)=>{s.interpolateBindExpressions(e.viewParent,t.filterExpr,(s=>{i.filterExpr=t.filterExpr=s,t.filterExpr=s,e.datasource.execute(l.DataSource.Operation.GET_RELATED_TABLE_DATA,d.assign({relatedField:t.relatedField},i)).then(n,a)}))}));if(t.distinctField)return e.datasource.execute(l.DataSource.Operation.GET_DISTINCT_DATA_BY_FIELDS,{pagesize:e.limit||e.pagesize,page:e.page,fields:t.distinctField,entityName:t.tableName,filterFields:d.assign(t.filterFields,i.filterFields),filterExpr:l.getClonedObject(t.filterExpr||{})})}return e.datasource.execute(l.DataSource.Operation.SEARCH_RECORDS,e)}isLast(e,t,i,n){if(t===l.AppConstants.INT_MAX_VALUE)return 0!==n&&n<i;return e===(t>i?Math.ceil(t/i):t<0?0:1)}getTransformedData(e,t){const i=e.operation+"Result",n=t[i];if(n){const e={};d.set(e,i,n),t=[e]}else t=[t];return t}onFilterFailure(){return[]}isLastPageForDistinctApi(e,t,i,n){return t>1&&!n&&d.isEmpty(e)&&i===l.AppConstants.INT_MAX_VALUE}onFilterSuccess(e,t){let i,n,a,s,o=t.data;const r=d.split(e.binddataset,"."),c=d.slice(r,d.indexOf(r,"dataSet")+1).join(".");return new Promise(((r,p)=>{const u=t.pagination;if(e.datasource.execute(l.DataSource.Operation.IS_PAGEABLE)&&(a=u.number+1,n=this.isLast(a,e.limit>0&&e.limit||u.totalElements,u.size,u.numberOfElements),s=!0,this.isLastPageForDistinctApi(o,a,u.totalElements,n)))return n=!0,void r({data:[],isLastPage:n,hasMoreData:a>1,isPaginatedData:s,page:a});if(c){if(d.isArray(o)){const e=c.lastIndexOf("[$i]");if(e>-1){const t=c.substr(e+5);i=o.map((e=>l.findValueOf(e,t)))}}else d.isObject(o)&&(i=d.get(o,c));o=i||o}d.isArray(o)||(o=this.getTransformedData(e.datasource,o)),o.length?r({data:o,isLastPage:n,hasMoreData:a>1,isPaginatedData:s,page:a}):r({data:[],isLastPage:n,hasMoreData:a>1,isPaginatedData:s,page:a})}))}}class C{static{this.remoteDataProvider=new w}static{this.localDataProvider=new y}filter(e){let t;const i=e.datasource&&e.datasource.execute(l.DataSource.Operation.IS_UPDATE_REQUIRED,e.hasData);return t=!e.isLocalFilter&&(e.dataoptions||e.datasource&&e.datasource.execute(l.DataSource.Operation.IS_API_AWARE)&&e.searchKey&&i)?C.remoteDataProvider.filter(e):C.localDataProvider.filter(e),t.then((t=>(this.updateDataset=e.datasource&&!e.datasource.execute(l.DataSource.Operation.SUPPORTS_CRUD)&&i,this.hasMoreData=t.hasMoreData,this.isLastPage=t.isLastPage,this.page=t.page,this.isPaginatedData=t.isPaginatedData,t)))}}const P=["ulElement"],I=["liElements"],A=["wmSearch",""],E=e=>({customTemplate:e}),O=(e,t)=>({active:e,"list-group-header":t}),T=(e,t,i,n)=>({item:e,index:t,match:i,query:n}),x=()=>({standalone:!0}),D=e=>({"show-btn":e}),R=e=>({disabled:e});function S(e,t){if(1&e&&u.\u0275\u0275element(0,"img",10),2&e){const e=u.\u0275\u0275nextContext(2).item,t=u.\u0275\u0275nextContext();u.\u0275\u0275styleProp("width",t.imagewidth),u.\u0275\u0275property("src",e.imgSrc,u.\u0275\u0275sanitizeUrl)}}function _(e,t){if(1&e&&(u.\u0275\u0275elementStart(0,"a"),u.\u0275\u0275template(1,S,1,3,"img",8),u.\u0275\u0275element(2,"span",9),u.\u0275\u0275elementEnd()),2&e){const e=u.\u0275\u0275nextContext(),t=e.item,i=e.query,n=e.match,a=u.\u0275\u0275nextContext();u.\u0275\u0275advance(),u.\u0275\u0275property("ngIf",t.imgSrc),u.\u0275\u0275advance(),u.\u0275\u0275property("title",t.label)("innerHtml",a.highlight(n,i)||t.label,u.\u0275\u0275sanitizeHtml)}}function M(e,t){if(1&e&&(u.\u0275\u0275elementStart(0,"a",11),u.\u0275\u0275element(1,"div",12),u.\u0275\u0275elementEnd()),2&e){const e=u.\u0275\u0275nextContext().match,t=u.\u0275\u0275nextContext();u.\u0275\u0275property("ngClass",u.\u0275\u0275pureFunction1(3,E,t.content))("wmItemTemplate",t.content)("userComponentParams",e.item)}}function N(e,t){if(1&e&&u.\u0275\u0275template(0,_,3,3,"a",6)(1,M,2,5,"a",7),2&e){const e=u.\u0275\u0275nextContext();u.\u0275\u0275property("ngIf",!e.content),u.\u0275\u0275advance(),u.\u0275\u0275property("ngIf",e.content)}}function k(e,t){if(1&e&&(u.\u0275\u0275elementStart(0,"h4",21),u.\u0275\u0275text(1),u.\u0275\u0275elementEnd()),2&e){const e=u.\u0275\u0275nextContext().$implicit;u.\u0275\u0275advance(),u.\u0275\u0275textInterpolate(e.value)}}function L(e,t){if(1&e&&u.\u0275\u0275elementContainer(0,22),2&e){const e=u.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=u.\u0275\u0275nextContext(),a=n.itemTemplate,s=n.query;u.\u0275\u0275property("ngTemplateOutlet",a)("ngTemplateOutletContext",u.\u0275\u0275pureFunction4(2,T,t.item,i,t,s))}}function F(e,t){if(1&e){const e=u.\u0275\u0275getCurrentView();u.\u0275\u0275elementStart(0,"li",18,4),u.\u0275\u0275listener("mouseenter",(function(){const t=u.\u0275\u0275restoreView(e).$implicit,i=u.\u0275\u0275nextContext(2);return u.\u0275\u0275resetView(i.typeaheadContainer.selectActive(t))}))("click",(function(t){const i=u.\u0275\u0275restoreView(e).$implicit,n=u.\u0275\u0275nextContext(2);return i&&!i.isHeader()&&n.typeaheadContainer.selectMatch(i,t),n.$typeaheadEvent=t,u.\u0275\u0275resetView(n.notifySubscriber())})),u.\u0275\u0275template(2,k,2,1,"h4",19)(3,L,1,7,"ng-container",20),u.\u0275\u0275elementEnd()}if(2&e){const e=t.$implicit,i=u.\u0275\u0275nextContext(2);u.\u0275\u0275property("ngClass",u.\u0275\u0275pureFunction2(3,O,i.typeaheadContainer&&i.typeaheadContainer.isActive(e),e&&e.isHeader())),u.\u0275\u0275advance(2),u.\u0275\u0275property("ngIf",e.isHeader()),u.\u0275\u0275advance(),u.\u0275\u0275property("ngIf",!e.isHeader())}}function j(e,t){if(1&e&&(u.\u0275\u0275elementStart(0,"ul",13,3),u.\u0275\u0275template(2,F,4,6,"li",14),u.\u0275\u0275elementStart(3,"div",15),u.\u0275\u0275element(4,"span",16),u.\u0275\u0275elementEnd(),u.\u0275\u0275elementStart(5,"div",15),u.\u0275\u0275element(6,"i",17)(7,"span",16),u.\u0275\u0275elementEnd()()),2&e){const e=t.matches,i=u.\u0275\u0275nextContext();u.\u0275\u0275advance(2),u.\u0275\u0275property("ngForOf",e),u.\u0275\u0275advance(),u.\u0275\u0275property("hidden",i._loadingItems||!(i.datacompletemsg&&i.dataProvider.isLastPage)),u.\u0275\u0275advance(),u.\u0275\u0275property("textContent",i.datacompletemsg),u.\u0275\u0275advance(),u.\u0275\u0275property("hidden",!i._loadingItems),u.\u0275\u0275advance(2),u.\u0275\u0275property("textContent",i.loadingdatamsg)}}function B(e,t){if(1&e){const e=u.\u0275\u0275getCurrentView();u.\u0275\u0275elementContainerStart(0),u.\u0275\u0275elementStart(1,"input",23),u.\u0275\u0275twoWayListener("ngModelChange",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275twoWayBindingSet(i.query,t)||(i.query=t),u.\u0275\u0275resetView(t)})),u.\u0275\u0275listener("input",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.onInputChange(t))}))("keydown",(function(){u.\u0275\u0275restoreView(e);const t=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(t.listenQuery=!0)}))("keydown.enter",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return i.$typeaheadEvent=t,u.\u0275\u0275resetView(i.handleEnterEvent(t))}))("keydown.arrowdown",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.selectNext(t))}))("blur",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.invokeOnTouched(t))}))("click",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.handleFocus(t))}))("focus",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return i._unsubscribeDv=!1,i.listenQuery=!0,i.handleFocus(t),u.\u0275\u0275resetView(i.invokeOnFocus(t))}))("focusout",(function(){u.\u0275\u0275restoreView(e);const t=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(t.onFocusOut())}))("typeaheadLoading",(function(){u.\u0275\u0275restoreView(e);const t=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(t._loadingItems)}))("typeaheadOnSelect",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.typeaheadOnSelect(t))})),u.\u0275\u0275elementEnd(),u.\u0275\u0275elementStart(2,"i",24),u.\u0275\u0275listener("click",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.clearSearch(t))})),u.\u0275\u0275elementEnd(),u.\u0275\u0275elementContainerEnd()}if(2&e){const e=u.\u0275\u0275nextContext(),t=u.\u0275\u0275reference(1),i=u.\u0275\u0275reference(3);u.\u0275\u0275advance(),u.\u0275\u0275property("title",e.query||"")("placeholder",e.placeholder||"")("disabled",e.disabled),u.\u0275\u0275twoWayProperty("ngModel",e.query),u.\u0275\u0275property("ngModelOptions",u.\u0275\u0275pureFunction0(23,x))("readonly",e.readonly)("disabled",e.disabled)("typeahead",e.typeaheadDataSource)("typeaheadWaitMs",e.debouncetime)("typeaheadItemTemplate",t)("optionsListTemplate",i)("typeaheadMinLength",e.minchars)("typeaheadOptionsLimit",e.limit)("typeaheadGroupField",e.groupby?"groupby":null)("typeaheadAsync",!0)("typeaheadScrollable",!0)("adaptivePosition",!0)("typeaheadOptionsInScrollableView",e.optionslimitinscrollableview)("dropup",e.dropup)("tabindex",e.tabindex),u.\u0275\u0275attribute("name",e.name)("aria-label",e.hint||"Search field"),u.\u0275\u0275advance(),u.\u0275\u0275property("hidden",!e.showClosebtn)}}function V(e,t){1&e&&u.\u0275\u0275element(0,"span",32)}function G(e,t){if(1&e){const e=u.\u0275\u0275getCurrentView();u.\u0275\u0275elementStart(0,"span",33)(1,"form")(2,"button",34),u.\u0275\u0275listener("click",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext(2);return u.\u0275\u0275resetView(i.onSearchSelect(t))})),u.\u0275\u0275elementEnd()()()}if(2&e){const e=u.\u0275\u0275nextContext(2);u.\u0275\u0275property("ngClass",u.\u0275\u0275pureFunction1(2,R,e.disabled)),u.\u0275\u0275advance(2),u.\u0275\u0275property("disabled",e.disabled)}}function W(e,t){if(1&e){const e=u.\u0275\u0275getCurrentView();u.\u0275\u0275elementStart(0,"span",25),u.\u0275\u0275listener("click",(function(){u.\u0275\u0275restoreView(e);const t=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(t.closeSearch())})),u.\u0275\u0275elementEnd(),u.\u0275\u0275elementStart(1,"span",26),u.\u0275\u0275text(2,"Back button"),u.\u0275\u0275elementEnd(),u.\u0275\u0275elementStart(3,"input",27),u.\u0275\u0275twoWayListener("ngModelChange",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275twoWayBindingSet(i.query,t)||(i.query=t),u.\u0275\u0275resetView(t)})),u.\u0275\u0275listener("input",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.onInputChange(t))}))("keydown",(function(){u.\u0275\u0275restoreView(e);const t=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(t.listenQuery=!0)}))("keydown.enter",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return i.$typeaheadEvent=t,u.\u0275\u0275resetView(i.handleEnterEvent(t))}))("keydown.arrowdown",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.selectNext(t))}))("blur",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return i.invokeOnTouched(t),u.\u0275\u0275resetView(i.onFocusOut())}))("click",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.handleFocus(t))}))("focus",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return i._unsubscribeDv=!1,i.listenQuery=!0,i.handleFocus(t),u.\u0275\u0275resetView(i.invokeOnFocus(t))}))("typeaheadLoading",(function(){u.\u0275\u0275restoreView(e);const t=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(t._loadingItems)}))("typeaheadOnSelect",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.typeaheadOnSelect(t))})),u.\u0275\u0275elementEnd(),u.\u0275\u0275element(4,"input",28),u.\u0275\u0275template(5,V,1,0,"span",29),u.\u0275\u0275elementStart(6,"span",30),u.\u0275\u0275listener("click",(function(t){u.\u0275\u0275restoreView(e);const i=u.\u0275\u0275nextContext();return u.\u0275\u0275resetView(i.clearSearch(t,!0))})),u.\u0275\u0275elementEnd(),u.\u0275\u0275elementStart(7,"span",26),u.\u0275\u0275text(8,"Clear button"),u.\u0275\u0275elementEnd(),u.\u0275\u0275template(9,G,3,4,"span",31)}if(2&e){const e=u.\u0275\u0275nextContext(),t=u.\u0275\u0275reference(1),i=u.\u0275\u0275reference(3);u.\u0275\u0275advance(3),u.\u0275\u0275property("title",e.query||"")("placeholder",e.placeholder||"")("container",e.containerTarget||".wm-app")("disabled",e.disabled),u.\u0275\u0275twoWayProperty("ngModel",e.query),u.\u0275\u0275property("ngModelOptions",u.\u0275\u0275pureFunction0(25,x))("readonly",e.readonly)("typeahead",e.typeaheadDataSource)("typeaheadWaitMs",e.debouncetime)("typeaheadItemTemplate",t)("optionsListTemplate",i)("typeaheadMinLength",e.minchars)("typeaheadOptionsLimit",e.limit)("typeaheadGroupField",e.groupby?"groupby":null)("typeaheadAsync",!0)("typeaheadScrollable",!0)("adaptivePosition",!0)("typeaheadOptionsInScrollableView",e.optionslimitinscrollableview)("tabindex",e.tabindex)("dropup",e.dropup),u.\u0275\u0275attribute("name",e.name)("aria-label",e.hint||"Search field"),u.\u0275\u0275advance(2),u.\u0275\u0275property("ngIf",e._loadingItems),u.\u0275\u0275advance(),u.\u0275\u0275property("ngClass",u.\u0275\u0275pureFunction1(26,D,e.isQueryEntered())),u.\u0275\u0275advance(3),u.\u0275\u0275property("ngIf",e.showsearchicon)}}const U={widgetType:"wm-search",hostClass:"input-group"};class q extends c.DatasetAwareFormComponent{static{this.initializeProps=(s.register("wm-search",b),s.registerFormWidget(l.FormWidgetType.AUTOCOMPLETE,new Map(b)),void s.registerFormWidget(l.FormWidgetType.TYPEAHEAD,new Map(b)))}get datasource(){return this._datasource}set datasource(e){this._datasource=e;const t=this.datavalue||this.toBeProcessedDatavalue;this.updateByDatavalue(t)}constructor(e,t,i,n,a){super(e,U,a),this.binddatavalue=i,this.binddataset=n,this.query="",this.page=1,this.allowempty=!1,this.app=t,l.addClass(this.nativeElement,"app-search",!0),this.typeaheadDataSource=o.Observable.create((e=>{this.listenQuery&&(this._defaultQueryInvoked=!1,this._loadingItems=!0,e.next(this.query)),this.lastSelectedIndex&&(this.typeahead._container=void 0)})).pipe(r.filter((()=>(this._loadingItems=!1,0===this.minchars||this.query&&this.query.length>=this.minchars))),r.mergeMap((e=>this.getDataSourceAsObservable(e)))),this.dataProvider=new C;const s=this.datavalue$.subscribe((e=>{const t=d.isArray(e)?e[0]:e;if(null===t||""===t)return this._modelByValue="",this.query=this.queryModel="",void(this._lastResult=void 0);this._unsubscribeDv||(this._defaultQueryInvoked=!1,d.isObject(e)||this.prevDatavalue===e||(this._modelByKey=void 0,this.query=this.queryModel=""),this.updateByDatavalue(e)),this.showClosebtn=""!==this.query}));this.registerDestroyListener((()=>s.unsubscribe()));const c=this.dataset$.subscribe((()=>{this.startIndex=this.datasetItems.length,this._lastResult=void 0;const e=this.datavalue||this.toBeProcessedDatavalue;l.isDefined(e)&&this.updateByDataset(e)}));this.registerDestroyListener((()=>c.unsubscribe()))}clearSearch(e,t){this.query="",this.onInputChange(e),this.dataProvider.isLastPage=!1,this.listenQuery=!1,t&&(this.listenQuery=!0,this._unsubscribeDv=!1,this.loadMoreData()),this.invokeEventCallback("clearsearch"),this._loadingItems=!1,e&&this.$element.find(".app-search-input").focus()}clearText(){this.query="",this.showClosebtn=!1}closeSearch(){this._loadingItems=!1,this.page=1,this.insertAtIndex(this.elIndex),this.elIndex=void 0,this.parentEl=void 0,this.$element.removeClass("full-screen"),this._domUpdated&&(this._domUpdated=!1),this.listenQuery=!1,this._unsubscribeDv=!0,this.typeahead.hide()}renderMobileAutoComplete(){l.isDefined(this.elIndex)||(this.parentEl=this.$element.parent(),this.elIndex=this.parentEl.children().index(this.$element)),this.$element.hasClass("full-screen")||(this._domUpdated=!0,this.$element.addClass("full-screen"),"inline"===this.position&&this.$element.addClass(this.position)),this.$element.hasClass("full-screen")&&this.$element.find(".app-search-input").focus()}getDataSourceAsObservable(e){if(this._lastQuery===e&&!d.get(this.dataoptions,"filterFields")&&l.isDefined(this._lastResult))return this._loadingItems=!1,o.of(this._lastResult);if("autocomplete"===this.type&&this.searchkey&&this.query&&this.datavalue){let e=[];const t=d.split(this.searchkey,",");let i;if(this.binddisplaylabel&&(e=d.split(this.binddisplaylabel,"+"),1===e.length))if(d.includes(e[0],"|"))i=!0;else{i=/\[(.*?)\]/.exec(e[0])[1]}if(e.length>1||i&&!d.includes(t,i)||this.displayexpression&&!d.includes(t,this.displayexpression))return this._loadingItems=!1,o.of([])}return this._lastQuery=this.query,o.from(this.getDataSource(e))}handleEvent(e,t,i,n){d.includes(["blur","focus","select","submit","change"],t)||super.handleEvent(e,t,i,n)}highlight(e,t){if(this.typeaheadContainer)return e.value=e.item.label.toString(),this.typeaheadContainer.highlight(e,t)}insertAtIndex(e){if(0===e)this.parentEl.prepend(this.$element);else{this.parentEl.children().eq(e).length?this.$element.insertBefore(this.parentEl.children().eq(e)):this.$element.insertAfter(this.parentEl.children().eq(e-1))}}isMobileAutoComplete(){return"autocomplete"===this.type&&l.isMobile()}isQueryEntered(){return this.showclear&&this.showClosebtn}loadMoreData(e){this.dataProvider.isLastPage||(this.page=e?this.page+1:this.page,this.isScrolled=!0,this._loadingItems=!0,e&&(this._lastQuery=void 0),this.typeahead.onInput({target:{value:d.trim(this.query)||"0"}}))}onFocusOut(){this._unsubscribeDv=!1,this._loadingItems=!1,this.page=1,!this._domUpdated&&this._isOpen&&(this.listenQuery=!1),this._isOpen=!1,this._domUpdated&&this.typeahead&&this.typeahead._container&&(this.typeahead._container.isFocused=!0)}onInputChange(e){this.result=[],this.page=1,this.listenQuery=this.isUpdateOnKeyPress(),this._modelByValue=void 0,""===this.query?(this.queryModel="",this._modelByValue="",this.updatePrevDatavalue(this._lastQuery),this.invokeOnChange(this._modelByValue,{},!0),this.invokeEventCallback("clear",{$event:e}),e&&9!==e.which&&this.invokeEventCallback("submit",{$event:e})):this.invokeEventCallback("change",{$event:e,newVal:this._modelByValue||this.query,oldVal:this.prevDatavalue}),this.showClosebtn=""!==this.query}handleEnterEvent(e){d.get(this.typeahead,"matches.length")||this.onSearchSelect(e)}onSearchSelect(e){let t;const i=this.typeaheadContainer?.active?.value===this.query;if(this.typeaheadContainer&&this.typeaheadContainer.active&&i&&(t=this.typeaheadContainer.active.item),e=this.eventData(e,t||{}),!this.isUpdateOnKeyPress())return this.listenQuery=!0,void this.typeahead.onInput({target:{value:this.query}});this.typeaheadContainer&&this.liElements.length&&i?this.typeaheadContainer.selectActiveMatch():(this.queryModel=this.query,this.invokeEventCallback("submit",{$event:e}))}invokeOnBeforeServiceCall(e){this.invokeEventCallback("beforeservicecall",{inputData:e})}onDropdownOpen(){this.clearData&&this.typeahead.hide();if(d.debounce((()=>{this._isOpen=!0,this.typeaheadContainer=this.typeahead._container||this.typeahead._typeahead.instance,this.typeaheadContainer.liElements=this.liElements,this.typeaheadContainer.ulElement=this.ulElement,l.adjustContainerPosition($("typeahead-container"),this.nativeElement,this.typeahead._typeahead,$("typeahead-container .dropdown-menu"))}))(),this.isMobileAutoComplete()){this.$element.hasClass("full-screen")||this.renderMobileAutoComplete();const e=this.dropdownEl.closest("typeahead-container");e.insertAfter(this.$element.find("input").first());const t=this.$element.closest(".app-content").height();e.css({position:"relative",top:0,height:t+"px"}),this.showClosebtn=this.query&&""!==this.query,d.isUndefined(this.dataProvider.isLastPage)||this.dataProvider.isLastPage||this.triggerSearch()}}selectNext(){const e=this.typeaheadContainer.matches;if(!e)return;const t=e.indexOf(this.typeaheadContainer.active);!this._loadingItems&&!this.dataProvider.isLastPage&&t+1>e.length-1&&(this.lastSelectedIndex=t,this.loadMoreData(!0))}setLastActiveMatchAsSelected(){this.lastSelectedIndex&&(this.typeaheadContainer._active=this.typeaheadContainer.matches[this.lastSelectedIndex],this.typeaheadContainer.nextActiveMatch(),this.lastSelectedIndex=void 0)}triggerSearch(){if(this.dataProvider.isLastPage||!this.$element.hasClass("full-screen"))return;const e=this.dropdownEl,t=e.find("li").last();t.length&&e.length&&e.height()+e.position().top>t.height()+t.position().top&&this.loadMoreData(!0)}isUpdateOnKeyPress(){return"typing"===this.searchon}debounceDefaultQuery(e){this._defaultQueryInvoked=!0,this.getDataSource(e,!0).then((e=>{e.length?(this.queryModel=e,this._lastQuery=this.query=this.queryModel[0].label||"",this._modelByValue=this.queryModel[0].value,this._modelByKey=this.queryModel[0].key,this.showClosebtn=""!==this.query):(this._modelByValue=void 0,this.queryModel=void 0,this.query=""),this.clearData&&d.get(this.typeahead,"_typeahead.isShown")&&this.typeahead.hide()}))}updateByDatavalue(e){this.updateByDataset(e),this.updateByDataSource(e)}updateByDataSource(e){if(l.isDefined(e)&&!d.isObject(e)&&this.datasource&&!l.isDefined(this._modelByKey)&&this.datafield!==s.ALLFIELDS){if(l.isDefined(this.queryModel)&&!d.isEmpty(this.queryModel))return void this.updateDatavalueFromQueryModel();!this._defaultQueryInvoked&&this.datasource.execute(l.DataSource.Operation.SUPPORTS_CRUD)&&this.debounceDefaultQuery(e)}}updateDatavalueFromQueryModel(){l.isDefined(this.queryModel)&&(this._modelByValue=d.isArray(this.queryModel)?this.queryModel[0].value:this.queryModel,this._modelByKey=d.isArray(this.queryModel)?this.queryModel[0].key:this.queryModel,this.toBeProcessedDatavalue=void 0)}updateByDataset(e){if(this._defaultQueryInvoked&&this.searchkey)return;const t=d.find(this.datasetItems,(t=>d.isObject(t.value)?d.isEqual(t.value,e):d.toString(t.value).toLowerCase()===d.toString(e).toLowerCase()));if(t)this.queryModel=[t];else if(this.datafield===s.ALLFIELDS&&d.isObject(e))this.queryModel=this.getTransformedData(s.extractDataAsArray(e));else if(this.prevDatavalue!==e)return this.queryModel=void 0,void(this.query="");this.updateDatavalueFromQueryModel(),this._lastQuery=this.query=l.isDefined(this.queryModel)&&this.queryModel.length?d.get(this.queryModel[0],"label"):"",this.showClosebtn=""!==this.query}handleFocus(e){"search"===this.type&&this.query===this._lastQuery&&this._lastResult&&this.typeahead.keyUpEventEmitter.emit(this.query)}notifySubscriber(){const e=$(this.nativeElement).closest(".app-composite-widget.caption-floating");e.length>0&&this.app.notify("captionPositionAnimate",{displayVal:!0,nativeEl:e})}getDataSource(e,t,i){if(t&&this.datafield===s.ALLFIELDS)return this._loadingItems=!1,Promise.resolve([]);const n={dataset:this.dataset?s.convertDataToObject(this.dataset):void 0,binddataset:this.binddataset,datasource:this.datasource,datafield:this.datafield,hasData:this.dataset&&this.dataset.length,query:e,isLocalFilter:!this.searchkey,searchKey:t?this.datafield:this.searchkey,matchMode:t?"startignorecase":this.matchmode,casesensitive:this.casesensitive,isformfield:this.isformfield,orderby:this.orderby,limit:this.limit,pagesize:this.pagesize,page:this.page,onBeforeservicecall:this.invokeOnBeforeServiceCall.bind(this)};return this.dataoptions&&(n.dataoptions=this.dataoptions,n.viewParent=this.viewParent),this._loadingItems=!0,this.dataProvider.filter(n).then((e=>{e=e.data||e,l.isDefined(this.dataset)&&this.dataset.length||!this.dataProvider.updateDataset||(this.dataset=e),this.dataProvider.hasMoreData?this.formattedDataset=this.formattedDataset.concat(e):this.formattedDataset=e,this.formattedDataset.length>20&&!l.isDefined(this.limit)&&(this.typeahead.typeaheadOptionsLimit=this.formattedDataset.length),this._isOpen&&this.isMobileAutoComplete()&&!d.isUndefined(this.dataProvider.isLastPage)&&!this.dataProvider.isLastPage&&this.triggerSearch();const t=this.getTransformedData(this.formattedDataset,i);return this.result=d.map(t,"value"),t}),(e=>(this._loadingItems=!1,[]))).then((t=>(this.isScrolled&&(d.debounce((()=>{this.setLastActiveMatchAsSelected()}),30)(),this.isScrolled=!1),t.length||(this._modelByValue=void 0,this.queryModel=e),this._unsubscribeDv&&(t=[]),this._loadingItems=!1,this._lastResult=t,t)))}getContext(e){return e&&d.get(e,"widget")?this.getContext(e.viewParent):e}getTransformedData(e,t,i){l.isDefined(t)&&t++;const n=s.transformFormData(this.getContext(this.viewParent),e,this.datafield,{displayField:this.displaylabel||this.displayfield,displayExpr:i?"":this.displayexpression,bindDisplayExpr:i?"":this.binddisplaylabel,bindDisplayImgSrc:this.binddisplayimagesrc,displayImgSrc:this.displayimagesrc},t,this);return s.getUniqObjsByDataField(n,this.datafield,this.displayfield||this.displaylabel,l.toBoolean(this.allowempty))}onScroll(e,t){const i=e.scrollHeight,n=e.clientHeight;!this._loadingItems&&!this.dataProvider.isLastPage&&e.scrollTop+n>=i&&this.loadMoreData(!0)}ngOnInit(){super.ngOnInit(),l.isDefined(this.minchars)||("autocomplete"===this.type?this.minchars=0:this.minchars=1),this.listenQuery=this.isUpdateOnKeyPress(),this.showsearchicon=l.isDefined(this.showsearchicon)?this.showsearchicon:"search"===this.type}ngAfterViewInit(){super.ngAfterViewInit(),s.styler(this.nativeElement,this),this.containerTarget=s.getContainerTargetClass(this.nativeElement)}eventData(e,t){return e&&(e.data={item:t.dataObject,model:t.value,label:t.label,query:this.query}),e}typeaheadOnSelect(e,t){const i=e.item;this.queryModel=i,i.selected=!0,this.query=i.label,this.showClosebtn=""!==this.query,t=t||this.$typeaheadEvent,this._modelByKey=i.key,this._modelByValue=i.value,t=this.eventData(t,i),this.invokeOnTouched(),this.invokeOnChange(this.datavalue,t||{}),this.datavalue!==this.prevDatavalue&&this.updateBoundVariable(this.datavalue),this.$element.hasClass("full-screen")&&this.closeSearch(),this.invokeEventCallback("select",{$event:t,selectedValue:this.datavalue}),this.invokeEventCallback("submit",{$event:t}),this.updatePrevDatavalue(this.datavalue)}onPropertyChange(e,t,i){"tabindex"!==e&&("autocomplete"===this.type&&"displaylabel"===e&&this.displaylabel&&(!this.displayexpression||this.displayexpression&&!this.datasource)&&(this.displayexpression=this.displaylabel,this.displaylabel=void 0),"displaylabel"===e&&this.dataoptions&&null===this.binddisplaylabel&&(this.query=d.get(this._modelByValue,t)||this._modelByValue),"disabled"===e&&(!1===t?this.clearData=!1:(this.clearData=!0,d.get(this.typeahead,"_typeahead.isShown")&&this.typeahead.hide())),super.onPropertyChange(e,t,i))}static{this.\u0275fac=function(e){return new(e||q)(u.\u0275\u0275directiveInject(u.Injector),u.\u0275\u0275directiveInject(v.App),u.\u0275\u0275injectAttribute("datavalue.bind"),u.\u0275\u0275injectAttribute("dataset.bind"),u.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=u.\u0275\u0275defineComponent({type:q,selectors:[["","wmSearch",""]],viewQuery:function(e,t){if(1&e&&(u.\u0275\u0275viewQuery(a.TypeaheadDirective,5),u.\u0275\u0275viewQuery(P,5),u.\u0275\u0275viewQuery(I,5)),2&e){let e;u.\u0275\u0275queryRefresh(e=u.\u0275\u0275loadQuery())&&(t.typeahead=e.first),u.\u0275\u0275queryRefresh(e=u.\u0275\u0275loadQuery())&&(t.ulElement=e.first),u.\u0275\u0275queryRefresh(e=u.\u0275\u0275loadQuery())&&(t.liElements=e)}},features:[u.\u0275\u0275ProvidersFeature([s.provideAs(q,n.NG_VALUE_ACCESSOR,!0),s.provideAs(q,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(q)]),u.\u0275\u0275InheritDefinitionFeature],attrs:A,decls:7,vars:2,consts:[["customItemTemplate",""],["customListTemplate",""],["searchTemplate",""],["ulElement",""],["liElements",""],[4,"ngIf","ngIfElse"],[4,"ngIf"],["partialContainer","",3,"ngClass","wmItemTemplate","userComponentParams",4,"ngIf"],["alt","Search",3,"src","width",4,"ngIf"],[3,"title","innerHtml"],["alt","Search",3,"src"],["partialContainer","",3,"ngClass","wmItemTemplate","userComponentParams"],["partial-container-target",""],["scrollable","",1,"app-search","dropdown-menu"],[3,"ngClass","mouseenter","click",4,"ngFor","ngForOf"],[1,"status",3,"hidden"],[3,"textContent"],[1,"fa","fa-circle-o-notch","fa-spin"],[3,"mouseenter","click","ngClass"],["class","group-title",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext",4,"ngIf"],[1,"group-title"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["type","text","focus-target","","container","body","autocomplete","off","typeaheadOptionField","label",1,"app-textbox","form-control","list-of-objs","app-search-input",3,"ngModelChange","input","keydown","keydown.enter","keydown.arrowdown","blur","click","focus","focusout","typeaheadLoading","typeaheadOnSelect","title","placeholder","disabled","ngModel","ngModelOptions","readonly","typeahead","typeaheadWaitMs","typeaheadItemTemplate","optionsListTemplate","typeaheadMinLength","typeaheadOptionsLimit","typeaheadGroupField","typeaheadAsync","typeaheadScrollable","adaptivePosition","typeaheadOptionsInScrollableView","dropup","tabindex"],[1,"btn-close","wi","wi-cancel",3,"click","hidden"],["aria-hidden","true",1,"wi","wi-arrow-left","form-control-feedback","back-btn",3,"click"],[1,"sr-only"],["type","text","focus-target","","autocomplete","off","typeaheadOptionField","label",1,"app-textbox","form-control","list-of-objs","app-search-input",3,"ngModelChange","input","keydown","keydown.enter","keydown.arrowdown","blur","click","focus","typeaheadLoading","typeaheadOnSelect","title","placeholder","container","disabled","ngModel","ngModelOptions","readonly","typeahead","typeaheadWaitMs","typeaheadItemTemplate","optionsListTemplate","typeaheadMinLength","typeaheadOptionsLimit","typeaheadGroupField","typeaheadAsync","typeaheadScrollable","adaptivePosition","typeaheadOptionsInScrollableView","tabindex","dropup"],["ng-model","proxyModel","ng-required","required","tabindex","-1","aria-hidden","true",1,"model-holder"],["aria-hidden","true","class","fa fa-circle-o-notch fa-spin form-control-feedback",4,"ngIf"],[1,"wi","wi-close","form-control-feedback","clear-btn",3,"click","ngClass"],["class","input-group-addon","aria-label","search icon",3,"ngClass",4,"ngIf"],["aria-hidden","true",1,"fa","fa-circle-o-notch","fa-spin","form-control-feedback"],["aria-label","search icon",1,"input-group-addon",3,"ngClass"],["title","Search","type","submit",1,"app-search-button","wm-sl-l","sl-search",3,"click","disabled"]],template:function(e,t){if(1&e&&u.\u0275\u0275template(0,N,2,2,"ng-template",null,0,u.\u0275\u0275templateRefExtractor)(2,j,8,5,"ng-template",null,1,u.\u0275\u0275templateRefExtractor)(4,B,3,24,"ng-container",5)(5,W,10,28,"ng-template",null,2,u.\u0275\u0275templateRefExtractor),2&e){const e=u.\u0275\u0275reference(6);u.\u0275\u0275advance(4),u.\u0275\u0275property("ngIf",t.navsearchbar)("ngIfElse",e)}},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&u.\u0275setClassMetadata(q,[{type:t.Component,args:[{selector:"[wmSearch]",providers:[s.provideAs(q,n.NG_VALUE_ACCESSOR,!0),s.provideAs(q,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(q)],template:'<ng-template #customItemTemplate let-model="item" let-index="index" let-query="query" let-match="match">\n \x3c!-- Default item template --\x3e\n <a *ngIf="!content">\n <img *ngIf="model.imgSrc" [src]="model.imgSrc" alt="Search" [style.width]="imagewidth">\n <span [title]="model.label" [innerHtml]="highlight(match, query) || model.label"></span>\n </a>\n \x3c!-- Custom partial template --\x3e\n <a *ngIf="content" [ngClass]="{customTemplate: content}" partialContainer [wmItemTemplate]="content" [userComponentParams]="match.item">\n <div partial-container-target></div>\n </a>\n</ng-template>\n\n<ng-template #customListTemplate let-matches="matches" let-itemTemplate="itemTemplate" let-query="query">\n <ul #ulElement class="app-search dropdown-menu" scrollable>\n <li #liElements *ngFor="let match of matches; let i = index;" [ngClass]="{active: typeaheadContainer && typeaheadContainer.isActive(match), \'list-group-header\': match && match.isHeader()}"\n (mouseenter)="typeaheadContainer.selectActive(match);"\n (click)="match && !match.isHeader() && typeaheadContainer.selectMatch(match, $event); $typeaheadEvent = $event; notifySubscriber();">\n \x3c!-- itemTemplate comes from the <input> --\x3e\n <h4 *ngIf="match.isHeader()" class="group-title">{{match.value}}</h4>\n <ng-container *ngIf="!match.isHeader()" [ngTemplateOutlet]="itemTemplate"\n [ngTemplateOutletContext]="{item: match.item, index: i, match: match, query: query}">\n </ng-container>\n </li>\n <div class="status" [hidden]="_loadingItems || !(datacompletemsg && dataProvider.isLastPage)">\n <span [textContent]="datacompletemsg"></span>\n </div>\n <div class="status" [hidden]="!_loadingItems">\n <i class="fa fa-circle-o-notch fa-spin"></i>\n <span [textContent]="loadingdatamsg"></span>\n </div>\n </ul>\n</ng-template>\n\n\x3c!--This template is for search inside mobile navbar.--\x3e\n<ng-container *ngIf="navsearchbar; else searchTemplate">\n <input [title]="query || \'\'" type="text" class="app-textbox form-control list-of-objs app-search-input" [placeholder]="placeholder || \'\'"\n focus-target\n container="body"\n [disabled]="disabled"\n autocomplete="off"\n [(ngModel)]="query"\n [ngModelOptions]="{standalone: true}"\n [readonly]="readonly"\n [disabled]="disabled"\n [typeahead]="typeaheadDataSource"\n [typeaheadWaitMs]="debouncetime"\n [typeaheadItemTemplate]="customItemTemplate"\n [optionsListTemplate]="customListTemplate"\n (input)="onInputChange($event)"\n (keydown)="listenQuery = true"\n (keydown.enter)="$typeaheadEvent = $event;handleEnterEvent($event)"\n (keydown.arrowdown)="selectNext($event)"\n (blur)="invokeOnTouched($event)"\n (click)="handleFocus($event);"\n (focus)="_unsubscribeDv = false; listenQuery = true; handleFocus($event); invokeOnFocus($event);"\n (focusout)="onFocusOut()"\n [typeaheadMinLength]="minchars"\n [typeaheadOptionsLimit]="limit"\n (typeaheadLoading)="_loadingItems"\n (typeaheadOnSelect)="typeaheadOnSelect($event)"\n typeaheadOptionField="label"\n [typeaheadGroupField]="groupby ? \'groupby\' : null"\n [typeaheadAsync]="true"\n [typeaheadScrollable]="true"\n [adaptivePosition]="true"\n [typeaheadOptionsInScrollableView]="optionslimitinscrollableview"\n [dropup]="dropup"\n [tabindex]="tabindex"\n [attr.name]="name"\n [attr.aria-label]="hint || \'Search field\'"/>\n <i class="btn-close wi wi-cancel" [hidden]="!showClosebtn" (click)="clearSearch($event);"></i>\n</ng-container>\n\x3c!--This template is for both web and fullscreen mode in mobile.--\x3e\n<ng-template #searchTemplate>\n <span class="wi wi-arrow-left form-control-feedback back-btn" aria-hidden="true" (click)="closeSearch()"></span>\n <span class="sr-only">Back button</span>\n <input [title]="query || \'\'" type="text" class="app-textbox form-control list-of-objs app-search-input" [placeholder]="placeholder || \'\'"\n focus-target\n [container]="containerTarget || \'.wm-app\'"\n [disabled]="disabled"\n autocomplete="off"\n [(ngModel)]="query"\n [ngModelOptions]="{standalone: true}"\n [readonly]="readonly"\n [typeahead]="typeaheadDataSource"\n [typeaheadWaitMs]="debouncetime"\n [typeaheadItemTemplate]="customItemTemplate"\n [optionsListTemplate]="customListTemplate"\n (input)="onInputChange($event)"\n (keydown)="listenQuery = true"\n (keydown.enter)="$typeaheadEvent = $event;handleEnterEvent($event)"\n (keydown.arrowdown)="selectNext($event)"\n (blur)="invokeOnTouched($event); onFocusOut()"\n (click)="handleFocus($event);"\n (focus)="_unsubscribeDv = false; listenQuery = true; handleFocus($event); invokeOnFocus($event)"\n [typeaheadMinLength]="minchars"\n [typeaheadOptionsLimit]="limit"\n (typeaheadLoading)="_loadingItems"\n (typeaheadOnSelect)="typeaheadOnSelect($event)"\n typeaheadOptionField="label"\n [typeaheadGroupField]="groupby ? \'groupby\' : null"\n [typeaheadAsync]="true"\n [typeaheadScrollable]="true"\n [adaptivePosition]="true"\n [typeaheadOptionsInScrollableView]="optionslimitinscrollableview"\n [tabindex]="tabindex"\n [dropup]="dropup"\n [attr.name]="name"\n [attr.aria-label]="hint || \'Search field\'">\n <input class="model-holder" ng-model="proxyModel" ng-required="required" tabindex="-1" aria-hidden="true">\n <span *ngIf="_loadingItems" aria-hidden="true" class="fa fa-circle-o-notch fa-spin form-control-feedback"></span>\n <span class="wi wi-close form-control-feedback clear-btn" [ngClass]="{\'show-btn\': isQueryEntered()}" (click)="clearSearch($event, true)"></span>\n <span class="sr-only">Clear button</span>\n <span *ngIf="showsearchicon" class="input-group-addon" aria-label="search icon" [ngClass]="{\'disabled\': disabled}">\n <form>\n <button title="Search" [disabled]="disabled" class="app-search-button wm-sl-l sl-search" type="submit"\n (click)="onSearchSelect($event)"></button>\n </form>\n </span>\n</ng-template>\n'}]}],(()=>[{type:u.Injector},{type:v.App},{type:void 0,decorators:[{type:t.Attribute,args:["datavalue.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{typeahead:[{type:t.ViewChild,args:[a.TypeaheadDirective]}],ulElement:[{type:t.ViewChild,args:["ulElement"]}],liElements:[{type:t.ViewChildren,args:["liElements"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&u.\u0275setClassDebugInfo(q,{className:"SearchComponent",filePath:"search.component.ts",lineNumber:61});class z{constructor(e,i){this.searchRef=i,this.elementRef=e.get(t.ElementRef)}ngAfterContentInit(){this.elementRef.nativeElement.addEventListener("scroll",this.notifyParent.bind(this)),this.searchRef.dropdownEl=$(this.elementRef.nativeElement),this.searchRef.onDropdownOpen()}ngAfterViewInit(){if(!this.searchRef.isMobileAutoComplete()){const e=this.searchRef.$element.find("input").first();this.searchRef.dropdownEl.width(e.outerWidth())}}notifyParent(e){this.searchRef.onScroll(this.elementRef.nativeElement,e)}static{this.\u0275fac=function(e){return new(e||z)(u.\u0275\u0275directiveInject(u.Injector),u.\u0275\u0275directiveInject(q))}}static{this.\u0275dir=u.\u0275\u0275defineDirective({type:z,selectors:[["","scrollable",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&u.\u0275setClassMetadata(z,[{type:t.Directive,args:[{selector:"[scrollable]"}]}],(()=>[{type:u.Injector},{type:q}]),null);const H=[q,z];class Q{static{this.\u0275fac=function(e){return new(e||Q)}}static{this.\u0275mod=u.\u0275\u0275defineNgModule({type:Q})}static{this.\u0275inj=u.\u0275\u0275defineInjector({imports:[i.CommonModule,n.FormsModule,a.TypeaheadModule,s.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&u.\u0275setClassMetadata(Q,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.FormsModule,a.TypeaheadModule,s.WmComponentsModule],declarations:[...H],exports:[...H]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&u.\u0275\u0275setNgModuleScope(Q,{declarations:[q,z],imports:[i.CommonModule,n.FormsModule,a.TypeaheadModule,s.WmComponentsModule],exports:[q,z]}),u.\u0275\u0275setComponentScope(q,[h.NgClass,h.NgForOf,h.NgIf,h.NgTemplateOutlet,m.\u0275NgNoValidate,m.DefaultValueAccessor,m.NgControlStatus,m.NgControlStatusGroup,m.NgModel,m.NgForm,g.TypeaheadDirective,f.ItemTemplateDirective,f.PartialParamHandlerDirective,f.PartialContainerDirective,f.TextContentDirective,z],[]),e.ScrollableDirective=z,e.SearchComponent=q,e.SearchModule=Q})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.basic=e.wm.components.basic||{},e.wm.components.basic.tree={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.core,e._)}(this,(function(e,t,i,n,a,s){"use strict";var o,r,l=(o=t,r=Object.create(null),o&&Object.keys(o).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(r,e,t.get?t:{enumerable:!0,get:function(){return o[e]}})}})),r.default=o,Object.freeze(r));const c=["wmTree",""],d={widgetType:"wm-tree",hostClass:"app-tree"},p="plus-minus";class u extends n.StylableComponent{static{this.initializeProps=void n.register("wm-tree",new Map([["class",n.PROP_STRING],["dataset",{value:"node1, node2, node3",...n.PROP_ANY}],["datavalue",n.PROP_STRING],["levels",{value:0,...n.PROP_NUMBER}],["name",n.PROP_STRING],["nodeaction",n.PROP_STRING],["nodechildren",n.PROP_STRING],["nodeclick",{value:"none",...n.PROP_STRING}],["nodeicon",n.PROP_STRING],["nodeid",n.PROP_STRING],["nodelabel",n.PROP_STRING],["orderby",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}],["treeicons",n.PROP_STRING]]))}constructor(e,t,i,a,s,o,r){super(e,d,r),this.binddatavalue=t,this.bindnodelabel=i,this.bindnodeicon=a,this.bindnodechildren=s,this.bindnodeid=o,this.setting={data:{simpleData:{enable:!1}},view:{dblClickExpand:!1,fontCss:{"font-awesome":!0},switchIcon:{}},check:{},callback:{}},n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER),this.setting.view.nodeClasses=this.setNodeClasses,this.setting.callback.onClick=this.onClick.bind(this),this.setting.callback.onExpand=this.onExpand.bind(this),this.setting.callback.onCollapse=this.onCollapse.bind(this)}onPropertyChange(e,t,i){switch(e){case"dataset":this.nodes=this.getNodes(t),this.renderTree();break;case"levels":this.level=t,this.renderTree();break;case"nodeicon":this.nodeicon=t,this.renderTree();break;case"nodelabel":this.nodelabel=t,this.renderTree();break;case"nodechildren":this.nodechildren=t,this.renderTree();break;case"orderby":this.orderby=t,this.renderTree();break;case"treeicons":this.treeicons=t,this.renderTree();break;case"class":this.treeClass=t,this.setTreeTemplate(this.treeClass),this.renderTree();default:super.onPropertyChange(e,t,i)}}expandTree(e,t,i){t.map((t=>{const n=t.children;n&&i<e?(t.open=!0,this.expandTree(e,n,i+1)):i=0}))}setTreeTemplate(e){const t=e.split(" ");t.includes("Classic")?this.setting.check.enable=!1:t.includes("Checkbox")?(this.setting.check.enable=!0,this.setting.check.chkStyle="checkbox"):t.includes("Radio")&&(this.setting.check.enable=!0,this.setting.check.chkStyle="radio",this.setting.check.radioType="all")}getNodesFromString(e){return e.split(",").map((e=>({label:e&&e.trim()})))}getNodes(e){let t;return s.isArray(e)?t=n.getOrderedDataset(e,this.orderby):s.isObject(e)?t=[e]:s.isString(e)&&!s.isEmpty(e)&&(e=e.trim())&&(t=this.getNodesFromString(e)),t}setNodeClasses(e,t){return t.icon?{add:[`${t.icon}`]}:""}changeTreeIcons(e){let t=$('ul[name="'+this.name+'"] li span.button.switch');$(t).map(((t,i)=>{$(i).addClass(e),$(i).on("click",(function(t){setTimeout((()=>{$(i).addClass(e)}),0)}))}))}getPath(e,t){return t=null===e.getParentNode()?"/"+e.name+t:this.getPath(e.getParentNode(),t)+"/"+e.name}onClick(e,t,i,n){if("expand"===this.nodeclick){var a=this.zTree.getSelectedNodes();a.length>0&&this.expandNode(a[0],!a[0].open,!0)}this.selectNode(e,i)}onExpand(e,t,i){let n=this,s=this.getPath(i,"");const o={$event:e,$item:a.getClonedObject(i.data),$path:s};this.invokeEventCallback("expand",o);const r=i.children;r?.map((e=>{if(e.isParent){let t=$(`#${e.tId}_switch`);$(t).addClass(n.treeicons||p),$(t).on("click",(function(e){setTimeout((()=>{$(t).addClass(n.treeicons||p)}),0)}))}}))}onCollapse(e,t,i){let n=this.getPath(i,"");const s={$event:e,$item:a.getClonedObject(i.data),$path:n};this.invokeEventCallback("collapse",s)}constructZTreeData(e,t){e.forEach((e=>{const i={},o=n.getEvaluatedData(e,{field:this.nodelabel,bindExpression:this.bindnodelabel},this.viewParent)||e.label,r=n.getEvaluatedData(e,{field:this.nodeicon,bindExpression:this.bindnodeicon},this.viewParent)||e.icon,l=n.getEvaluatedData(e,{field:this.nodeid,bindExpression:this.bindnodeid},this.viewParent),c=n.getEvaluatedData(e,{field:this.nodechildren,bindExpression:this.bindnodechildren},this.viewParent)||e.children;i.name=o,i.icon=r,i.nodeId=l,i.data=a.getClonedObject(e),s.isArray(c)&&c.length&&(i.children=[],this.constructZTreeData(c,i.children)),t.push(i)}))}renderTree(){this.zTreeNodes=[],this.nodes?.length&&(this.nativeElement.setAttribute("id",this.name),this.constructZTreeData(this.nodes,this.zTreeNodes),this.level>0&&this.expandTree(this.level,this.zTreeNodes,0)),this.zTree=$.fn.zTree.init($('ul[name="'+this.name+'"]'),this.setting,this.zTreeNodes),$.fn.zTreeKeyboardNavigation(this.zTree,$('ul[name="'+this.name+'"]'),null,this.treeicons||p),this.postRenderTree()}setChecked(e,t){t.checked=e.checked;const i=n.getEvaluatedData(t,{field:this.nodechildren,bindExpression:this.bindnodechildren},this.viewParent)||t.children;i?.length&&i.forEach(((t,i)=>{this.setChecked(e.children[i],t)}))}selectNode(e,t){if($(`.app-tree[name=${this.name}] li[treenode].selected`).removeClass("selected"),!t)return;$(`#${t.tId}:has(.curSelectedNode)`).addClass("selected");const i=(this.treeClass||"").split(" ");(i.includes("Checkbox")||i.includes("Radio"))&&this.setChecked(t,t.data);const n=this.getPath(t,"");this.selecteditem=a.getClonedObject(t.data)||{},this.selecteditem.path=n;const s={$event:e,$item:a.getClonedObject(t.data),$path:n},o=t.data[this.nodeaction||"action"];o&&a.$parseEvent(o)(this),this.invokeEventCallback("select",s)}expandNode(e,t,i){this.zTree.expandNode(e,t,!1,!1,i);const n=$(`#${e.tId}_switch`);$(n).addClass(this.treeicons||p)}postRenderTree(){setTimeout((()=>{if(this.changeTreeIcons(this.treeicons||p),this.datavalue&&!this.selecteditem){const e=this.zTree.getNodes();let t;e.length&&("FirstNode"===this.datavalue&&(t=e[0]),"LastNode"===this.datavalue&&(t=e[e.length-1])),t&&(this.zTree.selectNode(t,!1),this.selectNode(void 0,t),this.expandNode(t,!0,!1))}}),200)}selectById(e){const t=this.zTree?.transformToArray(this.zTree.getNodes()),i=t?.find((t=>e===t.nodeId));i&&(this.zTree.selectNode(i,!1),this.selectNode(void 0,i))}deselectById(e){this.selecteditem={},this.selectById()}static{this.\u0275fac=function(e){return new(e||u)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275injectAttribute("datavalue.bind"),l.\u0275\u0275injectAttribute("nodelabel.bind"),l.\u0275\u0275injectAttribute("nodeicon.bind"),l.\u0275\u0275injectAttribute("nodechildren.bind"),l.\u0275\u0275injectAttribute("nodeid.bind"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:u,selectors:[["ul","wmTree",""]],features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(u)]),l.\u0275\u0275InheritDefinitionFeature],attrs:c,decls:2,vars:0,consts:[["wmTree",""],["id","ztree",1,"ztree"]],template:function(e,t){1&e&&l.\u0275\u0275element(0,"ul",1,0)},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(u,[{type:t.Component,args:[{selector:"ul[wmTree]",providers:[n.provideAsWidgetRef(u)],encapsulation:t.ViewEncapsulation.None,template:'<ul #wmTree class="ztree" id="ztree"></ul> '}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["datavalue.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["nodelabel.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["nodeicon.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["nodechildren.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["nodeid.bind"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(u,{className:"TreeComponent",filePath:"tree.component.ts",lineNumber:20});const h=[u];class m{static{this.\u0275fac=function(e){return new(e||m)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:m})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(m,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...h],exports:[...h]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(m,{declarations:[u],imports:[i.CommonModule,n.WmComponentsModule],exports:[u]}),e.TreeComponent=u,e.TreeModule=m})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-bootstrap/datepicker"),require("@wm/core"),require("@wm/components/base"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","ngx-bootstrap/datepicker","@wm/core","@wm/components/base","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.calendar={}),e.ng.core,e.ng.common,e.ng.forms,e.datepicker,e.wm.core,e.wm.components.base,e._)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(s);const p=["calendar"],u=["datepicker"],h=["wmCalendar",""],m={start:"prev next today",center:"title",end:"dayGridMonth dayGridWeek dayGridDay"},g="basic",f="list",v="Year",b="Month",y="Week",w="Day",C="Today",P="none",I="single",A={START:"00:00",END:"24:00"},E=e=>{const t=(e=moment(e)).format("YYYY"),i=e.format("MM")-1,n=e.format("DD"),a=e.format("HH"),s=e.format("mm"),o=e.format("ss");return new Date(t,i,n,a,s,o)},O={widgetType:"wm-calendar",hostClass:"app-calendar"};class T extends o.StylableComponent{static{this.initializeProps=(()=>{const e=new Map([["calendartype",{value:"basic",...o.PROP_STRING}],["class",o.PROP_STRING],["tabindex",{value:0,...o.PROP_NUMBER}],["controls",{value:"navigation, today, year, month, week, day",...o.PROP_STRING}],["dataset",o.PROP_ANY],["datavalue",o.PROP_STRING],["eventallday",o.PROP_STRING],["eventclass",o.PROP_STRING],["eventend",o.PROP_STRING],["eventstart",o.PROP_STRING],["eventtitle",o.PROP_STRING],["name",o.PROP_STRING],["show",{value:!0,...o.PROP_BOOLEAN}],["showindevice",{displayType:"inline-block",value:"all",...o.PROP_STRING}],["view",o.PROP_STRING],["selectionmode",o.PROP_STRING]]);o.register("wm-calendar",e)})()}selectDate(){let e,t;r.isObject(this.datavalue)&&!r.isDate(this.datavalue)?(e=moment(this.datavalue.start),t=moment(this.datavalue.end)):(e=moment(this.datavalue),t=moment(this.datavalue).add(1,"day").startOf("day")),this.$fullCalendar.gotoDate(moment(e)._d),this.$fullCalendar.select(e.valueOf(),t.valueOf())}gotoDate(){this.$fullCalendar.gotoDate(moment(this.datavalue)._d)}gotoNextYear(){this.$fullCalendar.nextYear()}gotoPrevYear(){this.$fullCalendar.prevYear()}gotoMonth(e){let t=this.$fullCalendar.getDate();const i=t.getMonth();t=moment(t),i<e?this.$fullCalendar.gotoDate(t.add(e-i-1,"M").valueOf()):this.$fullCalendar.gotoDate(t.subtract(i-e+1,"M").valueOf())}gotoNextMonth(){const e=moment(this.$fullCalendar.getDate());this.$fullCalendar.gotoDate(e.add(1,"M").valueOf())}gotoPrevMonth(){const e=moment(this.$fullCalendar.getDate());this.$fullCalendar.gotoDate(e.subtract(1,"M").valueOf())}rerenderEvents(){this.$fullCalendar.render()}setSelectedData(e,t){let i=this.dataset;if(!i)return;const n=[],a=this.eventstart||"start",s=this.eventend||"end",o=moment(new Date(e)).format("MM/DD/YYYY"),r=moment(new Date(t)).subtract(1,"days").format("MM/DD/YYYY");return i=i.data||i,i.forEach((e=>{if(!e[a])return;const t=moment(new Date(e[a])).format("MM/DD/YYYY"),i=moment(new Date(e[s]||e[a])).format("MM/DD/YYYY");moment(t).isSameOrAfter(o)&&moment(i).isSameOrBefore(r)&&n.push(e)})),n}eventDrop(e){let t=this.convertEventObjForOldAndNewData(e.event),i=this.convertEventObjForOldAndNewData(e.oldEvent);this.invokeEventCallback("eventdrop",{$event:e.jsEvent,$newData:t,$oldData:i,$delta:e.delta,$revertFunc:e.revert,$ui:{},$view:e.view})}getDefaultDate(){if(this.datavalue)return new Date(this.datavalue)}getDefaultOptions(){return this.calendarOptions}getLib(){return"fullcalendar"}select(e){this.selecteddates={start:E(e.start),end:E(e.end)},this.selecteddata=this.setSelectedData(e.start,e.end),this.invokeEventCallback("select",{$start:e.start.valueOf(),$end:e.end.valueOf(),$view:e.view,$data:this.selecteddata})}unselect(){this.$fullCalendar.unselect()}convertEventObj(e){if(!e.extendedProps._eventMetadata)return e;const t=e.extendedProps._eventMetadata;return Object.setPrototypeOf(t,e),t}convertEventObjForOldAndNewData(e){const t=e.extendedProps;return r.extend(e,t),e}eventResize(e){let t=this.convertEventObjForOldAndNewData(e.event),i=this.convertEventObjForOldAndNewData(e.oldEvent);this.invokeEventCallback("eventresize",{$event:e.jsEvent,$newData:t,$oldData:i,$delta:e.delta,$revertFunc:e.revert,$ui:{},$view:e.view})}onEventChangeStart(e){this.oldData=s.getClonedObject(e)}eventClick(e){let t=this.convertEventObj(e.event);this.invokeEventCallback("eventclick",{$event:e.jsEvent,$data:t,$view:e.view})}eventDidMount(e){let t=this.convertEventObj(e.event);this.calendartype===f&&this.$element.find(".fc-list-table").addClass("table"),this.invokeEventCallback("eventrender",{$event:e.el,$data:t,$view:e.view})}viewDidMount(e){this.calendartype===f&&this.$element.find(".fc-list-table").addClass("table"),this.invokeEventCallback("viewrender",{$view:e})}datesSet(e){this.currentview={start:moment(e.start).format("YYYY-MM-DD"),end:moment(e.end).format("YYYY-MM-DD")}}dateClick(e){const t=E(e.date).valueOf();this.invokeEventCallback("dateclick",{$dateInfo:t})}updateCalendarHeaderOptions(){const e=this.controls,t=this.calendartype,i=new RegExp("\\bday\\b","g");let n="",a="";e&&t&&(r.includes(e,"navigation")&&(n+=" prev next"),r.includes(e,"today")&&(n+=" today"),r.includes(e,"year")&&(a+=t===f?"listYear":""),r.includes(e,"month")&&(a+=t===f?" listMonth":" dayGridMonth"),r.includes(e,"week")&&(a+=t===g?" dayGridWeek":t===f?" listWeek":" timeGridWeek"),i.test(e)&&(a+=t===g?" dayGridDay":t===f?" listDay":" timeGridDay")," "===n.charAt(0)&&(n=n.substring(1))," "===a.charAt(0)&&(a=a.substring(1)),r.extend(this.calendarOptions.calendar.headerToolbar,{start:n,end:a}))}constructor(e,t,i){super(e,O,i),this.controls="navigation, today, year, month, week, day",this.eventSources=[],this.dataSetEvents={events:[]},this.changesStack=[],this.calendarOptions={calendar:{height:600,eventSources:this.eventSources,editable:!0,locale:s.getSessionStorageItem("selectedLocale")||"en",selectable:!1,longPressDelay:s.isMobile()?1:1e3,headerToolbar:m,nextDayThreshold:A,views:{month:{dayMaxEventsRow:!0}},unselectAuto:!1,eventDrop:this.eventDrop.bind(this),eventResizeStart:this.onEventChangeStart.bind(this),eventDragStart:this.onEventChangeStart.bind(this),eventResize:this.eventResize.bind(this),eventClick:this.eventClick.bind(this),select:this.select.bind(this),eventDidMount:this.eventDidMount.bind(this),viewDidMount:this.viewDidMount.bind(this),datesSet:this.datesSet.bind(this),dateClick:this.dateClick.bind(this)}},this.dayClass=[],this.eventSources.push(this.dataSetEvents);const n=window.FullCalendar;n.__wm_locale_initialized||(t.initCalendarLocale(),n.__wm_locale_initialized=!0),this.cancelLocaleChangeSubscription=this.getAppInstance().subscribe("locale-changed",(e=>{this.setLocale(),this.applyCalendarOptions("option","locale",e.fullCalendar||"en"),this.redraw()}))}ngOnInit(){super.ngOnInit(),o.styler(this.nativeElement,this,o.APPLY_STYLES_TYPE.CONTAINER,["height"]),this.setLocale()}onStyleChange(e,t,i){super.onStyleChange(e,t,i),"height"===e&&(this.calendarOptions.calendar.height=this.calculateHeight(t),this.updateCalendarOptions("option","height",this.calendarOptions.calendar.height))}onPropertyChange(e,t,i){switch(super.onPropertyChange(e,t,i),e){case"selectionmode":t!==P?(this.calendarOptions.calendar.selectable=!0,this.updateCalendarOptions("option","selectable",!0),t===I?(this.calendarOptions.calendar.selectConstraint={startTime:"00:00",endTime:"24:00"},this.updateCalendarOptions("option","selectConstraint",this.calendarOptions.calendar.selectConstraint)):this.updateCalendarOptions("option","selectConstraint",{})):(this.calendarOptions.calendar.selectable=!1,this.updateCalendarOptions("option","selectable",!1));break;case"view":"month"!==t||this.calendartype===f?this.calendarOptions.calendar.defaultView=this.calendartype+r.capitalize(t):this.calendarOptions.calendar.defaultView=t,this.updateCalendarOptions("changeView",this.calendarOptions.calendar.defaultView);break;case"calendartype":this.calendartype=t||"dayGrid";case"controls":this.updateCalendarHeaderOptions();break;case"dataset":let e;this.dataset=t,e=o.createArrayFrom(s.getClonedObject(t)),e=this.constructCalendarDataset(e),this.dataSetEvents.events=e.filter((e=>{if(e.start=e.start||e.end,e.start)return!0})),this.renderEventDataSet();break;case"show":this.$fullCalendar?.changeView(this.getViewType(this.view?this.view:"dayGridMonth"))}}calculateHeight(e){const t=$(this.nativeElement).parent(),i=e||"650px";let n,a=t.css("height");return r.includes(i,"%")?(r.includes(a,"%")&&(a=t.height()),n=parseInt(a,10)*Number(i.replace(/\%/g,""))/100):n=parseInt(i,10),this.calendarOptions.calendar.views.month.eventLimit=parseInt(""+n/200,10)+1,n}ngAfterViewInit(){super.ngAfterViewInit();const e=this._calendar.nativeElement,t=new window.FullCalendar.Calendar(e,this.calendarOptions.calendar);this.$fullCalendar=t,this.invokeEventCallback("beforerender",{$event:{}}),t.render(),this.changesStack.length&&(this.changesStack.forEach((e=>{this.applyCalendarOptions(e.operationType,e.argumentKey,e.argumentValue)})),this.changesStack.length=0),setTimeout((()=>{this.$fullCalendar.changeView(this.getViewType(this.view?this.view:"dayGridMonth"))}),50)}constructCalendarDataset(e){const t={title:this.eventtitle||"title",allDay:this.eventallday||"allday",start:this.eventstart||"start",end:this.eventend||"end",className:this.eventclass||"className"};return e.forEach((e=>{e._eventMetadata=r.clone(e),r.isEmpty(e._eventMetadata.url)&&delete e._eventMetadata.url,r.isEmpty(e.url)&&delete e.url,r.mapKeys(t,((t,i)=>{let n;n="title"===i?o.getEvaluatedData(e,{expression:t},this.viewParent):"allDay"===i?!!r.get(e,t):r.get(e,t),n&&(e[i]=n)}))})),e}setLocale(){const e=r.get(this.appLocale,"LABEL_CALENDAR_YEAR")||v,t=r.get(this.appLocale,"LABEL_CALENDAR_MONTH")||b,i=r.get(this.appLocale,"LABEL_CALENDAR_WEEK")||y,n=r.get(this.appLocale,"LABEL_CALENDAR_DAY")||w,a=r.get(this.appLocale,"LABEL_CALENDAR_TODAY")||C;this.calendarOptions.calendar.buttonText={year:e,month:t,week:i,day:n,today:a,listYear:e,listMonth:t,listWeek:i,listDay:n}}overrideDefaults(e){r.isObject(e)&&Object.entries(e).map((e=>this.$fullCalendar.setOption(e[0],e[1])))}updateCalendarOptions(e,t,i){this.$fullCalendar?this.applyCalendarOptions(e,t,i):this.changesStack.push({operationType:e,argumentKey:t,argumentValue:i})}redraw(){this.updateCalendarOptions("render"),this.$fullCalendar?.changeView(this.getViewType(this.view?this.view:"dayGridMonth"))}onValueChange(e){this.proxyModel=e;const t=this.proxyModel&&moment(this.proxyModel).startOf("day").format("YYYY/MM/DD"),i=this.eventData[t],n=moment(this.proxyModel),a=moment(this.proxyModel).endOf("day");this.selecteddata=i,this.selecteddates={start:moment(t).valueOf(),end:moment(t).endOf("day").valueOf()},this.calendarOptions.calendar.select(n.valueOf(),a.valueOf(),{},this,i),i&&this.calendarOptions.calendar.eventClick(i,{},this)}addEventSource(e){if(r.isEmpty(e))console.warn("addEventSource method requires an object as a parameter.");else if("google"===e.source){if(!e.googleCalendarApiKey||!e.googleCalendarId)return void console.warn("For google calendar integration, 'googleCalendarApiKey' and 'googleCalendarId' should be passed in the parameter object.");this.$fullCalendar.setOption("googleCalendarApiKey",e.googleCalendarApiKey),this.$fullCalendar.addEventSource({googleCalendarId:e.googleCalendarId})}}getViewType(e){const t=this.calendartype,i=this.view;let n;return n="month"===i?t===f?"listMonth":"dayGridMonth":"week"===i?t===g?"dayGridWeek":t===f?"listWeek":"timeGridWeek":"day"===i?t===g?"dayGridDay":t===f?"listDay":"timeGridDay":"year"===i?t===f?"listYear":"":e,n}applyCalendarOptions(e,t,i){switch(e){case"render":this.$fullCalendar.render();break;case"option":this.$fullCalendar.setOption(t,i);break;case"changeView":const e=this.getViewType(t);this.$fullCalendar.changeView(e)}}renderEventDataSet(){const e=this;this.$fullCalendar.batchRendering((function(){const t=e.$fullCalendar.getEvents();r.each(t,(function(t){e.$fullCalendar.getEventById(t.id).remove()})),r.each(e.dataSetEvents.events,(function(t){e.$fullCalendar.addEvent(t)}))}))}ngOnDestroy(){this.cancelLocaleChangeSubscription&&this.cancelLocaleChangeSubscription()}static{this.\u0275fac=function(e){return new(e||T)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject(d.AbstractI18nService),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:T,selectors:[["","wmCalendar",""]],viewQuery:function(e,t){if(1&e&&(c.\u0275\u0275viewQuery(p,5),c.\u0275\u0275viewQuery(u,5)),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t._calendar=e.first),c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t._datepicker=e.first)}},features:[c.\u0275\u0275ProvidersFeature([o.provideAsWidgetRef(T)]),c.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:2,vars:1,consts:[["calendar",""]],template:function(e,t){1&e&&c.\u0275\u0275element(0,"div",null,0),2&e&&c.\u0275\u0275attribute("aria-label",t.view||"month")},styles:['.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed}.fc-unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.fc{display:flex;flex-direction:column;font-size:1em}.fc,.fc *,.fc *:before,.fc *:after{box-sizing:border-box}.fc table{border-collapse:collapse;border-spacing:0;font-size:1em}.fc th{text-align:center}.fc th,.fc td{vertical-align:top;padding:0}.fc a[data-navlink]{cursor:pointer}.fc a[data-navlink]:hover{text-decoration:underline}.fc-direction-ltr{direction:ltr;text-align:left}.fc-direction-rtl{direction:rtl;text-align:right}.fc-theme-standard td,.fc-theme-standard th{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd)}.fc-liquid-hack td,.fc-liquid-hack th{position:relative}@font-face{font-family:fcicons;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfAAAAC8AAAAYGNtYXAXVtKNAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZgYydxIAAAF4AAAFNGhlYWQUJ7cIAAAGrAAAADZoaGVhB20DzAAABuQAAAAkaG10eCIABhQAAAcIAAAALGxvY2ED4AU6AAAHNAAAABhtYXhwAA8AjAAAB0wAAAAgbmFtZXsr690AAAdsAAABhnBvc3QAAwAAAAAI9AAAACAAAwPAAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qb//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAWIAjQKeAskAEwAAJSc3NjQnJiIHAQYUFwEWMjc2NCcCnuLiDQ0MJAz/AA0NAQAMJAwNDcni4gwjDQwM/wANIwz/AA0NDCMNAAAAAQFiAI0CngLJABMAACUBNjQnASYiBwYUHwEHBhQXFjI3AZ4BAA0N/wAMJAwNDeLiDQ0MJAyNAQAMIw0BAAwMDSMM4uINIwwNDQAAAAIA4gC3Ax4CngATACcAACUnNzY0JyYiDwEGFB8BFjI3NjQnISc3NjQnJiIPAQYUHwEWMjc2NCcB87e3DQ0MIw3VDQ3VDSMMDQ0BK7e3DQ0MJAzVDQ3VDCQMDQ3zuLcMJAwNDdUNIwzWDAwNIwy4twwkDA0N1Q0jDNYMDA0jDAAAAgDiALcDHgKeABMAJwAAJTc2NC8BJiIHBhQfAQcGFBcWMjchNzY0LwEmIgcGFB8BBwYUFxYyNwJJ1Q0N1Q0jDA0Nt7cNDQwjDf7V1Q0N1QwkDA0Nt7cNDQwkDLfWDCMN1Q0NDCQMt7gMIw0MDNYMIw3VDQ0MJAy3uAwjDQwMAAADAFUAAAOrA1UAMwBoAHcAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMhMjY1NCYjISIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAAVYRGRkR/qoRGRkRA1UFBAUOCQkVDAsZDf2rDRkLDBUJCA4FBQUFBQUOCQgVDAsZDQJVDRkLDBUJCQ4FBAVVAgECBQMCBwQECAX9qwQJAwQHAwMFAQICAgIBBQMDBwQDCQQCVQUIBAQHAgMFAgEC/oAZEhEZGRESGQAAAAADAFUAAAOrA1UAMwBoAIkAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMzFRQWMzI2PQEzMjY1NCYrATU0JiMiBh0BIyIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAgBkSEhmAERkZEYAZEhIZgBEZGREDVQUEBQ4JCRUMCxkN/asNGQsMFQkIDgUFBQUFBQ4JCBUMCxkNAlUNGQsMFQkJDgUEBVUCAQIFAwIHBAQIBf2rBAkDBAcDAwUBAgICAgEFAwMHBAMJBAJVBQgEBAcCAwUCAQL+gIASGRkSgBkSERmAEhkZEoAZERIZAAABAOIAjQMeAskAIAAAExcHBhQXFjI/ARcWMjc2NC8BNzY0JyYiDwEnJiIHBhQX4uLiDQ0MJAzi4gwkDA0N4uINDQwkDOLiDCQMDQ0CjeLiDSMMDQ3h4Q0NDCMN4uIMIw0MDOLiDAwNIwwAAAABAAAAAQAAa5n0y18PPPUACwQAAAAAANivOVsAAAAA2K85WwAAAAADqwNVAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAOrAAEAAAAAAAAAAAAAAAAAAAALBAAAAAAAAAAAAAAAAgAAAAQAAWIEAAFiBAAA4gQAAOIEAABVBAAAVQQAAOIAAAAAAAoAFAAeAEQAagCqAOoBngJkApoAAQAAAAsAigADAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAcAAAABAAAAAAACAAcAYAABAAAAAAADAAcANgABAAAAAAAEAAcAdQABAAAAAAAFAAsAFQABAAAAAAAGAAcASwABAAAAAAAKABoAigADAAEECQABAA4ABwADAAEECQACAA4AZwADAAEECQADAA4APQADAAEECQAEAA4AfAADAAEECQAFABYAIAADAAEECQAGAA4AUgADAAEECQAKADQApGZjaWNvbnMAZgBjAGkAYwBvAG4Ac1ZlcnNpb24gMS4wAFYAZQByAHMAaQBvAG4AIAAxAC4AMGZjaWNvbnMAZgBjAGkAYwBvAG4Ac2ZjaWNvbnMAZgBjAGkAYwBvAG4Ac1JlZ3VsYXIAUgBlAGcAdQBsAGEAcmZjaWNvbnMAZgBjAGkAYwBvAG4Ac0ZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=) format("truetype");font-weight:400;font-style:normal}.fc-icon{display:inline-block;width:1em;height:1em;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:fcicons!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fc-icon-chevron-left:before{content:"\\e900"}.fc-icon-chevron-right:before{content:"\\e901"}.fc-icon-chevrons-left:before{content:"\\e902"}.fc-icon-chevrons-right:before{content:"\\e903"}.fc-icon-minus-square:before{content:"\\e904"}.fc-icon-plus-square:before{content:"\\e905"}.fc-icon-x:before{content:"\\e906"}.fc .fc-button{border-radius:0;overflow:visible;text-transform:none;margin:0;font-family:inherit;font-size:inherit;line-height:inherit}.fc .fc-button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.fc .fc-button{-webkit-appearance:button}.fc .fc-button:not(:disabled){cursor:pointer}.fc .fc-button::-moz-focus-inner{padding:0;border-style:none}.fc .fc-button{display:inline-block;font-weight:400;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.4em .65em;font-size:1em;line-height:1.5;border-radius:.25em}.fc .fc-button:hover{text-decoration:none}.fc .fc-button:focus{outline:0;box-shadow:0 0 0 .2rem #2c3e5040}.fc .fc-button:disabled{opacity:.65}.fc .fc-button-primary{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#2c3e50;background-color:var(--fc-button-bg-color, #2C3E50);border-color:#2c3e50;border-color:var(--fc-button-border-color, #2C3E50)}.fc .fc-button-primary:hover{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#1e2b37;background-color:var(--fc-button-hover-bg-color, #1e2b37);border-color:#1a252f;border-color:var(--fc-button-hover-border-color, #1a252f)}.fc .fc-button-primary:disabled{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#2c3e50;background-color:var(--fc-button-bg-color, #2C3E50);border-color:#2c3e50;border-color:var(--fc-button-border-color, #2C3E50)}.fc .fc-button-primary:focus{box-shadow:0 0 0 .2rem #4c5b6a80}.fc .fc-button-primary:not(:disabled):active,.fc .fc-button-primary:not(:disabled).fc-button-active{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#1a252f;background-color:var(--fc-button-active-bg-color, #1a252f);border-color:#151e27;border-color:var(--fc-button-active-border-color, #151e27)}.fc .fc-button-primary:not(:disabled):active:focus,.fc .fc-button-primary:not(:disabled).fc-button-active:focus{box-shadow:0 0 0 .2rem #4c5b6a80}.fc .fc-button .fc-icon{vertical-align:middle;font-size:1.5em}.fc .fc-button-group{position:relative;display:inline-flex;vertical-align:middle}.fc .fc-button-group>.fc-button{position:relative;flex:1 1 auto}.fc .fc-button-group>.fc-button:hover{z-index:1}.fc .fc-button-group>.fc-button:focus,.fc .fc-button-group>.fc-button:active,.fc .fc-button-group>.fc-button.fc-button-active{z-index:1}.fc-direction-ltr .fc-button-group>.fc-button:not(:first-child){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.fc-direction-ltr .fc-button-group>.fc-button:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.fc-direction-rtl .fc-button-group>.fc-button:not(:first-child){margin-right:-1px;border-top-right-radius:0;border-bottom-right-radius:0}.fc-direction-rtl .fc-button-group>.fc-button:not(:last-child){border-top-left-radius:0;border-bottom-left-radius:0}.fc .fc-toolbar{display:flex;justify-content:space-between;align-items:center}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1.5em}.fc .fc-toolbar.fc-footer-toolbar{margin-top:1.5em}.fc .fc-toolbar-title{font-size:1.75em;margin:0}.fc-direction-ltr .fc-toolbar>*>:not(:first-child){margin-left:.75em}.fc-direction-rtl .fc-toolbar>*>:not(:first-child){margin-right:.75em}.fc-direction-rtl .fc-toolbar-ltr{flex-direction:row-reverse}.fc .fc-scroller{-webkit-overflow-scrolling:touch;position:relative}.fc .fc-scroller-liquid{height:100%}.fc .fc-scroller-liquid-absolute{position:absolute;inset:0}.fc .fc-scroller-harness{position:relative;overflow:hidden;direction:ltr}.fc .fc-scroller-harness-liquid{height:100%}.fc-direction-rtl .fc-scroller-harness>.fc-scroller{direction:rtl}.fc-theme-standard .fc-scrollgrid{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd)}.fc .fc-scrollgrid,.fc .fc-scrollgrid table{width:100%;table-layout:fixed}.fc .fc-scrollgrid table{border-top-style:hidden;border-left-style:hidden;border-right-style:hidden}.fc .fc-scrollgrid{border-collapse:separate;border-right-width:0;border-bottom-width:0}.fc .fc-scrollgrid-liquid{height:100%}.fc .fc-scrollgrid-section{height:1px}.fc .fc-scrollgrid-section>td{height:1px}.fc .fc-scrollgrid-section table{height:1px}.fc .fc-scrollgrid-section-liquid{height:auto}.fc .fc-scrollgrid-section-liquid>td{height:100%}.fc .fc-scrollgrid-section>*{border-top-width:0;border-left-width:0}.fc .fc-scrollgrid-section-header>*,.fc .fc-scrollgrid-section-footer>*{border-bottom-width:0}.fc .fc-scrollgrid-section-body table,.fc .fc-scrollgrid-section-footer table{border-bottom-style:hidden}.fc .fc-scrollgrid-section-sticky>*{background:#fff;background:var(--fc-page-bg-color, #fff);position:-webkit-sticky;position:sticky;z-index:2}.fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky>*{top:0}.fc .fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky>*{bottom:0}.fc .fc-scrollgrid-sticky-shim{height:1px;margin-bottom:-1px}.fc-sticky{position:-webkit-sticky;position:sticky}.fc .fc-view-harness{flex-grow:1;position:relative}.fc .fc-view-harness-active>.fc-view{position:absolute;inset:0}.fc .fc-col-header-cell-cushion{display:inline-block;padding:2px 4px}.fc .fc-bg-event,.fc .fc-non-business,.fc .fc-highlight{position:absolute;inset:0}.fc .fc-non-business{background:#d7d7d74d;background:var(--fc-non-business-color, rgba(215, 215, 215, .3))}.fc .fc-bg-event{background:#8fdf82;background:var(--fc-bg-event-color, rgb(143, 223, 130));opacity:.3;opacity:var(--fc-bg-event-opacity, .3)}.fc .fc-bg-event .fc-event-title{margin:.5em;font-size:.85em;font-size:var(--fc-small-font-size, .85em);font-style:italic}.fc .fc-highlight{background:#bce8f14d;background:var(--fc-highlight-color, rgba(188, 232, 241, .3))}.fc .fc-cell-shaded,.fc .fc-day-disabled{background:#d0d0d04d;background:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))}a.fc-event,a.fc-event:hover{text-decoration:none}.fc-event[href],.fc-event.fc-event-draggable{cursor:pointer}.fc-event .fc-event-main{position:relative;z-index:2}.fc-event-dragging:not(.fc-event-selected){opacity:.75}.fc-event-dragging.fc-event-selected{box-shadow:0 2px 7px #0000004d}.fc-event .fc-event-resizer{display:none;position:absolute;z-index:4}.fc-event:hover .fc-event-resizer,.fc-event-selected .fc-event-resizer{display:block}.fc-event-selected .fc-event-resizer{border-radius:4px;border-radius:calc(var(--fc-event-resizer-dot-total-width, 8px) / 2);border-width:1px;border-width:var(--fc-event-resizer-dot-border-width, 1px);width:8px;width:var(--fc-event-resizer-dot-total-width, 8px);height:8px;height:var(--fc-event-resizer-dot-total-width, 8px);border-style:solid;border-color:inherit;background:#fff;background:var(--fc-page-bg-color, #fff)}.fc-event-selected .fc-event-resizer:before{content:"";position:absolute;inset:-20px}.fc-event-selected{box-shadow:0 2px 5px #0003}.fc-event-selected:before{content:"";position:absolute;z-index:3;inset:0}.fc-event-selected:after{content:"";background:#00000040;background:var(--fc-event-selected-overlay-color, rgba(0, 0, 0, .25));position:absolute;z-index:1;inset:-1px}.fc-h-event{display:block;border:1px solid #3788d8;border:1px solid var(--fc-event-border-color, #3788d8);background-color:#3788d8;background-color:var(--fc-event-bg-color, #3788d8)}.fc-h-event .fc-event-main{color:#fff;color:var(--fc-event-text-color, #fff)}.fc-h-event .fc-event-main-frame{display:flex}.fc-h-event .fc-event-time{max-width:100%;overflow:hidden}.fc-h-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-width:0}.fc-h-event .fc-event-title{display:inline-block;vertical-align:top;left:0;right:0;max-width:100%;overflow:hidden}.fc-h-event.fc-event-selected:before{top:-10px;bottom:-10px}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-start),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-end){border-top-left-radius:0;border-bottom-left-radius:0;border-left-width:0}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-end),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-start){border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}.fc-h-event:not(.fc-event-selected) .fc-event-resizer{top:0;bottom:0;width:8px;width:var(--fc-event-resizer-thickness, 8px)}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end{cursor:w-resize;left:-4px;left:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start{cursor:e-resize;right:-4px;right:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-h-event.fc-event-selected .fc-event-resizer{top:50%;margin-top:-4px;margin-top:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-start,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-end{left:-4px;left:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-end,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-start{right:-4px;right:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}:root{--fc-daygrid-event-dot-width: 8px}.fc .fc-popover{position:fixed;top:0;box-shadow:0 2px 6px #00000026}.fc .fc-popover-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:3px 4px}.fc .fc-popover-title{margin:0 2px}.fc .fc-popover-close{cursor:pointer;opacity:.65;font-size:1.1em}.fc-theme-standard .fc-popover{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd);background:#fff;background:var(--fc-page-bg-color, #fff)}.fc-theme-standard .fc-popover-header{background:#d0d0d04d;background:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))}.fc-daygrid-day-frame:before,.fc-daygrid-day-events:before,.fc-daygrid-event-harness:before{content:"";clear:both;display:table}.fc-daygrid-day-frame:after,.fc-daygrid-day-events:after,.fc-daygrid-event-harness:after{content:"";clear:both;display:table}.fc .fc-daygrid-body{position:relative;z-index:1}.fc .fc-daygrid-day.fc-day-today{background-color:#ffdc2826;background-color:var(--fc-today-bg-color, rgba(255, 220, 40, .15))}.fc .fc-daygrid-day-frame{position:relative;min-height:100%}.fc .fc-daygrid-day-top{display:flex;flex-direction:row-reverse}.fc .fc-day-other .fc-daygrid-day-top{opacity:.3}.fc .fc-daygrid-day-number{position:relative;z-index:4;padding:4px}.fc .fc-daygrid-day-events{margin-top:1px}.fc .fc-daygrid-body-balanced .fc-daygrid-day-events{position:absolute;left:0;right:0}.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events{position:relative;min-height:2em}.fc .fc-daygrid-body-natural .fc-daygrid-day-events{margin-bottom:1em}.fc .fc-daygrid-event-harness{position:relative}.fc .fc-daygrid-event-harness-abs{position:absolute;top:0;left:0;right:0}.fc .fc-daygrid-bg-harness{position:absolute;top:0;bottom:0}.fc .fc-daygrid-day-bg .fc-non-business{z-index:1}.fc .fc-daygrid-day-bg .fc-bg-event{z-index:2}.fc .fc-daygrid-day-bg .fc-highlight{z-index:3}.fc .fc-daygrid-event{z-index:6;margin-top:1px}.fc .fc-daygrid-event.fc-event-mirror{z-index:7}.fc .fc-daygrid-day-bottom{font-size:.85em;margin:2px 3px 0}.fc .fc-daygrid-more-link{position:relative;z-index:4;cursor:pointer}.fc .fc-daygrid-week-number{position:absolute;z-index:5;top:0;padding:2px;min-width:1.5em;text-align:center;background-color:#d0d0d04d;background-color:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3));color:gray;color:var(--fc-neutral-text-color, #808080)}.fc .fc-more-popover{z-index:8}.fc .fc-more-popover .fc-popover-body{min-width:220px;padding:10px}.fc-direction-ltr .fc-daygrid-event.fc-event-start,.fc-direction-rtl .fc-daygrid-event.fc-event-end{margin-left:2px}.fc-direction-ltr .fc-daygrid-event.fc-event-end,.fc-direction-rtl .fc-daygrid-event.fc-event-start{margin-right:2px}.fc-direction-ltr .fc-daygrid-week-number{left:0;border-radius:0 0 3px}.fc-direction-rtl .fc-daygrid-week-number{right:0;border-radius:0 0 0 3px}.fc-liquid-hack .fc-daygrid-day-frame{position:static}.fc-daygrid-event{position:relative;white-space:nowrap;border-radius:3px;font-size:.85em;font-size:var(--fc-small-font-size, .85em)}.fc-daygrid-block-event .fc-event-time{font-weight:700}.fc-daygrid-block-event .fc-event-time,.fc-daygrid-block-event .fc-event-title{padding:1px}.fc-daygrid-dot-event{display:flex;align-items:center;padding:2px 0}.fc-daygrid-dot-event .fc-event-title{flex-grow:1;flex-shrink:1;min-width:0;overflow:hidden;font-weight:700}.fc-daygrid-dot-event:hover,.fc-daygrid-dot-event.fc-event-mirror{background:#0000001a}.fc-daygrid-dot-event.fc-event-selected:before{top:-10px;bottom:-10px}.fc-daygrid-event-dot{margin:0 4px;box-sizing:content-box;width:0;height:0;border:4px solid #3788d8;border:calc(var(--fc-daygrid-event-dot-width, 8px) / 2) solid var(--fc-event-border-color, #3788d8);border-radius:4px;border-radius:calc(var(--fc-daygrid-event-dot-width, 8px) / 2)}.fc-direction-ltr .fc-daygrid-event .fc-event-time{margin-right:3px}.fc-direction-rtl .fc-daygrid-event .fc-event-time{margin-left:3px}.fc-v-event{display:block;border:1px solid #3788d8;border:1px solid var(--fc-event-border-color, #3788d8);background-color:#3788d8;background-color:var(--fc-event-bg-color, #3788d8)}.fc-v-event .fc-event-main{color:#fff;color:var(--fc-event-text-color, #fff);height:100%}.fc-v-event .fc-event-main-frame{height:100%;display:flex;flex-direction:column}.fc-v-event .fc-event-time{flex-grow:0;flex-shrink:0;max-height:100%;overflow:hidden}.fc-v-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-height:0}.fc-v-event .fc-event-title{top:0;bottom:0;max-height:100%;overflow:hidden}.fc-v-event:not(.fc-event-start){border-top-width:0;border-top-left-radius:0;border-top-right-radius:0}.fc-v-event:not(.fc-event-end){border-bottom-width:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.fc-v-event.fc-event-selected:before{left:-10px;right:-10px}.fc-v-event .fc-event-resizer-start{cursor:n-resize}.fc-v-event .fc-event-resizer-end{cursor:s-resize}.fc-v-event:not(.fc-event-selected) .fc-event-resizer{height:8px;height:var(--fc-event-resizer-thickness, 8px);left:0;right:0}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start{top:-4px;top:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end{bottom:-4px;bottom:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-v-event.fc-event-selected .fc-event-resizer{left:50%;margin-left:-4px;margin-left:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-v-event.fc-event-selected .fc-event-resizer-start{top:-4px;top:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-v-event.fc-event-selected .fc-event-resizer-end{bottom:-4px;bottom:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc .fc-timegrid .fc-daygrid-body{z-index:2}.fc .fc-timegrid-divider{padding:0 0 2px}.fc .fc-timegrid-body{position:relative;z-index:1;min-height:100%}.fc .fc-timegrid-axis-chunk{position:relative}.fc .fc-timegrid-axis-chunk>table{position:relative;z-index:1}.fc .fc-timegrid-slots{position:relative;z-index:1}.fc .fc-timegrid-slot{height:1.5em;border-bottom:0}.fc .fc-timegrid-slot:empty:before{content:"\\a0"}.fc .fc-timegrid-slot-minor{border-top-style:dotted}.fc .fc-timegrid-slot-label-cushion{display:inline-block;white-space:nowrap}.fc .fc-timegrid-slot-label{vertical-align:middle}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion{padding:0 4px}.fc .fc-timegrid-axis-frame-liquid{height:100%}.fc .fc-timegrid-axis-frame{overflow:hidden;display:flex;align-items:center;justify-content:flex-end}.fc .fc-timegrid-axis-cushion{max-width:60px;flex-shrink:0}.fc-direction-ltr .fc-timegrid-slot-label-frame{text-align:right}.fc-direction-rtl .fc-timegrid-slot-label-frame{text-align:left}.fc-liquid-hack .fc-timegrid-axis-frame-liquid{height:auto;position:absolute;inset:0}.fc .fc-timegrid-col.fc-day-today{background-color:#ffdc2826;background-color:var(--fc-today-bg-color, rgba(255, 220, 40, .15))}.fc .fc-timegrid-col-frame{min-height:100%;position:relative}.fc-liquid-hack .fc-timegrid-col-frame{height:auto;position:absolute;inset:0}.fc-media-screen .fc-timegrid-cols{position:absolute;inset:0}.fc-media-screen .fc-timegrid-cols>table{height:100%}.fc-media-screen .fc-timegrid-col-bg,.fc-media-screen .fc-timegrid-col-events,.fc-media-screen .fc-timegrid-now-indicator-container{position:absolute;top:0;left:0;right:0}.fc-media-screen .fc-timegrid-event-harness{position:absolute}.fc .fc-timegrid-col-bg{z-index:2}.fc .fc-timegrid-col-bg .fc-non-business{z-index:1}.fc .fc-timegrid-col-bg .fc-bg-event{z-index:2}.fc .fc-timegrid-col-bg .fc-highlight{z-index:3}.fc .fc-timegrid-bg-harness{position:absolute;left:0;right:0}.fc .fc-timegrid-col-events{z-index:3}.fc .fc-timegrid-now-indicator-container{bottom:0;overflow:hidden}.fc-direction-ltr .fc-timegrid-col-events{margin:0 2.5% 0 2px}.fc-direction-rtl .fc-timegrid-col-events{margin:0 2px 0 2.5%}.fc-timegrid-event-harness-inset .fc-timegrid-event,.fc-timegrid-event.fc-event-mirror{box-shadow:0 0 0 1px #fff;box-shadow:0 0 0 1px var(--fc-page-bg-color, #fff)}.fc-timegrid-event{font-size:.85em;font-size:var(--fc-small-font-size, .85em);border-radius:3px}.fc-timegrid-event .fc-event-main{padding:1px 1px 0}.fc-timegrid-event .fc-event-time{white-space:nowrap;font-size:.85em;font-size:var(--fc-small-font-size, .85em);margin-bottom:1px}.fc-timegrid-event-condensed .fc-event-main-frame{flex-direction:row;overflow:hidden}.fc-timegrid-event-condensed .fc-event-time:after{content:"\\a0-\\a0"}.fc-timegrid-event-condensed .fc-event-title{font-size:.85em;font-size:var(--fc-small-font-size, .85em)}.fc-media-screen .fc-timegrid-event{position:absolute;inset:0 0 1px}.fc .fc-timegrid-now-indicator-line{position:absolute;z-index:4;left:0;right:0;border-style:solid;border-color:red;border-color:var(--fc-now-indicator-color, red);border-width:1px 0 0}.fc .fc-timegrid-now-indicator-arrow{position:absolute;z-index:4;margin-top:-5px;border-style:solid;border-color:red;border-color:var(--fc-now-indicator-color, red)}.fc-direction-ltr .fc-timegrid-now-indicator-arrow{left:0;border-width:5px 0 5px 6px;border-top-color:transparent;border-bottom-color:transparent}.fc-direction-rtl .fc-timegrid-now-indicator-arrow{right:0;border-width:5px 6px 5px 0;border-top-color:transparent;border-bottom-color:transparent}:root{--fc-list-event-dot-width: 10px;--fc-list-event-hover-bg-color: #f5f5f5}.fc-theme-standard .fc-list{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd)}.fc .fc-list-empty{background-color:#d0d0d04d;background-color:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3));height:100%;display:flex;justify-content:center;align-items:center}.fc .fc-list-empty-cushion{margin:5em 0}.fc .fc-list-table{width:100%;border-style:hidden}.fc .fc-list-table tr>*{border-left:0;border-right:0}.fc .fc-list-sticky .fc-list-day>*{position:-webkit-sticky;position:sticky;top:0;background:#fff;background:var(--fc-page-bg-color, #fff)}.fc .fc-list-table th{padding:0}.fc .fc-list-table td,.fc .fc-list-day-cushion{padding:8px 14px}.fc .fc-list-day-cushion:after{content:"";clear:both;display:table}.fc-theme-standard .fc-list-day-cushion{background-color:#d0d0d04d;background-color:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))}.fc-direction-ltr .fc-list-day-text,.fc-direction-rtl .fc-list-day-side-text{float:left}.fc-direction-ltr .fc-list-day-side-text,.fc-direction-rtl .fc-list-day-text{float:right}.fc-direction-ltr .fc-list-table .fc-list-event-graphic{padding-right:0}.fc-direction-rtl .fc-list-table .fc-list-event-graphic{padding-left:0}.fc .fc-list-event.fc-event-forced-url{cursor:pointer}.fc .fc-list-event:hover td{background-color:#f5f5f5;background-color:var(--fc-list-event-hover-bg-color, #f5f5f5)}.fc .fc-list-event-graphic,.fc .fc-list-event-time{white-space:nowrap;width:1px}.fc .fc-list-event-dot{display:inline-block;box-sizing:content-box;width:0;height:0;border:5px solid #3788d8;border:calc(var(--fc-list-event-dot-width, 10px) / 2) solid var(--fc-event-border-color, #3788d8);border-radius:5px;border-radius:calc(var(--fc-list-event-dot-width, 10px) / 2)}.fc .fc-list-event-title a{color:inherit;text-decoration:none}.fc .fc-list-event.fc-event-forced-url:hover a{text-decoration:underline}.fc-theme-bootstrap a:not([href]){color:inherit}\n'],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(T,[{type:t.Component,args:[{selector:"[wmCalendar]",providers:[o.provideAsWidgetRef(T)],encapsulation:t.ViewEncapsulation.None,template:"<div #calendar [attr.aria-label]=\"view || 'month'\"></div>\n",styles:['.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed}.fc-unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.fc{display:flex;flex-direction:column;font-size:1em}.fc,.fc *,.fc *:before,.fc *:after{box-sizing:border-box}.fc table{border-collapse:collapse;border-spacing:0;font-size:1em}.fc th{text-align:center}.fc th,.fc td{vertical-align:top;padding:0}.fc a[data-navlink]{cursor:pointer}.fc a[data-navlink]:hover{text-decoration:underline}.fc-direction-ltr{direction:ltr;text-align:left}.fc-direction-rtl{direction:rtl;text-align:right}.fc-theme-standard td,.fc-theme-standard th{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd)}.fc-liquid-hack td,.fc-liquid-hack th{position:relative}@font-face{font-family:fcicons;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfAAAAC8AAAAYGNtYXAXVtKNAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZgYydxIAAAF4AAAFNGhlYWQUJ7cIAAAGrAAAADZoaGVhB20DzAAABuQAAAAkaG10eCIABhQAAAcIAAAALGxvY2ED4AU6AAAHNAAAABhtYXhwAA8AjAAAB0wAAAAgbmFtZXsr690AAAdsAAABhnBvc3QAAwAAAAAI9AAAACAAAwPAAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qb//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAWIAjQKeAskAEwAAJSc3NjQnJiIHAQYUFwEWMjc2NCcCnuLiDQ0MJAz/AA0NAQAMJAwNDcni4gwjDQwM/wANIwz/AA0NDCMNAAAAAQFiAI0CngLJABMAACUBNjQnASYiBwYUHwEHBhQXFjI3AZ4BAA0N/wAMJAwNDeLiDQ0MJAyNAQAMIw0BAAwMDSMM4uINIwwNDQAAAAIA4gC3Ax4CngATACcAACUnNzY0JyYiDwEGFB8BFjI3NjQnISc3NjQnJiIPAQYUHwEWMjc2NCcB87e3DQ0MIw3VDQ3VDSMMDQ0BK7e3DQ0MJAzVDQ3VDCQMDQ3zuLcMJAwNDdUNIwzWDAwNIwy4twwkDA0N1Q0jDNYMDA0jDAAAAgDiALcDHgKeABMAJwAAJTc2NC8BJiIHBhQfAQcGFBcWMjchNzY0LwEmIgcGFB8BBwYUFxYyNwJJ1Q0N1Q0jDA0Nt7cNDQwjDf7V1Q0N1QwkDA0Nt7cNDQwkDLfWDCMN1Q0NDCQMt7gMIw0MDNYMIw3VDQ0MJAy3uAwjDQwMAAADAFUAAAOrA1UAMwBoAHcAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMhMjY1NCYjISIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAAVYRGRkR/qoRGRkRA1UFBAUOCQkVDAsZDf2rDRkLDBUJCA4FBQUFBQUOCQgVDAsZDQJVDRkLDBUJCQ4FBAVVAgECBQMCBwQECAX9qwQJAwQHAwMFAQICAgIBBQMDBwQDCQQCVQUIBAQHAgMFAgEC/oAZEhEZGRESGQAAAAADAFUAAAOrA1UAMwBoAIkAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMzFRQWMzI2PQEzMjY1NCYrATU0JiMiBh0BIyIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAgBkSEhmAERkZEYAZEhIZgBEZGREDVQUEBQ4JCRUMCxkN/asNGQsMFQkIDgUFBQUFBQ4JCBUMCxkNAlUNGQsMFQkJDgUEBVUCAQIFAwIHBAQIBf2rBAkDBAcDAwUBAgICAgEFAwMHBAMJBAJVBQgEBAcCAwUCAQL+gIASGRkSgBkSERmAEhkZEoAZERIZAAABAOIAjQMeAskAIAAAExcHBhQXFjI/ARcWMjc2NC8BNzY0JyYiDwEnJiIHBhQX4uLiDQ0MJAzi4gwkDA0N4uINDQwkDOLiDCQMDQ0CjeLiDSMMDQ3h4Q0NDCMN4uIMIw0MDOLiDAwNIwwAAAABAAAAAQAAa5n0y18PPPUACwQAAAAAANivOVsAAAAA2K85WwAAAAADqwNVAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAOrAAEAAAAAAAAAAAAAAAAAAAALBAAAAAAAAAAAAAAAAgAAAAQAAWIEAAFiBAAA4gQAAOIEAABVBAAAVQQAAOIAAAAAAAoAFAAeAEQAagCqAOoBngJkApoAAQAAAAsAigADAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAcAAAABAAAAAAACAAcAYAABAAAAAAADAAcANgABAAAAAAAEAAcAdQABAAAAAAAFAAsAFQABAAAAAAAGAAcASwABAAAAAAAKABoAigADAAEECQABAA4ABwADAAEECQACAA4AZwADAAEECQADAA4APQADAAEECQAEAA4AfAADAAEECQAFABYAIAADAAEECQAGAA4AUgADAAEECQAKADQApGZjaWNvbnMAZgBjAGkAYwBvAG4Ac1ZlcnNpb24gMS4wAFYAZQByAHMAaQBvAG4AIAAxAC4AMGZjaWNvbnMAZgBjAGkAYwBvAG4Ac2ZjaWNvbnMAZgBjAGkAYwBvAG4Ac1JlZ3VsYXIAUgBlAGcAdQBsAGEAcmZjaWNvbnMAZgBjAGkAYwBvAG4Ac0ZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=) format("truetype");font-weight:400;font-style:normal}.fc-icon{display:inline-block;width:1em;height:1em;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:fcicons!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fc-icon-chevron-left:before{content:"\\e900"}.fc-icon-chevron-right:before{content:"\\e901"}.fc-icon-chevrons-left:before{content:"\\e902"}.fc-icon-chevrons-right:before{content:"\\e903"}.fc-icon-minus-square:before{content:"\\e904"}.fc-icon-plus-square:before{content:"\\e905"}.fc-icon-x:before{content:"\\e906"}.fc .fc-button{border-radius:0;overflow:visible;text-transform:none;margin:0;font-family:inherit;font-size:inherit;line-height:inherit}.fc .fc-button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.fc .fc-button{-webkit-appearance:button}.fc .fc-button:not(:disabled){cursor:pointer}.fc .fc-button::-moz-focus-inner{padding:0;border-style:none}.fc .fc-button{display:inline-block;font-weight:400;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.4em .65em;font-size:1em;line-height:1.5;border-radius:.25em}.fc .fc-button:hover{text-decoration:none}.fc .fc-button:focus{outline:0;box-shadow:0 0 0 .2rem #2c3e5040}.fc .fc-button:disabled{opacity:.65}.fc .fc-button-primary{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#2c3e50;background-color:var(--fc-button-bg-color, #2C3E50);border-color:#2c3e50;border-color:var(--fc-button-border-color, #2C3E50)}.fc .fc-button-primary:hover{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#1e2b37;background-color:var(--fc-button-hover-bg-color, #1e2b37);border-color:#1a252f;border-color:var(--fc-button-hover-border-color, #1a252f)}.fc .fc-button-primary:disabled{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#2c3e50;background-color:var(--fc-button-bg-color, #2C3E50);border-color:#2c3e50;border-color:var(--fc-button-border-color, #2C3E50)}.fc .fc-button-primary:focus{box-shadow:0 0 0 .2rem #4c5b6a80}.fc .fc-button-primary:not(:disabled):active,.fc .fc-button-primary:not(:disabled).fc-button-active{color:#fff;color:var(--fc-button-text-color, #fff);background-color:#1a252f;background-color:var(--fc-button-active-bg-color, #1a252f);border-color:#151e27;border-color:var(--fc-button-active-border-color, #151e27)}.fc .fc-button-primary:not(:disabled):active:focus,.fc .fc-button-primary:not(:disabled).fc-button-active:focus{box-shadow:0 0 0 .2rem #4c5b6a80}.fc .fc-button .fc-icon{vertical-align:middle;font-size:1.5em}.fc .fc-button-group{position:relative;display:inline-flex;vertical-align:middle}.fc .fc-button-group>.fc-button{position:relative;flex:1 1 auto}.fc .fc-button-group>.fc-button:hover{z-index:1}.fc .fc-button-group>.fc-button:focus,.fc .fc-button-group>.fc-button:active,.fc .fc-button-group>.fc-button.fc-button-active{z-index:1}.fc-direction-ltr .fc-button-group>.fc-button:not(:first-child){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.fc-direction-ltr .fc-button-group>.fc-button:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.fc-direction-rtl .fc-button-group>.fc-button:not(:first-child){margin-right:-1px;border-top-right-radius:0;border-bottom-right-radius:0}.fc-direction-rtl .fc-button-group>.fc-button:not(:last-child){border-top-left-radius:0;border-bottom-left-radius:0}.fc .fc-toolbar{display:flex;justify-content:space-between;align-items:center}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1.5em}.fc .fc-toolbar.fc-footer-toolbar{margin-top:1.5em}.fc .fc-toolbar-title{font-size:1.75em;margin:0}.fc-direction-ltr .fc-toolbar>*>:not(:first-child){margin-left:.75em}.fc-direction-rtl .fc-toolbar>*>:not(:first-child){margin-right:.75em}.fc-direction-rtl .fc-toolbar-ltr{flex-direction:row-reverse}.fc .fc-scroller{-webkit-overflow-scrolling:touch;position:relative}.fc .fc-scroller-liquid{height:100%}.fc .fc-scroller-liquid-absolute{position:absolute;inset:0}.fc .fc-scroller-harness{position:relative;overflow:hidden;direction:ltr}.fc .fc-scroller-harness-liquid{height:100%}.fc-direction-rtl .fc-scroller-harness>.fc-scroller{direction:rtl}.fc-theme-standard .fc-scrollgrid{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd)}.fc .fc-scrollgrid,.fc .fc-scrollgrid table{width:100%;table-layout:fixed}.fc .fc-scrollgrid table{border-top-style:hidden;border-left-style:hidden;border-right-style:hidden}.fc .fc-scrollgrid{border-collapse:separate;border-right-width:0;border-bottom-width:0}.fc .fc-scrollgrid-liquid{height:100%}.fc .fc-scrollgrid-section{height:1px}.fc .fc-scrollgrid-section>td{height:1px}.fc .fc-scrollgrid-section table{height:1px}.fc .fc-scrollgrid-section-liquid{height:auto}.fc .fc-scrollgrid-section-liquid>td{height:100%}.fc .fc-scrollgrid-section>*{border-top-width:0;border-left-width:0}.fc .fc-scrollgrid-section-header>*,.fc .fc-scrollgrid-section-footer>*{border-bottom-width:0}.fc .fc-scrollgrid-section-body table,.fc .fc-scrollgrid-section-footer table{border-bottom-style:hidden}.fc .fc-scrollgrid-section-sticky>*{background:#fff;background:var(--fc-page-bg-color, #fff);position:-webkit-sticky;position:sticky;z-index:2}.fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky>*{top:0}.fc .fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky>*{bottom:0}.fc .fc-scrollgrid-sticky-shim{height:1px;margin-bottom:-1px}.fc-sticky{position:-webkit-sticky;position:sticky}.fc .fc-view-harness{flex-grow:1;position:relative}.fc .fc-view-harness-active>.fc-view{position:absolute;inset:0}.fc .fc-col-header-cell-cushion{display:inline-block;padding:2px 4px}.fc .fc-bg-event,.fc .fc-non-business,.fc .fc-highlight{position:absolute;inset:0}.fc .fc-non-business{background:#d7d7d74d;background:var(--fc-non-business-color, rgba(215, 215, 215, .3))}.fc .fc-bg-event{background:#8fdf82;background:var(--fc-bg-event-color, rgb(143, 223, 130));opacity:.3;opacity:var(--fc-bg-event-opacity, .3)}.fc .fc-bg-event .fc-event-title{margin:.5em;font-size:.85em;font-size:var(--fc-small-font-size, .85em);font-style:italic}.fc .fc-highlight{background:#bce8f14d;background:var(--fc-highlight-color, rgba(188, 232, 241, .3))}.fc .fc-cell-shaded,.fc .fc-day-disabled{background:#d0d0d04d;background:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))}a.fc-event,a.fc-event:hover{text-decoration:none}.fc-event[href],.fc-event.fc-event-draggable{cursor:pointer}.fc-event .fc-event-main{position:relative;z-index:2}.fc-event-dragging:not(.fc-event-selected){opacity:.75}.fc-event-dragging.fc-event-selected{box-shadow:0 2px 7px #0000004d}.fc-event .fc-event-resizer{display:none;position:absolute;z-index:4}.fc-event:hover .fc-event-resizer,.fc-event-selected .fc-event-resizer{display:block}.fc-event-selected .fc-event-resizer{border-radius:4px;border-radius:calc(var(--fc-event-resizer-dot-total-width, 8px) / 2);border-width:1px;border-width:var(--fc-event-resizer-dot-border-width, 1px);width:8px;width:var(--fc-event-resizer-dot-total-width, 8px);height:8px;height:var(--fc-event-resizer-dot-total-width, 8px);border-style:solid;border-color:inherit;background:#fff;background:var(--fc-page-bg-color, #fff)}.fc-event-selected .fc-event-resizer:before{content:"";position:absolute;inset:-20px}.fc-event-selected{box-shadow:0 2px 5px #0003}.fc-event-selected:before{content:"";position:absolute;z-index:3;inset:0}.fc-event-selected:after{content:"";background:#00000040;background:var(--fc-event-selected-overlay-color, rgba(0, 0, 0, .25));position:absolute;z-index:1;inset:-1px}.fc-h-event{display:block;border:1px solid #3788d8;border:1px solid var(--fc-event-border-color, #3788d8);background-color:#3788d8;background-color:var(--fc-event-bg-color, #3788d8)}.fc-h-event .fc-event-main{color:#fff;color:var(--fc-event-text-color, #fff)}.fc-h-event .fc-event-main-frame{display:flex}.fc-h-event .fc-event-time{max-width:100%;overflow:hidden}.fc-h-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-width:0}.fc-h-event .fc-event-title{display:inline-block;vertical-align:top;left:0;right:0;max-width:100%;overflow:hidden}.fc-h-event.fc-event-selected:before{top:-10px;bottom:-10px}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-start),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-end){border-top-left-radius:0;border-bottom-left-radius:0;border-left-width:0}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-end),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-start){border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}.fc-h-event:not(.fc-event-selected) .fc-event-resizer{top:0;bottom:0;width:8px;width:var(--fc-event-resizer-thickness, 8px)}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end{cursor:w-resize;left:-4px;left:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start{cursor:e-resize;right:-4px;right:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-h-event.fc-event-selected .fc-event-resizer{top:50%;margin-top:-4px;margin-top:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-start,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-end{left:-4px;left:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-end,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-start{right:-4px;right:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}:root{--fc-daygrid-event-dot-width: 8px}.fc .fc-popover{position:fixed;top:0;box-shadow:0 2px 6px #00000026}.fc .fc-popover-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:3px 4px}.fc .fc-popover-title{margin:0 2px}.fc .fc-popover-close{cursor:pointer;opacity:.65;font-size:1.1em}.fc-theme-standard .fc-popover{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd);background:#fff;background:var(--fc-page-bg-color, #fff)}.fc-theme-standard .fc-popover-header{background:#d0d0d04d;background:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))}.fc-daygrid-day-frame:before,.fc-daygrid-day-events:before,.fc-daygrid-event-harness:before{content:"";clear:both;display:table}.fc-daygrid-day-frame:after,.fc-daygrid-day-events:after,.fc-daygrid-event-harness:after{content:"";clear:both;display:table}.fc .fc-daygrid-body{position:relative;z-index:1}.fc .fc-daygrid-day.fc-day-today{background-color:#ffdc2826;background-color:var(--fc-today-bg-color, rgba(255, 220, 40, .15))}.fc .fc-daygrid-day-frame{position:relative;min-height:100%}.fc .fc-daygrid-day-top{display:flex;flex-direction:row-reverse}.fc .fc-day-other .fc-daygrid-day-top{opacity:.3}.fc .fc-daygrid-day-number{position:relative;z-index:4;padding:4px}.fc .fc-daygrid-day-events{margin-top:1px}.fc .fc-daygrid-body-balanced .fc-daygrid-day-events{position:absolute;left:0;right:0}.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events{position:relative;min-height:2em}.fc .fc-daygrid-body-natural .fc-daygrid-day-events{margin-bottom:1em}.fc .fc-daygrid-event-harness{position:relative}.fc .fc-daygrid-event-harness-abs{position:absolute;top:0;left:0;right:0}.fc .fc-daygrid-bg-harness{position:absolute;top:0;bottom:0}.fc .fc-daygrid-day-bg .fc-non-business{z-index:1}.fc .fc-daygrid-day-bg .fc-bg-event{z-index:2}.fc .fc-daygrid-day-bg .fc-highlight{z-index:3}.fc .fc-daygrid-event{z-index:6;margin-top:1px}.fc .fc-daygrid-event.fc-event-mirror{z-index:7}.fc .fc-daygrid-day-bottom{font-size:.85em;margin:2px 3px 0}.fc .fc-daygrid-more-link{position:relative;z-index:4;cursor:pointer}.fc .fc-daygrid-week-number{position:absolute;z-index:5;top:0;padding:2px;min-width:1.5em;text-align:center;background-color:#d0d0d04d;background-color:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3));color:gray;color:var(--fc-neutral-text-color, #808080)}.fc .fc-more-popover{z-index:8}.fc .fc-more-popover .fc-popover-body{min-width:220px;padding:10px}.fc-direction-ltr .fc-daygrid-event.fc-event-start,.fc-direction-rtl .fc-daygrid-event.fc-event-end{margin-left:2px}.fc-direction-ltr .fc-daygrid-event.fc-event-end,.fc-direction-rtl .fc-daygrid-event.fc-event-start{margin-right:2px}.fc-direction-ltr .fc-daygrid-week-number{left:0;border-radius:0 0 3px}.fc-direction-rtl .fc-daygrid-week-number{right:0;border-radius:0 0 0 3px}.fc-liquid-hack .fc-daygrid-day-frame{position:static}.fc-daygrid-event{position:relative;white-space:nowrap;border-radius:3px;font-size:.85em;font-size:var(--fc-small-font-size, .85em)}.fc-daygrid-block-event .fc-event-time{font-weight:700}.fc-daygrid-block-event .fc-event-time,.fc-daygrid-block-event .fc-event-title{padding:1px}.fc-daygrid-dot-event{display:flex;align-items:center;padding:2px 0}.fc-daygrid-dot-event .fc-event-title{flex-grow:1;flex-shrink:1;min-width:0;overflow:hidden;font-weight:700}.fc-daygrid-dot-event:hover,.fc-daygrid-dot-event.fc-event-mirror{background:#0000001a}.fc-daygrid-dot-event.fc-event-selected:before{top:-10px;bottom:-10px}.fc-daygrid-event-dot{margin:0 4px;box-sizing:content-box;width:0;height:0;border:4px solid #3788d8;border:calc(var(--fc-daygrid-event-dot-width, 8px) / 2) solid var(--fc-event-border-color, #3788d8);border-radius:4px;border-radius:calc(var(--fc-daygrid-event-dot-width, 8px) / 2)}.fc-direction-ltr .fc-daygrid-event .fc-event-time{margin-right:3px}.fc-direction-rtl .fc-daygrid-event .fc-event-time{margin-left:3px}.fc-v-event{display:block;border:1px solid #3788d8;border:1px solid var(--fc-event-border-color, #3788d8);background-color:#3788d8;background-color:var(--fc-event-bg-color, #3788d8)}.fc-v-event .fc-event-main{color:#fff;color:var(--fc-event-text-color, #fff);height:100%}.fc-v-event .fc-event-main-frame{height:100%;display:flex;flex-direction:column}.fc-v-event .fc-event-time{flex-grow:0;flex-shrink:0;max-height:100%;overflow:hidden}.fc-v-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-height:0}.fc-v-event .fc-event-title{top:0;bottom:0;max-height:100%;overflow:hidden}.fc-v-event:not(.fc-event-start){border-top-width:0;border-top-left-radius:0;border-top-right-radius:0}.fc-v-event:not(.fc-event-end){border-bottom-width:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.fc-v-event.fc-event-selected:before{left:-10px;right:-10px}.fc-v-event .fc-event-resizer-start{cursor:n-resize}.fc-v-event .fc-event-resizer-end{cursor:s-resize}.fc-v-event:not(.fc-event-selected) .fc-event-resizer{height:8px;height:var(--fc-event-resizer-thickness, 8px);left:0;right:0}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start{top:-4px;top:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end{bottom:-4px;bottom:calc(var(--fc-event-resizer-thickness, 8px) / -2)}.fc-v-event.fc-event-selected .fc-event-resizer{left:50%;margin-left:-4px;margin-left:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-v-event.fc-event-selected .fc-event-resizer-start{top:-4px;top:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc-v-event.fc-event-selected .fc-event-resizer-end{bottom:-4px;bottom:calc(var(--fc-event-resizer-dot-total-width, 8px) / -2)}.fc .fc-timegrid .fc-daygrid-body{z-index:2}.fc .fc-timegrid-divider{padding:0 0 2px}.fc .fc-timegrid-body{position:relative;z-index:1;min-height:100%}.fc .fc-timegrid-axis-chunk{position:relative}.fc .fc-timegrid-axis-chunk>table{position:relative;z-index:1}.fc .fc-timegrid-slots{position:relative;z-index:1}.fc .fc-timegrid-slot{height:1.5em;border-bottom:0}.fc .fc-timegrid-slot:empty:before{content:"\\a0"}.fc .fc-timegrid-slot-minor{border-top-style:dotted}.fc .fc-timegrid-slot-label-cushion{display:inline-block;white-space:nowrap}.fc .fc-timegrid-slot-label{vertical-align:middle}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion{padding:0 4px}.fc .fc-timegrid-axis-frame-liquid{height:100%}.fc .fc-timegrid-axis-frame{overflow:hidden;display:flex;align-items:center;justify-content:flex-end}.fc .fc-timegrid-axis-cushion{max-width:60px;flex-shrink:0}.fc-direction-ltr .fc-timegrid-slot-label-frame{text-align:right}.fc-direction-rtl .fc-timegrid-slot-label-frame{text-align:left}.fc-liquid-hack .fc-timegrid-axis-frame-liquid{height:auto;position:absolute;inset:0}.fc .fc-timegrid-col.fc-day-today{background-color:#ffdc2826;background-color:var(--fc-today-bg-color, rgba(255, 220, 40, .15))}.fc .fc-timegrid-col-frame{min-height:100%;position:relative}.fc-liquid-hack .fc-timegrid-col-frame{height:auto;position:absolute;inset:0}.fc-media-screen .fc-timegrid-cols{position:absolute;inset:0}.fc-media-screen .fc-timegrid-cols>table{height:100%}.fc-media-screen .fc-timegrid-col-bg,.fc-media-screen .fc-timegrid-col-events,.fc-media-screen .fc-timegrid-now-indicator-container{position:absolute;top:0;left:0;right:0}.fc-media-screen .fc-timegrid-event-harness{position:absolute}.fc .fc-timegrid-col-bg{z-index:2}.fc .fc-timegrid-col-bg .fc-non-business{z-index:1}.fc .fc-timegrid-col-bg .fc-bg-event{z-index:2}.fc .fc-timegrid-col-bg .fc-highlight{z-index:3}.fc .fc-timegrid-bg-harness{position:absolute;left:0;right:0}.fc .fc-timegrid-col-events{z-index:3}.fc .fc-timegrid-now-indicator-container{bottom:0;overflow:hidden}.fc-direction-ltr .fc-timegrid-col-events{margin:0 2.5% 0 2px}.fc-direction-rtl .fc-timegrid-col-events{margin:0 2px 0 2.5%}.fc-timegrid-event-harness-inset .fc-timegrid-event,.fc-timegrid-event.fc-event-mirror{box-shadow:0 0 0 1px #fff;box-shadow:0 0 0 1px var(--fc-page-bg-color, #fff)}.fc-timegrid-event{font-size:.85em;font-size:var(--fc-small-font-size, .85em);border-radius:3px}.fc-timegrid-event .fc-event-main{padding:1px 1px 0}.fc-timegrid-event .fc-event-time{white-space:nowrap;font-size:.85em;font-size:var(--fc-small-font-size, .85em);margin-bottom:1px}.fc-timegrid-event-condensed .fc-event-main-frame{flex-direction:row;overflow:hidden}.fc-timegrid-event-condensed .fc-event-time:after{content:"\\a0-\\a0"}.fc-timegrid-event-condensed .fc-event-title{font-size:.85em;font-size:var(--fc-small-font-size, .85em)}.fc-media-screen .fc-timegrid-event{position:absolute;inset:0 0 1px}.fc .fc-timegrid-now-indicator-line{position:absolute;z-index:4;left:0;right:0;border-style:solid;border-color:red;border-color:var(--fc-now-indicator-color, red);border-width:1px 0 0}.fc .fc-timegrid-now-indicator-arrow{position:absolute;z-index:4;margin-top:-5px;border-style:solid;border-color:red;border-color:var(--fc-now-indicator-color, red)}.fc-direction-ltr .fc-timegrid-now-indicator-arrow{left:0;border-width:5px 0 5px 6px;border-top-color:transparent;border-bottom-color:transparent}.fc-direction-rtl .fc-timegrid-now-indicator-arrow{right:0;border-width:5px 6px 5px 0;border-top-color:transparent;border-bottom-color:transparent}:root{--fc-list-event-dot-width: 10px;--fc-list-event-hover-bg-color: #f5f5f5}.fc-theme-standard .fc-list{border:1px solid #ddd;border:1px solid var(--fc-border-color, #ddd)}.fc .fc-list-empty{background-color:#d0d0d04d;background-color:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3));height:100%;display:flex;justify-content:center;align-items:center}.fc .fc-list-empty-cushion{margin:5em 0}.fc .fc-list-table{width:100%;border-style:hidden}.fc .fc-list-table tr>*{border-left:0;border-right:0}.fc .fc-list-sticky .fc-list-day>*{position:-webkit-sticky;position:sticky;top:0;background:#fff;background:var(--fc-page-bg-color, #fff)}.fc .fc-list-table th{padding:0}.fc .fc-list-table td,.fc .fc-list-day-cushion{padding:8px 14px}.fc .fc-list-day-cushion:after{content:"";clear:both;display:table}.fc-theme-standard .fc-list-day-cushion{background-color:#d0d0d04d;background-color:var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))}.fc-direction-ltr .fc-list-day-text,.fc-direction-rtl .fc-list-day-side-text{float:left}.fc-direction-ltr .fc-list-day-side-text,.fc-direction-rtl .fc-list-day-text{float:right}.fc-direction-ltr .fc-list-table .fc-list-event-graphic{padding-right:0}.fc-direction-rtl .fc-list-table .fc-list-event-graphic{padding-left:0}.fc .fc-list-event.fc-event-forced-url{cursor:pointer}.fc .fc-list-event:hover td{background-color:#f5f5f5;background-color:var(--fc-list-event-hover-bg-color, #f5f5f5)}.fc .fc-list-event-graphic,.fc .fc-list-event-time{white-space:nowrap;width:1px}.fc .fc-list-event-dot{display:inline-block;box-sizing:content-box;width:0;height:0;border:5px solid #3788d8;border:calc(var(--fc-list-event-dot-width, 10px) / 2) solid var(--fc-event-border-color, #3788d8);border-radius:5px;border-radius:calc(var(--fc-list-event-dot-width, 10px) / 2)}.fc .fc-list-event-title a{color:inherit;text-decoration:none}.fc .fc-list-event.fc-event-forced-url:hover a{text-decoration:underline}.fc-theme-bootstrap a:not([href]){color:inherit}\n']}]}],(()=>[{type:c.Injector},{type:d.AbstractI18nService},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{_calendar:[{type:t.ViewChild,args:["calendar"]}],_datepicker:[{type:t.ViewChild,args:["datepicker"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(T,{className:"CalendarComponent",filePath:"calendar.component.ts",lineNumber:102});const x=[T];class D{static{this.\u0275fac=function(e){return new(e||D)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:D})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[s.CoreModule,a.BsDatepickerModule,i.CommonModule,n.FormsModule,o.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(D,[{type:t.NgModule,args:[{imports:[s.CoreModule,a.BsDatepickerModule,i.CommonModule,n.FormsModule,o.WmComponentsModule],declarations:[...x],exports:[...x]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(D,{declarations:[T],imports:[s.CoreModule,a.BsDatepickerModule,i.CommonModule,n.FormsModule,o.WmComponentsModule],exports:[T]}),e.CalendarComponent=T,e.CalendarModule=D})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/basic/search"),require("@angular/forms"),require("@wm/core"),require("@wm/components/input"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/basic/search","@angular/forms","@wm/core","@wm/components/input","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.chips={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.basic.search,e.ng.forms,e.wm.core,e.wm.components.input,e._)}(this,(function(e,t,i,n,a,s,o,r,l){"use strict";function c(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var d=c(t),p=c(i),u=c(n),h=c(a);const m=new Map([["allowonlyselect",n.PROP_BOOLEAN],["autofocus",n.PROP_BOOLEAN],["chipclass",n.PROP_STRING],["class",n.PROP_STRING],["compareby",n.PROP_STRING],["datafield",n.PROP_STRING],["dataoptions",n.PROP_ANY],["dataset",{value:"Option 1, Option 2, Option 3",...n.PROP_ANY}],["datasource",n.PROP_ANY],["datavalue",n.PROP_ANY],["datavaluesource",n.PROP_ANY],["dateformat",n.PROP_STRING],["disabled",n.PROP_BOOLEAN],["displayexpression",n.PROP_STRING],["displayfield",n.PROP_STRING],["displayimagesrc",n.PROP_STRING],["enablereorder",n.PROP_BOOLEAN],["groupby",n.PROP_STRING],["inputposition",{value:"last",...n.PROP_STRING}],["inputwidth",{value:"default",...n.PROP_STRING}],["limit",n.PROP_NUMBER],["loadingdatamsg",{value:"Loading items...",...n.PROP_STRING}],["match",n.PROP_STRING],["matchmode",n.PROP_STRING],["maxsize",n.PROP_NUMBER],["minchars",{value:1,...n.PROP_NUMBER}],["name",n.PROP_STRING],["navsearchbar",{value:!1,...n.PROP_BOOLEAN}],["orderby",n.PROP_STRING],["placeholder",{value:"Type here..",...n.PROP_STRING}],["query",n.PROP_STRING],["readonly",n.PROP_BOOLEAN],["searchkey",n.PROP_STRING],["shortcutkey",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["showsearchicon",n.PROP_BOOLEAN],["tabindex",{value:0,...n.PROP_NUMBER}],["type",{value:"search",...n.PROP_STRING}],["debouncetime",{value:250,...n.PROP_NUMBER}]]),g=["wmChips",""],f=e=>({"full-width":e}),v=(e,t)=>({active:e,disabled:t}),b=(e,t)=>({"chip-duplicate bg-danger":e,"chip-picture":t});function y(e,t){if(1&e&&d.\u0275\u0275element(0,"img",9),2&e){const e=d.\u0275\u0275nextContext().$implicit;d.\u0275\u0275property("src",e.imgSrc,d.\u0275\u0275sanitizeUrl)}}function w(e,t){if(1&e){const e=d.\u0275\u0275getCurrentView();d.\u0275\u0275elementStart(0,"button",10),d.\u0275\u0275listener("click",(function(t){d.\u0275\u0275restoreView(e);const i=d.\u0275\u0275nextContext(),n=i.$implicit,a=i.index,s=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(s.removeItem(t,n,a))})),d.\u0275\u0275element(1,"i",11),d.\u0275\u0275elementEnd()}}function C(e,t){if(1&e){const e=d.\u0275\u0275getCurrentView();d.\u0275\u0275elementStart(0,"li",4)(1,"a",5),d.\u0275\u0275listener("click",(function(t){const i=d.\u0275\u0275restoreView(e).$implicit,n=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(n.handleChipClick(t,i))}))("keydown.delete",(function(t){const i=d.\u0275\u0275restoreView(e),n=i.$implicit,a=i.index,s=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(s.onDelete(t,n,a))}))("keydown.backspace",(function(t){const i=d.\u0275\u0275restoreView(e),n=i.$implicit,a=i.index,s=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(s.onBackspace(t,n,a))}))("keydown.arrowleft",(function(){const t=d.\u0275\u0275restoreView(e),i=t.$implicit,n=t.index,a=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(a.onArrowLeft(i,n))}))("keydown.arrowright",(function(){const t=d.\u0275\u0275restoreView(e),i=t.$implicit,n=t.index,a=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(a.onArrowRight(i,n))}))("focus",(function(t){const i=d.\u0275\u0275restoreView(e).$implicit,n=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(n.handleChipFocus(t,i))}))("blur",(function(){const t=d.\u0275\u0275restoreView(e).$implicit,i=d.\u0275\u0275nextContext();return d.\u0275\u0275resetView(i.readonly?0:t.active=!1)})),d.\u0275\u0275template(2,y,1,1,"img",6),d.\u0275\u0275element(3,"span",7),d.\u0275\u0275template(4,w,2,0,"button",8),d.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit,i=d.\u0275\u0275nextContext();d.\u0275\u0275classMapInterpolate1("chip-item ",i.chipclass&&!i.bindChipclass?i.chipclass:"",""),d.\u0275\u0275property("ngClass",d.\u0275\u0275pureFunction2(9,v,e.active,i.disabled)),d.\u0275\u0275advance(),d.\u0275\u0275property("ngClass",d.\u0275\u0275pureFunction2(12,b,e.isDuplicate,e.imgSrc)),d.\u0275\u0275advance(),d.\u0275\u0275property("ngIf",e.imgSrc),d.\u0275\u0275advance(),d.\u0275\u0275property("textContent",e.label)("title",e.label),d.\u0275\u0275advance(),d.\u0275\u0275property("ngIf",!i.readonly)}}const P={widgetType:"wm-chips",hostClass:"app-chips nav nav-pills list-inline"};class I extends r.DatasetAwareFormComponent{static{this.initializeProps=(n.register("wm-chips",m),void n.registerFormWidget(o.FormWidgetType.CHIPS,new Map(m)))}get datasource(){return this._datasource}set datasource(e){this._datasource=e,this.searchComponent.datasource=e,this._debounceUpdateQueryModel(this.datavalue||this.toBeProcessedDatavalue)}constructor(e,t,i,a,s,r,c,d){super(e,P,d),this.bindDisplayField=t,this.bindDisplayExpr=i,this.bindDisplayImgSrc=a,this.bindDataField=s,this.bindDataSet=r,this.bindChipclass=c,this.chipsList=[],this.maxSizeReached="Max size reached",this._unsubscribeDv=!1,n.styler(this.nativeElement,this),o.isDefined(this.showsearchicon)||(this.showsearchicon=!1),this.multiple=!0,this.nextItemIndex=0,this._debounceUpdateQueryModel=o.debounce((e=>{this.updateQueryModel(e).then((()=>{this.bindChipclass&&l.forEach(this.chipsList,((e,t)=>{this.registerChipItemClass(e,t)}))}))}),150);const p=this.dataset$.subscribe((()=>{this.searchComponent.dataset=this.dataset,this.searchComponent._lastResult=void 0,this.nextItemIndex=this.datasetItems.length,this._debounceUpdateQueryModel(this.datavalue||this.toBeProcessedDatavalue)}));this.registerDestroyListener((()=>p.unsubscribe()));const u=this.datavalue$.subscribe((e=>{this._unsubscribeDv||(this.chipsList=[],this._debounceUpdateQueryModel(e))}));this.registerDestroyListener((()=>u.unsubscribe()))}ngOnInit(){super.ngOnInit(),this.searchComponent.multiple=!0,this.searchComponent.binddisplayimagesrc=this.bindDisplayImgSrc,this.searchComponent.displayimagesrc=this.displayimagesrc,this.searchComponent.binddisplaylabel=this.bindDisplayExpr,this.searchComponent.displaylabel=this.displayfield,this.searchComponent.datafield=this.bindDataField||this.datafield,this.searchComponent.binddataset=this.bindDataSet,this.searchComponent.dataset=this.dataset,this.searchComponent.searchkey=this.searchkey,this.searchComponent.limit=this.limit,this.searchComponent.debouncetime=this.debouncetime,this.searchComponent.matchmode=this.matchmode,this.getTransformedData=(e,t)=>this.searchComponent.getTransformedData([e],this.nextItemIndex++,t)}ngAfterViewInit(){super.ngAfterViewInit(),this.enablereorder&&this.configureDnD()}registerChipItemClass(e,t){if(this.bindChipclass){const i=`${this.widgetId}_chipItemClass_${t}`;o.$unwatch(i),this.registerDestroyListener(o.$watch(this.bindChipclass,this.viewParent,{item:e,$index:t},((e,i)=>{this.applyItemClass(n.getConditionalClasses(e,i),t)}),i))}}applyItemClass(e,t){const i=this.nativeElement.querySelectorAll(".chip-item").item(t);$(i).removeClass(e.toRemove).addClass(e.toAdd)}removeDuplicates(){this.chipsList=n.getUniqObjsByDataField(this.chipsList,this.datafield,this.displayfield||this.displaylabel)}updateQueryModel(e){const t=[];if(!e)return this.chipsList=[],Promise.resolve();let i=l.clone(e);const a=this.chipsList;this.chipsList=[],this.maxsize&&i.length>this.maxsize&&(this._modelByValue=i=l.slice(i,0,this.maxsize),e=i);const s=[];return i.forEach(((t,i)=>{const o=l.find(this.datasetItems,(e=>l.isObject(e.value)?l.isEqual(e.value,t):l.toString(e.value)===l.toString(t)));if(o)this.chipsList.push(o);else if(this.datafield!==n.ALLFIELDS)s.push(t);else if(this.datafield===n.ALLFIELDS){let n,s=!1;if(l.isObject(t)){const e=a.find((e=>l.isEqual(e.value,t)));e&&(s=e.iscustom)}else n=this.createCustomDataModel(t),s=!0,n&&e.splice(i,1,n);n=n||t;const o=this.getTransformedData(n,s)[0];s&&(o.iscustom=s),this.chipsList.push(o)}})),s.length&&t.push(this.getDefaultModel(s,this.nextItemIndex).then((t=>{this.chipsList=this.chipsList.concat(t||[]),i.forEach(((t,i)=>{if(!l.find(this.chipsList,(e=>e.value.toString()===t.toString()))){if(this.allowonlyselect){const i=e.indexOf(t);return void(i>-1&&e.splice(i,1))}const i=this.getTransformedData(t,!0)[0];i.iscustom=!0,this.chipsList.push(i)}}))}))),this.resetSearchModel(!0),Promise.all(t).then((()=>{this._modelByValue=e,this.removeDuplicates(),this.updateMaxSize(),o.$appDigest()}))}resetSearchModel(e){this._unsubscribeDv=!0,this.searchComponent.clearSearch(void 0,!this.minchars&&!e),this._unsubscribeDv=!1}addItem(e,t){const i=t;let a,s;if(i&&o.isDefined(i.datavalue)&&""!==i.queryModel){if(!i.query||!l.trim(i.query))return;s=i.queryModel}else{if(this.allowonlyselect)return;let e;if(this.datafield===n.ALLFIELDS&&!l.isObject(this.searchComponent.query)&&l.trim(this.searchComponent.query)&&(e=this.createCustomDataModel(this.searchComponent.query),!e))return void this.resetSearchModel();const t=e||l.trim(this.searchComponent.query);if(t){s=this.getTransformedData(t,!0)[0],s.iscustom=!0}}o.isDefined(s)&&""!==s&&(a=this.invokeEventCallback("beforeadd",{$event:e,newItem:s}),o.isDefined(a)&&!o.toBoolean(a)||(this.isDuplicate(s)?this.resetSearchModel():(this.registerChipItemClass(s,this.chipsList.length),this.chipsList.push(s),this.datavalue?this._modelByValue=[...this._modelByValue,s.value]:this._modelByValue=[s.value],this._unsubscribeDv=!0,this.invokeOnTouched(),this.invokeOnChange(this._modelByValue,e||{},!0),this.invokeEventCallback("add",{$event:e,$item:s}),this.updateMaxSize(),this.resetSearchModel(),!e||"Enter"!==e.key&&13!==e.keyCode||this.stopEvent(e))))}createCustomDataModel(e){const t=this.displayfield||(this.datafield!==n.ALLFIELDS?this.datafield:void 0);if(t){const i={};return i[t]=e,i}}isDuplicate(e){return this.datafield===n.ALLFIELDS?l.findIndex(this.chipsList,{value:e.value})>-1:l.findIndex(this.chipsList,{key:e.key})>-1}updateMaxSize(){this.saturate=this.maxsize>0&&this.chipsList.length===this.maxsize}getDefaultModel(e,t){return this.nextItemIndex++,this.searchComponent.getDataSource(e,!0,t).then((t=>l.filter(e,(e=>{l.find(t,{value:e})}))))}handleChipClick(e,t){this.readonly||(e.currentTarget.focus(),this.invokeEventCallback("chipclick",{$event:e,$item:t}))}handleChipFocus(e,t){this.readonly||(t.active=!0,this.invokeEventCallback("chipselect",{$event:e,$item:t}))}stopEvent(e){e.stopPropagation(),e.preventDefault()}onTextDelete(e){o.isAppleProduct&&this.onInputClear(e)}onInputClear(e){this.chipsList&&this.chipsList.length&&!this.searchComponent.query&&(this.$element.find("li.chip-item > a.app-chip").last().focus(),this.stopEvent(e))}onBackspace(e,t,i){this.readonly||this.removeItem(e,t,i,!0)}onDelete(e,t,i){this.readonly||this.removeItem(e,t,i)}onArrowLeft(e,t){this.readonly||(this.searchComponent.query||o.isDefined(t)||o.isDefined(e)?t>0?this.$element.find("li.chip-item > a.app-chip").get(t-1).focus():this.focusSearchBox():this.$element.find("li.chip-item > a.app-chip").last().focus())}onArrowRight(e,t){this.readonly||(this.searchComponent.query||o.isDefined(t)||o.isDefined(e)?t<this.chipsList.length-1?this.$element.find("li.chip-item > a.app-chip").get(t+1).focus():this.focusSearchBox():this.$element.find("li.chip-item > a.app-chip").first().focus())}focusSearchBox(){this.$element.find(".app-chip-input > input.app-textbox").focus()}removeItem(e,t,i,n){e.stopPropagation();const a=l.isArray(i)?i:[i],s=l.max(a),r=l.reduce(a,((e,t)=>(e.push(this.chipsList[t]),e)),[]),c=this.invokeEventCallback("beforeremove",{$event:e,$item:1===r.length?r[0]:r});if(o.isDefined(c)&&!o.toBoolean(c))return;const d=l.clone(this.datavalue);setTimeout((()=>{const e=this.chipsList.length,t=this.$element.find("li.chip-item > a.app-chip");e&&n?e-1<s?t.get(e-1).focus():(this.chipsList[s].active=!0,t.get(s).focus()):this.focusSearchBox()}));l.pullAt(this.chipsList,a).forEach((e=>{this._modelByValue=l.filter(this._modelByValue,(t=>!(l.isObject(t)?l.isEqual(t,e.value):l.toString(t)===l.toString(e.value))))})),this._unsubscribeDv=!1,this.invokeOnChange(this._modelByValue,e,!0),this.invokeEventCallback("change",{$event:e,newVal:this.datavalue,oldVal:d}),this.updateMaxSize(),this.invokeEventCallback("remove",{$event:e,$item:1===r.length?r[0]:r})}swapElementsInArray(e,t,i){const n=l.pullAt(e,i)[0];e.splice(t,0,n)}resetReorder(){this.$element.removeData("oldIndex")}invokeOnBeforeServiceCall(e){this.invokeEventCallback("beforeservicecall",{inputData:e})}handleEvent(e,t,i,n){"remove"!==t&&"beforeremove"!==t&&"chipselect"!==t&&"chipclick"!==t&&"add"!==t&&"reorder"!==t&&"change"!==t&&super.handleEvent(e,t,i,n)}configureDnD(){n.configureDnD(this.$element,{items:"> li:not(.app-chip-search)",placeholder:"chip-placeholder"},this.onReorderStart.bind(this),this.update.bind(this))}onReorderStart(e,t){const i=t.helper;i.width(i.width()+1),this.$element.data("oldIndex",t.item.index()-("first"===this.inputposition?1:0))}update(e,t){let i,n,a;if(n=t.item.index()-("first"===this.inputposition?1:0),a=this.$element.data("oldIndex"),n=this.chipsList.length===n?n-1:n,i={oldIndex:a,newIndex:n,item:this.chipsList[a]},n===a)return void this.resetReorder();i.item=this.chipsList[a];const s=this.invokeEventCallback("beforereorder",{$event:e,$data:this.chipsList,$changedItem:i});o.isDefined(s)&&!1===o.toBoolean(s)?this.resetReorder():(this.swapElementsInArray(this.chipsList,n,a),this.swapElementsInArray(this._modelByValue,n,a),i.item=this.chipsList[n],this.chipsList=[...this.chipsList],this.resetReorder(),this.invokeEventCallback("reorder",{$event:e,$data:this.chipsList,$changedItem:i}))}onPropertyChange(e,t,i){if("tabindex"!==e){if("dataoptions"===e&&(this.searchComponent.dataoptions=t),"datafield"===e&&(this.searchComponent.datafield=this.datafield),"displayfield"===e&&(this.searchComponent.displaylabel=this.displayfield),"displayexpression"===e&&(this.searchComponent.binddisplaylabel=this.binddisplayexpression?this.binddisplayexpression:this.displayexpression),"displayimagesrc"===e&&(this.searchComponent.binddisplayimagesrc=this.binddisplayimagesrc?this.binddisplayimagesrc:this.displayimagesrc),"limit"===e&&(this.searchComponent.limit=this.limit),"matchmode"===e&&(this.searchComponent.matchmode=this.matchmode),"groupby"===e&&(this.searchComponent.groupby=this.groupby),"enablereorder"===e&&(this.$element.hasClass("ui-sortable")?this.$element.sortable("option","disabled",!t):t&&this.configureDnD()),"readonly"===e&&(t?this.$element.addClass("readonly"):this.$element.removeClass("readonly")),"inputposition"===e){const e=this.$element.find("li.app-chip-search");"first"===t?this.$element.prepend(e):this.$element.append(e)}"autofocus"===e&&t&&setTimeout((()=>{const e=this.$element.find(".app-chip-input > input.app-textbox");e&&e.length&&this.focusSearchBox()})),super.onPropertyChange(e,t,i)}}static{this.\u0275fac=function(e){return new(e||I)(d.\u0275\u0275directiveInject(d.Injector),d.\u0275\u0275injectAttribute("displayfield.bind"),d.\u0275\u0275injectAttribute("displayexpression.bind"),d.\u0275\u0275injectAttribute("displayimagesrc.bind"),d.\u0275\u0275injectAttribute("datafield.bind"),d.\u0275\u0275injectAttribute("dataset.bind"),d.\u0275\u0275injectAttribute("chipclass.bind"),d.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=d.\u0275\u0275defineComponent({type:I,selectors:[["","wmChips",""]],viewQuery:function(e,t){if(1&e&&d.\u0275\u0275viewQuery(a.SearchComponent,7),2&e){let e;d.\u0275\u0275queryRefresh(e=d.\u0275\u0275loadQuery())&&(t.searchComponent=e.first)}},features:[d.\u0275\u0275ProvidersFeature([n.provideAs(I,s.NG_VALUE_ACCESSOR,!0),n.provideAsWidgetRef(I)]),d.\u0275\u0275InheritDefinitionFeature],attrs:g,decls:4,vars:4,consts:[["search",""],["role","option",3,"class","ngClass",4,"ngFor","ngForOf"],[1,"app-chip-search",3,"ngClass"],["wmSearch","","name","app-chip-search","submit.event","addItem($event, widget)","beforeservicecall.event","invokeOnBeforeServiceCall(inputData)","disabled.bind","disabled || readonly || saturate","datafield.bind","datafield","allowonlyselect.bind","allowonlyselect","searchkey.bind","searchkey","orderby.bind","orderby","placeholder.bind","saturate ? maxSizeReached : placeholder","showsearchicon.bind","showsearchicon","tabindex.bind","tabindex","minchars.bind","minchars","debouncetime.bind","debouncetime","matchmode.bind","matchmode","groupby.bind","groupby","match.bind","match","dateformat.bind","dateformat",1,"app-chip-input",3,"keydown.enter","keydown.delete","keydown.backspace","keydown.arrowleft","keydown.arrowright"],["role","option",3,"ngClass"],["href","javascript:void(0);","tabindex","-1",1,"app-chip",3,"click","keydown.delete","keydown.backspace","keydown.arrowleft","keydown.arrowright","focus","blur","ngClass"],["data-identifier","img","alt","Chip Image","class","button-image-icon",3,"src",4,"ngIf"],[1,"app-chip-title",3,"textContent","title"],["type","button","tabindex","-1","aria-label","Clear Button","class","btn btn-transparent",3,"click",4,"ngIf"],["data-identifier","img","alt","Chip Image",1,"button-image-icon",3,"src"],["type","button","tabindex","-1","aria-label","Clear Button",1,"btn","btn-transparent",3,"click"],[1,"app-icon","wi","wi-close"]],template:function(e,t){if(1&e){const e=d.\u0275\u0275getCurrentView();d.\u0275\u0275template(0,C,5,15,"li",1),d.\u0275\u0275elementStart(1,"li",2)(2,"div",3,0),d.\u0275\u0275listener("keydown.enter",(function(i){return d.\u0275\u0275restoreView(e),d.\u0275\u0275resetView(t.stopEvent(i))}))("keydown.delete",(function(i){return d.\u0275\u0275restoreView(e),d.\u0275\u0275resetView(t.onTextDelete(i))}))("keydown.backspace",(function(i){return d.\u0275\u0275restoreView(e),d.\u0275\u0275resetView(t.onInputClear(i))}))("keydown.arrowleft",(function(){return d.\u0275\u0275restoreView(e),d.\u0275\u0275resetView(t.onArrowLeft())}))("keydown.arrowright",(function(){return d.\u0275\u0275restoreView(e),d.\u0275\u0275resetView(t.onArrowRight())})),d.\u0275\u0275elementEnd()()}2&e&&(d.\u0275\u0275property("ngForOf",t.chipsList),d.\u0275\u0275advance(),d.\u0275\u0275property("ngClass",d.\u0275\u0275pureFunction1(2,f,"full"===t.inputwidth)))},dependencies:[p.NgClass,p.NgForOf,p.NgIf,h.SearchComponent,u.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassMetadata(I,[{type:t.Component,args:[{selector:"[wmChips]",providers:[n.provideAs(I,s.NG_VALUE_ACCESSOR,!0),n.provideAsWidgetRef(I)],template:'<li class="chip-item {{chipclass && !bindChipclass ? chipclass : \'\'}}" role="option" *ngFor="let item of chipsList; let $index = index;"\n [ngClass]="{\'active\': item.active, \'disabled\': disabled}">\n <a class="app-chip" href="javascript:void(0);" tabindex="-1"\n (click)="handleChipClick($event, item)"\n (keydown.delete)="onDelete($event, item, $index)"\n (keydown.backspace)="onBackspace($event, item, $index)"\n (keydown.arrowleft)="onArrowLeft(item, $index)"\n (keydown.arrowright)="onArrowRight(item, $index)"\n (focus)="handleChipFocus($event, item)"\n (blur)="readonly ? 0 : item.active = false"\n [ngClass]="{\'chip-duplicate bg-danger\': item.isDuplicate, \'chip-picture\': item.imgSrc}">\n <img data-identifier="img" alt="Chip Image" class="button-image-icon" [src]="item.imgSrc" *ngIf="item.imgSrc"/>\n <span class="app-chip-title" [textContent]="item.label" [title]="item.label"></span>\n <button type="button" tabindex="-1" aria-label="Clear Button" class="btn btn-transparent" (click)="removeItem($event, item, $index);" *ngIf="!readonly">\n <i class="app-icon wi wi-close"></i>\n </button>\n </a>\n</li>\n<li class="app-chip-search" [ngClass]="{\'full-width\': inputwidth === \'full\'}">\n <div #search wmSearch class="app-chip-input"\n name="app-chip-search"\n submit.event="addItem($event, widget)"\n beforeservicecall.event="invokeOnBeforeServiceCall(inputData)"\n disabled.bind="disabled || readonly || saturate"\n datafield.bind="datafield"\n allowonlyselect.bind="allowonlyselect"\n searchkey.bind="searchkey"\n orderby.bind="orderby"\n placeholder.bind="saturate ? maxSizeReached : placeholder"\n showsearchicon.bind="showsearchicon"\n tabindex.bind="tabindex"\n minchars.bind="minchars"\n debouncetime.bind="debouncetime"\n matchmode.bind="matchmode"\n groupby.bind="groupby"\n match.bind="match"\n dateformat.bind="dateformat"\n (keydown.enter)="stopEvent($event)"\n (keydown.delete)="onTextDelete($event)"\n (keydown.backspace)="onInputClear($event)"\n (keydown.arrowleft)="onArrowLeft()"\n (keydown.arrowright)="onArrowRight()">\n </div>\n</li>\n'}]}],(()=>[{type:d.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["displayfield.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["displayexpression.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["displayimagesrc.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["datafield.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["chipclass.bind"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{searchComponent:[{type:t.ViewChild,args:[a.SearchComponent,{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassDebugInfo(I,{className:"ChipsComponent",filePath:"chips.component.ts",lineNumber:54});const A=[I];class E{static{this.\u0275fac=function(e){return new(e||E)}}static{this.\u0275mod=d.\u0275\u0275defineNgModule({type:E})}static{this.\u0275inj=d.\u0275\u0275defineInjector({imports:[i.CommonModule,a.SearchModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassMetadata(E,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.SearchModule,n.WmComponentsModule],declarations:[...A],exports:[...A]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&d.\u0275\u0275setNgModuleScope(E,{declarations:[I],imports:[i.CommonModule,a.SearchModule,n.WmComponentsModule],exports:[I]}),e.ChipsComponent=I,e.ChipsModule=E})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-color-picker"),require("@wm/components/base"),require("@wm/core"),require("@wm/components/input")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","ngx-color-picker","@wm/components/base","@wm/core","@wm/components/input"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.colorpicker={}),e.ng.core,e.ng.common,e.ng.forms,e.ngxColorpicker,e.wm.components.base,e.wm.core,e.wm.components.input)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(n),p=l(a);const u=new Map([["autoclose",{value:"outsideClick",...s.PROP_STRING}],["class",s.PROP_STRING],["datavalue",s.PROP_STRING],["disabled",s.PROP_BOOLEAN],["hint",s.PROP_STRING],["name",s.PROP_STRING],["placeholder",{value:"Select Color",...s.PROP_STRING}],["readonly",s.PROP_BOOLEAN],["required",s.PROP_BOOLEAN],["shortcutkey",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["tabindex",{value:0,...s.PROP_NUMBER}]]),h=["input"],m=["wmColorPicker",""],g=()=>({updateOn:"change",standalone:!0}),f={widgetType:"wm-colorpicker",hostClass:"input-group app-colorpicker",displayType:"inline-block"};class v extends r.BaseFormCustomComponent{static{this.initializeProps=(s.register("wm-colorpicker",u),void s.registerFormWidget(o.FormWidgetType.COLORPICKER,new Map(u)))}constructor(e,t){super(e,f,t),s.styler(this.nativeElement,this)}colorPickerToggleChange(e){const t=this.nativeElement.querySelector(".color-picker");t&&(e?o.removeClass(t,"hidden"):o.addClass(t,"hidden"))}colorPickerOpen(e){if(this.autoclose===s.AUTOCLOSE_TYPE.ALWAYS){this.nativeElement.querySelector(".color-picker").onclick=()=>this.cpDirective.closeDialog()}}open(){this.cpDirective.openDialog()}close(){this.cpDirective.closeDialog()}handleEvent(e,t,i,n){"change"!==t&&"blur"!==t&&super.handleEvent(this.inputEl.nativeElement,t,i,n)}handleChange(e){this.invokeOnChange(this.datavalue,{type:"change"},this.ngModel.valid)}onPropertyChange(e,t,i){"tabindex"!==e&&("required"!==e?"datavalue"!==e?("autoclose"===e&&(this.outsideclick=t===s.AUTOCLOSE_TYPE.OUTSIDECLICK||t===s.AUTOCLOSE_TYPE.ALWAYS),super.onPropertyChange(e,t,i)):this._onChange(t):this._onChange(this.datavalue))}static{this.\u0275fac=function(e){return new(e||v)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:v,selectors:[["","wmColorPicker",""]],viewQuery:function(e,i){if(1&e&&(c.\u0275\u0275viewQuery(n.NgModel,5),c.\u0275\u0275viewQuery(h,7,t.ElementRef),c.\u0275\u0275viewQuery(a.ColorPickerDirective,5)),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(i.ngModel=e.first),c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(i.inputEl=e.first),c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(i.cpDirective=e.first)}},features:[c.\u0275\u0275ProvidersFeature([s.provideAs(v,n.NG_VALUE_ACCESSOR,!0),s.provideAs(v,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(v)]),c.\u0275\u0275InheritDefinitionFeature],attrs:m,decls:5,vars:15,consts:[["input",""],["aria-haspopup","true","aria-expanded","false","focus-target","",1,"form-control","app-textbox",3,"colorPickerChange","cpToggleChange","colorPickerOpen","ngModelChange","blur","colorPicker","cpPosition","cpCloseClickOutside","disabled","required","tabindex","ngModel","ngModelOptions"],[1,"input-group-addon","colorpicker-container"],[1,"colored-box"]],template:function(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"input",1,0),c.\u0275\u0275twoWayListener("colorPickerChange",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),c.\u0275\u0275resetView(i)})),c.\u0275\u0275listener("colorPickerChange",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275resetView(t.handleChange(i))}))("cpToggleChange",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275resetView(t.colorPickerToggleChange(i))}))("colorPickerOpen",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275resetView(t.colorPickerOpen(i))})),c.\u0275\u0275twoWayListener("ngModelChange",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275twoWayBindingSet(t.datavalue,i)||(t.datavalue=i),c.\u0275\u0275resetView(i)})),c.\u0275\u0275listener("ngModelChange",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275resetView(t.handleChange(i))}))("blur",(function(i){return c.\u0275\u0275restoreView(e),c.\u0275\u0275resetView(t.invokeOnTouched(i))})),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(2,"span",2)(3,"i",3),c.\u0275\u0275text(4,"\xa0"),c.\u0275\u0275elementEnd()()}2&e&&(c.\u0275\u0275twoWayProperty("colorPicker",t.datavalue),c.\u0275\u0275property("cpPosition","bottom")("cpCloseClickOutside",t.outsideclick)("disabled",t.readonly||t.disabled)("required",t.required)("tabindex",t.tabindex),c.\u0275\u0275twoWayProperty("ngModel",t.datavalue),c.\u0275\u0275property("ngModelOptions",c.\u0275\u0275pureFunction0(14,g)),c.\u0275\u0275attribute("name",t.name)("aria-label",t.hint)("placeholder",t.placeholder)("accesskey",t.shortcutkey),c.\u0275\u0275advance(3),c.\u0275\u0275styleProp("background-color",t.datavalue))},dependencies:[p.ColorPickerDirective,d.DefaultValueAccessor,d.NgControlStatus,d.RequiredValidator,d.NgModel],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(v,[{type:t.Component,args:[{selector:"[wmColorPicker]",providers:[s.provideAs(v,n.NG_VALUE_ACCESSOR,!0),s.provideAs(v,n.NG_VALIDATORS,!0),s.provideAsWidgetRef(v)],template:'<input class="form-control app-textbox" aria-haspopup="true" aria-expanded="false"\n #input\n focus-target\n [attr.name]="name"\n [attr.aria-label]="hint"\n [(colorPicker)]="datavalue"\n (colorPickerChange)="handleChange($event);"\n (cpToggleChange)="colorPickerToggleChange($event)"\n [cpPosition]="\'bottom\'"\n [cpCloseClickOutside]="outsideclick"\n (colorPickerOpen)="colorPickerOpen($event)"\n [attr.placeholder]="placeholder"\n [disabled]="readonly || disabled"\n [required]="required"\n [tabindex]="tabindex"\n [(ngModel)]="datavalue"\n (ngModelChange)="handleChange($event);"\n [ngModelOptions]="{updateOn: \'change\', standalone: true}"\n (blur)="invokeOnTouched($event)"\n [attr.accesskey]="shortcutkey">\n<span class="input-group-addon colorpicker-container">\n <i class="colored-box" [style.backgroundColor]="datavalue">&nbsp;</i>\n</span>\n'}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{ngModel:[{type:t.ViewChild,args:[n.NgModel]}],inputEl:[{type:t.ViewChild,args:["input",{static:!0,read:t.ElementRef}]}],cpDirective:[{type:t.ViewChild,args:[a.ColorPickerDirective]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(v,{className:"ColorPickerComponent",filePath:"color-picker.component.ts",lineNumber:27});const b=[v];class y{static{this.\u0275fac=function(e){return new(e||y)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:y})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[i.CommonModule,a.ColorPickerModule,n.FormsModule,s.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(y,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.ColorPickerModule,n.FormsModule,s.WmComponentsModule],declarations:[...b],exports:[...b]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(y,{declarations:[v],imports:[i.CommonModule,a.ColorPickerModule,n.FormsModule,s.WmComponentsModule],exports:[v]}),e.ColorPickerComponent=v,e.ColorPickerModule=y})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@wm/components/base"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","@wm/components/base","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.currency={}),e.ng.core,e.ng.common,e.ng.forms,e.wm.components.base,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(n),d=r(a),p=r(o);const u=new Map([["class",a.PROP_STRING],["currency",a.PROP_STRING],["datavalue",a.PROP_STRING],["disabled",a.PROP_BOOLEAN],["hint",a.PROP_STRING],["maxvalue",a.PROP_NUMBER],["minvalue",a.PROP_NUMBER],["name",a.PROP_STRING],["placeholder",{value:"Enter value",...a.PROP_STRING}],["readonly",a.PROP_BOOLEAN],["required",a.PROP_BOOLEAN],["shortcutkey",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["step",{value:1,...a.PROP_NUMBER}],["tabindex",{value:0,...a.PROP_NUMBER}],["trailingzero",{value:!1,...a.PROP_BOOLEAN}],["inputmode",{value:"natural",...a.PROP_STRING}]]),h=["input"],m=["wmCurrency",""],g={widgetType:"wm-currency",hostClass:"input-group app-currency"};class f extends s.NumberLocale{static{this.initializeProps=(a.register("wm-currency",u),void a.registerFormWidget(o.FormWidgetType.CURRENCY,new Map(u)))}constructor(e,t,i,n,a){super(e,g,i,n,a),this.appDefaults=t,this.currencyCode=this.appDefaults.currencyCode||"USD",this.currencySymbol=o.CURRENCY_INFO[this.appDefaults.currencyCode||"USD"].symbol}onPropertyChange(e,t,i){"currency"===e?(this.currencyCode=t,this.currencySymbol=o.CURRENCY_INFO[this.currencyCode||this.appDefaults.currencyCode].symbol):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||f)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(p.AppDefaults),l.\u0275\u0275directiveInject(p.AbstractI18nService),l.\u0275\u0275directiveInject(d.TrailingZeroDecimalPipe),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:f,selectors:[["","wmCurrency",""]],viewQuery:function(e,i){if(1&e&&(l.\u0275\u0275viewQuery(n.NgModel,7),l.\u0275\u0275viewQuery(h,7,t.ElementRef)),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.ngModel=e.first),l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.inputEl=e.first)}},features:[l.\u0275\u0275ProvidersFeature([a.provideAs(f,n.NG_VALUE_ACCESSOR,!0),a.provideAs(f,n.NG_VALIDATORS,!0),a.provideAsWidgetRef(f)]),l.\u0275\u0275InheritDefinitionFeature],attrs:m,decls:3,vars:13,consts:[["input",""],[1,"input-group-addon",3,"textContent"],["role","textbox","type","text","inputmode","decimal","focus-target","",1,"form-control","app-textbox","app-currency-input",3,"focus","input","blur","ngModelChange","keydown","keydown.enter","keydown.ArrowUp","keydown.ArrowDown","autofocus","readonly","disabled","required","pattern","ngModel","ngModelOptions"]],template:function(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275element(0,"span",1),l.\u0275\u0275elementStart(1,"input",2,0),l.\u0275\u0275listener("focus",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.checkForTrailingZeros(i))}))("input",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onInputChange(i.target.value))}))("blur",(function(i){return l.\u0275\u0275restoreView(e),t.handleBlur(i),l.\u0275\u0275resetView(t.checkForTrailingZeros(i))}))("ngModelChange",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onModelChange(i))}))("keydown",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.validateInputEntry(i))}))("keydown.enter",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onEnter(i))}))("keydown.ArrowUp",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onArrowPress(i,"UP"))}))("keydown.ArrowDown",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onArrowPress(i,"DOWN"))})),l.\u0275\u0275elementEnd()}2&e&&(l.\u0275\u0275property("textContent",t.currencySymbol),l.\u0275\u0275advance(),l.\u0275\u0275property("autofocus",t.autofocus)("readonly",t.readonly)("disabled",t.disabled)("required",t.required)("pattern",t.regexp)("ngModel",t.displayValue)("ngModelOptions",t.ngModelOptions),l.\u0275\u0275attribute("name",t.name)("aria-label",t.hint||t.currencyCode)("tabindex",t.tabindex)("placeholder",t.placeholder)("accesskey",t.shortcutkey))},dependencies:[c.DefaultValueAccessor,c.NgControlStatus,c.RequiredValidator,c.PatternValidator,c.NgModel,d.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(f,[{type:t.Component,args:[{selector:"[wmCurrency]",providers:[a.provideAs(f,n.NG_VALUE_ACCESSOR,!0),a.provideAs(f,n.NG_VALIDATORS,!0),a.provideAsWidgetRef(f)],template:'<span class="input-group-addon" [textContent]="currencySymbol"></span>\n<input class="form-control app-textbox app-currency-input"\n #input\n role="textbox"\n type="text"\n inputmode="decimal"\n focus-target\n [autofocus]="autofocus"\n [readonly]="readonly"\n [disabled]="disabled"\n [required]="required"\n [pattern]="regexp"\n [attr.name]="name"\n [attr.aria-label]="hint || currencyCode"\n [attr.tabindex]="tabindex"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [ngModel]="displayValue"\n [ngModelOptions]="ngModelOptions"\n\n (focus)="checkForTrailingZeros($event)"\n (input)="onInputChange($event.target.value)"\n (blur)="handleBlur($event); checkForTrailingZeros($event);"\n (ngModelChange)="onModelChange($event)"\n (keydown)="validateInputEntry($event);"\n (keydown.enter)="onEnter($event)"\n (keydown.ArrowUp)="onArrowPress($event, \'UP\')"\n (keydown.ArrowDown)="onArrowPress($event, \'DOWN\')">\n'}]}],(()=>[{type:l.Injector},{type:p.AppDefaults},{type:p.AbstractI18nService},{type:d.TrailingZeroDecimalPipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{ngModel:[{type:t.ViewChild,args:[n.NgModel,{static:!0}]}],inputEl:[{type:t.ViewChild,args:["input",{static:!0,read:t.ElementRef}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(f,{className:"CurrencyComponent",filePath:"currency.component.ts",lineNumber:27});const v=[f];class b{static{this.\u0275fac=function(e){return new(e||b)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:b})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.FormsModule,s.InputModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(b,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.FormsModule,s.InputModule,a.WmComponentsModule],declarations:[...v],exports:[...v]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(b,{declarations:[f],imports:[i.CommonModule,n.FormsModule,s.InputModule,a.WmComponentsModule],exports:[f]}),e.CurrencyComponent=f,e.CurrencyModule=b})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-bootstrap/datepicker"),require("ngx-bootstrap/dropdown"),require("ngx-bootstrap/timepicker"),require("@wm/components/base"),require("@wm/core"),require("@wm/components/input"),require("ngx-bootstrap/modal"),require("lodash-es"),require("imask"),require("angular-imask")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","ngx-bootstrap/datepicker","ngx-bootstrap/dropdown","ngx-bootstrap/timepicker","@wm/components/base","@wm/core","@wm/components/input","ngx-bootstrap/modal","lodash-es","imask","angular-imask"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.epoch={}),e.ng.core,e.ng.common,e.ng.forms,e.datepicker,e.dropdown,e.timepicker,e.wm.components.base,e.wm.core,e.wm.components.input,e.modal,e._,e.IMask,e.angularIMask)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u,h){"use strict";function m(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var g=m(t),f=m(i),v=m(n),b=m(a),y=m(s),w=m(o),C=m(l),P=m(d),I=m(h);const A=["*"];function E(e,t){if(1&e&&(g.\u0275\u0275elementStart(0,"div",5),g.\u0275\u0275text(1),g.\u0275\u0275elementEnd()),2&e){const e=t.$implicit;g.\u0275\u0275advance(),g.\u0275\u0275textInterpolate1(" ",e.label," ")}}class O{static{this.\u0275fac=function(e){return new(e||O)}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:O,selectors:[["wm-pickergroup"]],ngContentSelectors:A,decls:2,vars:0,consts:[[1,"app-picker-group"]],template:function(e,t){1&e&&(g.\u0275\u0275projectionDef(),g.\u0275\u0275elementStart(0,"div",0),g.\u0275\u0275projection(1),g.\u0275\u0275elementEnd())},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(O,[{type:t.Component,args:[{selector:"wm-pickergroup",template:'\n <div class="app-picker-group">\n <ng-content></ng-content>\n </div>\n '}]}],null,null),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(O,{className:"PickerGroupComponent",filePath:"picker/picker.component.ts",lineNumber:13});class T{constructor(e){this.inj=e,this.change=new t.EventEmitter,this._selectedIndex=0,this._options=[],this.noOfEmptyElements=2,this.$el=$(e.get(t.ElementRef).nativeElement)}set selectedValue(e){this._selectedValue=e,this.reRender()}get selectedValue(){return this._selectedValue}set options(e){this._options=e.map((e=>({label:e.label,value:void 0!==e.value?e.value:e.label}))),this.reRender()}get options(){return this._options}reRender(){this._selectedIndex=this.options.findIndex((e=>e.value===this.selectedValue)),this.pickerAnimator?.select(this._selectedIndex+this.noOfEmptyElements)}set selectedIndex(e){this._selectedIndex=e,this._selectedValue=this.options[e].value,this.change.emit(this.options[e])}get selectedIndex(){return this._selectedIndex}ngAfterViewInit(){this.pickerAnimator=new x(this)}static{this.\u0275fac=function(e){return new(e||T)(g.\u0275\u0275directiveInject(g.Injector))}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:T,selectors:[["wm-picker"]],inputs:{selectedValue:"selectedValue",options:"options"},outputs:{change:"change"},decls:12,vars:1,consts:[[1,"app-picker"],[1,"app-picker-option-container"],[1,"app-picker-option","app-picker-empty-option"],["class","app-picker-option",4,"ngFor","ngForOf"],[1,"app-picker-ruler"],[1,"app-picker-option"]],template:function(e,t){1&e&&(g.\u0275\u0275elementStart(0,"div",0)(1,"div",1)(2,"div",2),g.\u0275\u0275text(3,"E"),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(4,"div",2),g.\u0275\u0275text(5,"E"),g.\u0275\u0275elementEnd(),g.\u0275\u0275template(6,E,2,1,"div",3),g.\u0275\u0275elementStart(7,"div",2),g.\u0275\u0275text(8,"E"),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(9,"div",2),g.\u0275\u0275text(10,"E"),g.\u0275\u0275elementEnd()(),g.\u0275\u0275element(11,"div",4),g.\u0275\u0275elementEnd()),2&e&&(g.\u0275\u0275advance(6),g.\u0275\u0275property("ngForOf",t.options))},dependencies:[f.NgForOf],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(T,[{type:t.Component,args:[{selector:"wm-picker",template:'\n <div class="app-picker">\n <div class="app-picker-option-container">\n <div class="app-picker-option app-picker-empty-option">E</div>\n <div class="app-picker-option app-picker-empty-option">E</div>\n <div *ngFor="let option of options; index as i;" class="app-picker-option">\n {{option.label}}\n </div>\n <div class="app-picker-option app-picker-empty-option">E</div>\n <div class="app-picker-option app-picker-empty-option">E</div>\n </div>\n <div class="app-picker-ruler"></div>\n </div>\n '}]}],(()=>[{type:g.Injector}]),{change:[{type:t.Output}],selectedValue:[{type:t.Input}],options:[{type:t.Input}]}),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(T,{className:"PickerComponent",filePath:"picker/picker.component.ts",lineNumber:34});class x{constructor(e){this.picker=e;let t=e.selectedIndex+e.noOfEmptyElements;const i=e=>t+Math.floor(e/16);this.select(t),this.getElement().swipey({direction:$.fn.swipey.DIRECTIONS.VERTICAL,threshold:10,target:e.$el,onSwipe:(e,t)=>{this.select(i(-1*t.length))},onSwipeEnd:(n,a)=>{const s=i(-1*a.length);this.select(s),t=e.selectedIndex+e.noOfEmptyElements}})}getElement(){return this.picker.$el.find(".app-picker-option-container:first")}getOptionElements(){return this.getElement().find(".app-picker-option")}select(e){const t=this.getOptionElements();if(e<this.picker.noOfEmptyElements||e>=t.length-this.picker.noOfEmptyElements)return;this.getElement().find(".app-picker-option.app-picker-option-selected").removeClass("app-picker-option-selected"),t.eq(e).addClass("app-picker-option-selected"),this.picker.selectedIndex=e-this.picker.noOfEmptyElements;const i=e-this.picker.noOfEmptyElements,n=e+this.picker.noOfEmptyElements;t.each(((t,a)=>{if(t>=i&&t<=n){const i=30*(t-e),n=1-.3*Math.abs(t-e);$(a).css({transform:"perspective(500px) rotateX("+i+"deg)",opacity:n}).show()}else $(a).hide()}))}}const D=["datetimepickerTemplate"];function R(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"bs-datepicker-inline",11),g.\u0275\u0275listener("bsValueChange",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext(2);return g.\u0275\u0275resetView(i.onDateUpdate(t))})),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext(2);g.\u0275\u0275property("bsConfig",e.bsDatepickerConfig)("datesDisabled",e.excludedDatesToDisable)("bsValue",e.changedValue)}}function S(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"wm-timepicker",12),g.\u0275\u0275listener("change",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext(2);return g.\u0275\u0275resetView(i.onTimeUpdate(t))})),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext(2);g.\u0275\u0275property("value",e.changedValue)("min",e.minTime)("max",e.maxTime)}}function _(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"button",13),g.\u0275\u0275listener("click",(function(){g.\u0275\u0275restoreView(e);const t=g.\u0275\u0275nextContext(2);return g.\u0275\u0275resetView(t.setToday())})),g.\u0275\u0275text(1),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext(2);g.\u0275\u0275advance(),g.\u0275\u0275textInterpolate(e.appLocale.LABEL_TODAY_DATE||"Today")}}function M(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"button",14),g.\u0275\u0275listener("click",(function(){g.\u0275\u0275restoreView(e);const t=g.\u0275\u0275nextContext(2);return g.\u0275\u0275resetView(t.onOkClick())})),g.\u0275\u0275text(1),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext(2);g.\u0275\u0275advance(),g.\u0275\u0275textInterpolate(e.appLocale.LABEL_OK||"Ok")}}function N(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"div",1)(1,"div",2),g.\u0275\u0275element(2,"div",3),g.\u0275\u0275template(3,R,1,3,"bs-datepicker-inline",4)(4,S,1,3,"wm-timepicker",5),g.\u0275\u0275elementStart(5,"span",6),g.\u0275\u0275text(6),g.\u0275\u0275elementEnd()(),g.\u0275\u0275elementStart(7,"div",7),g.\u0275\u0275template(8,_,2,1,"button",8)(9,M,2,1,"button",9),g.\u0275\u0275elementStart(10,"button",10),g.\u0275\u0275listener("click",(function(){g.\u0275\u0275restoreView(e);const t=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(t.clear())})),g.\u0275\u0275text(11),g.\u0275\u0275elementEnd()()()}if(2&e){const e=g.\u0275\u0275nextContext();g.\u0275\u0275advance(3),g.\u0275\u0275property("ngIf","DATE_TIME"===e.mode||"DATE"===e.mode),g.\u0275\u0275advance(),g.\u0275\u0275property("ngIf","DATE_TIME"===e.mode||"TIME"===e.mode),g.\u0275\u0275advance(2),g.\u0275\u0275textInterpolate1(" ",e.getDateLabel()," "),g.\u0275\u0275advance(2),g.\u0275\u0275property("ngIf","DATE_TIME"===e.mode||"DATE"===e.mode),g.\u0275\u0275advance(),g.\u0275\u0275property("ngIf","DATE_TIME"===e.mode||"TIME"===e.mode),g.\u0275\u0275advance(2),g.\u0275\u0275textInterpolate(e.appLocale.LABEL_CLEAR_DATE||"Clear")}}class k{constructor(e,i){this.inj=e,this.bsModalService=i,this.isDateOpen=!0,this.isTimeOpen=!1,this.mode="DATE_TIME",this.placement="MODAL",this.change=new t.EventEmitter,this._value=new Date,this.changedValue=null,this.appLocale=e.get(l.App).appLocale||{}}set value(e){e=e||new Date,this._value=e,this.changedValue=e}set bsDatepickerConfig(e){this._bsDatepickerConfig=e,this._bsDatepickerConfig.showClearButton=!1,this._bsDatepickerConfig.showTodayButton=!1}set excludedDaysToDisable(e){this._bsDatepickerConfig.daysDisabled=e}get bsDatepickerConfig(){return this._bsDatepickerConfig}set displayFormat(e){e&&(this._displayFormat=e.replace(/y/g,"Y").replace(/d/g,"D").replace("a","A"))}validateSelectedDate(){if(!this.changedValue)return!0;const e=moment(this.changedValue),t=this._bsDatepickerConfig?.minDate,i=this._bsDatepickerConfig?.maxDate;if(t&&("DATE"===this.mode&&moment(t).startOf("day").toDate()>this.changedValue||"DATE"!==this.mode&&t>this.changedValue))return!1;if(i&&("DATE"===this.mode&&moment(i).endOf("day").toDate()<this.changedValue||"DATE"!==this.mode&&i<this.changedValue))return!1;if(this._bsDatepickerConfig?.daysDisabled?.indexOf(e.day())>=0)return!1;const n=e.startOf("day").toDate().getTime();return!this.excludedDatesToDisable?.find((e=>e.getTime()===n))}get displayFormat(){if(this._displayFormat)return this._displayFormat}hightlightToday(){const e=(new Date).getDate().toString();p.filter($(`body > modal-container .date-picker-modal span:contains(${e})`).not(".is-other-month,.current-date"),(t=>{$(t).text()===e&&$(t).addClass("current-date text-info")}))}hideOnClick(){$("body>modal-container .date-picker-modal .app-datetime-picker").click((e=>e.stopPropagation())),$("body>modal-container .date-picker-modal").click((()=>this.onCancelClick()))}getDateLabel(){return moment(this.changedValue).format(this.displayFormat)}openDatePicker(){this.isTimeOpen=!1,this.isDateOpen=!0}openTimePicker(){this.isTimeOpen=!0,this.isDateOpen=!1}onDateUpdate(e){const t=this.changedValue;"DATE"===this.mode?(e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)):t&&e&&(e.setHours(t.getHours()),e.setMinutes(t.getMinutes()),e.setSeconds(t.getSeconds()),e.setMilliseconds(t.getMilliseconds())),this.changedValue=e,"DATE"===this.mode&&t!==e&&this.validateSelectedDate()&&this.onOkClick()}onTimeUpdate(e){this.changedValue=e}show(){this.reset(),this.modalRef=this.bsModalService.show(this.datetimepickerTemplate,{animated:!0,backdrop:"static",class:"date-picker-modal modal-dialog-centered"}),setTimeout((()=>{this.hideOnClick()}),500)}clear(){this.changedValue=null,this.triggerChange(),this.hideModal()}setToday(){const e=moment().startOf("day").toDate();this.onDateUpdate(e)}reset(){this.changedValue=this._value}hideModal(){this.modalRef?.id&&this.bsModalService.hide(this.modalRef.id)}onCancelClick(){this.changedValue=this._value,this.hideModal()}onOkClick(){this.validateSelectedDate()&&this.triggerChange(),this.hideModal()}triggerChange(){this.value!==this.changedValue&&this.change.emit(this.changedValue)}ngAfterViewInit(){}ngOnDestroy(){this.hideModal()}static{this.\u0275fac=function(e){return new(e||k)(g.\u0275\u0275directiveInject(g.Injector),g.\u0275\u0275directiveInject(P.BsModalService))}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:k,selectors:[["wm-datetimepicker"]],viewQuery:function(e,t){if(1&e&&g.\u0275\u0275viewQuery(D,7),2&e){let e;g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.datetimepickerTemplate=e.first)}},inputs:{mode:"mode",placement:"placement",_bsDatepickerConfig:[g.\u0275\u0275InputFlags.None,"config","_bsDatepickerConfig"],minTime:"minTime",maxTime:"maxTime",_displayFormat:"_displayFormat",excludedDatesToDisable:"excludedDatesToDisable",value:"value",bsDatepickerConfig:[g.\u0275\u0275InputFlags.None,"config","bsDatepickerConfig"],excludedDaysToDisable:"excludedDaysToDisable",displayFormat:"displayFormat"},outputs:{change:"change"},decls:2,vars:0,consts:[["datetimepickerTemplate",""],[1,"app-datetime-picker"],[1,"modal-body"],[1,"mobile-datetime-picker-options"],["bsDatepicker","",3,"bsConfig","datesDisabled","bsValue","bsValueChange",4,"ngIf"],[3,"value","min","max","change",4,"ngIf"],[1,"text-primary","date-picker-value"],[1,"modal-footer"],["class","btn btn-secondary today-btn",3,"click",4,"ngIf"],["class","btn btn-primary pull-right ok-btn",3,"click",4,"ngIf"],[1,"btn","btn-secondary","pull-right","clear-btn",3,"click"],["bsDatepicker","",3,"bsValueChange","bsConfig","datesDisabled","bsValue"],[3,"change","value","min","max"],[1,"btn","btn-secondary","today-btn",3,"click"],[1,"btn","btn-primary","pull-right","ok-btn",3,"click"]],template:function(e,t){1&e&&g.\u0275\u0275template(0,N,12,6,"ng-template",null,0,g.\u0275\u0275templateRefExtractor)},dependencies:()=>[f.NgIf,b.BsDatepickerDirective,b.BsDatepickerInlineDirective,L],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(k,[{type:t.Component,args:[{selector:"wm-datetimepicker",template:'\n <ng-template #datetimepickerTemplate>\n <div class="app-datetime-picker">\n <div class="modal-body">\n <div class="mobile-datetime-picker-options">\n\n </div>\n <bs-datepicker-inline\n [bsConfig]="bsDatepickerConfig"\n [datesDisabled]="excludedDatesToDisable"\n bsDatepicker\n [bsValue]="changedValue"\n (bsValueChange)="onDateUpdate($event)"\n *ngIf="mode === \'DATE_TIME\' || mode === \'DATE\'">\n </bs-datepicker-inline>\n <wm-timepicker\n [value]="changedValue"\n [min]="minTime"\n [max]="maxTime"\n (change)="onTimeUpdate($event)"\n *ngIf="mode === \'DATE_TIME\' || mode === \'TIME\'"></wm-timepicker>\n <span class="text-primary date-picker-value">\n {{getDateLabel()}}\n </span>\n </div>\n <div class="modal-footer">\n <button\n *ngIf="mode === \'DATE_TIME\' || mode === \'DATE\'"\n class="btn btn-secondary today-btn"\n (click)="setToday()">{{appLocale.LABEL_TODAY_DATE || "Today" }}</button>\n <button\n class="btn btn-primary pull-right ok-btn"\n *ngIf="mode === \'DATE_TIME\' || mode === \'TIME\'"\n (click)="onOkClick()">{{appLocale.LABEL_OK || "Ok" }}</button>\n <button\n class="btn btn-secondary pull-right clear-btn"\n (click)="clear()">{{appLocale.LABEL_CLEAR_DATE || "Clear" }}</button>\n </div>\n </div>\n </ng-template>\n '}]}],(()=>[{type:g.Injector},{type:P.BsModalService}]),{datetimepickerTemplate:[{type:t.ViewChild,args:["datetimepickerTemplate",{static:!0}]}],mode:[{type:t.Input}],placement:[{type:t.Input}],_bsDatepickerConfig:[{type:t.Input,args:["config"]}],minTime:[{type:t.Input}],maxTime:[{type:t.Input}],_displayFormat:[{type:t.Input}],change:[{type:t.Output}],excludedDatesToDisable:[{type:t.Input}],value:[{type:t.Input}],bsDatepickerConfig:[{type:t.Input,args:["config"]}],excludedDaysToDisable:[{type:t.Input}],displayFormat:[{type:t.Input}]}),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(k,{className:"DateTimePickerComponent",filePath:"date-time/date-time-picker.component.ts",lineNumber:54});class L{constructor(e){this.inj=e,this.options={hour:[],minute:[],second:[],meridian:["AM","PM"]},this.value=new Date,this.min=null,this.max=null,this.change=new t.EventEmitter,this.options.hour=this.populateNumbers(0,23),this.options.minute=this.populateNumbers(0,59),this.options.second=this.populateNumbers(0,59)}populateNumbers(e,t){const i=[];for(let n=e;n<=t;n++)i.push({label:(n<10?"0":"")+n,value:n});return i}set({index:e,value:t},i){"HOUR"===i?this.value=moment(this.value).hour(parseInt(t)).toDate():"MINUTE"===i?this.value=moment(this.value).minute(parseInt(t)).toDate():"SECOND"===i?this.value=moment(this.value).second(parseInt(t)).toDate():"MERIDIAN"===i&&(this.value=moment(this.value).minute(t).toDate()),this.min&&this.value<this.min&&(this.value=this.min),this.max&&this.value>this.max&&(this.value=this.max),this.change.emit(this.value)}get hour(){return moment(this.value).hour()}get minute(){return moment(this.value).minute()}get second(){return moment(this.value).second()}get meridian(){return"AM"}onDateUpdate(e){}ngAfterViewInit(){}static{this.\u0275fac=function(e){return new(e||L)(g.\u0275\u0275directiveInject(g.Injector))}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:L,selectors:[["wm-timepicker"]],inputs:{value:"value",min:"min",max:"max"},outputs:{change:"change"},decls:8,vars:6,consts:[[3,"change","options","selectedValue"],[1,"app-time-separator"]],template:function(e,t){1&e&&(g.\u0275\u0275elementStart(0,"wm-pickergroup")(1,"wm-picker",0),g.\u0275\u0275listener("change",(function(e){return t.set(e,"HOUR")})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(2,"span",1),g.\u0275\u0275text(3,":"),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(4,"wm-picker",0),g.\u0275\u0275listener("change",(function(e){return t.set(e,"MINUTE")})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(5,"span",1),g.\u0275\u0275text(6,":"),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(7,"wm-picker",0),g.\u0275\u0275listener("change",(function(e){return t.set(e,"SECOND")})),g.\u0275\u0275elementEnd()()),2&e&&(g.\u0275\u0275advance(),g.\u0275\u0275property("options",t.options.hour)("selectedValue",t.hour),g.\u0275\u0275advance(3),g.\u0275\u0275property("options",t.options.minute)("selectedValue",t.minute),g.\u0275\u0275advance(3),g.\u0275\u0275property("options",t.options.minute)("selectedValue",t.second))},dependencies:[T,O],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(L,[{type:t.Component,args:[{selector:"wm-timepicker",template:'\n <wm-pickergroup>\n <wm-picker\n [options]="options.hour"\n [selectedValue]="hour"\n (change)="set($event, \'HOUR\')"></wm-picker>\n <span class="app-time-separator">:</span>\n <wm-picker\n [options]="options.minute"\n [selectedValue]="minute"\n (change)="set($event, \'MINUTE\')"></wm-picker>\n <span class="app-time-separator">:</span>\n <wm-picker\n [options]="options.minute"\n [selectedValue]="second"\n (change)="set($event, \'SECOND\')"></wm-picker>\n </wm-pickergroup>\n '}]}],(()=>[{type:g.Injector}]),{value:[{type:t.Input}],min:[{type:t.Input}],max:[{type:t.Input}],change:[{type:t.Output}]}),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(L,{className:"TimePickerComponent",filePath:"date-time/date-time-picker.component.ts",lineNumber:305});const F="CURRENT_DATE",j=["January","February","March","April","May","June","July","August","September","October","November","December"],B="default",V="default";function G(e){return Object.assign(new o.TimepickerConfig,{meridians:i.getLocaleDayPeriods(e.getSelectedLocale(),i.FormStyle.Format,i.TranslationWidth.Abbreviated)})}class W extends c.BaseFormCustomComponent{get timeZone(){return this.inj.get(l.AbstractI18nService).getTimezone(this)}constructor(e,t,n){super(e,t,n),this.isReadOnly=!1,this.clicked=!1,this.formatsByLocale={timezone:""},this._dateOptions=new a.BsDatepickerConfig,this.i18nService=this.inj.get(l.AbstractI18nService),this.invokeEventCallback("beforeload"),this.datePipe=this.inj.get(r.ToDatePipe),this.selectedLocale=this.i18nService.getSelectedLocale(),this._dateOptions.todayPosition="left",this._dateOptions.clearPosition="right",this.meridians=i.getLocaleDayPeriods(this.selectedLocale,i.FormStyle.Format,i.TranslationWidth.Abbreviated),this.loadNativeDateInput=l.isMobile()&&!this.showcustompicker,this.cancelLocaleChangeSubscription=this.getAppInstance().subscribe("locale-changed",(e=>{this.datePipe.datePipe.locale=e.angular,this._dateOptions.todayButtonLabel=this.i18nService.getLocalizedMessage("LABEL_TODAY_DATE"),this._dateOptions.clearButtonLabel=this.i18nService.getLocalizedMessage("LABEL_CLEAR_DATE")}))}isDropDownDisplayEnabledOnInput(e){return e===B}isDataEntryModeEnabledOnInput(e){return e===V}showValidation(e,t,i,n){if(i)return console.warn("min max date validation failed ",n),$(e.target).val(t)}resetDisplayInput(){$(this.nativeElement).find(".display-input").val("")}validate(e){return this.invalidDateTimeFormat?{invalidDateTimeFormat:{valid:!1}}:!p.isUndefined(this.dateNotInRange)&&this.dateNotInRange?{dateNotInRange:{valid:!1}}:!p.isUndefined(this.timeNotInRange)&&this.timeNotInRange?{timeNotInRange:{valid:!1}}:this.show&&this.required?e.value?null:{required:!0}:(this.validateType="",null)}formatValidation(e,t,i){const n=this.datepattern||this.timepattern,a=this.timeZone,s=l.getFormattedDate(this.datePipe,e,n,a,null,null,this);if(t=t.trim())if("timestamp"===n){if(!p.isNaN(t)&&p.parseInt(t)!==s)return this.invalidDateTimeFormat=!0,this.validateType="incorrectformat",this.invokeOnChange(this.datavalue,void 0,!1),!1}else if(i&&(t=l.getFormattedDate(this.datePipe,t,n,a)),t!==s)return this.invalidDateTimeFormat=!0,this.validateType="incorrectformat",this.invokeOnChange(this.datavalue,void 0,!1),!1;return!0}minDateMaxDateValidationOnInput(e,t,i,n){if(e){const a=e;e=moment(e).startOf("day").toDate();const s=moment(l.getDateObj(this.mindate)).startOf("day").toDate(),o=moment(l.getDateObj(this.maxdate)).startOf("day").toDate();if(this.mindate&&e<s){const e=`${this.appLocale.LABEL_MINDATE_VALIDATION_MESSAGE} ${this.mindate}.`;return this.invokeOnChange(this.datavalue,void 0,!1),n&&l.getFormattedDate(this.datePipe,s,this.datepattern,this.timeZone,null,null,this)===i?$(t.target).val(i):(this.dateNotInRange=!0,this.validateType="mindate",this.showValidation(t,i,n,e))}if(this.maxdate&&e>o){const e=`${this.appLocale.LABEL_MAXDATE_VALIDATION_MESSAGE} ${this.maxdate}.`;return this.invokeOnChange(this.datavalue,void 0,!1),n&&l.getFormattedDate(this.datePipe,o,this.datepattern,this.timeZone,null,null,this)===i?$(t.target).val(i):(this.dateNotInRange=!0,this.validateType="maxdate",this.showValidation(t,i,n,e))}if(this.excludedates){let e;if(e=p.isString(this.excludedates)?p.split(this.excludedates,","):this.excludedates,e=e.map((e=>l.getFormattedDate(this.datePipe,e,this.datepattern,this.timeZone,null,null,this))),e.indexOf(l.getFormattedDate(this.datePipe,a,this.datepattern,this.timeZone,null,null,this))>-1)return this.dateNotInRange=!0,this.validateType="excludedates",void this.invokeOnChange(this.datavalue,void 0,!1)}if(this.excludedays){const e=p.split(this.excludedays,","),t=p.get(a,"getDay")?a.getDay():a;if(e.indexOf(t.toString())>-1)return this.dateNotInRange=!0,this.validateType="excludedays",void this.invokeOnChange(this.datavalue,void 0,!1)}}n||(this.dateNotInRange=!1,this.invokeOnChange(this.datavalue,void 0,!1))}hightlightToday(e){const t=$(".bs-datepicker-head .current").first().text(),i=$(".bs-datepicker-head .current").eq(1).text(),n=new Date(e).toLocaleString("default",{month:"long"});if(e.getFullYear().toString(),t==n&&i==(new Date).getFullYear()&&e.getDate()===(new Date).getDate()&&e.getMonth()===(new Date).getMonth()&&e.getFullYear()===(new Date).getFullYear()){const e=(new Date).getDate().toString();p.filter($(`span:contains(${e})`).not(".is-other-month"),(t=>{$(t).text()===e&&$(t).addClass("current-date text-info")}))}}isOtheryear(e){return 0===e.getMonth()&&11===this.activeDate.getMonth()||11===e.getMonth()&&0===this.activeDate.getMonth()}showDatePickerModal(e){this.activeDate=e||new Date,this.setNextData(this.activeDate),this.datetimepickerComponent.show(),setTimeout((()=>{this.addDatepickerMouseEvents(),this.setActiveDateFocus(this.activeDate,!0)}),500)}goToOtherMonthOryear(e,t){const i=$(`.bs-datepicker-head .${e}`);i.attr("disabled")||(i.trigger("click"),"days"===t?this.loadDays():"month"===t?this.loadMonths():"year"===t&&this.loadYears())}setActiveDateFocus(e,t){this.setNextData(e),this.clicked=!1;const i=this.activeDate.getMonth();t||(e.getMonth()<i?this.isOtheryear(e)?this.goToOtherMonthOryear("next","days"):this.goToOtherMonthOryear("previous","days"):e.getMonth()>i&&(this.isOtheryear(e)?this.goToOtherMonthOryear("previous","days"):this.goToOtherMonthOryear("next","days"))),setTimeout((()=>{const t=e.getDate().toString();p.filter($(`span:contains(${t})`).not(".is-other-month"),(i=>{const n=$(".bs-datepicker-head .current").first().text(),a=$(".bs-datepicker-head .current").eq(1).text(),s=(new Date).toLocaleString("default",{month:"long"});$(i).text()===t&&n==s&&a==(new Date).getFullYear()&&($(i).hasClass("selected")&&$(i).parent().attr("aria-selected","true"),$(i).attr("aria-label",moment(e).format("dddd, MMMM Do YYYY")),$("[bsdatepickerdaydecorator]").not(".is-other-month").attr("tabindex","-1"),$(i).attr("tabindex","0"),$(i).focus(),this.activeDate=e)})),e.getDate()===(new Date).getDate()&&e.getMonth()===(new Date).getMonth()&&e.getFullYear()===(new Date).getFullYear()&&this.hightlightToday(e)}))}getMonth(e,t){const i=new Date(e);let n=i.getMonth();const a=i.getFullYear();n+=t;const s=new Date(a,n),o=s.toLocaleString("en-US",{month:"long"});return{date:s,fullMonth:o}}setFocusForMonthOrDay(){const e=$(".bs-datepicker-head .current").first().text(),t=$(".bs-datepicker-body");if(t.find("table.months").length>0){p.parseInt(e)!==this.activeDate.getFullYear()&&this.loadMonths();const t=new Date(p.parseInt(e),this.activeDate.getMonth(),this.activeDate.getDate());this.setActiveMonthFocus(t,!0)}else if(t.find("table.days").length>0){const t=j.indexOf(e);t!==this.activeDate.getMonth()&&this.loadDays();const i=new Date(this.activeDate.getFullYear(),t,1);this.setActiveDateFocus(i,!0)}}setFocusForCurrentMonthOryear(){const e=$(".bs-datepicker-body");e.find("table.months").length>0?(this.loadMonths(),this.setActiveMonthFocus(this.activeDate,!0)):e.find("table.years").length>0&&(this.loadYears(),this.setActiveYearFocus(this.activeDate,!0))}setFocusForDate(e){const t=$(".bs-datepicker-body");if(t.find("table.months").length>0){this.loadMonths();const t=new Date(this.activeDate.getFullYear()+e,0,this.activeDate.getDate());this.setActiveMonthFocus(t,!0)}else if(t.find("table.years").length>0){this.loadYears();const e=t.find("table.years span").first().text(),i=new Date(p.parseInt(e),this.activeDate.getMonth(),this.activeDate.getDate());this.setActiveYearFocus(i,!0)}else if(t.find("table.days").length>0){this.loadDays();const t=new Date(this.activeDate.getFullYear(),this.activeDate.getMonth()+e,1);this.setActiveDateFocus(t,!0)}}addDatepickerKeyboardEvents(e,t){this.elementScope=e;const i=document.querySelector(`.${e.dateContainerCls}`);l.setAttr(i,"tabindex","0"),i.onkeydown=e=>{if("Escape"===e.key){this.elementScope.hideDatepickerDropdown();const e=this.elementScope.nativeElement.querySelector(".display-input");setTimeout((()=>e.focus()))}},this.loadDays(),this.setActiveDateFocus(this.activeDate)}setNextData(e){this.next=this.getMonth(e,1),this.prev=this.getMonth(e,-1)}loadDays(){setTimeout((()=>{$("[bsdatepickerdaydecorator]").not(".is-other-month").attr("tabindex","0"),this.addKeyBoardEventsForDays(),this.addDatepickerMouseEvents()}))}addKeyBoardEventsForDays(){$(".bs-datepicker-body").keydown((e=>{let t;if("ArrowDown"===e.key)e.preventDefault(),t=moment(this.activeDate).add(7,"days").toDate(),this.setActiveDateFocus(t);else if(e.ctrlKey&&"ArrowUp"===e.key)$(".bs-datepicker-head .current").first().click(),this.loadMonths(),this.setActiveMonthFocus(this.activeDate);else if("ArrowUp"===e.key)e.preventDefault(),t=moment(this.activeDate).add(-7,"days").toDate(),this.setActiveDateFocus(t);else if("ArrowLeft"===e.key)t=moment(this.activeDate).add(-1,"days").toDate(),this.setActiveDateFocus(t);else if("ArrowRight"===e.key)t=moment(this.activeDate).add(1,"days").toDate(),this.setActiveDateFocus(t);else if("PageUp"===e.key)e.preventDefault(),t=moment(this.activeDate).add(-1,"month").toDate(),this.setActiveDateFocus(t);else if("PageDown"===e.key)e.preventDefault(),t=moment(this.activeDate).add(1,"month").toDate(),this.setActiveDateFocus(t);else if("Enter"===e.key){if($(document.activeElement).hasClass("disabled"))return;$(document.activeElement).click(),this.elementScope.hideDatepickerDropdown();const e=this.elementScope.nativeElement.querySelector(".display-input");setTimeout((()=>e.focus()))}})),this.focusBlurDatePickerHeadButtons()}focusBlurDatePickerHeadButtons(){const e=$(".bs-datepicker-head button");e.on("focus",(function(){$(this).css("background-color","#9AA0A3")})),e.on("blur",(function(){$(this).css("background-color","")}))}loadMonths(){setTimeout((()=>{this.addKeyBoardEventsForMonths(),this.addDatepickerMouseEvents()}))}addKeyBoardEventsForMonths(){$(".bs-datepicker-body").keydown((e=>{let t;if(e.ctrlKey&&"ArrowDown"===e.key||"Enter"===e.key){if($(document.activeElement).parent().hasClass("disabled"))return;$(document.activeElement).click(),this.loadDays();const e=new Date(this.activeDate.getFullYear(),this.activeDate.getMonth(),1);this.setActiveDateFocus(e)}else e.ctrlKey&&"ArrowUp"===e.key?($(".bs-datepicker-head .current").first().click(),this.loadYears(),this.setActiveYearFocus(this.activeDate)):"ArrowDown"===e.key?(e.preventDefault(),t=moment(this.activeDate).add(3,"month").toDate(),this.setActiveMonthFocus(t)):"ArrowUp"===e.key?(e.preventDefault(),t=moment(this.activeDate).add(-3,"month").toDate(),this.setActiveMonthFocus(t)):"ArrowLeft"===e.key?(t=moment(this.activeDate).add(-1,"month").toDate(),this.setActiveMonthFocus(t)):"ArrowRight"===e.key&&(t=moment(this.activeDate).add(1,"month").toDate(),this.setActiveMonthFocus(t))})),this.focusBlurDatePickerHeadButtons()}loadYears(){setTimeout((()=>{this.addKeyBoardEventsForYears(),this.addDatepickerMouseEvents()}))}setActiveMonthFocus(e,t){this.setNextData(e);const i=j[e.getMonth()];t||(e.getFullYear()<this.activeDate.getFullYear()?this.goToOtherMonthOryear("previous","month"):e.getFullYear()>this.activeDate.getFullYear()&&this.goToOtherMonthOryear("next","month")),setTimeout((()=>{$(".bs-datepicker-body table.months span").attr("tabindex","-1"),$(`.bs-datepicker-body table.months span:contains(${i})`).attr("tabindex","0"),$(`.bs-datepicker-body table.months span:contains(${i})`).focus(),this.activeDate=e}))}addKeyBoardEventsForYears(){$(".bs-datepicker-body").keydown((e=>{let t;if(e.ctrlKey&&"ArrowDown"===e.key||"Enter"===e.key){if($(document.activeElement).parent().hasClass("disabled"))return;$(document.activeElement).click(),this.loadMonths(),this.setActiveMonthFocus(this.activeDate)}else"ArrowDown"===e.key?(e.preventDefault(),t=moment(this.activeDate).add(4,"year").toDate(),this.setActiveYearFocus(t)):"ArrowUp"===e.key?(e.preventDefault(),t=moment(this.activeDate).add(-4,"year").toDate(),this.setActiveYearFocus(t)):"ArrowLeft"===e.key?(t=moment(this.activeDate).add(-1,"year").toDate(),this.setActiveYearFocus(t)):"ArrowRight"===e.key&&(t=moment(this.activeDate).add(1,"year").toDate(),this.setActiveYearFocus(t))})),this.focusBlurDatePickerHeadButtons()}setActiveYearFocus(e,t){const i=e.getFullYear(),n=$(".bs-datepicker-body table.years span"),a=n.first().text(),s=n.last().text();t||(e.getFullYear()<p.parseInt(a)?this.goToOtherMonthOryear("previous","year"):e.getFullYear()>p.parseInt(s)&&this.goToOtherMonthOryear("next","year")),setTimeout((()=>{$(".bs-datepicker-body table.years span").attr("tabindex","-1"),$(`.bs-datepicker-body table.years span:contains(${i})`).attr("tabindex","0"),$(`.bs-datepicker-body table.years span:contains(${i})`).focus(),this.activeDate=e}))}focusTimePickerPopover(e){this.elementScope=e,this.elementScope.ngZone.runOutsideAngular((()=>{setTimeout((()=>{$("timepicker .form-group").first().find("> input.form-control").focus()}))}))}bindTimePickerKeyboardEvents(){setTimeout((()=>{const e=$("body").find("> bs-dropdown-container timepicker");e.attr("tabindex",0),this.addEventsOnTimePicker(e)}))}focusOnInputEl(){$(this.nativeElement).closest(".caption-floating").length>0&&setTimeout((()=>{$(this.nativeElement).find(".app-textbox").focus()}),100)}isValidDate(e){return e&&e instanceof Date&&!isNaN(e.getTime())}timeFormatValidation(){const e=$(this.nativeElement).find("input").val(),t=l.getNativeDateObject(e,{meridians:this.meridians,pattern:this.datepattern});this.formatValidation(t,e)&&(this.invalidDateTimeFormat=!1,this.invokeOnChange(this.datavalue,void 0,!1))}updateTimeValue(e,t,i){let n=e.find('input[aria-label="minutes"]'),a=e.find('input[aria-label="seconds"]');n.value=a.value="00",t.length<2?setTimeout((()=>{"minutes"===i?this.bsTimePicker.updateMinutes(n):this.bsTimePicker.updateSeconds(a)}),500):"minutes"===i?this.bsTimePicker.updateMinutes(n):this.bsTimePicker.updateSeconds(a)}addEventsOnTimePicker(e){const t=e.find(".bs-timepicker-field");t.first().on("keyup",(i=>{const n=i.target.value;p.forEach(t,((t,a)=>{if(i.target!==t&&""===t.value&&n.length){const t=1===a?"minutes":"seconds";this.updateTimeValue(e,n,t)}}))})),this.removeKeyupListener=()=>{t.first().off("keyup")},e.on("keydown",(e=>{const t=$(e.target),i=t.parent(),n=this.elementScope;let a,s;if("Escape"===e.key&&n.hideTimepickerDropdown(),t.hasClass("bs-timepicker-field")){if(i.is(":first-child")?(e.shiftKey&&"Tab"===e.key||"Enter"===e.key||"Escape"===e.key)&&(n.setIsTimeOpen(!1),this.focus(),a=!0,s=!0):i.is(":last-child")||i.next().next().find("button.disabled").length?"Tab"!==e.key&&"Escape"!==e.key&&"Enter"!==e.key||(n.setIsTimeOpen(!1),this.focus(),a=!0,s=!0):"Enter"!==e.key&&"Escape"!==e.key||(n.setIsTimeOpen(!1),this.focus(),a=!0,s=!0),a&&e.stopPropagation(),s&&e.preventDefault(),n.mintime&&n.maxtime&&!this.isValidDate(n.bsTimeValue)&&("ArrowDown"===e.key?n.bsTimeValue=n.maxTime:"ArrowUp"===e.key&&(n.bsTimeValue=n.minTime)),"Tab"===e.key){this.invalidDateTimeFormat=!1,this.invokeOnChange(this.datavalue,void 0,!1);const e=this.datepattern||this.timepattern;l.getFormattedDate(n.datePipe,n.bsTimeValue,e,this.timeZone,null,null,this)===n.displayValue&&$(this.nativeElement).find(".display-input").val(n.displayValue)}"ArrowDown"!==e.key&&"ArrowUp"!==e.key||this.timeFormatValidation()}else t.hasClass("btn-default")&&("Tab"!==e.key&&"Escape"!==e.key||(n.setIsTimeOpen(!1),this.focus()))})),e.find("a").on("click",(e=>{const t=this.elementScope,i=$(e.target);t.mintime&&t.maxtime&&!this.isValidDate(t.bsTimeValue)&&(i.find("span").hasClass("bs-chevron-down")?t.bsTimeValue=t.maxTime:i.find("span").hasClass("bs-chevron-up")&&(t.bsTimeValue=t.minTime)),this.timeFormatValidation()}))}updateFormat(e){"datepattern"===e?(this._dateOptions.dateInputFormat=this.datepattern,this.showseconds=p.includes(this.datepattern,"s"),this.ismeridian=p.includes(this.datepattern,"h")):"timepattern"===e&&(this.showseconds=p.includes(this.timepattern,"s"),this.ismeridian=p.includes(this.timepattern,"h"))}getMobileInput(){return this.nativeElement.querySelector(".mobile-input")}onDateTimeInputBlur(){const e=this.getMobileInput();if(e&&!l.hasCordova()){const t=this.nativeElement.children;for(let e=0;e<t.length;e++)t[e].classList.remove("add-opacity");e.classList.remove("remove-opacity")}}onDateTimeInputFocus(e=!1){if(!this.loadNativeDateInput)return;const t=this.getMobileInput();if(!e||l.hasCordova())t&&this._triggeredByUser&&(t.focus(),t.click());else{const e=this.nativeElement.children;for(let t=0;t<e.length;t++)e[t].classList.add("add-opacity");t.classList.add("remove-opacity")}}getCordovaPluginDatePickerApi(){if(l.isIos())return p.get(window,"cordova.wavemaker.datePicker.selectDate")}addDatepickerMouseEvents(){$(".bs-datepicker-head .previous span").attr("aria-hidden","true"),$(".bs-datepicker-head .next span").attr("aria-hidden","true"),$(".bs-datepicker-head").on("click",".previous",(e=>{this.next=this.getMonth(this.activeDate,0),this.prev=this.getMonth(this.activeDate,-2),this.clicked=!0,e.originalEvent&&this.setFocusForDate(-1);var t=this.getMonth(this.activeDate,-1);setTimeout((()=>{$(".bs-datepicker-head .previous span").attr("aria-hidden","true"),$(".bs-datepicker-head .next span").attr("aria-hidden","true"),$(".bs-datepicker-head .next").attr("aria-label",`Next Month, ${this.next.fullMonth} ${this.next.date.getFullYear()}`),$(".bs-datepicker-head .previous").attr("aria-label",`Previous Month, ${this.prev.fullMonth} ${this.prev.date.getFullYear()}`),$(".bs-datepicker-head .current").first().append(`<h2 aria-hidden="false" aria-atomic="true" aria-live='polite' class="sr-only">Changed to Previous Month, ${t.fullMonth} and year ${t.date.getFullYear()}</h2>`),$(".bs-datepicker-head").on("focus",".current",(function(){$(".bs-datepicker-head .current").find("h2").remove()})),$(".bs-datepicker-head .previous").focus()}))})),$(".bs-datepicker-head").on("click",".next",(e=>{this.next=this.getMonth(this.activeDate,2),this.prev=this.getMonth(this.activeDate,0),this.clicked=!0,e.originalEvent&&this.setFocusForDate(1);var t=this.getMonth(this.activeDate,1);setTimeout((()=>{$(".bs-datepicker-head .previous span").attr("aria-hidden","true"),$(".bs-datepicker-head .next span").attr("aria-hidden","true"),$(".bs-datepicker-head .next").attr("aria-label",`Next Month, ${this.next.fullMonth} ${this.next.date.getFullYear()}`),$(".bs-datepicker-head .previous").attr("aria-label",`Previous Month, ${this.prev.fullMonth} ${this.prev.date.getFullYear()}`),$(".bs-datepicker-head .current").first().append(`<h2 aria-hidden="false" aria-atomic="true" aria-live='polite' class="sr-only">Changed to Next Month, ${t.fullMonth} and year ${t.date.getFullYear()}</h2>`),$(".bs-datepicker-head").on("focus",".current",(function(){$(".bs-datepicker-head .current").find("h2").remove()})),$(".bs-datepicker-head .next").focus()}))})),$(".bs-datepicker-head").on("click",".current",(e=>{e.originalEvent&&this.setFocusForCurrentMonthOryear()})),$(".bs-datepicker-body").on("click",".bs-datepicker-action-buttons",(e=>{e.stopPropagation(),e.originalEvent&&this.setFocusForMonthOrDay()})),$(".bs-datepicker-head .next").attr("aria-label",`Next Month, ${this.next.fullMonth} ${this.next.date.getFullYear()}`),$(".bs-datepicker-head .previous").attr("aria-label",`Previous Month, ${this.prev.fullMonth} ${this.prev.date.getFullYear()}`)}blurDateInput(e){const t=this.nativeElement.querySelector(".display-input");e&&setTimeout((()=>t.blur()))}onPropertyChange(e,t,i){"tabindex"!==e&&("required"!==e?"datepattern"===e?this.updateFormat(e):"showweeks"===e?this._dateOptions.showWeekNumbers=t:"mindate"===e?(this._dateOptions.minDate=t===F?this.mindate=new Date:l.getDateObj(t),this.minDateMaxDateValidationOnInput(this.datavalue)):"maxdate"===e?(this._dateOptions.maxDate=t===F?this.maxdate=new Date:l.getDateObj(t),this.minDateMaxDateValidationOnInput(this.datavalue)):"excludedates"===e||"excludedays"===e?(this.excludedays&&(this.excludedDaysToDisable=p.split(this.excludedays,",").map((e=>+e))),this.excludedates&&(this.excludedDatesToDisable=this.excludedates,p.isString(this.excludedates)&&(this.excludedDatesToDisable=p.split(this.excludedates,",")),this.excludedDatesToDisable=this.excludedDatesToDisable.map((e=>l.getDateObj(e)))),this.minDateMaxDateValidationOnInput(this.datavalue)):"selectfromothermonth"===e?this._dateOptions.selectFromOtherMonth=t:"todaybutton"===e?this._dateOptions.showTodayButton=t:"clearbutton"===e?this._dateOptions.showClearButton=t:"todaybuttonlabel"===e?this._dateOptions.todayButtonLabel=this.i18nService.getLocalizedMessage(t)||t:"clearbuttonlabel"===e?this._dateOptions.clearButtonLabel=this.i18nService.getLocalizedMessage(t)||t:"showcustompicker"===e?this.loadNativeDateInput=l.isMobile()&&!this.showcustompicker:"adaptiveposition"===e?this._dateOptions.adaptivePosition=t:super.onPropertyChange(e,t,i):this._onChange(this.datavalue))}ngAfterViewInit(){super.ngAfterViewInit(),this.containerTarget=r.getContainerTargetClass(this.nativeElement),this.isReadOnly="undefined"!=this.dataentrymode&&!this.isDataEntryModeEnabledOnInput(this.dataentrymode);const e=this.getMobileInput();e&&setTimeout((()=>{e.style.width="100%",e.style.height="100%"}))}ngOnDestroy(){this.dateOnShowSubscription&&this.dateOnShowSubscription.unsubscribe(),this.cancelLocaleChangeSubscription&&this.cancelLocaleChangeSubscription(),super.ngOnDestroy()}ngOnDetach(){this.datetimepickerComponent?.hideModal()}setTimezone(e){this.i18nService.setTimezone(e,this)}static{this.\u0275fac=function(e){g.\u0275\u0275invalidFactory()}}static{this.\u0275dir=g.\u0275\u0275defineDirective({type:W,viewQuery:function(e,t){if(1&e&&(g.\u0275\u0275viewQuery(s.BsDropdownDirective,5),g.\u0275\u0275viewQuery(o.TimepickerComponent,5),g.\u0275\u0275viewQuery(k,5)),2&e){let e;g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.bsDropdown=e.first),g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.bsTimePicker=e.first),g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.datetimepickerComponent=e.first)}},features:[g.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(W,[{type:t.Directive}],(()=>[{type:g.Injector},{type:void 0},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{bsDropdown:[{type:t.ViewChild,args:[s.BsDropdownDirective]}],bsTimePicker:[{type:t.ViewChild,args:[o.TimepickerComponent]}],datetimepickerComponent:[{type:t.ViewChild,args:[k]}]});const U=new Map([["autofocus",r.PROP_BOOLEAN],["class",r.PROP_STRING],["dataentrymode",{value:"default",...r.PROP_STRING}],["datavaluesource",r.PROP_ANY],["datavalue",r.PROP_STRING],["datepattern",r.PROP_STRING],["disabled",r.PROP_BOOLEAN],["excludedays",r.PROP_STRING],["excludedates",r.PROP_STRING],["hint",r.PROP_STRING],["maxdate",r.PROP_STRING],["mindate",r.PROP_STRING],["name",r.PROP_STRING],["outputformat",{value:"yyyy-MM-dd",...r.PROP_STRING}],["placeholder",{value:"Select Date",...r.PROP_STRING}],["readonly",r.PROP_BOOLEAN],["required",r.PROP_BOOLEAN],["shortcutkey",r.PROP_STRING],["show",{value:!0,...r.PROP_BOOLEAN}],["showdropdownon",{value:"default",...r.PROP_STRING}],["showbuttonbar",{value:!0,...r.PROP_BOOLEAN}],["showcustompicker",{value:!1,...r.PROP_BOOLEAN}],["showindevice",{displayType:"inline-block",value:"all",...r.PROP_STRING}],["showweeks",{value:!1,...r.PROP_BOOLEAN}],["tabindex",{value:0,...r.PROP_NUMBER}],["selectfromothermonth",{value:!0,...r.PROP_BOOLEAN}],["todaybutton",{value:!0,...r.PROP_BOOLEAN}],["clearbutton",{value:!0,...r.PROP_BOOLEAN}],["adaptiveposition",{value:!0,...r.PROP_BOOLEAN}],["todaybuttonlabel",{value:"LABEL_TODAY_DATE",...r.PROP_STRING}],["clearbuttonlabel",{value:"LABEL_CLEAR_DATE",...r.PROP_STRING}],["showdateformatasplaceholder",r.PROP_BOOLEAN]]);const q=["dateInput"],z=["wmDate",""];function H(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"wm-datetimepicker",9),g.\u0275\u0275listener("change",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.onDateChange(t))})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(1,"div",10),g.\u0275\u0275listener("click",(function(){g.\u0275\u0275restoreView(e);const t=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(!(t.disabled||t.readonly)&&t.showDatePickerModal(t.bsDataValue))}))("focus",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return i.onDateTimeInputFocus(!0),g.\u0275\u0275resetView(i.invokeOnFocus(t))}))("blur",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return i.onDateTimeInputBlur(),g.\u0275\u0275resetView(i.invokeOnTouched(t))})),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext();g.\u0275\u0275property("config",e._dateOptions)("placement",e.modal)("excludedDaysToDisable",e.excludedDaysToDisable)("excludedDatesToDisable",e.excludedDatesToDisable)("displayFormat",e.dateInputFormat)("value",e.bsDataValue),g.\u0275\u0275advance(),g.\u0275\u0275property("tabindex",e.tabindex||0),g.\u0275\u0275attribute("aria-label",e.displayValue?"Change Date "+e.displayValue:e.hint||"Choose Date")}}const Q={widgetType:"wm-date",hostClass:"app-date input-group"};class Y extends W{static{this.initializeProps=(r.register("wm-date",U),void r.registerFormWidget(l.FormWidgetType.DATE,new Map(U)))}get timestamp(){return this.bsDataValue?this.bsDataValue.valueOf():void 0}get dateInputFormat(){return this._dateOptions.dateInputFormat||"yyyy-MM-dd"}get displayValue(){return this.showdateformatasplaceholder&&this.imask?.maskRef&&this.maskDateInputFormat?l.getFormattedDate(this.datePipe,this.bsDataValue,this.maskDateInputFormat,this.timeZone,null,this.isCurrentDate,this)||"":l.getFormattedDate(this.datePipe,this.bsDataValue,this.dateInputFormat,this.timeZone,null,this.isCurrentDate,this)||""}get nativeDisplayValue(){return l.getFormattedDate(this.datePipe,this.bsDataValue,"yyyy-MM-dd",this.timeZone,null,this.isCurrentDate,this)||""}get datavalue(){return l.getFormattedDate(this.datePipe,this.bsDataValue,this.outputformat,this.timeZone,null,this.isCurrentDate,this)||""}set datavalue(e){"CURRENT_DATE"===e?(setTimeout((()=>{this.bsDataValue=this.timeZone?l.getMomentLocaleObject(this.timeZone):new Date}),50),this.isCurrentDate=!0):(this.bsDataValue=e?l.getDateObj(e,{isNativePicker:this.loadNativeDateInput},this.timeZone):void 0,this.isCurrentDate=!1),this.invokeOnChange(this.datavalue,void 0,!0),this.cdRef.detectChanges()}constructor(e,t,i,n){super(e,Q,n),this.cdRef=t,this.appDefaults=i,this.isOpen=!1,this.isEnterPressedOnDateInput=!1,this.showdateformatasplaceholder=!1,r.styler(this.nativeElement,this),this.dateContainerCls=`app-date-${this.widgetId}`,this._dateOptions.containerClass=`app-date ${this.dateContainerCls}`,this._dateOptions.showWeekNumbers=!1,this._bsDefaultLoadCheck=!0,this.datepattern=this.appDefaults.dateFormat||l.getDisplayDateTimeFormat(l.FormWidgetType.DATE),this.updateFormat("datepattern")}onDisplayDateChange(e,t=!1){if(this.updateIMask(),this.isEnterPressedOnDateInput)return void(this.isEnterPressedOnDateInput=!1);const i=l.getDateObj(e.target.value,{pattern:this.datepattern,isNativePicker:t});this.formatValidation(i,e.target.value,t)&&(t&&this.minDateMaxDateValidationOnInput(i,e,this.displayValue,t)||this.setDataValue(i))}setDataValue(e){this.invalidDateTimeFormat=!1,this.minDateMaxDateValidationOnInput(e),l.getFormattedDate(this.datePipe,e,this.dateInputFormat,this.timeZone,null,this.isCurrentDate,this)===this.displayValue&&$(this.nativeElement).find(".display-input").val(this.displayValue),e?(this.bsDataValue=e,this.updateIMask()):this.bsDataValue=void 0,this.invokeOnChange(this.datavalue,{},!0)}onDatePickerOpen(){this.isOpen=!0,this.activeDate=this.bsDataValue?this.bsDataValue:this.timeZone?l.getMomentLocaleObject(this.timeZone):new Date,this.bsDataValue||this.hightlightToday(this.activeDate),this.updateIMask(),this.$element.find(".model-holder").width("1px");$("bs-datepicker-container").attr("aria-label","Use Arrow keys to navigate dates, Choose Date from datepicker"),$(".bs-calendar-container").removeAttr("role");const e=$(".bs-datepicker-container")[0];if(this.focusTrap=r.setFocusTrap(e,!0),this.focusTrap.activate(),this.addDatepickerKeyboardEvents(this,!1),l.adjustContainerPosition($("bs-datepicker-container"),this.nativeElement,this.bsDatePickerDirective._datepicker),l.adjustContainerRightEdges($("bs-datepicker-container"),this.nativeElement,this.bsDatePickerDirective._datepicker),this.timeZone){const e=document.querySelector(`.${this.dateContainerCls} .bs-datepicker-buttons .btn-today-wrapper button`),t=i=>{const n=l.getMomentLocaleObject(this.timeZone);new Date(this.bsDataValue).toDateString()!==new Date(n).toDateString()&&(this.bsDataValue=n),e.removeEventListener("click",t)};e.addEventListener("click",t)}}onInputBlur(e){this.updateIMask(),$(e.relatedTarget).hasClass("current-date")||(this.invokeOnTouched(),this.invokeEventCallback("blur",{$event:e}))}updateIMask(){this.imask?.maskRef?.updateValue()}hideDatepickerDropdown(){this.invokeOnTouched(),this.isOpen=!1,this.focusTrap?.deactivate(),this.isEnterPressedOnDateInput=!1,this.deregisterEventListener&&this.deregisterEventListener(),this.blurDateInput(this.isOpen)}handleEvent(e,t,i,n){p.includes(["blur","focus","change","click"],t)||super.handleEvent(e,t,i,n)}toggleDpDropdown(e,t=!1){this.loadNativeDateInput&&(t||this.onDateTimeInputFocus()),"click"===e.type&&this.invokeEventCallback("click",{$event:e}),e.target&&$(e.target).is("input")&&!this.isDropDownDisplayEnabledOnInput(this.showdropdownon)?e.stopPropagation():(this.bsDatePickerDirective.toggle(),this.addBodyClickListener(this.bsDatePickerDirective.isOpen))}addBodyClickListener(e){if(!e)return;const t=document.querySelector("body");setTimeout((()=>{const e=t.querySelector(`.${this.dateContainerCls}`);this.deregisterEventListener=l.addEventListenerOnElement(t,e,this.nativeElement,"click",this.isDropDownDisplayEnabledOnInput(this.showdropdownon),(()=>{this.isOpen=!1}),0,!0)}),350)}onDisplayKeydown(e){if(this.isDropDownDisplayEnabledOnInput(this.showdropdownon))if(e.stopPropagation(),"Enter"===e.key){const t=l.getDateObj(e.target.value,{pattern:this.datepattern});e.preventDefault();const i=l.getFormattedDate(this.datePipe,t,this.dateInputFormat,this.timeZone,null,this.isCurrentDate,this),n=e.target.value.trim();n&&"timestamp"===this.datepattern?p.isNaN(n)||p.parseInt(n)===i||(this.invalidDateTimeFormat=!0,this.invokeOnChange(this.datavalue,e,!1)):n&&n!==i?(this.invalidDateTimeFormat=!0,this.invokeOnChange(this.datavalue,e,!1)):(this.invalidDateTimeFormat=!1,this.isEnterPressedOnDateInput=!0,this.bsDatePickerDirective.bsValue=e.target.value?t:"",this.updateIMask()),this.toggleDpDropdown(e)}else this.hideDatepickerDropdown();else this.hideDatepickerDropdown()}onDateChange(e){this._bsDefaultLoadCheck?this._bsDefaultLoadCheck=!1:this.setDataValue(e)}onPropertyChange(e,t,i){"showdateformatasplaceholder"===e?(this.showdateformatasplaceholder=t,this.imask?.destroyMask(),this.showdateformatasplaceholder&&"timestamp"!==this.datepattern&&(this.mask=function(e,t){if("timestamp"==e)return!1;let i=e.toUpperCase().replace(/E/g,"d");return i.split("D").length-1==1&&(i=i.replace("D","DD")),i.split("M").length-1==1&&(i=i.replace("M","MM")),{mask:Date,pattern:i,format:e=>moment(e,i).format(i),parse:e=>moment(e,i).toDate(),blocks:{YYYY:{mask:u.MaskedRange,from:1900,to:9999,placeholderChar:"Y",maxLength:4},YYY:{mask:u.MaskedRange,from:900,to:999,placeholderChar:"Y",maxLength:3},YY:{mask:u.MaskedRange,from:0,to:99,placeholderChar:"Y",maxLength:2},Y:{mask:u.MaskedRange,from:1900,to:9999,placeholderChar:"Y",maxLength:4},M:{mask:u.MaskedRange,from:1,to:12,placeholderChar:"M",maxLength:2},MM:{mask:u.MaskedRange,from:1,to:12,placeholderChar:"M",maxLength:2},MMM:{mask:u.MaskedEnum,enum:Array.from({length:12},((e,i)=>new Date(0,i).toLocaleString(t,{month:"short"}))),placeholderChar:"M",maxLength:3},MMMM:{mask:u.MaskedEnum,enum:Array.from({length:12},((e,i)=>new Date(0,i).toLocaleString(t,{month:"long"}))),placeholderChar:"M",maxLength:4},DD:{mask:u.MaskedRange,from:1,to:31,placeholderChar:"D",maxLength:2},D:{mask:u.MaskedRange,from:1,to:31,placeholderChar:"D",maxLength:2},ddd:{mask:u.MaskedEnum,enum:Array.from({length:7},((e,i)=>new Date(0,0,i+1).toLocaleString(t,{weekday:"short"}))),placeholderChar:"E",maxLength:3},dddd:{mask:u.MaskedEnum,enum:Array.from({length:7},((e,i)=>new Date(0,0,i+1).toLocaleString(t,{weekday:"long"}))),placeholderChar:"E",minLength:6}},autofix:!0,lazy:!1,overwrite:!0,skipInvalid:!0}}(this.datepattern,this.selectedLocale),this.maskDateInputFormat=this.dateInputFormat,this.maskDateInputFormat=this.dateInputFormat.split("d").length-1==1?this.maskDateInputFormat.replace("d","dd"):this.maskDateInputFormat,this.maskDateInputFormat=this.dateInputFormat.split("M").length-1==1?this.maskDateInputFormat.replace("M","MM"):this.maskDateInputFormat,this.updateIMask())):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||Y)(g.\u0275\u0275directiveInject(g.Injector),g.\u0275\u0275directiveInject(g.ChangeDetectorRef),g.\u0275\u0275directiveInject(C.AppDefaults),g.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:Y,selectors:[["","wmDate",""]],viewQuery:function(e,t){if(1&e&&(g.\u0275\u0275viewQuery(a.BsDatepickerDirective,5),g.\u0275\u0275viewQuery(q,5,h.IMaskDirective)),2&e){let e;g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.bsDatePickerDirective=e.first),g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.imask=e.first)}},features:[g.\u0275\u0275ProvidersFeature([r.provideAs(Y,n.NG_VALUE_ACCESSOR,!0),r.provideAs(Y,n.NG_VALIDATORS,!0),r.provideAsWidgetRef(Y)]),g.\u0275\u0275InheritDefinitionFeature],attrs:z,decls:9,vars:27,consts:[["dateInput",""],["datepicker","bsDatepicker"],["focus-target","","type","text",1,"form-control","app-textbox","app-dateinput","display-input",3,"click","focus","blur","change","keydown","name","imask","unmask","tabindex","value","disabled","autofocus","required","readOnly"],[1,"input-group-btn"],["type","button","aria-haspopup","true","aria-expanded","false",1,"btn","btn-default","btn-time",3,"click","tabindex","disabled"],["aria-hidden","true",1,"app-icon","wm-sl-l","sl-calendar"],[2,"width","0","display","inline-block"],["aria-label","datepicker dropdownmenu","aria-controls","date","bsDatepicker","","placement","bottom right",1,"model-holder",3,"onShown","onHidden","bsValueChange","tabindex","container","bsConfig","isOpen","daysDisabled","datesDisabled","isDisabled","bsValue"],[3,"ngIf"],["dateTimePicker","","mode","DATE",3,"change","config","placement","excludedDaysToDisable","excludedDatesToDisable","displayFormat","value"],["role","button",1,"mobile-input","mobile-datepicker-container",3,"click","focus","blur","tabindex"]],template:function(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"input",2,0),g.\u0275\u0275listener("click",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.toggleDpDropdown(i,!0))}))("focus",(function(i){return g.\u0275\u0275restoreView(e),t.onDateTimeInputFocus(),t.invokeOnFocus(i),g.\u0275\u0275resetView(t.updateIMask())}))("blur",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onInputBlur(i))}))("change",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onDisplayDateChange(i))}))("keydown",(function(i){return g.\u0275\u0275restoreView(e),t._triggeredByUser=!0,g.\u0275\u0275resetView(t.onDisplayKeydown(i))})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(2,"span",3)(3,"button",4),g.\u0275\u0275listener("click",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.toggleDpDropdown(i,!1))})),g.\u0275\u0275element(4,"i",5),g.\u0275\u0275elementEnd()(),g.\u0275\u0275elementStart(5,"div",6)(6,"input",7,1),g.\u0275\u0275listener("onShown",(function(){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onDatePickerOpen())}))("onHidden",(function(){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.hideDatepickerDropdown())}))("bsValueChange",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onDateChange(i))})),g.\u0275\u0275elementEnd()(),g.\u0275\u0275template(8,H,2,8,"ng-template",8)}2&e&&(g.\u0275\u0275property("name",t.name)("imask",t.mask)("unmask",!0)("tabindex",t.loadNativeDateInput?"-1":t.tabindex)("value",t.displayValue)("disabled",t.disabled||t.readonly)("autofocus",t.autofocus)("required",t.required)("readOnly",t.isReadOnly),g.\u0275\u0275attribute("aria-hidden",!!t.loadNativeDateInput)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-label",t.hint),g.\u0275\u0275advance(3),g.\u0275\u0275property("tabindex",t.loadNativeDateInput?"-1":t.tabindex)("disabled",t.disabled||t.readonly),g.\u0275\u0275attribute("aria-hidden",!!t.loadNativeDateInput)("aria-label",t.displayValue?"Change Date "+t.displayValue:"Choose date by pressing enter"),g.\u0275\u0275advance(3),g.\u0275\u0275property("tabindex",-1)("container",t.containerTarget||".wm-app")("bsConfig",t._dateOptions)("isOpen",t.isOpen)("daysDisabled",t.excludedDaysToDisable)("datesDisabled",t.excludedDatesToDisable)("isDisabled",t.disabled||t.readonly)("bsValue",t.bsDataValue),g.\u0275\u0275attribute("aria-hidden",!!t.loadNativeDateInput),g.\u0275\u0275advance(2),g.\u0275\u0275property("ngIf",t.loadNativeDateInput))},dependencies:[f.NgIf,b.BsDatepickerDirective,b.BsDatepickerInputDirective,I.IMaskDirective,k],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(Y,[{type:t.Component,args:[{selector:"[wmDate]",providers:[r.provideAs(Y,n.NG_VALUE_ACCESSOR,!0),r.provideAs(Y,n.NG_VALIDATORS,!0),r.provideAsWidgetRef(Y)],template:' <input class="form-control app-textbox app-dateinput display-input"\n focus-target\n type="text"\n [name]="name"\n #dateInput\n [imask]="mask"\n [unmask]="true"\n [tabindex]="loadNativeDateInput ? \'-1\' : tabindex"\n [attr.aria-hidden]="!!loadNativeDateInput"\n [value]="displayValue"\n (click)="toggleDpDropdown($event, true)"\n (focus)="onDateTimeInputFocus(); invokeOnFocus($event); updateIMask()"\n (blur)="onInputBlur($event)"\n [disabled]="disabled || readonly"\n [autofocus]="autofocus"\n [required]="required"\n [readOnly]="isReadOnly"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint"\n (change)="onDisplayDateChange($event)"\n (keydown)="this._triggeredByUser = true; onDisplayKeydown($event);">\n\n <span class="input-group-btn">\n <button type="button"\n class="btn btn-default btn-time"\n [tabindex]="loadNativeDateInput ? \'-1\' : tabindex"\n [attr.aria-hidden]="!!loadNativeDateInput"\n [disabled]="disabled || readonly"\n [attr.aria-label]="displayValue ? \'Change Date \' + displayValue : \'Choose date by pressing enter\'"\n aria-haspopup="true"\n aria-expanded="false"\n (click)="toggleDpDropdown($event, false)">\n <i aria-hidden="true"\n class="app-icon wm-sl-l sl-calendar"></i>\n </button>\n </span>\n <div style="width: 0;display: inline-block;">\n <input class="model-holder"\n aria-label="datepicker dropdownmenu"\n aria-controls="date"\n [tabindex]="-1"\n [attr.aria-hidden]="!!loadNativeDateInput"\n [container]="containerTarget || \'.wm-app\'"\n [bsConfig]="_dateOptions"\n [isOpen]="isOpen"\n #datepicker="bsDatepicker"\n bsDatepicker\n [daysDisabled]="excludedDaysToDisable"\n [datesDisabled]="excludedDatesToDisable"\n placement="bottom right"\n [isDisabled]="disabled || readonly"\n [bsValue]="bsDataValue"\n (onShown)="onDatePickerOpen()"\n (onHidden)="hideDatepickerDropdown()"\n (bsValueChange)="onDateChange($event)">\n</div>\n\n<ng-template [ngIf]="loadNativeDateInput">\n <wm-datetimepicker\n dateTimePicker\n mode="DATE"\n [config]="_dateOptions"\n [placement]="modal"\n [excludedDaysToDisable]="excludedDaysToDisable"\n [excludedDatesToDisable]="excludedDatesToDisable"\n [displayFormat]="dateInputFormat"\n [value]="bsDataValue"\n (change)="onDateChange($event)">\n </wm-datetimepicker>\n <div class="mobile-input mobile-datepicker-container"\n [tabindex]="tabindex || 0"\n (click)="!(disabled || readonly) && showDatePickerModal(bsDataValue)"\n (focus)="onDateTimeInputFocus(true); invokeOnFocus($event);"\n (blur)="onDateTimeInputBlur(); invokeOnTouched($event)"\n [attr.aria-label]="displayValue ? \'Change Date \' + displayValue : hint || \'Choose Date\'"\n role="button">\n </div>\n</ng-template>\n'}]}],(()=>[{type:g.Injector},{type:g.ChangeDetectorRef},{type:C.AppDefaults},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{bsDatePickerDirective:[{type:t.ViewChild,args:[a.BsDatepickerDirective]}],imask:[{type:t.ViewChild,args:["dateInput",{read:h.IMaskDirective}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(Y,{className:"DateComponent",filePath:"date/date.component.ts",lineNumber:44});const X=new Map([["autofocus",r.PROP_BOOLEAN],["class",r.PROP_STRING],["dataentrymode",{value:"default",...r.PROP_STRING}],["datavaluesource",r.PROP_ANY],["datavalue",r.PROP_STRING],["datepattern",r.PROP_STRING],["disabled",r.PROP_BOOLEAN],["excludedays",r.PROP_STRING],["excludedates",r.PROP_STRING],["hint",r.PROP_STRING],["hourstep",{value:1,...r.PROP_NUMBER}],["maxdate",r.PROP_STRING],["mindate",r.PROP_STRING],["minutestep",{value:15,...r.PROP_NUMBER}],["name",r.PROP_STRING],["outputformat",{value:"timestamp",...r.PROP_STRING}],["placeholder",{value:"Select date time",...r.PROP_STRING}],["readonly",r.PROP_BOOLEAN],["required",r.PROP_BOOLEAN],["secondsstep",{value:1,...r.PROP_NUMBER}],["shortcutkey",r.PROP_STRING],["show",{value:!0,...r.PROP_BOOLEAN}],["showdropdownon",{value:"default",...r.PROP_STRING}],["showbuttonbar",r.PROP_BOOLEAN],["showcustompicker",{value:!1,...r.PROP_BOOLEAN}],["showindevice",{displayType:"inline-block",value:"all",...r.PROP_STRING}],["showweeks",r.PROP_BOOLEAN],["tabindex",{value:0,...r.PROP_NUMBER}],["timestamp",r.PROP_STRING],["selectfromothermonth",{value:!0,...r.PROP_BOOLEAN}],["todaybutton",{value:!0,...r.PROP_BOOLEAN}],["clearbutton",{value:!0,...r.PROP_BOOLEAN}],["adaptiveposition",{value:!0,...r.PROP_BOOLEAN}],["todaybuttonlabel",{value:"LABEL_TODAY_DATE",...r.PROP_STRING}],["clearbuttonlabel",{value:"LABEL_CLEAR_DATE",...r.PROP_STRING}]]),K=["wmDateTime",""],J=()=>({standalone:!0});function Z(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"div",12),g.\u0275\u0275listener("click",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.preventTpClose(t))})),g.\u0275\u0275elementStart(1,"timepicker",13),g.\u0275\u0275twoWayListener("ngModelChange",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275twoWayBindingSet(i.bsTimeValue,t)||(i.bsTimeValue=t),g.\u0275\u0275resetView(t)})),g.\u0275\u0275listener("isValid",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.isValid(t))}))("ngModelChange",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.onModelUpdate(t,"time"))})),g.\u0275\u0275elementEnd()()}if(2&e){const e=g.\u0275\u0275nextContext();g.\u0275\u0275advance(),g.\u0275\u0275property("showMeridian",e.ismeridian)("readonlyInput",e.disabled||e.readonly||e.isCurrentDate),g.\u0275\u0275twoWayProperty("ngModel",e.bsTimeValue),g.\u0275\u0275property("ngModelOptions",g.\u0275\u0275pureFunction0(12,J))("min",e.minTime)("max",e.maxTime)("hourStep",e.hourstep)("minuteStep",e.minutestep)("secondsStep",e.secondsstep)("mousewheel",!0)("arrowkeys",!0)("showSeconds",e.showseconds)}}function ee(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"wm-datetimepicker",14),g.\u0275\u0275listener("change",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.onModelUpdate(t,"date"))})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(1,"div",15),g.\u0275\u0275listener("click",(function(){g.\u0275\u0275restoreView(e);const t=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(!(t.disabled||t.readonly)&&t.showDatePickerModal(t.bsDateValue))}))("focus",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return i.onDateTimeInputFocus(!0),g.\u0275\u0275resetView(i.invokeOnFocus(t))}))("blur",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return i.onDateTimeInputBlur(),g.\u0275\u0275resetView(i.invokeOnTouched(t))})),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext();g.\u0275\u0275property("config",e._dateOptions)("placement",e.modal)("excludedDaysToDisable",e.excludedDaysToDisable)("excludedDatesToDisable",e.excludedDatesToDisable)("displayFormat",e.dateInputFormat)("value",e.bsDateValue),g.\u0275\u0275advance(),g.\u0275\u0275property("tabindex",e.tabindex||0),g.\u0275\u0275attribute("aria-label",e.displayValue?"Change Date "+e.displayValue:e.hint||"Choose Date")}}const te={widgetType:"wm-datetime",hostClass:"app-datetime input-group"},ie="CURRENT_DATE";class ne extends W{static{this.initializeProps=(r.register("wm-datetime",X),r.registerFormWidget(l.FormWidgetType.DATETIME,new Map(X)),void r.registerFormWidget(l.FormWidgetType.TIMESTAMP,new Map(X)))}get timestamp(){return this.proxyModel?this.proxyModel.valueOf():void 0}get dateInputFormat(){return this._dateOptions.dateInputFormat||"yyyy-MM-ddTHH:mm:ss"}get displayValue(){return l.getFormattedDate(this.datePipe,this.proxyModel,this.dateInputFormat,this.timeZone,this.key,this.isCurrentDate,this)||""}get nativeDisplayValue(){return l.getFormattedDate(this.datePipe,this.proxyModel,"yyyy-MM-ddTHH:mm:ss",this.timeZone,this.key,this.isCurrentDate,this)||""}get datavalue(){return this.isCurrentDate&&!this.proxyModel?ie:l.getFormattedDate(this.datePipe,this.proxyModel,this.outputformat,this.timeZone,null,null,this)}set datavalue(e){e===ie?(this.isCurrentDate=!0,this.setTimeInterval()):(this.proxyModel=e?l.getDateObj(e,{isNativePicker:this.loadNativeDateInput},this.timeZone):void 0,this.clearTimeInterval(),this.isCurrentDate=!1),this.bsTimeValue=this.bsDateValue=this.proxyModel,this.cdRef.detectChanges()}constructor(e,t,i,n,a,s){super(e,te,s),this.ngZone=t,this.cdRef=i,this.appDefaults=n,this.isEnterPressedOnDateInput=!1,this.isTimeOpen=!1,this.isDateOpen=!1,this.isCurrentDate=!1,this._debouncedOnChange=p.debounce(this.invokeOnChange,10),this.registerDestroyListener((()=>this.clearTimeInterval())),r.styler(this.nativeElement,this),this.app=a,this.dateContainerCls=`app-date-${this.widgetId}`,this._dateOptions.containerClass=`app-date ${this.dateContainerCls}`,this._dateOptions.showWeekNumbers=!1,this.datepattern=this.appDefaults.dateTimeFormat||l.getDisplayDateTimeFormat(l.FormWidgetType.DATETIME),this.updateFormat("datepattern")}setTimeInterval(){this.timeinterval||(this.timeinterval=setInterval((()=>{const e=this.timeZone?l.getMomentLocaleObject(this.timeZone):new Date;this.onModelUpdate(e)}),1e3))}clearTimeInterval(){this.timeinterval&&(clearInterval(this.timeinterval),this.timeinterval=null)}toggleTimePicker(e,t){this.loadNativeDateInput?this.onDateTimeInputFocus():(this.isTimeOpen=e,t&&"click"===t.type&&this.invokeEventCallback("click",{$event:t}),this.addTimepickerClickListener(this.isTimeOpen))}addTimepickerClickListener(e){if(!e)return;const t=document.querySelector("body");setTimeout((()=>{const e=$(t).find(">bs-dropdown-container .dropdown-menu").get(0);this.deregisterTimepickeEventListener=l.addEventListenerOnElement(t,e,this.nativeElement,"click",this.isDropDownDisplayEnabledOnInput(this.showdropdownon),(()=>{this.toggleTimePicker(!1)}),0,!0)}),350)}setIsTimeOpen(e){this.isTimeOpen=e}hideTimepickerDropdown(){this.invokeOnTouched(),this.toggleTimePicker(!1),this.deregisterTimepickeEventListener&&this.deregisterTimepickeEventListener();const e=$(this.nativeElement).closest(".app-composite-widget.caption-floating");e.length>0&&this.app.notify("captionPositionAnimate",{displayVal:this.displayValue,nativeEl:e})}onTimepickerOpen(){const e=document.querySelectorAll("timepicker");p.forEach(e,(e=>{l.addClass(e.parentElement,"app-datetime",!0)})),this.bsDatePickerDirective.hide(),this.focusTimePickerPopover(this),this.bindTimePickerKeyboardEvents(),l.adjustContainerPosition($("bs-dropdown-container"),this.nativeElement,this.bsDropdown._dropdown,$("bs-dropdown-container .dropdown-menu")),l.adjustContainerRightEdges($("bs-dropdown-container"),this.nativeElement,this.bsDropdown._dropdown,$("bs-dropdown-container .dropdown-menu"))}onDatePickerOpen(){this.isDateOpen=!this.isDateOpen,this.toggleTimePicker(!1),this.$element.find(".model-holder").width("1px");$("bs-datepicker-container").attr("aria-label","Use Arrow keys to navigate dates, Choose Date from datepicker"),$(".bs-calendar-container").removeAttr("role");const e=$(".bs-datepicker-container")[0];this.focusTrap=r.setFocusTrap(e,!0),this.focusTrap.activate(),this.bsDateValue?this.activeDate=this.bsDateValue:this.activeDate=new Date,this.bsDateValue||this.hightlightToday(this.activeDate),this.addDatepickerKeyboardEvents(this,!0),l.adjustContainerPosition($("bs-datepicker-container"),this.nativeElement,this.bsDatePickerDirective._datepicker)}onModelUpdate(e,t){if("date"===t&&(this.invalidDateTimeFormat=!1,l.getFormattedDate(this.datePipe,e,this.dateInputFormat,this.timeZone,this.key,this.isCurrentDate,this)===this.displayValue&&$(this.nativeElement).find(".display-input").val(this.displayValue)),this.minDateMaxDateValidationOnInput(e),!e)return this.bsDateValue&&this.bsTimePicker&&(""===this.bsTimePicker.hours||""===this.bsTimePicker.minutes||""===this.bsTimePicker.seconds)?this.bsDateValue=this.bsTimeValue=this.proxyModel=moment(this.bsDateValue).startOf("day").toDate():this.bsDateValue=this.bsTimeValue=this.proxyModel=void 0,void((e!==this.datavalue||!this.datavalue&&this.prevDatavalue)&&this._debouncedOnChange(this.datavalue,{},!0));"date"===t&&this.isDateOpen&&this.toggleTimePicker(!0),this.proxyModel=e,this.proxyModel&&(this.bsDateValue=this.bsTimeValue=e),this._debouncedOnChange(this.datavalue,{},!0),this.cdRef.detectChanges();const i=$(".bs-timepicker-field");if(this.timeZone&&"datetimestamp"===this.key&&i.length){const t=l.getFormattedDate(this.datePipe,e,this.getTimePattern(),this.timeZone,this.key,null,this);this.updateTimepickerFields(t,i)}}getTimePattern(){let e;const t=this.datepattern.toLowerCase().indexOf("h");let i=this.datepattern.toLowerCase().indexOf(":ss");i>-1?i+=3:(i=this.datepattern.toLowerCase().indexOf(":mm"),i>-1&&(i+=3));const n=this.datepattern.toLowerCase().indexOf("a");return e=this.datepattern.substr(t,i),n>-1&&(e+=" a"),e}updateTimepickerFields(e,t){const i=$("timepicker button.text-center"),n=e.split(" "),a=n[0].split(":");for(let e=0;e<t.length;e++)t[e].value=a[e];i?.html()?.trim()!==n[1]&&i.text(n[1])}preventTpClose(e){e.stopImmediatePropagation()}toggleDpDropdown(e,t=!1){this.loadNativeDateInput?t||this.onDateTimeInputFocus():("click"===e.type&&this.invokeEventCallback("click",{$event:e}),e.target&&$(e.target).is("input")&&!this.isDropDownDisplayEnabledOnInput(this.showdropdownon)?e.stopPropagation():(this.bsDatePickerDirective.toggle(),this.addBodyClickListener(this.bsDatePickerDirective.isOpen)))}addBodyClickListener(e){if(!e)return;const t=document.querySelector("body");setTimeout((()=>{const e=t.querySelector(`.${this.dateContainerCls}`);this.deregisterDatepickerEventListener=l.addEventListenerOnElement(t,e,this.nativeElement,"click",this.isDropDownDisplayEnabledOnInput(this.showdropdownon),(()=>{this.bsDatePickerDirective.hide()}),0,!0)}),350)}hideDatepickerDropdown(){this.isDateOpen=!1,this.focusTrap?.deactivate(),this.invokeOnTouched(),this.bsDatePickerDirective.hide(),this.bsDateValue&&this.toggleTimePicker(!0),this.isEnterPressedOnDateInput=!1,this.deregisterDatepickerEventListener&&this.deregisterDatepickerEventListener();const e=$(this.nativeElement).closest(".app-composite-widget.caption-floating");e.length>0&&this.app.notify("captionPositionAnimate",{displayVal:this.displayValue,nativeEl:e}),this.blurDateInput(this.isDateOpen)}onDateChange(e,t){if(this.isEnterPressedOnDateInput)return void(this.isEnterPressedOnDateInput=!1);let i=e.target.value.trim();i=i?l.getNativeDateObject(i,{pattern:this.loadNativeDateInput?this.outputformat:this.datepattern,meridians:this.meridians,isNativePicker:this.loadNativeDateInput}):void 0,this.formatValidation(i,e.target.value,t)&&(t&&this.minDateMaxDateValidationOnInput(i,e,this.displayValue,t)||(this.invalidDateTimeFormat=!1,this.onModelUpdate(i)))}onDisplayKeydown(e){if(this.isDropDownDisplayEnabledOnInput(this.showdropdownon)){e.stopPropagation();let t=e.target.value.trim();if("Enter"===e.key||"ArrowDown"===e.key){t=t?l.getNativeDateObject(t,{pattern:this.loadNativeDateInput?this.outputformat:this.datepattern,meridians:this.meridians}):void 0,e.preventDefault();const i=l.getFormattedDate(this.datePipe,t,this.dateInputFormat,this.timeZone,this.key,this.isCurrentDate,this),n=e.target.value.trim();n&&"timestamp"===this.datepattern?p.isNaN(n)||p.parseInt(n)===i||(this.invalidDateTimeFormat=!0,this.invokeOnChange(this.datavalue,e,!1)):n&&n!==i?(this.invalidDateTimeFormat=!0,this.invokeOnChange(this.datavalue,e,!1)):(this.invalidDateTimeFormat=!1,this.isEnterPressedOnDateInput=!0,this.bsDatePickerDirective.bsValue=t),this.toggleDpDropdown(e)}else this.hideDatepickerDropdown(),this.hideTimepickerDropdown()}else this.hideDatepickerDropdown(),this.hideTimepickerDropdown()}isValid(e){if(!e){const e=$(this.nativeElement).find("input").val(),t=l.getNativeDateObject(e,{pattern:this.loadNativeDateInput?this.outputformat:this.datepattern,meridians:this.meridians,isNativePicker:this.loadNativeDateInput});if(!this.formatValidation(t,e))return}}handleEvent(e,t,i,n){p.includes(["blur","focus","change","click"],t)||super.handleEvent(e,t,i,n)}onInputBlur(e){$(e.relatedTarget).hasClass("current-date")||(this.invokeOnTouched(),this.invokeEventCallback("blur",{$event:e}))}static{this.\u0275fac=function(e){return new(e||ne)(g.\u0275\u0275directiveInject(g.Injector),g.\u0275\u0275directiveInject(g.NgZone),g.\u0275\u0275directiveInject(g.ChangeDetectorRef),g.\u0275\u0275directiveInject(C.AppDefaults),g.\u0275\u0275directiveInject(C.App),g.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:ne,selectors:[["","wmDateTime",""]],viewQuery:function(e,t){if(1&e&&g.\u0275\u0275viewQuery(a.BsDatepickerDirective,5),2&e){let e;g.\u0275\u0275queryRefresh(e=g.\u0275\u0275loadQuery())&&(t.bsDatePickerDirective=e.first)}},features:[g.\u0275\u0275ProvidersFeature([r.provideAs(ne,n.NG_VALUE_ACCESSOR,!0),r.provideAs(ne,n.NG_VALIDATORS,!0),r.provideAsWidgetRef(ne),{provide:o.TimepickerConfig,deps:[l.AbstractI18nService],useFactory:G}]),g.\u0275\u0275InheritDefinitionFeature],attrs:K,decls:12,vars:30,consts:[["datepicker","bsDatepicker"],["dropdown","","autoClose","false",2,"display","inherit",3,"onShown","isOpen","container"],["focus-target","","type","text",1,"form-control","app-textbox","display-input",3,"click","focus","blur","change","keydown","name","tabindex","value","autofocus","disabled","required","readOnly"],[1,"input-group-btn"],["type","button","aria-haspopup","true","aria-expanded","false",1,"btn","btn-default","btn-date",3,"click","tabindex","disabled"],["aria-hidden","true",1,"app-icon","wm-sl-l","sl-calendar"],["type","button","aria-label","Select time","aria-haspopup","true","aria-expanded","false",1,"btn","btn-default","btn-time",3,"click","tabindex","disabled"],["aria-hidden","true",1,"app-icon","wm-sl-l","sl-time"],[2,"width","0","display","inline-block"],["aria-label","datepicker dropdownmenu","aria-controls","date","focus-target","","placement","bottom right","bsDatepicker","",1,"model-holder",3,"onShown","onHidden","bsValueChange","tabindex","container","bsConfig","isOpen","daysDisabled","datesDisabled","isDisabled","bsValue"],["class","dropdown-menu","aria-label","timepicker dropdown","aria-controls","time",3,"click",4,"dropdownMenu"],[3,"ngIf"],["aria-label","timepicker dropdown","aria-controls","time",1,"dropdown-menu",3,"click"],[1,"model-holder",3,"ngModelChange","isValid","showMeridian","readonlyInput","ngModel","ngModelOptions","min","max","hourStep","minuteStep","secondsStep","mousewheel","arrowkeys","showSeconds"],["dateTimePicker","",3,"change","config","placement","excludedDaysToDisable","excludedDatesToDisable","displayFormat","value"],["role","button",1,"mobile-input","mobile-datepicker-container",3,"click","focus","blur","tabindex"]],template:function(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"div",1),g.\u0275\u0275listener("onShown",(function(){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onTimepickerOpen())})),g.\u0275\u0275elementStart(1,"input",2),g.\u0275\u0275listener("click",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.toggleDpDropdown(i,!0))}))("focus",(function(i){return g.\u0275\u0275restoreView(e),t.onDateTimeInputFocus(),g.\u0275\u0275resetView(t.invokeOnFocus(i))}))("blur",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onInputBlur(i))}))("change",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onDateChange(i))}))("keydown",(function(i){return g.\u0275\u0275restoreView(e),t._triggeredByUser=!0,g.\u0275\u0275resetView(t.onDisplayKeydown(i))})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(2,"span",3)(3,"button",4),g.\u0275\u0275listener("click",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.toggleDpDropdown(i,!1))})),g.\u0275\u0275element(4,"i",5),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(5,"button",6),g.\u0275\u0275listener("click",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.toggleTimePicker(!t.isTimeOpen,i))})),g.\u0275\u0275element(6,"i",7),g.\u0275\u0275elementEnd()(),g.\u0275\u0275elementStart(7,"div",8)(8,"input",9,0),g.\u0275\u0275listener("onShown",(function(){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onDatePickerOpen())}))("onHidden",(function(){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.hideDatepickerDropdown())}))("bsValueChange",(function(i){return g.\u0275\u0275restoreView(e),g.\u0275\u0275resetView(t.onModelUpdate(i,"date"))})),g.\u0275\u0275elementEnd()(),g.\u0275\u0275template(10,Z,2,13,"div",10),g.\u0275\u0275elementEnd(),g.\u0275\u0275template(11,ee,2,8,"ng-template",11)}2&e&&(g.\u0275\u0275property("isOpen",t.isTimeOpen)("container","body"),g.\u0275\u0275advance(),g.\u0275\u0275property("name",t.name)("tabindex",t.loadNativeDateInput?"-1":t.tabindex)("value",t.displayValue)("autofocus",t.autofocus)("disabled",t.disabled||t.readonly||t.isCurrentDate)("required",t.required)("readOnly",t.isReadOnly),g.\u0275\u0275attribute("aria-label",t.hint)("aria-hidden",!!t.loadNativeDateInput)("placeholder",t.placeholder)("accesskey",t.shortcutkey),g.\u0275\u0275advance(2),g.\u0275\u0275property("tabindex",t.loadNativeDateInput?"-1":t.tabindex)("disabled",t.disabled||t.readonly||t.isCurrentDate),g.\u0275\u0275attribute("aria-hidden",!!t.loadNativeDateInput)("aria-label",t.displayValue?"Change Date "+t.displayValue:"Choose date by pressing enter"),g.\u0275\u0275advance(2),g.\u0275\u0275property("tabindex",t.loadNativeDateInput?"-1":t.tabindex)("disabled",t.disabled||t.readonly||t.isCurrentDate),g.\u0275\u0275attribute("aria-hidden",!!t.loadNativeDateInput),g.\u0275\u0275advance(3),g.\u0275\u0275property("tabindex",-1)("container",t.containerTarget||".wm-app")("bsConfig",t._dateOptions)("isOpen",t.isDateOpen)("daysDisabled",t.excludedDaysToDisable)("datesDisabled",t.excludedDatesToDisable)("isDisabled",t.disabled||t.readonly||t.isCurrentDate)("bsValue",t.bsDateValue),g.\u0275\u0275attribute("aria-hidden",!!t.loadNativeDateInput),g.\u0275\u0275advance(3),g.\u0275\u0275property("ngIf",t.loadNativeDateInput))},dependencies:[f.NgIf,b.BsDatepickerDirective,b.BsDatepickerInputDirective,y.BsDropdownMenuDirective,y.BsDropdownDirective,v.NgControlStatus,v.NgModel,w.TimepickerComponent,k],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(ne,[{type:t.Component,args:[{selector:"[wmDateTime]",providers:[r.provideAs(ne,n.NG_VALUE_ACCESSOR,!0),r.provideAs(ne,n.NG_VALIDATORS,!0),r.provideAsWidgetRef(ne),{provide:o.TimepickerConfig,deps:[l.AbstractI18nService],useFactory:G}],template:' <div dropdown\n [isOpen]="isTimeOpen"\n autoClose="false"\n [container]="\'body\'"\n (onShown)="onTimepickerOpen()"\n style="display: inherit;">\n <input class="form-control app-textbox display-input"\n [attr.aria-label]="hint"\n focus-target\n [name]="name"\n [tabindex]="loadNativeDateInput ? \'-1\' : tabindex"\n [attr.aria-hidden]="!!loadNativeDateInput"\n type="text"\n [value]="displayValue"\n (click)="toggleDpDropdown($event, true)"\n (focus)="onDateTimeInputFocus(); invokeOnFocus($event);"\n (blur)="onInputBlur($event)"\n (change)="onDateChange($event)"\n [autofocus]="autofocus"\n [disabled]="disabled || readonly || isCurrentDate"\n [required]="required"\n [readOnly]="isReadOnly"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n (keydown)="this._triggeredByUser = true; onDisplayKeydown($event)">\n\n <span class="input-group-btn">\n <button type="button"\n class="btn btn-default btn-date"\n [tabindex]="loadNativeDateInput ? \'-1\' : tabindex"\n [attr.aria-hidden]="!!loadNativeDateInput"\n [disabled]="disabled || readonly || isCurrentDate"\n [attr.aria-label]="displayValue ? \'Change Date \' + displayValue : \'Choose date by pressing enter\'"\n aria-haspopup="true"\n aria-expanded="false"\n (click)="toggleDpDropdown($event, false)">\n <i aria-hidden="true"\n class="app-icon wm-sl-l sl-calendar"></i>\n </button>\n <button type="button"\n class="btn btn-default btn-time"\n [tabindex]="loadNativeDateInput ? \'-1\' : tabindex"\n [attr.aria-hidden]="!!loadNativeDateInput"\n [disabled]="disabled || readonly || isCurrentDate"\n aria-label="Select time"\n aria-haspopup="true"\n aria-expanded="false"\n (click)="toggleTimePicker(!isTimeOpen, $event)">\n <i aria-hidden="true"\n class="app-icon wm-sl-l sl-time"></i>\n </button>\n </span>\n <div style="width: 0;display: inline-block;">\n <input class="model-holder"\n aria-label="datepicker dropdownmenu"\n aria-controls="date"\n focus-target\n [tabindex]="-1"\n [attr.aria-hidden]="!!loadNativeDateInput"\n [container]="containerTarget || \'.wm-app\'"\n [bsConfig]="_dateOptions"\n [isOpen]="isDateOpen"\n placement="bottom right"\n (onShown)="onDatePickerOpen()"\n (onHidden)="hideDatepickerDropdown()"\n [daysDisabled]="excludedDaysToDisable"\n [datesDisabled]="excludedDatesToDisable"\n #datepicker=bsDatepicker\n bsDatepicker\n [isDisabled]="disabled || readonly || isCurrentDate"\n [bsValue]="bsDateValue"\n (bsValueChange)="onModelUpdate($event, \'date\')">\n </div>\n <div *dropdownMenu\n class="dropdown-menu"\n aria-label="timepicker dropdown"\n aria-controls="time"\n (click)="preventTpClose($event)">\n <timepicker class="model-holder"\n [showMeridian]="ismeridian"\n [readonlyInput]="disabled || readonly || isCurrentDate"\n [(ngModel)]="bsTimeValue"\n [ngModelOptions]="{standalone: true}"\n [min]="minTime"\n [max]="maxTime"\n [hourStep]="hourstep"\n [minuteStep]="minutestep"\n [secondsStep]="secondsstep"\n [mousewheel]="true"\n [arrowkeys]="true"\n (isValid)="isValid($event)"\n [showSeconds]="showseconds"\n (ngModelChange)="onModelUpdate($event, \'time\')"></timepicker>\n </div>\n </div>\n<ng-template [ngIf]="loadNativeDateInput">\n <wm-datetimepicker\n dateTimePicker\n [config]="_dateOptions"\n [placement]="modal"\n [excludedDaysToDisable]="excludedDaysToDisable"\n [excludedDatesToDisable]="excludedDatesToDisable"\n [displayFormat]="dateInputFormat"\n [value]="bsDateValue"\n (change)="onModelUpdate($event, \'date\')">\n </wm-datetimepicker>\n <div class="mobile-input mobile-datepicker-container"\n [tabindex]="tabindex || 0"\n (click)="!(disabled || readonly) && showDatePickerModal(bsDateValue)"\n [attr.aria-label]="displayValue ? \'Change Date \' + displayValue : hint || \'Choose Date\'"\n (focus)="onDateTimeInputFocus(true); invokeOnFocus($event)"\n (blur)="onDateTimeInputBlur(); invokeOnTouched($event)"\n role="button">\n </div>\n</ng-template>\n'}]}],(()=>[{type:g.Injector},{type:g.NgZone},{type:g.ChangeDetectorRef},{type:C.AppDefaults},{type:C.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{bsDatePickerDirective:[{type:t.ViewChild,args:[a.BsDatepickerDirective]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(ne,{className:"DatetimeComponent",filePath:"date-time/date-time.component.ts",lineNumber:56});const ae=new Map([["autofocus",r.PROP_BOOLEAN],["class",r.PROP_STRING],["dataentrymode",{value:"default",...r.PROP_STRING}],["datavaluesource",r.PROP_ANY],["datavalue",r.PROP_STRING],["disabled",r.PROP_BOOLEAN],["hint",r.PROP_STRING],["hourstep",{value:1,...r.PROP_NUMBER}],["maxtime",r.PROP_STRING],["mintime",r.PROP_STRING],["minutestep",{value:15,...r.PROP_NUMBER}],["name",r.PROP_STRING],["outputformat",{value:"HH:mm:ss",...r.PROP_STRING}],["placeholder",{value:"Select time",...r.PROP_STRING}],["readonly",r.PROP_BOOLEAN],["required",r.PROP_BOOLEAN],["shortcutkey",r.PROP_STRING],["show",{value:!0,...r.PROP_BOOLEAN}],["showdropdownon",{value:"default",...r.PROP_STRING}],["showcustompicker",{value:!1,...r.PROP_BOOLEAN}],["secondsstep",{value:1,...r.PROP_NUMBER}],["tabindex",{value:0,...r.PROP_NUMBER}],["timepattern",r.PROP_STRING],["timestamp",r.PROP_STRING]]),se=["wmTime",""],oe=()=>({standalone:!0});function re(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"div",7),g.\u0275\u0275listener("click",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.preventTpClose(t))})),g.\u0275\u0275elementStart(1,"timepicker",8),g.\u0275\u0275twoWayListener("ngModelChange",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275twoWayBindingSet(i.bsTimeValue,t)||(i.bsTimeValue=t),g.\u0275\u0275resetView(t)})),g.\u0275\u0275listener("isValid",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.isValid(t))}))("ngModelChange",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.onTimeChange(t))})),g.\u0275\u0275elementEnd()()}if(2&e){const e=g.\u0275\u0275nextContext();g.\u0275\u0275advance(),g.\u0275\u0275property("showMeridian",e.ismeridian)("readonlyInput",e.isDisabled),g.\u0275\u0275twoWayProperty("ngModel",e.bsTimeValue),g.\u0275\u0275property("ngModelOptions",g.\u0275\u0275pureFunction0(13,oe))("disabled",e.disabled||e.readonly||e.isCurrentTime)("min",e.minTime)("max",e.maxTime)("hourStep",e.hourstep)("minuteStep",e.minutestep)("secondsStep",e.secondsstep)("mousewheel",!0)("arrowkeys",!0)("showSeconds",e.showseconds)}}function le(e,t){if(1&e){const e=g.\u0275\u0275getCurrentView();g.\u0275\u0275elementStart(0,"wm-datetimepicker",9),g.\u0275\u0275listener("change",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(i.onTimeChange(t))})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(1,"div",10),g.\u0275\u0275listener("click",(function(){g.\u0275\u0275restoreView(e);const t=g.\u0275\u0275nextContext();return g.\u0275\u0275resetView(!(t.disabled||t.readonly)&&t.showDatePickerModal(t.bsTimeValue))}))("focus",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return i.onDateTimeInputFocus(!0),i.invokeOnFocus(t),g.\u0275\u0275resetView(i.assignModel())}))("blur",(function(t){g.\u0275\u0275restoreView(e);const i=g.\u0275\u0275nextContext();return i.onDateTimeInputBlur(),g.\u0275\u0275resetView(i.invokeOnTouched(t))})),g.\u0275\u0275elementEnd()}if(2&e){const e=g.\u0275\u0275nextContext();g.\u0275\u0275property("minTime",e.minTime)("maxTime",e.maxTime)("placement",e.modal)("displayFormat",e.timepattern)("value",e.bsTimeValue),g.\u0275\u0275advance(),g.\u0275\u0275attribute("aria-label",e.displayValue?"Change time "+e.displayValue:e.hint||"Select time")}}const ce="CURRENT_TIME",de={widgetType:"wm-time",hostClass:"input-group app-timeinput"};class pe extends W{static{this.initializeProps=(r.register("wm-time",ae),void r.registerFormWidget(l.FormWidgetType.TIME,new Map(ae)))}get timestamp(){return this.bsTimeValue?this.bsTimeValue.valueOf():void 0}get datavalue(){return this.isCurrentTime&&!this.bsTimeValue?ce:l.getFormattedDate(this.datePipe,this.bsTimeValue,this.outputformat,this.timeZone,null,null,this)||""}set datavalue(e){e?e===ce?(this.isCurrentTime=!0,this.setTimeInterval()):(this.clearTimeInterval(),this.bsTimeValue=l.getNativeDateObject(e,{pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput}),this.isCurrentTime=!1,this.mintimeMaxtimeValidation()):(this.bsTimeValue=void 0,this.clearTimeInterval(),this.isCurrentTime=!1),this.invokeOnChange(this.datavalue),l.$appDigest()}get displayValue(){return l.getFormattedDate(this.datePipe,this.bsTimeValue,this.timepattern,this.timeZone,null,null,this)||""}get nativeDisplayValue(){return l.getFormattedDate(this.datePipe,this.bsTimeValue,"HH:mm:ss",this.timeZone,null,null,this)||""}constructor(e,t,i,n,a){super(e,de,a),this.ngZone=t,this.appDefaults=i,this.status={isopen:!1},r.styler(this.nativeElement,this),this.registerDestroyListener((()=>this.clearTimeInterval())),this.timepattern=this.appDefaults.timeFormat||l.getDisplayDateTimeFormat(l.FormWidgetType.TIME),this.updateFormat("timepattern"),this.app=n}onPropertyChange(e,t,i){"tabindex"!==e&&("timepattern"===e&&this.updateFormat("timepattern"),"mintime"===e?(this.minTime=l.getNativeDateObject(t,{pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput}),this.mintimeMaxtimeValidation()):"maxtime"===e?(this.maxTime=l.getNativeDateObject(t,{pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput}),this.mintimeMaxtimeValidation()):super.onPropertyChange(e,t,i))}setValidateType(e,t,i){this.timeNotInRange&&(i<e?this.validateType="mintime":i>t&&(this.validateType="maxtime"))}mintimeMaxtimeValidation(){this.timeNotInRange=this.minTime&&this.maxTime&&(this.bsTimeValue<this.minTime||this.bsTimeValue>this.maxTime),this.setValidateType(this.minTime,this.maxTime,this.bsTimeValue),this.invokeOnChange(this.datavalue,void 0,!1)}toggleDropdown(e,t=!1){this.loadNativeDateInput?t||this.onDateTimeInputFocus():("click"===e.type&&this.invokeEventCallback("click",{$event:e}),e.target&&$(e.target).is("input")&&!this.isDropDownDisplayEnabledOnInput(this.showdropdownon)||(this.ngZone.run((()=>{this.status.isopen=!this.status.isopen})),this.addBodyClickListener(this.status.isopen)))}preventTpClose(e){e.stopImmediatePropagation();const t=$(this.nativeElement).closest(".app-composite-widget.caption-floating");t.length>0&&this.app.notify("captionPositionAnimate",{displayVal:this.displayValue,nativeEl:t})}addBodyClickListener(e){if(!e)return;const t=document.querySelector("body");setTimeout((()=>{const e=$(t).find(">bs-dropdown-container .dropdown-menu").get(0);this.deregisterEventListener=l.addEventListenerOnElement(t,e,this.nativeElement,"click",this.isDropDownDisplayEnabledOnInput(this.showdropdownon),(()=>{this.status.isopen=!1}),0,!0)}),350)}onDisplayKeydown(e){this.isDropDownDisplayEnabledOnInput(this.showdropdownon)?(e.stopPropagation(),"Enter"===e.key||"ArrowDown"===e.key?(e.preventDefault(),this.toggleDropdown(e)):this.hideTimepickerDropdown()):this.hideTimepickerDropdown()}onDisplayTimeChange(e){const t=l.getNativeDateObject(e.target.value,{meridians:this.meridians,pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput});this.formatValidation(t,e.target.value)&&(this.invalidDateTimeFormat=!1,this.onTimeChange(t))}onInputBlur(e){$(e.relatedTarget).hasClass("bs-timepicker-field")||(this.invokeOnTouched(),this.invokeEventCallback("blur",{$event:e}))}onTimeChange(e,t){let i,n,a;t&&(e=l.getNativeDateObject(e.target.value,{pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput})),e?(this.bsTimeValue=e,this.timeNotInRange=this.minTime&&this.maxTime&&(e<this.minTime||e>this.maxTime),this.setValidateType(this.minTime,this.maxTime,e)):(this.bsTimePicker&&this.bsTimePicker.min&&this.bsTimePicker.max&&(a=moment(new Date(this.bsTimePicker.min)).format("A"),moment(new Date(this.bsTimePicker.max)).format("A"),i=this.bsTimePicker.hours+":"+(this.bsTimePicker.minutes||0)+":"+(this.bsTimePicker.seconds||0)+(this.bsTimePicker.showMeridian?" "+a:""),n=l.getNativeDateObject(i,{pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput}),this.bsTimePicker.meridian=a,this.timeNotInRange=this.bsTimePicker.min>n||this.bsTimePicker.max<n,this.setValidateType(this.bsTimePicker.min,this.bsTimePicker.max,n)),this.bsTimeValue=n),this.invokeOnTouched(),this.invokeOnChange(this.datavalue,{},!0)}setTimeInterval(){this.timeinterval||(this.timeinterval=setInterval((()=>{const e=this.timeZone?l.getMomentLocaleObject(this.timeZone):new Date;e.setSeconds(e.getSeconds()+1),this.datavalue=ce,this.onTimeChange(e)}),1e3))}clearTimeInterval(){this.timeinterval&&(clearInterval(this.timeinterval),this.timeinterval=null)}setIsTimeOpen(e){this.status.isopen=e}handleEvent(e,t,i,n){p.includes(["blur","focus","change","click"],t)||super.handleEvent(e,t,i,n)}hideTimepickerDropdown(){this.invokeOnTouched(),this.status.isopen=!1,this.deregisterEventListener&&this.deregisterEventListener(),this.removeKeyupListener();const e=$(this.nativeElement).closest(".app-composite-widget.caption-floating");e.length>0&&this.app.notify("captionPositionAnimate",{displayVal:this.displayValue,nativeEl:e}),this.blurDateInput(!0)}isValid(e){if(!e){const e=$(this.nativeElement).find("input").val(),t=l.getNativeDateObject(e,{meridians:this.meridians,pattern:this.loadNativeDateInput?this.outputformat:void 0,isNativePicker:this.loadNativeDateInput});if(!this.formatValidation(t,e))return}}onShown(){const e=document.querySelectorAll("timepicker");p.forEach(e,(e=>{l.addClass(e.parentElement,"app-datetime",!0)})),this.focusTimePickerPopover(this),this.bindTimePickerKeyboardEvents(),l.adjustContainerPosition($("bs-dropdown-container"),this.nativeElement,this.bsDropdown._dropdown,$("bs-dropdown-container .dropdown-menu"))}assignModel(){this.displayInputElem||(this.displayInputElem=this.getMobileInput()),this.displayInputElem.value=p.get(this,"nativeDisplayValue")}static{this.\u0275fac=function(e){return new(e||pe)(g.\u0275\u0275directiveInject(g.Injector),g.\u0275\u0275directiveInject(g.NgZone),g.\u0275\u0275directiveInject(C.AppDefaults),g.\u0275\u0275directiveInject(C.App),g.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=g.\u0275\u0275defineComponent({type:pe,selectors:[["","wmTime",""]],features:[g.\u0275\u0275ProvidersFeature([r.provideAs(pe,n.NG_VALUE_ACCESSOR,!0),r.provideAs(pe,n.NG_VALIDATORS,!0),r.provideAsWidgetRef(pe),{provide:o.TimepickerConfig,deps:[l.AbstractI18nService],useFactory:G}]),g.\u0275\u0275InheritDefinitionFeature],attrs:se,decls:7,vars:16,consts:[["dropdown","",2,"display","inherit",3,"onShown","onHidden","isOpen","container"],["focus-target","","type","text","role","timer",1,"form-control","app-textbox","display-input",3,"click","focus","blur","change","keydown","tabindex","name","value","disabled","autofocus","required","readOnly"],[1,"input-group-btn","dropdown-toggle"],["type","button","aria-label","Select time","aria-haspopup","true","aria-expanded","false",1,"btn","btn-default","btn-date",3,"click","tabindex","disabled"],["aria-hidden","true",1,"app-icon","wm-sl-l","sl-time"],["class","dropdown-menu",3,"click",4,"dropdownMenu"],[3,"ngIf"],[1,"dropdown-menu",3,"click"],[1,"model-holder",3,"ngModelChange","isValid","showMeridian","readonlyInput","ngModel","ngModelOptions","disabled","min","max","hourStep","minuteStep","secondsStep","mousewheel","arrowkeys","showSeconds"],["dateTimePicker","","mode","TIME",3,"change","minTime","maxTime","placement","displayFormat","value"],["tabindex","1000000","role","button",1,"mobile-input","mobile-datepicker-container",3,"click","focus","blur"]],template:function(e,t){1&e&&(g.\u0275\u0275elementStart(0,"div",0),g.\u0275\u0275listener("onShown",(function(){return t.onShown()}))("onHidden",(function(){return t.hideTimepickerDropdown()})),g.\u0275\u0275elementStart(1,"input",1),g.\u0275\u0275listener("click",(function(e){return t.toggleDropdown(e,!0)}))("focus",(function(e){return t.onDateTimeInputFocus(),t.invokeOnFocus(e)}))("blur",(function(e){return t.onInputBlur(e)}))("change",(function(e){return t.onDisplayTimeChange(e)}))("keydown",(function(e){return t._triggeredByUser=!0,t.onDisplayKeydown(e)})),g.\u0275\u0275elementEnd(),g.\u0275\u0275elementStart(2,"span",2)(3,"button",3),g.\u0275\u0275listener("click",(function(e){return t.toggleDropdown(e,!1)})),g.\u0275\u0275element(4,"i",4),g.\u0275\u0275elementEnd()(),g.\u0275\u0275template(5,re,2,14,"div",5),g.\u0275\u0275elementEnd(),g.\u0275\u0275template(6,le,2,6,"ng-template",6)),2&e&&(g.\u0275\u0275property("isOpen",t.status.isopen)("container","body"),g.\u0275\u0275advance(),g.\u0275\u0275property("tabindex",t.tabindex)("name",t.name)("value",t.displayValue)("disabled",t.disabled||t.readonly||t.isCurrentTime)("autofocus",t.autofocus)("required",t.required)("readOnly",t.isReadOnly),g.\u0275\u0275attribute("aria-label",t.hint)("placeholder",t.placeholder)("accesskey",t.shortcutkey)("aria-atomic",t.isCurrentTime?"true":"false"),g.\u0275\u0275advance(2),g.\u0275\u0275property("tabindex",t.tabindex)("disabled",t.disabled||t.readonly||t.isCurrentTime),g.\u0275\u0275advance(3),g.\u0275\u0275property("ngIf",t.loadNativeDateInput))},dependencies:[f.NgIf,y.BsDropdownMenuDirective,y.BsDropdownDirective,v.NgControlStatus,v.NgModel,w.TimepickerComponent,k],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(pe,[{type:t.Component,args:[{selector:"[wmTime]",providers:[r.provideAs(pe,n.NG_VALUE_ACCESSOR,!0),r.provideAs(pe,n.NG_VALIDATORS,!0),r.provideAsWidgetRef(pe),{provide:o.TimepickerConfig,deps:[l.AbstractI18nService],useFactory:G}],template:' <div dropdown [isOpen]="status.isopen" (onShown)="onShown()" (onHidden)="hideTimepickerDropdown()" [container]="\'body\'" style="display: inherit">\n <input class="form-control app-textbox display-input" [attr.aria-label]="hint"\n focus-target\n [tabindex]="tabindex"\n [name]="name"\n type="text"\n role="timer"\n [value]="displayValue"\n [disabled]="disabled || readonly || isCurrentTime"\n [autofocus]="autofocus"\n [attr.placeholder]="placeholder"\n [attr.accesskey]="shortcutkey"\n [attr.aria-atomic]="isCurrentTime ? \'true\' : \'false\'"\n [required]="required"\n [readOnly]="isReadOnly"\n (click)="toggleDropdown($event, true)"\n (focus)="onDateTimeInputFocus(); invokeOnFocus($event);"\n (blur)="onInputBlur($event)"\n (change)="onDisplayTimeChange($event)"\n (keydown)="this._triggeredByUser = true; onDisplayKeydown($event)">\n <span class="input-group-btn dropdown-toggle">\n <button type="button" class="btn btn-default btn-date" [tabindex]="tabindex" [disabled]="disabled || readonly || isCurrentTime" aria-label="Select time" aria-haspopup="true" aria-expanded="false" (click)="toggleDropdown($event, false)"><i aria-hidden="true" class="app-icon wm-sl-l sl-time"></i></button>\n </span>\n <div *dropdownMenu class="dropdown-menu" (click)="preventTpClose($event)">\n <timepicker class="model-holder"\n [showMeridian]="ismeridian"\n [readonlyInput]="isDisabled"\n [(ngModel)]="bsTimeValue"\n [ngModelOptions]="{standalone: true}"\n [disabled]="disabled || readonly || isCurrentTime"\n [min]="minTime"\n [max]="maxTime"\n [hourStep]="hourstep"\n [minuteStep]="minutestep"\n [secondsStep]="secondsstep"\n [mousewheel]="true"\n [arrowkeys]="true"\n (isValid)="isValid($event)"\n [showSeconds]="showseconds" (ngModelChange)="onTimeChange($event)"></timepicker>\n </div>\n </div>\n<ng-template [ngIf]="loadNativeDateInput">\n <wm-datetimepicker\n dateTimePicker\n mode="TIME"\n [minTime]="minTime"\n [maxTime]="maxTime"\n [placement]="modal"\n [displayFormat]="timepattern"\n [value]="bsTimeValue"\n (change)="onTimeChange($event)">\n </wm-datetimepicker>\n <div class="mobile-input mobile-datepicker-container"\n tabindex="1000000"\n (click)="!(disabled || readonly) && showDatePickerModal(bsTimeValue)"\n [attr.aria-label]="displayValue ? \'Change time \' + displayValue : hint || \'Select time\'"\n (focus)="onDateTimeInputFocus(true); invokeOnFocus($event); assignModel()"\n (blur)="onDateTimeInputBlur(); invokeOnTouched($event)"\n role="button">\n </div>\n</ng-template>\n'}]}],(()=>[{type:g.Injector},{type:g.NgZone},{type:C.AppDefaults},{type:C.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassDebugInfo(pe,{className:"TimeComponent",filePath:"time/time.component.ts",lineNumber:42});const ue=[Y,ne,pe,k,L,T,O];class he{static{this.\u0275fac=function(e){return new(e||he)}}static{this.\u0275mod=g.\u0275\u0275defineNgModule({type:he})}static{this.\u0275inj=g.\u0275\u0275defineInjector({imports:[i.CommonModule,a.BsDatepickerModule,s.BsDropdownModule,n.FormsModule,o.TimepickerModule,r.WmComponentsModule,h.IMaskModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&g.\u0275setClassMetadata(he,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.BsDatepickerModule,s.BsDropdownModule,n.FormsModule,o.TimepickerModule,r.WmComponentsModule,h.IMaskModule],declarations:[...ue],exports:[...ue]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&g.\u0275\u0275setNgModuleScope(he,{declarations:[Y,ne,pe,k,L,T,O],imports:[i.CommonModule,a.BsDatepickerModule,s.BsDropdownModule,n.FormsModule,o.TimepickerModule,r.WmComponentsModule,h.IMaskModule],exports:[Y,ne,pe,k,L,T,O]}),e.DateComponent=Y,e.DateTimePickerComponent=k,e.DatetimeComponent=ne,e.EpochModule=he,e.PickerComponent=T,e.PickerGroupComponent=O,e.TimeComponent=pe,e.TimePickerComponent=L})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("rxjs"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","rxjs","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.fileupload={}),e.ng.core,e.ng.common,e.wm.components.base,e.rxjs,e.wm.core,e._)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(n),p=r(s);const u=["wmFileUpload",""],h=e=>({"highlight-drop-box":e}),m=(e,t)=>({height:e,overflow:t}),g=e=>({width:e});function f(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"input",13),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onFileElemClick(t))}))("change",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onFileSelect(t,t.target.files))})),l.\u0275\u0275elementEnd()}if(2&e){const e=l.\u0275\u0275nextContext(2);l.\u0275\u0275property("disabled",e.disabled)("accept",e.chooseFilter),l.\u0275\u0275attribute("aria-label",e.hint||"File selection field")}}function v(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"div",6)(1,"div",7),l.\u0275\u0275listener("click",(function(){l.\u0275\u0275restoreView(e);const t=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(t.triggerFileSelect())}))("dragover",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(i.dragOverHandler(t))}))("drop",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(i.onFileDrop(t))})),l.\u0275\u0275element(2,"i"),l.\u0275\u0275elementStart(3,"div",8),l.\u0275\u0275element(4,"label",9),l.\u0275\u0275elementStart(5,"form",10),l.\u0275\u0275template(6,f,1,3,"input",11),l.\u0275\u0275elementStart(7,"a",12),l.\u0275\u0275text(8),l.\u0275\u0275elementEnd()()()()()}if(2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275advance(),l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction1(8,h,e.highlightDropArea)),l.\u0275\u0275advance(),l.\u0275\u0275classMap(e.iconclass),l.\u0275\u0275advance(2),l.\u0275\u0275property("innerHtml",e.caption,l.\u0275\u0275sanitizeHtml),l.\u0275\u0275advance(),l.\u0275\u0275propertyInterpolate("name",e.formName),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.multiple),l.\u0275\u0275advance(2),l.\u0275\u0275textInterpolate(e.fileUploadMessage)}}function b(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"input",13),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onFileElemClick(t))}))("change",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onFileSelect(t,t.target.files))})),l.\u0275\u0275elementEnd()}if(2&e){const e=l.\u0275\u0275nextContext(2);l.\u0275\u0275property("disabled",e.disabled)("accept",e.chooseFilter),l.\u0275\u0275attribute("aria-label",e.hint||"File selection field")}}function y(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"input",21),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onFileElemClick(t))}))("change",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onFileSelect(t,t.target.files))})),l.\u0275\u0275elementEnd()}if(2&e){const e=l.\u0275\u0275nextContext(2);l.\u0275\u0275property("disabled",e.disabled)("accept",e.chooseFilter),l.\u0275\u0275attribute("aria-label",e.hint||"File selection field")}}function w(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",14)(1,"div",15)(2,"form",10),l.\u0275\u0275template(3,b,1,3,"input",11)(4,y,1,3,"input",16),l.\u0275\u0275elementStart(5,"button",17),l.\u0275\u0275element(6,"i",18)(7,"span",19),l.\u0275\u0275elementEnd()()(),l.\u0275\u0275element(8,"div",20),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275advance(2),l.\u0275\u0275propertyInterpolate("name",e.formName),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.multiple),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",!e.multiple),l.\u0275\u0275advance(),l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction1(8,h,e.highlightDropArea)),l.\u0275\u0275advance(),l.\u0275\u0275classMap(e.iconclass),l.\u0275\u0275advance(),l.\u0275\u0275property("innerHTML",e.caption,l.\u0275\u0275sanitizeHtml)}}function C(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"button",22),l.\u0275\u0275listener("click",(function(){l.\u0275\u0275restoreView(e);const t=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(t.openFileSelector())})),l.\u0275\u0275element(1,"i")(2,"span",19),l.\u0275\u0275elementEnd()}if(2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("disabled",e.disabled),l.\u0275\u0275advance(),l.\u0275\u0275classMap(e.iconclass),l.\u0275\u0275advance(),l.\u0275\u0275property("innerHTML",e.caption,l.\u0275\u0275sanitizeHtml)}}function P(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"span",36),l.\u0275\u0275text(1),l.\u0275\u0275pipe(2,"filesize"),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext(2).$implicit;l.\u0275\u0275advance(),l.\u0275\u0275textInterpolate(l.\u0275\u0275pipeBind2(2,1,e.size,0))}}function I(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",37),l.\u0275\u0275element(1,"div",38),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext(2).$implicit;l.\u0275\u0275advance(),l.\u0275\u0275property("ngStyle",l.\u0275\u0275pureFunction1(1,g,e.progress+"%"))}}function A(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"div",39)(1,"a",40),l.\u0275\u0275listener("click",(function(){l.\u0275\u0275restoreView(e);const t=l.\u0275\u0275nextContext(2).$implicit,i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.abortFileUpload(t))})),l.\u0275\u0275element(2,"i",41),l.\u0275\u0275elementEnd()()}}function E(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",39),l.\u0275\u0275element(1,"span"),l.\u0275\u0275pipe(2,"stateClass"),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext(2).$implicit;l.\u0275\u0275advance(),l.\u0275\u0275classMapInterpolate1("status-icon ",l.\u0275\u0275pipeBind1(2,3,e.status),"")}}function O(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"div",39)(1,"a",42),l.\u0275\u0275listener("click",(function(){l.\u0275\u0275restoreView(e);const t=l.\u0275\u0275nextContext(2).$implicit,i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.clear(t))})),l.\u0275\u0275element(2,"i"),l.\u0275\u0275elementEnd()()}if(2&e){const e=l.\u0275\u0275nextContext(4);l.\u0275\u0275advance(),l.\u0275\u0275propertyInterpolate("title",e.cleariconhint),l.\u0275\u0275advance(),l.\u0275\u0275classMap(e.cleariconclass)}}function T(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",43),l.\u0275\u0275element(1,"span"),l.\u0275\u0275pipe(2,"stateClass"),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext(2).$implicit,t=l.\u0275\u0275nextContext(2);l.\u0275\u0275propertyInterpolate("title",e.errMsg||t.appLocale.MESSAGE_FILE_UPLOAD_FAILED),l.\u0275\u0275advance(),l.\u0275\u0275classMapInterpolate1("status-icon ",l.\u0275\u0275pipeBind1(2,4,e.status),"")}}function x(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"li",26)(1,"div",27),l.\u0275\u0275element(2,"div",28),l.\u0275\u0275pipe(3,"fileIconClass"),l.\u0275\u0275elementStart(4,"div",29)(5,"p",30)(6,"label",31),l.\u0275\u0275text(7),l.\u0275\u0275elementEnd(),l.\u0275\u0275element(8,"br"),l.\u0275\u0275template(9,P,3,4,"span",32),l.\u0275\u0275elementEnd(),l.\u0275\u0275template(10,I,2,3,"div",33),l.\u0275\u0275elementEnd(),l.\u0275\u0275template(11,A,3,0,"div",34)(12,E,3,5,"div",34)(13,O,3,4,"div",34)(14,T,3,6,"div",35),l.\u0275\u0275elementEnd()()),2&e){const e=l.\u0275\u0275nextContext().$implicit,t=l.\u0275\u0275nextContext(2);l.\u0275\u0275advance(2),l.\u0275\u0275classMapInterpolate1("media-left media-middle file-icon ",l.\u0275\u0275pipeBind1(3,11,t.getFileExtension(e.name)),""),l.\u0275\u0275propertyInterpolate("title",t.getFileExtension(e.name)),l.\u0275\u0275advance(5),l.\u0275\u0275textInterpolate(e.name),l.\u0275\u0275advance(2),l.\u0275\u0275property("ngIf",0!==e.fileLength),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","onProgress"===e.status),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","onProgress"===e.status||"queued"===e.status),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","success"===e.status),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",""!==t.cleariconclass&&"onProgress"!==e.status),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","error"===e.status)}}function D(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div"),l.\u0275\u0275template(1,x,15,13,"li",25),l.\u0275\u0275elementEnd()),2&e){const e=t.$implicit;l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","abort"!==e.status)}}function R(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"ul",23),l.\u0275\u0275template(1,D,2,1,"div",24),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("ngStyle",l.\u0275\u0275pureFunction2(2,m,e.filelistheight,e.overflow)),l.\u0275\u0275advance(),l.\u0275\u0275property("ngForOf",e.selectedFiles)}}function S(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"li",26)(1,"div",27),l.\u0275\u0275element(2,"div",46),l.\u0275\u0275elementStart(3,"div",29)(4,"p",30)(5,"label",31),l.\u0275\u0275text(6),l.\u0275\u0275elementEnd(),l.\u0275\u0275element(7,"br"),l.\u0275\u0275elementEnd()(),l.\u0275\u0275elementStart(8,"div",39),l.\u0275\u0275element(9,"span",47),l.\u0275\u0275elementEnd()()()),2&e){const e=t.$implicit;l.\u0275\u0275advance(6),l.\u0275\u0275textInterpolate(e.name)}}function _(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"ul",44),l.\u0275\u0275template(1,S,10,1,"li",45),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275propertyInterpolate("title",e.appLocale.MESSAGE_FOLDER_UPLOADS_NOT_ALLOWED),l.\u0275\u0275property("ngStyle",l.\u0275\u0275pureFunction2(3,m,e.filelistheight,e.overflow)),l.\u0275\u0275advance(),l.\u0275\u0275property("ngForOf",e.selectedFolders)}}const M={widgetType:"wm-fileupload",hostClass:"app-fileupload"};class N extends n.StylableComponent{static{this.initializeProps=(n.register("wm-fileupload",new Map([["caption",n.PROP_STRING],["name",n.PROP_STRING],["tabindex",n.PROP_NUMBER],["multiple",n.PROP_BOOLEAN],["fileuploadmessage",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["disabled",n.PROP_BOOLEAN],["contenttype",n.PROP_STRING],["maxfilesize",n.PROP_NUMBER],["iconclass",{value:"wm-sl-l sl-cloud-upload",...n.PROP_STRING}],["cleariconclass",{value:"",...n.PROP_STRING}],["cleariconhint",{value:"Clear",...n.PROP_STRING}],["class",n.PROP_STRING],["uploadpath",{...n.PROP_STRING}],["datasource",n.PROP_STRING],["selectedFiles",n.PROP_STRING],["destination",n.PROP_STRING],["filelistheight",n.PROP_NUMBER]])),void n.registerFormWidget(s.FormWidgetType.UPLOAD,new Map([["disabled",n.PROP_BOOLEAN],["extensions",n.PROP_STRING],["filetype",n.PROP_STRING],["multiple",n.PROP_BOOLEAN],["readonly",n.PROP_BOOLEAN],["required",n.PROP_BOOLEAN]])))}isValidFile(e,t,i,n){let a,r;return!t||(r=o.toLower(t).split(","),(o.includes(r,"image/*")||o.includes(r,"image")&&n)&&(a=s.isImageFile(e),a)||(o.includes(r,"audio/*")||o.includes(r,"audio")&&n)&&(a=s.isAudioFile(e),a)||(o.includes(r,"video/*")||o.includes(r,"video")&&n)&&(a=s.isVideoFile(e),a)||o.includes(r,"."+o.toLower(i))&&(a=!0),a)}getValidFiles(e){const t=[],i=[],n=parseFloat(this.maxfilesize)*this.FILESIZE_MB||this.FILESIZE_MB,a=(this.maxfilesize||"1")+"MB";return this.chooseFilter===this.DEVICE_CONTENTTYPES.FILES&&(this.chooseFilter=""),o.forEach(e,(e=>{if(this.isValidFile(e.name,this.chooseFilter,this.getFileExtension(e.name),this._isMobileType))if(e.size>n){const t=`${this.appLocale.LABEL_FILE_EXCEED_VALIDATION_MESSAGE} ${a}`;this.handleErrorFiles("INVALID_FILE_SIZE",t,e,i)}else t.push(e);else{const t=`${this.appLocale.LABEL_FILE_EXTENTION_VALIDATION_MESSAGE} ${this.chooseFilter}`;this.handleErrorFiles("INVALID_FILE_EXTENSION",t,e,i)}})),{validFiles:t,errorFiles:i}}handleErrorFiles(e,t,i,n){this.hasEventCallback("error")||this.app.notifyApp(t,"Error");const a={key:e,message:t};i.error=a,n.push(i)}getCaption(e,t,i){return o.includes(this.DEFAULT_CAPTIONS,e)?t&&!i?this.DEFAULT_CAPTIONS.MULTIPLE_SELECT:this.DEFAULT_CAPTIONS.SELECT:e}changeServerUploadPath(e){this.selectedUploadTypePath=e}getFileExtension(e){return e&&o.includes(e,".")?e.substring(e.lastIndexOf(".")+1):"file"}onSelectEventCall(e,t){this.selectedFiles=t,setTimeout((()=>{this.invokeEventCallback("select",{$event:$.extend(e.$files||{},t),selectedFiles:t})}))}onFileElemClick(e){this.highlightDropArea=!0,this.$element.find(".file-input")[0].value=null,e.stopPropagation(),window.addEventListener("focus",this.disableDropZone.bind(this))}disableDropZone(){this.highlightDropArea=!1,window.removeEventListener("focus",this.disableDropZone)}clear(e){this.selectedFiles=e?this.selectedFiles.filter((t=>t!==e)):[]}setClearIconClass(e){this.cleariconclass=e}setClearIconHint(e){this.cleariconhint=e}onFileSelect(e,t){let i;const n=this.getValidFiles(t);t=n.validFiles,"change"===e.type&&(this.selectedFolders=[]),o.isEmpty(n.errorFiles)||this.invokeEventCallback("error",{$event:e,files:n.errorFiles}),t.length&&(this.progressObservable=new a.Subject,i=this.invokeEventCallback("beforeselect",{$event:$.extend(e.$files||{},t),files:t}),this.datasource?(this.datasource._progressObservable=this.progressObservable,this.datasource._progressObservable.asObservable().subscribe((e=>{o.forEach(this.selectedFiles,(t=>{t.name===e.fileName&&(t.progress=e.progress,100===t.progress?t.status="success":(t.status=e.status,e.errMsg&&(t.errMsg=e.errMsg)))}))}))):this.selectedFiles=t,!1!==i&&this.onSelectEventCall(e,t))}dragOverHandler(e){e.preventDefault(),e.stopPropagation()}onFileDrop(e){e.preventDefault();let t=[];this.selectedFolders=[];const i=e.dataTransfer.items;if(i.length>0){for(var n=0;n<i.length;n++)i[n].webkitGetAsEntry().isFile?t.push(i[n].getAsFile()):i[n].webkitGetAsEntry().isDirectory&&this.selectedFolders.push(i[n].getAsFile());this.onFileSelect(e,t)}}dragOverCb(e){e.preventDefault(),$(this.nativeElement).find("#dropzone").addClass("highlight-drop-box")}dropCb(){$(this.nativeElement).find("#dropzone").removeClass("highlight-drop-box")}triggerFileSelect(){this.$element.find(".file-input").trigger("click")}abortFileUpload(e){this.datasource.execute(s.DataSource.Operation.CANCEL,e)}onPropertyChange(e,t,i){switch(e){case"uploadpath":this.changeServerUploadPath(t);break;case"contenttype":this.chooseFilter=t.split(" ").join(",");break;case"multiple":this.formName=this.name+(this.multiple?"-multiple-fileupload":"-single-fileupload"),this.caption=this.getCaption(this.caption,this.multiple,this._isMobileType);break;case"fileuploadmessage":this.fileUploadMessage=t}super.onPropertyChange(e,t,i)}constructor(e,t,i,n){super(e,M,n),this.app=t,this.onSelectEvt=i,this.selectedFiles=[],this.selectedFolders=[],this.fileTransfers={},this.caption="Upload",this.formName="",this.DEFAULT_CAPTIONS={MULTIPLE_SELECT:"Drop your files here.",SELECT:"Select"},this.DEVICE_CONTENTTYPES={IMAGE:"image",VIDEO:"video",AUDIO:"audio",FILES:"files"},this.FILESIZE_MB=1048576,this.CONSTANT_FILE_SERVICE="FileService",this.uploadData={file:void 0,uploadPath:void 0},this.chooseFilter="",this.fileUploadMessage="Drop your files here or click here to browse",this.uploadedFiles={fileName:"",path:"",length:"",status:""},this.uploadUrl="services"}ngOnInit(){super.ngOnInit(),document.addEventListener("dragover",this.dragOverCb.bind(this)),document.addEventListener("drop",this.dropCb.bind(this)),document.addEventListener("mouseleave",this.dropCb.bind(this))}ngAfterViewInit(){n.styler(this.nativeElement.querySelector(".app-button, .drop-box"),this)}ngOnDestroy(){document.removeEventListener("dragover",this.dragOverCb),document.removeEventListener("drop",this.dropCb),document.removeEventListener("mouseleave",this.dropCb),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||N)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(p.App),l.\u0275\u0275injectAttribute("select.event"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:N,selectors:[["","wmFileUpload",""]],features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(N)]),l.\u0275\u0275InheritDefinitionFeature],attrs:u,decls:6,vars:5,consts:[["init-widget","",1,"app-fileupload"],["class","app-multi-file-upload",4,"ngIf"],["class","app-single-file-upload",4,"ngIf"],["focus-target","","class","app-button btn btn-default",3,"disabled","click",4,"ngIf"],["class","list-group file-upload",3,"ngStyle",4,"ngIf"],["class","list-group file-upload",3,"ngStyle","title",4,"ngIf"],[1,"app-multi-file-upload"],["id","dropzone",1,"drop-box",3,"click","dragover","drop","ngClass"],[1,"message"],[1,"caption",3,"innerHtml"],[1,"form-horizontal",3,"name"],["class","file-input","type","file","name","files","multiple","",3,"disabled","accept","click","change",4,"ngIf"],["href","javascript:void(0);",1,"app-anchor"],["type","file","name","files","multiple","",1,"file-input",3,"click","change","disabled","accept"],[1,"app-single-file-upload"],[1,"app-button-wrapper"],["class","file-input","type","file","name","files",3,"disabled","accept","click","change",4,"ngIf"],["id","dropzone","focus-target","",1,"app-button","btn","btn-default",3,"ngClass"],["aria-hidden","true"],[1,"caption",3,"innerHTML"],[1,"app-files-upload-status","single"],["type","file","name","files",1,"file-input",3,"click","change","disabled","accept"],["focus-target","",1,"app-button","btn","btn-default",3,"click","disabled"],[1,"list-group","file-upload",3,"ngStyle"],[4,"ngFor","ngForOf"],["class","list-group-item file-upload-status",4,"ngIf"],[1,"list-group-item","file-upload-status"],[1,"media","upload-file-list"],[3,"title"],[1,"media-body","media-middle","file-details"],[1,"uploaddetails"],[1,"upload-title"],["class","filesize",4,"ngIf"],["class","progress",4,"ngIf"],["class","media-right media-middle",4,"ngIf"],["class","media-right media-middle",3,"title",4,"ngIf"],[1,"filesize"],[1,"progress"],[1,"progress-bar","progress-bar-striped","progress-bar-info",3,"ngStyle"],[1,"media-right","media-middle"],["type","button",1,"btn","btn-transparent","file-upload-stop",3,"click"],[1,"wi","wi-close"],["type","button",1,"btn","btn-transparent","btn-default","status-icon",3,"click","title"],[1,"media-right","media-middle",3,"title"],[1,"list-group","file-upload",3,"ngStyle","title"],["class","list-group-item file-upload-status",4,"ngFor","ngForOf"],[1,"media-left","media-middle","file-icon","fa","fa-folder-o"],[1,"status-icon","wi","wi-cancel","text-danger"]],template:function(e,t){1&e&&(l.\u0275\u0275elementStart(0,"div",0),l.\u0275\u0275template(1,v,9,10,"div",1)(2,w,9,10,"div",2)(3,C,3,5,"button",3)(4,R,2,5,"ul",4)(5,_,2,6,"ul",5),l.\u0275\u0275elementEnd()),2&e&&(l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",!t._isMobileType&&t.multiple),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",!t._isCordova&&(!t.multiple||t._isMobileType)),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",t._isCordova),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",t.selectedFiles.length>0),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",t.selectedFolders.length>0))},dependencies:[c.NgClass,c.NgForOf,c.NgIf,c.NgStyle,d.FileIconClassPipe,d.FileSizePipe,d.StateClassPipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(N,[{type:t.Component,args:[{selector:"[wmFileUpload]",providers:[n.provideAsWidgetRef(N)],template:'<div class="app-fileupload" init-widget>\n \x3c!-- drag and drop files UI in web --\x3e\n <div class="app-multi-file-upload" *ngIf="!_isMobileType && multiple">\n <div id="dropzone" class="drop-box" (click)="triggerFileSelect()" [ngClass]="{\'highlight-drop-box\' : highlightDropArea}" (dragover)="dragOverHandler($event);" (drop)="onFileDrop($event);">\n <i class="{{iconclass}}"></i>\n <div class="message">\n <label [innerHtml]="caption" class="caption"></label>\n <form class="form-horizontal" name="{{formName}}">\n <input class="file-input" [attr.aria-label]="hint || \'File selection field\'" type="file" name="files" *ngIf="multiple" [disabled]="disabled" [accept]="chooseFilter" (click)="onFileElemClick($event)" (change)="onFileSelect($event, $event.target.files)" multiple >\n <a href="javascript:void(0);" class="app-anchor">{{fileUploadMessage}}</a>\n </form>\n </div>\n </div>\n </div>\n \x3c!-- single file upload in web and single , multiple file upload UI in mobile runmode --\x3e\n <div class="app-single-file-upload" *ngIf="!_isCordova && (!multiple || _isMobileType)">\n <div class="app-button-wrapper">\n <form class="form-horizontal" name="{{formName}}">\n \x3c!-- support for file upload in Mobileapp in its runmode (Web) --\x3e\n <input class="file-input" [attr.aria-label]="hint || \'File selection field\'" type="file" name="files" *ngIf="multiple" [disabled]="disabled" [accept]="chooseFilter" (click)="onFileElemClick($event)" (change)="onFileSelect($event, $event.target.files)" multiple>\n <input class="file-input" [attr.aria-label]="hint || \'File selection field\'" type="file" name="files" *ngIf="!multiple" [disabled]="disabled" [accept]="chooseFilter" (click)="onFileElemClick($event)" (change)="onFileSelect($event, $event.target.files)" >\n <button id="dropzone" focus-target class="app-button btn btn-default" [ngClass]="{\'highlight-drop-box\' : highlightDropArea}">\n <i class="{{iconclass}}" aria-hidden="true"></i>\n <span class="caption" [innerHTML]="caption"></span>\n </button>\n </form>\n </div>\n <div class="app-files-upload-status single"></div>\n </div>\n \x3c!-- support for file upload in Mobile Application (device) --\x3e\n <button *ngIf="_isCordova" focus-target class="app-button btn btn-default" (click)="openFileSelector()" [disabled]="disabled">\n <i class="{{iconclass}}"></i>\n <span class="caption" [innerHTML]="caption"></span>\n </button>\n \x3c!-- list of selectedfiles UI --\x3e\n <ul class="list-group file-upload" [ngStyle]="{height: filelistheight, overflow: overflow}" *ngIf="selectedFiles.length > 0" >\n <div *ngFor="let ft of selectedFiles">\n <li class="list-group-item file-upload-status" *ngIf="ft.status !== \'abort\'">\n <div class="media upload-file-list">\n <div class="media-left media-middle file-icon {{getFileExtension(ft.name) | fileIconClass}}" title="{{getFileExtension(ft.name)}}"></div>\n <div class="media-body media-middle file-details">\n <p class="uploaddetails">\n <label class="upload-title">{{ft.name}}</label><br/>\n <span class="filesize" *ngIf="ft.fileLength !== 0">{{ft.size | filesize:0}}</span>\n </p>\n <div class="progress" *ngIf="ft.status === \'onProgress\'">\n <div class="progress-bar progress-bar-striped progress-bar-info" [ngStyle]="{width: (ft.progress +\'%\')}"></div>\n </div>\n </div>\n <div class="media-right media-middle" *ngIf="ft.status === \'onProgress\' || ft.status === \'queued\'">\n <a class="btn btn-transparent file-upload-stop" type="button" (click)="abortFileUpload(ft)">\n <i class="wi wi-close"></i>\n </a>\n </div>\n\n <div class="media-right media-middle" *ngIf="ft.status === \'success\'">\n <span class="status-icon {{ft.status | stateClass }}"></span>\n </div>\n <div *ngIf="cleariconclass !== \'\' && ft.status !== \'onProgress\'" class="media-right media-middle">\n <a (click)="clear(ft)" class="btn btn-transparent btn-default status-icon" title="{{cleariconhint}}" type="button">\n <i class="{{cleariconclass}}"></i>\n </a>\n </div>\n <div class="media-right media-middle" *ngIf="ft.status === \'error\'" title="{{ft.errMsg || this.appLocale.MESSAGE_FILE_UPLOAD_FAILED}}">\n <span class="status-icon {{ft.status | stateClass }}"></span>\n </div>\n </div>\n </li>\n </div>\n </ul>\n \x3c!-- list of selectedfolders UI to show the error in title --\x3e\n <ul class="list-group file-upload" [ngStyle]="{height: filelistheight, overflow: overflow}" title="{{this.appLocale.MESSAGE_FOLDER_UPLOADS_NOT_ALLOWED}}" *ngIf="selectedFolders.length > 0" >\n <li *ngFor="let ft of selectedFolders" class="list-group-item file-upload-status">\n <div class="media upload-file-list">\n <div class="media-left media-middle file-icon fa fa-folder-o"></div>\n <div class="media-body media-middle file-details">\n <p class="uploaddetails">\n <label class="upload-title">{{ft.name}}</label><br/>\n </p>\n </div>\n <div class="media-right media-middle" >\n <span class="status-icon wi wi-cancel text-danger"></span>\n </div>\n </div>\n </li>\n </ul>\n</div>\n'}]}],(()=>[{type:l.Injector},{type:p.App},{type:void 0,decorators:[{type:t.Attribute,args:["select.event"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(N,{className:"FileUploadComponent",filePath:"file-upload.component.ts",lineNumber:27});const k=[N];class L{static{this.\u0275fac=function(e){return new(e||L)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:L})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(L,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...k],exports:[...k]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(L,{declarations:[N],imports:[i.CommonModule,n.WmComponentsModule],exports:[N]}),e.FileUploadComponent=N,e.FileUploadModule=L})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@wm/components/base"),require("@wm/core"),require("@wm/components/input"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","@wm/components/base","@wm/core","@wm/components/input","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.rating={}),e.ng.core,e.ng.common,e.ng.forms,e.wm.components.base,e.wm.core,e.wm.components.input,e._)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(n),u=l(a);const h=new Map([["caption",a.PROP_STRING],["class",a.PROP_STRING],["datafield",a.PROP_STRING],["dataset",a.PROP_ANY],["datavaluesource",a.PROP_ANY],["datavalue",a.PROP_STRING],["displayexpression",a.PROP_STRING],["displayfield",a.PROP_STRING],["iconcolor",a.PROP_STRING],["iconsize",a.PROP_STRING],["maxvalue",{value:5,...a.PROP_NUMBER}],["name",a.PROP_STRING],["orderby",a.PROP_STRING],["readonly",a.PROP_BOOLEAN],["show",{value:!0,...a.PROP_BOOLEAN}],["showcaptions",{value:!0,...a.PROP_BOOLEAN}],["tabindex",{value:0,...a.PROP_NUMBER}],["usekeys",a.PROP_BOOLEAN]]),m=["ratingInput"],g=["wmRating",""],f=()=>({standalone:!0}),v=e=>({"font-size":e}),b=(e,t)=>({width:e,color:t}),y=e=>({active:e}),w=(e,t)=>({"font-size":e,color:t});function C(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"label",8),c.\u0275\u0275listener("touchstart",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(i.onTouchStart(t))}))("mouseleave",(function(t){const i=c.\u0275\u0275restoreView(e).$implicit,n=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(n.onMouseleave(t,i))}))("mouseover",(function(t){const i=c.\u0275\u0275restoreView(e).$implicit,n=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(n.onMouseOver(t,i))})),c.\u0275\u0275elementStart(1,"input",9,0),c.\u0275\u0275listener("click",(function(t){const i=c.\u0275\u0275restoreView(e).$implicit,n=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(n.onRatingClick(t,i))})),c.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit,i=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(8,y,e.index<=i.selectedRatingValue))("ngStyle",c.\u0275\u0275pureFunction2(10,w,i.iconsize,e.index<=i.selectedRatingValue&&i.iconcolor))("title",e.label||e.index)("for",i._id+"-"+e.index),c.\u0275\u0275advance(),c.\u0275\u0275property("id",i._id+"-"+e.index)("value",e.key||e.index),c.\u0275\u0275attribute("aria-label",(e.label||e.index)+" out of "+i.ratingItems.length+" ratings")("aria-checked",e.label===i.datavalue?"true":"false")}}function P(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"div",6),c.\u0275\u0275template(1,C,3,13,"label",7),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275advance(),c.\u0275\u0275property("ngForOf",e.ratingItems)}}function I(e,t){if(1&e&&c.\u0275\u0275element(0,"label",10),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275property("textContent",e.caption)}}const A={widgetType:"wm-rating",hostClass:"app-ratings"};class E extends o.DatasetAwareFormComponent{static{this.initializeProps=(a.register("wm-rating",h),void a.registerFormWidget(s.FormWidgetType.RATING,new Map(h)))}get selectedRatingValue(){return this._selectedRatingValue}set selectedRatingValue(e){this._selectedRatingValue=e,this.calculateRatingsWidth()}constructor(e,t){super(e,A,t),this._id=s.generateGUId(),a.styler(this.nativeElement,this);const i=this.dataset$.subscribe((()=>{this.prepareRatingDataset()}));this.registerDestroyListener((()=>i.unsubscribe()));const n=this.datavalue$.subscribe((()=>this.onDatavalueChange(this.datavalue)));this.registerDestroyListener((()=>n.unsubscribe()))}handleEvent(e,t,i,n){"change"!==t&&"blur"!==t&&super.handleEvent(this.ratingEl.nativeElement,t,i,n)}prepareRatingDataset(){this.datasetItems.length||(this.ratingItems=[],this.caption="");let e=[],t=this.datasetItems;const i=parseInt(this.maxvalue||this.datasetItems.length,10),n=(i>10?10:i)||5;t.length&&t.length>n&&(t=r.slice(t,0,n));for(let i=n;i>0;i--)if(t.length){if(!(i>t.length)){t=a.getOrderedDataset(t,"index:desc"),e=e.concat(t);break}e.push({key:i,value:i,index:i,label:i})}else e.push({key:i,value:i,index:i,label:i});this.ratingItems=e,t.length||(this.datasetItems=e),this.onDatavalueChange(this.datavalue)}onRatingClick(e,t){this.modelByKey=t.key,this.selectedRatingValue=t.index,this.showcaptions||(this.caption=t.label),this.invokeOnTouched(),this.invokeOnChange(this.datavalue,e||{},!0)}onDatavalueChange(e){if(r.isEmpty(this.datasetItems))this.selectedRatingValue=0;else{let t=r.find(this.datasetItems,{selected:!0});t||r.isUndefined(e)||(t=r.find(this.datasetItems,(function(t){return r.toString(t.index)===e})),t&&(t.selected=!0)),t||(this.modelByKey=void 0,this.caption=""),this.selectedRatingValue=t?t.index:0,t&&(this.caption=t.label)}this.readonly&&(this.selectedRatingValue||isNaN(e)||(this.selectedRatingValue=parseFloat(e)<=this.maxvalue?e:this.maxvalue),this.ratingsWidth=this.calculateRatingsWidth(e))}calculateRatingsWidth(e){const t=parseFloat(this.selectedRatingValue),i=.925,n=parseInt(this.maxvalue||this.datasetItems.length,10)||5;return s.setCSS(this.nativeElement.querySelector(".ratings-container"),"width",i*n+"em"),void 0===(e=e||this.datavalue)||""===e||null===e?(this.caption="",0):t<=n&&t>=0?t*i+"em":t>n?n*i+"em":void 0}onPropertyChange(e,t,i){if("readonly"===e)t&&(this.ratingsWidth=this.calculateRatingsWidth());else if("maxvalue"===e){let e=this.datavalue;this.prepareRatingDataset(),this.resetDatasetItems(),r.isUndefined(e)||(this.datavalue=e)}else super.onPropertyChange(e,t,i)}onTouchStart(e){this.touchEnabled=!0,this.onTouchStart=s.noop}onMouseleave(){this.caption=this.displayValue}onMouseOver(e,t){this.caption=t.label,!this.touchEnabled&&!e.target.classList.contains("rating-label-hover")&&e.target.classList.add("rating-label-hover")}static{this.\u0275fac=function(e){return new(e||E)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:E,selectors:[["","wmRating",""]],viewQuery:function(e,i){if(1&e&&c.\u0275\u0275viewQuery(m,5,t.ElementRef),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(i.ratingEl=e.first)}},features:[c.\u0275\u0275ProvidersFeature([a.provideAs(E,n.NG_VALUE_ACCESSOR,!0),a.provideAsWidgetRef(E)]),c.\u0275\u0275InheritDefinitionFeature],attrs:g,decls:5,vars:14,consts:[["ratingInput",""],["aria-multiselectable","true","ngDefaultControl","",1,"ratings-wrapper",3,"focus","ngModelChange","ngModel","ngModelOptions"],["class","rating-style",4,"ngIf"],[1,"ratings-container","disabled",3,"ngStyle"],[1,"ratings","active",3,"ngStyle"],["class","caption",3,"textContent",4,"ngIf"],[1,"rating-style"],[3,"ngClass","ngStyle","title","for","touchstart","mouseleave","mouseover",4,"ngFor","ngForOf"],[3,"touchstart","mouseleave","mouseover","ngClass","ngStyle","title","for"],["type","radio","role","radio","name","ratings-id",3,"click","id","value"],[1,"caption",3,"textContent"]],template:function(e,t){1&e&&(c.\u0275\u0275elementStart(0,"div",1),c.\u0275\u0275listener("focus",(function(e){return t.onFocus(e)})),c.\u0275\u0275twoWayListener("ngModelChange",(function(e){return c.\u0275\u0275twoWayBindingSet(t.modelByKey,e)||(t.modelByKey=e),e})),c.\u0275\u0275template(1,P,2,1,"div",2),c.\u0275\u0275elementStart(2,"div",3),c.\u0275\u0275element(3,"div",4),c.\u0275\u0275elementEnd(),c.\u0275\u0275template(4,I,1,1,"label",5),c.\u0275\u0275elementEnd()),2&e&&(c.\u0275\u0275twoWayProperty("ngModel",t.modelByKey),c.\u0275\u0275property("ngModelOptions",c.\u0275\u0275pureFunction0(8,f)),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",!t.readonly),c.\u0275\u0275advance(),c.\u0275\u0275classProp("hidden",!t.readonly),c.\u0275\u0275property("ngStyle",c.\u0275\u0275pureFunction1(9,v,t.iconsize)),c.\u0275\u0275advance(),c.\u0275\u0275property("ngStyle",c.\u0275\u0275pureFunction2(11,b,t.ratingsWidth,t.iconcolor)),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",t.showcaptions))},dependencies:[d.NgClass,d.NgForOf,d.NgIf,d.NgStyle,p.DefaultValueAccessor,p.NgControlStatus,p.NgModel,u.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(E,[{type:t.Component,args:[{selector:"[wmRating]",providers:[a.provideAs(E,n.NG_VALUE_ACCESSOR,!0),a.provideAsWidgetRef(E)],template:'<div (focus)="onFocus($event)" [(ngModel)]="modelByKey" [ngModelOptions]="{standalone: true}" aria-multiselectable="true"\n class="ratings-wrapper" ngDefaultControl>\n <div *ngIf="!readonly" class="rating-style">\n <label *ngFor="let rate of ratingItems;"\n [ngClass]="{active : rate.index <= selectedRatingValue}"\n [ngStyle]="{\'font-size\' :iconsize, color: rate.index <= selectedRatingValue && iconcolor}"\n [title]="rate.label || rate.index"\n (touchstart)="onTouchStart($event)"\n (mouseleave)="onMouseleave($event, rate)"\n (mouseover)="onMouseOver($event, rate)"\n [for]="_id + \'-\' + rate.index">\n <input #ratingInput type="radio" role="radio" [attr.aria-label]="(rate.label || rate.index) + \' out of \' + ratingItems.length + \' ratings\'" [attr.aria-checked]="rate.label === datavalue ? \'true\' : \'false\'"\n [id]="_id + \'-\' + rate.index" (click)="onRatingClick($event, rate)" name="ratings-id" [value]="rate.key || rate.index"/>\n </label>\n </div>\n <div [class.hidden]="!readonly" [ngStyle]="{\'font-size\' :iconsize}" class="ratings-container disabled" >\n <div class="ratings active" [ngStyle]="{width: ratingsWidth, color: iconcolor}"></div>\n </div>\n <label *ngIf="showcaptions" class="caption" [textContent]="caption"></label>\n</div>\n'}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{ratingEl:[{type:t.ViewChild,args:["ratingInput",{read:t.ElementRef}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(E,{className:"RatingComponent",filePath:"rating.component.ts",lineNumber:25});const O=[E];class T{static{this.\u0275fac=function(e){return new(e||T)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:T})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[i.CommonModule,n.FormsModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(T,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.FormsModule,a.WmComponentsModule],declarations:[...O],exports:[...O]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(T,{declarations:[E],imports:[i.CommonModule,n.FormsModule,a.WmComponentsModule],exports:[E]}),e.RatingComponent=E,e.RatingModule=T})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@wm/components/base"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","@wm/components/base","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.input=e.wm.components.input||{},e.wm.components.input.slider={}),e.ng.core,e.ng.common,e.ng.forms,e.wm.components.base,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(n),p=r(a);const u=new Map([["class",a.PROP_STRING],["datavalue",a.PROP_STRING],["disabled",a.PROP_BOOLEAN],["hint",a.PROP_STRING],["maxvalue",a.PROP_NUMBER],["minvalue",a.PROP_NUMBER],["name",a.PROP_STRING],["readonly",a.PROP_BOOLEAN],["shortcutkey",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["step",a.PROP_NUMBER],["tabindex",{value:0,...a.PROP_NUMBER}]]),h=["wmSlider",""],m=()=>({standalone:!0});function g(e,t){1&e&&l.\u0275\u0275element(0,"div",4)}const f={widgetType:"wm-slider",hostClass:"app-slider slider"};class v extends s.BaseFormCustomComponent{static{this.initializeProps=(a.register("wm-slider",u),void a.registerFormWidget(o.FormWidgetType.SLIDER,new Map(u)))}constructor(e,t){super(e,f,t),a.styler(this.nativeElement,this)}handleEvent(e,t,i,n){"change"!==t&&"blur"!==t&&super.handleEvent(e,t,i,n)}handleChange(e){this.invokeOnChange(this.datavalue,{type:"change"},this.ngModel.valid)}onPropertyChange(e,t,i){"tabindex"!==e&&super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||v)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:v,selectors:[["","wmSlider",""]],viewQuery:function(e,t){if(1&e&&l.\u0275\u0275viewQuery(n.NgModel,5),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.ngModel=e.first)}},features:[l.\u0275\u0275ProvidersFeature([a.provideAs(v,n.NG_VALUE_ACCESSOR,!0),a.provideAsWidgetRef(v)]),l.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:4,vars:21,consts:[[1,"app-slider-value","pull-left",3,"textContent"],[1,"app-slider-value","pull-right",3,"textContent"],["aria-orientation","horizontal","focus-target","","type","range",1,"range-input",3,"ngModelChange","blur","title","ngModel","ngModelOptions","disabled","tabindex"],["aria-readonly","true","class","readonly-wrapper",4,"ngIf"],["aria-readonly","true",1,"readonly-wrapper"]],template:function(e,t){1&e&&(l.\u0275\u0275element(0,"span",0)(1,"span",1),l.\u0275\u0275elementStart(2,"input",2),l.\u0275\u0275twoWayListener("ngModelChange",(function(e){return l.\u0275\u0275twoWayBindingSet(t.datavalue,e)||(t.datavalue=e),e})),l.\u0275\u0275listener("blur",(function(e){return t.invokeOnTouched(e)}))("ngModelChange",(function(e){return t.handleChange(e)})),l.\u0275\u0275elementEnd(),l.\u0275\u0275template(3,g,1,0,"div",3)),2&e&&(l.\u0275\u0275property("textContent",t.minvalue),l.\u0275\u0275attribute("aria-valuemin",t.minvalue),l.\u0275\u0275advance(),l.\u0275\u0275property("textContent",t.maxvalue),l.\u0275\u0275attribute("aria-valuemax",t.maxvalue),l.\u0275\u0275advance(),l.\u0275\u0275property("title",t.datavalue),l.\u0275\u0275twoWayProperty("ngModel",t.datavalue),l.\u0275\u0275property("ngModelOptions",l.\u0275\u0275pureFunction0(20,m))("disabled",t.disabled)("tabindex",t.tabindex)("tabindex",t.tabindex),l.\u0275\u0275attribute("min",t.minvalue)("max",t.maxvalue)("step",t.step)("accesskey",t.shortcutkey)("aria-label",t.hint||"Slider")("aria-valuemin",t.minvalue)("aria-valuemax",t.maxvalue)("aria-valuenow",t.datavalue)("name",t.name),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",t.readonly||t.disabled))},dependencies:[c.NgIf,d.DefaultValueAccessor,d.RangeValueAccessor,d.NgControlStatus,d.NgModel,p.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(v,[{type:t.Component,args:[{selector:"[wmSlider]",providers:[a.provideAs(v,n.NG_VALUE_ACCESSOR,!0),a.provideAsWidgetRef(v)],template:'<span class="app-slider-value pull-left" [attr.aria-valuemin]="minvalue" [textContent]="minvalue"></span>\n<span class="app-slider-value pull-right" [attr.aria-valuemax]="maxvalue" [textContent]="maxvalue"></span>\n<input class="range-input" aria-orientation="horizontal"\n focus-target\n type="range" [title]="datavalue"\n [attr.min]="minvalue"\n [attr.max]="maxvalue"\n [attr.step]="step"\n [(ngModel)]="datavalue"\n [ngModelOptions]="{standalone: true}"\n [disabled]="disabled"\n [attr.accesskey]="shortcutkey"\n [attr.aria-label]="hint || \'Slider\'"\n [attr.aria-valuemin]="minvalue"\n [attr.aria-valuemax]="maxvalue"\n [attr.aria-valuenow]="datavalue"\n [tabindex]="tabindex"\n (blur)="invokeOnTouched($event)"\n (ngModelChange)="handleChange($event)"\n [attr.name]="name"\n [tabindex]="tabindex"/>\n<div *ngIf="readonly || disabled" aria-readonly="true" class="readonly-wrapper"></div>\n'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{ngModel:[{type:t.ViewChild,args:[n.NgModel]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(v,{className:"SliderComponent",filePath:"slider.component.ts",lineNumber:24});const b=[v];class y{static{this.\u0275fac=function(e){return new(e||y)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:y})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.FormsModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(y,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.FormsModule,a.WmComponentsModule],declarations:[...b],exports:[...b]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(y,{declarations:[v],imports:[i.CommonModule,n.FormsModule,a.WmComponentsModule],exports:[v]}),e.SliderComponent=v,e.SliderModule=y})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/basic","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.chart={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.basic,e.wm.core,e._)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(a),p=r(s);const u=["Column","Line","Area","Cumulative Line","Bar","Pie","Donut","Bubble"],h=["circle","square","diamond","cross","triangle-up","triangle-down"],m=["01/01/2001","01/01/2002","01/01/2003"],g={Terrestrial:{colors:["#1f77b4","#aec7e8","#ff7f0e","#ffbb78","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5","#8c564b","#c49c94","#e377c2","#f7b6d2","#7f7f7f","#c7c7c7","#bcbd22","#dbdb8d","#17becf","#9edae5"],tooltip:{backgroundColor:"#de7d28",textColor:"#FFFFFF"}},Annabelle:{colors:["#393b79","#5254a3","#6b6ecf","#9c9ede","#637939","#8ca252","#b5cf6b","#cedb9c","#8c6d31","#bd9e39","#e7ba52","#e7cb94","#843c39","#ad494a","#d6616b","#e7969c","#7b4173","#a55194","#ce6dbd","#de9ed6"],tooltip:{backgroundColor:"#2e306f",textColor:"#FFFFFF"}},Azure:{colors:["#3182bd","#6baed6","#9ecae1","#c6dbef","#e6550d","#fd8d3c","#fdae6b","#fdd0a2","#31a354","#74c476","#a1d99b","#c7e9c0","#756bb1","#9e9ac8","#bcbddc","#dadaeb","#636363","#969696","#bdbdbd","#d9d9d9"],tooltip:{backgroundColor:"#3182bd",textColor:"#FFFFFF"}},Retro:{colors:["#0ca7a1","#ffa615","#334957","#acc5c2","#988f90","#8accc9","#515151","#f27861","#36c9fd","#794668","#0f709d","#0d2738","#44be78","#4a1839","#6a393f","#557d8b","#6c331c","#1c1c1c","#861500","#09562a"],tooltip:{backgroundColor:"#80513a",textColor:"#FFFFFF"}},Mellow:{colors:["#f0dcbf","#88c877","#aeb918","#2e2c23","#ddddd2","#dfe956","#4c963b","#5d3801","#e1eec3","#cd8472","#fcfab3","#9a4635","#9295ad","#2e3f12","#565677","#557d8b","#4f4d02","#0c0c1b","#833324","#24120e"],tooltip:{backgroundColor:"#7c9e73",textColor:"#FFFFFF"}},Orient:{colors:["#a80000","#cc6c3c","#f0e400","#000084","#fccc6c","#009c6c","#cc309c","#78cc00","#fc84e4","#48e4fc","#4878d8","#186c0c","#606060","#a8a8a8","#000000","#d7d7d7","#75a06e","#190d0b","#888888","#694b84"],tooltip:{backgroundColor:"#c14242",textColor:"#FFFFFF"}},GrayScale:{colors:["#141414","#353535","#5b5b5b","#848484","#a8a8a8","#c3c3c3","#e0e0e0","#c8c8c8","#a5a5a5","#878787","#656565","#4e4e4e","#303030","#1c1c1c","#4f4f4f","#3b3b3b","#757575","#606060","#868686","#c1c1c1"],tooltip:{backgroundColor:"#575757",textColor:"#FFFFFF"}},Flyer:{colors:["#3f454c","#5a646e","#848778","#cededf","#74c4dd","#0946ed","#380bb1","#000ff0","#f54a23","#1db262","#bca3aa","#ffa500","#a86b32","#63a18c","#56795e","#934343","#b75f5f","#752d2d","#4e1111","#920606"],tooltip:{backgroundColor:"#47637c",textColor:"#FFFFFF"}},Luminosity:{colors:["#FFFFFF","#e4e4e4","#00bcd4","#f0dd2f","#00aabf","#018376","#e91e63","#39e5d4","#ff6d6d","#00ff76","#ff9800","#969696","#ff4200","#e00000","#95cbe5","#5331ff","#fff4a7","#e7a800","#0061e4","#d5e7ff"],tooltip:{backgroundColor:"#47637c",textColor:"#FFFFFF"}}},f=["xaxislabel","yaxislabel","xunits","yunits","xnumberformat","xdateformat","ynumberformat","showvalues","showlabels","viewtype","areaviewtype","staggerlabels","reducexticks","offsettop","offsetbottom","offsetright","offsetleft","barspacing","xaxislabeldistance","yaxislabeldistance","theme","labeltype","donutratio","showlabelsoutside","showxdistance","showydistance","shape","nodatamessage","captions","showxaxis","showyaxis","centerlabel","customcolors","showlegend","legendtype","xdomain","ydomain","tooltips","linethickness","highlightpoints","interpolation","labelthreshold"],v={small:.3,medium:.5,large:.8},b={small:.3,medium:.6,large:.7},y=o.invert(v),w=o.invert(b),C={Thousand:{prefix:"K",divider:1e3},Million:{prefix:"M",divider:1e6},Billion:{prefix:"B",divider:1e9}},P="#preview-chart",I=["Column","Line","Pie","Bar","Donut","Bubble"],A=["Line","Area","Cumulative Line"],E=["Cumulative Line","Area"],O="Europe",T="Asia",x="America",D="Australia",R=e=>"Bar"===e,S=e=>"Donut"===e,_=e=>"Bubble"===e,M=e=>"Area"===e,N=e=>(e=>"Pie"===e)(e)||S(e),k=e=>o.includes(I,e)||!o.includes(u,e),L=e=>o.includes(A,e),F=(e,t)=>"value"===t?v[e]:"key"===t?y[e]:void 0,j=(e,t)=>"value"===t?b[e]:"key"===t?w[e]:void 0,B=e=>((e,t,i)=>{let n=[],a=[],s=[],o=[],r=[],l=[],c=[],d=[],p=[],u=[];switch(e){case"jsonFormat":n=[{x:"01/01/2001",y:4e6},{x:"01/01/2002",y:1e6},{x:"01/01/2003",y:5e6}],a=[{x:"01/01/2001",y:3e6},{x:"01/01/2002",y:4e6},{x:"01/01/2003",y:7e6}],s=[{x:"01/01/2001",y:2e6},{x:"01/01/2002",y:8e6},{x:"01/01/2003",y:6e6}],u[0]={values:n,key:O},t>=2&&(u[1]={values:a,key:T}),t>=3&&(u[2]={values:s,key:x});break;case"lineChartFormat":n=[{x:1,y:4e6},{x:2,y:1e6},{x:3,y:5e6}],a=[{x:1,y:3e6},{x:2,y:4e6},{x:3,y:7e6}],s=[{x:1,y:2e6},{x:2,y:8e6},{x:3,y:6e6}],u[0]={values:n,key:O},t>=2&&(u[1]={values:a,key:T}),t>=3&&(u[2]={values:s,key:x});break;case"arrayFormat":o=[[1,4e6],[2,1e6],[3,5e6]],r=[[1,3e6],[2,4e6],[3,7e6]],l=[[1,2e6],[2,8e6],[3,6e6]],u[0]={values:o,key:O},t>=2&&(u[1]={values:r,key:T}),t>=3&&(u[2]={values:l,key:x});break;case"bubbleFormat":c=[{x:80.66,y:33739900,size:78,shape:i="random"===i?h[Math.floor(Math.random()*h.length)]:i},{x:79.84,y:81902300,size:90,shape:i},{x:78.6,y:5523100,size:45,shape:i}],d=[{x:72.73,y:79716200,size:98,shape:i},{x:80.05,y:61801600,size:20,shape:i},{x:72.49,y:73137200,size:34,shape:i}],p=[{x:68.09,y:33739900,size:45,shape:i},{x:81.55,y:7485600,size:78,shape:i},{x:68.6,y:14185e4,size:56,shape:i}],u[0]={values:c,key:O},t>=2&&(u[1]={values:d,key:T}),t>=3&&(u[2]={values:p,key:x});break;case"pieChartFormat":u=[{x:O,y:1e6},{x:T,y:2e6},{x:x,y:3e6},{x:D,y:4e6}]}return u})((e=>{const t=e.type;return(e=>"Line"===e)(t)?"lineChartFormat":N(t)?"pieChartFormat":_(t)?"bubbleFormat":k(t)?"jsonFormat":"arrayFormat"})(e),o.split(e.yaxisdatakey,",").length,e.shape),V=(e,t)=>{return!("Min"!==e[t+"domain"]||(i=e.type,!(e=>"Column"===e)(i)&&!M(i)));var i},G=e=>!(!o.isFinite(e.min)||!o.isFinite(e.max)),W=e=>{const t=Math.floor(e);return Math.abs(e)-t>0?e-.1:t-1},U=(e,t)=>isNaN(parseInt(e,10))?t(e,"value"):e,q=(e,t)=>("%c"==(e=e||"%x")&&(e="%a %b %e %X %Y"),d3.timeFormat(e)(new Date(moment(moment(t).format()).valueOf()))),z=(e,t)=>{let i,n,a;if(e){let s;s="Thousand"==e||"Million"==e||"Billion"==e?d3.format(",.2s"):"%"==e?d3.format(".2%"):".f"==e?d3.format(".2f"):d3.format(e),i=s(t),n=C[e]&&C[e].divider||0,a=C[e]&&C[e].prefix,a&&0!==n&&(i=d3.format(".2f")(t/n)+a)}else i=t>=1e3?d3.format(".1s")(t):t;var s;return i=(s=i)?("number"==typeof s?s.toString():s).replace(/\.0+([A-Za-z]*)$/,"$1").replace(/\.([1-9]+)0+([A-Za-z]*)$/,".$1$2"):s,i},H=(e,t,i,n)=>{e.tooltip.contentGenerator((e=>{let a,s=e.data.x;return a=z(t.ynumberformat,e.data.y),N(i.type)&&(n=e.data.x,s=""),'<table><tbody><tr class="value"><b>'+s+'</b></tr><tr><td class="legend-color-guide"><div style="background-color:'+e.color+';"></div></td><td class="key">'+n+'</td><td class="value">'+a+"</td></tr></tbody></table>"}))},Q=(e,t,i,n,a)=>{n=((e,t)=>(t&&!s.isEmptyObject(t)||(t={}),o.forEach(f,(i=>{o.isUndefined(t[i])&&(t[i]=e[i])})),t))(e,n);let r,l,c,d,p,h,y,w,C,P=[];const I={},A={};switch(e.type){case"Column":h=U(n.barspacing,F)||v.medium,r=nv.models.multiBarChart().x((e=>e.x)).y((e=>e.y)).reduceXTicks(n.reducexticks).rotateLabels(0).showControls(!1).stacked("Stacked"===n.viewtype).groupSpacing(h);break;case"Cumulative Line":r=nv.models.cumulativeLineChart().x((e=>e[0])).y((e=>e[1])).showControls(!1).useInteractiveGuideline(n.tooltips).interpolate(n.interpolation);break;case"Line":r=nv.models.lineChart().useInteractiveGuideline(n.tooltips).interpolate(n.interpolation);break;case"Area":r=nv.models.stackedAreaChart().x((e=>e.x)).y((e=>e.y)).clipEdge(!0).showControls(!1).style(n.areaviewtype).useInteractiveGuideline(n.tooltips).interpolate(n.interpolation);break;case"Bar":h=U(n.barspacing,F)||v.medium,r=nv.models.multiBarHorizontalChart().x((e=>e.x)).y((e=>e.y)).showControls(!1).stacked("Stacked"===n.viewtype).showValues(n.showvalues).groupSpacing(h);break;case"Pie":case"Donut":d=((e,t,i)=>{const n={};switch(e){case"hide":n.showlabels=!1;break;case"inside":n.showlabels=!0,n.showlabelsoutside=!1;break;case"outside":n.showlabels=!0,n.showlabelsoutside=!0}return n})(n.showlabels,n.showlabelsoutside),p=U(n.donutratio,j)||b.medium,r=nv.models.pieChart().x((e=>e.x)).y((e=>e.y)).showLabels(d.showlabels).labelType(n.labeltype).valueFormat(d3.format("%")).title(n.centerlabel).labelThreshold(n.labelthreshold||.01).labelsOutside(d.showlabelsoutside),S(e.type)&&r.donut(!0).donutRatio(p),"key-value"===n.labeltype&&r.labelType((e=>e.data.x+" "+e.data.y));break;case"Bubble":r=nv.models.scatterChart().x((e=>e.x)).y((e=>e.y)).showDistX(n.showxdistance).showDistY(n.showydistance)}var E;return t&&(I.min=t.min.x||t.min[0],I.max=t.max.x||t.max[0],G(I)&&(I.min=W(I.min),r.xDomain([I.min,I.max]))),i&&(A.min=i.min.y||i.min[1],A.max=i.max.y||i.max[1],G(A)&&(A.min=W(A.min),r.yDomain([A.min,A.max]))),r.legend.vers(n.legendtype&&n.legendtype.toLowerCase()||"furious"),o.includes(u,e.type)||(r=nv.models.multiBarChart().x((e=>e.x)).y((e=>e.y))),N(e.type)?("percent"===n.labeltype?r.valueFormat(d3.format("%")):r.valueFormat((e=>z(n.ynumberformat,e))),H(r,n,e)):(r.showXAxis(n.showxaxis).showYAxis(n.showyaxis),r.legendPosition(n.showlegend),l=n.xaxislabel||s.prettifyLabels(e.xaxisdatakey)||"x caption",c=n.yaxislabel||s.prettifyLabels(e.yaxisdatakey)||"y caption",e.yaxisdatakey&&e.yaxisdatakey.split(",").length>1&&(C=!0),C||_(e.type)||H(r,n,e,c),l+=n.xunits?"("+n.xunits+")":"",c+=n.yunits?"("+n.yunits+")":"",r.xAxis.axisLabel(l).axisLabelDistance(n.xaxislabeldistance).staggerLabels(n.staggerlabels),n.xdateformat||a&&!_(e.type)?L(e.type)?r.xAxis.tickFormat((t=>(w=a?m[t-1]:e.xDataKeyArr[t],q(n.xdateformat,w)))):r.xAxis.tickFormat((e=>q(n.xdateformat,e))):n.xnumberformat?r.xAxis.tickFormat((e=>z(n.xnumberformat,e))):L(e.type)&&r.xAxis.tickFormat((t=>e.xDataKeyArr[t])),r.yAxis.axisLabel(c).axisLabelDistance(n.yaxislabeldistance).staggerLabels(n.staggerlabels).tickFormat((e=>z(n.ynumberformat,e))),R(e.type)&&r.valueFormat((e=>z(n.ynumberformat,e)))),o.isString(n.customcolors)&&n.customcolors&&(P=o.split(n.customcolors,",")),o.isArray(n.customcolors)&&(P=n.customcolors),y="false"!==(E=n.showlegend)&&!1!==E&&("true"===E||!0===E||"hide"!==E),r.showLegend(y).margin({top:n.offsettop,right:n.offsetright,bottom:n.offsetbottom,left:n.offsetleft}).color(P.length?P:g[n.theme].colors),r.tooltip.enabled(n.tooltips),e.message=n.nodatamessage||"No data found",r.noData(e.message),L(e.type)&&e.highlightpoints&&r.dispatch.on("stateChange",(()=>{setTimeout((()=>Y(e)),100)})),!e.showlegend||"Donut"!==e.type&&"Pie"!==e.type||"right"===e.showlegend&&r.legendPosition("right"),r},Y=(e,t)=>{const i=e.$id;L(e.type)&&(((e,t)=>{t=t||1.5;const i=(e?d3.select("#wmChart"+e+" svg"):d3.select(P+" svg")).selectAll(".nv-line");0!==i.size()&&i.style("stroke-width",t)})(i,e.linethickness),((e,t)=>{const i=e?d3.select("#wmChart"+e+" svg"):d3.select(P+" svg");t?i.selectAll(".nv-point").style("stroke-width","6px").style("fill-opacity","0.95").style("stroke-opacity","0.95"):i.selectAll(".nv-point").style("stroke-width","0px").style("fill-opacity","0")})(i,e.highlightpoints))},X=["wmChart",""],K=(e,t)=>({loading:e,"panel-body":t}),J=e=>({error:e});function Z(e,t){if(1&e&&l.\u0275\u0275element(0,"div",9),2&e){const e=l.\u0275\u0275nextContext(2);l.\u0275\u0275property("innerHTML",e.subheading,l.\u0275\u0275sanitizeHtml)}}function ee(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",4)(1,"h3",5)(2,"div",6),l.\u0275\u0275element(3,"i"),l.\u0275\u0275elementEnd(),l.\u0275\u0275element(4,"div",7),l.\u0275\u0275template(5,Z,1,1,"div",8),l.\u0275\u0275elementEnd()()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275advance(3),l.\u0275\u0275classMapInterpolate1("app-icon panel-icon ",e.iconclass,""),l.\u0275\u0275classProp("ng-hide",!e.iconclass),l.\u0275\u0275advance(),l.\u0275\u0275property("innerHTML",e.title,l.\u0275\u0275sanitizeHtml),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.subheading)}}function te(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",10),l.\u0275\u0275element(1,"p",11),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275advance(),l.\u0275\u0275property("title",e.hintMsg)("ngClass",l.\u0275\u0275pureFunction1(3,J,e.invalidConfig))("innerText",e.errMsg)}}const ie={widgetType:"wm-chart",hostClass:"app-chart"},ne="none",ae=["aggregation","aggregationcolumn","groupby","orderby"],se={Column:"rect.nv-bar",Bar:"g.nv-bar",Area:".nv-stackedarea .nv-point","Cumulative Line":".nv-cumulativeLine .nv-scatterWrap path.nv-point",Line:".nv-lineChart .nv-scatterWrap path.nv-point",Pie:".nv-pieChart .nv-slice path",Donut:".nv-pieChart .nv-slice path",Bubble:".nv-scatterChart .nv-point-paths path"},oe={fontunit:"font-size",fontsize:"font-size",color:"fill",fontfamily:"font-family",fontweight:"font-weight",fontstyle:"font-style",textdecoration:"text-decoration"},re={average:"AVG",count:"COUNT",maximum:"MAX",minimum:"MIN",sum:"SUM"},le=e=>!0===e||"true"===e||!1!==e&&"false"!==e&&e,ce=e=>{let t;const i=[],n=[];return o.forEach(o.split(e,","),(function(e){t=o.split(e,":"),i.push(t[0]),n.push(t[1])})),{columns:i,orders:n}},de=e=>e?e.replace(/\./g,"$"):null,pe=(e,t)=>{const i=d3.select("#wmChart"+t+" svg").selectAll("text");i.empty()||i.style(e)};class ue extends n.StylableComponent{static{this.initializeProps=void n.register("wm-chart",new Map([["aggregation",{value:"none",...n.PROP_STRING}],["aggregationcolumn",n.PROP_STRING],["areaviewtype",{value:"stack",...n.PROP_STRING}],["barspacing",{value:"medium",...n.PROP_STRING}],["bubblesize",n.PROP_STRING],["centerlabel",n.PROP_STRING],["class",n.PROP_STRING],["customcolors",n.PROP_ANY],["dataset",n.PROP_ANY],["datasource",n.PROP_STRING],["donutratio",{value:"medium",...n.PROP_STRING}],["formattype",{value:"",PROP_STRING:n.PROP_STRING}],["groupby",n.PROP_STRING],["height",{value:"210px",PROP_STRING:n.PROP_STRING}],["highlightpoints",n.PROP_BOOLEAN],["iconclass",n.PROP_STRING],["interpolation",{value:"linear",...n.PROP_STRING}],["labelthreshold",{value:.01,...n.PROP_NUMBER}],["labeltype",{value:"percent",...n.PROP_STRING}],["legendtype",{value:"furious",...n.PROP_STRING}],["linethickness",n.PROP_STRING],["loadingdatamsg",{value:"Loading...",...n.PROP_STRING}],["name",n.PROP_STRING],["nodatamessage",{value:"No Data Available.",...n.PROP_STRING}],["offset",n.PROP_STRING],["offsetbottom",{value:55,...n.PROP_NUMBER}],["offsetleft",{value:75,...n.PROP_NUMBER}],["offsetright",{value:25,...n.PROP_NUMBER}],["offsettop",{value:25,...n.PROP_NUMBER}],["orderby",n.PROP_STRING],["reducexticks",{value:!0,...n.PROP_BOOLEAN}],["shape",{value:"circle",...n.PROP_STRING}],["show",{value:!0,...n.PROP_BOOLEAN}],["showlabels",{value:"outside",...n.PROP_STRING}],["showlabelsoutside",{value:!0,...n.PROP_BOOLEAN}],["showlegend",{value:"top",...n.PROP_STRING}],["showvalues",{value:!1,...n.PROP_BOOLEAN}],["showxaxis",{value:!0,...n.PROP_BOOLEAN}],["showxdistance",{value:!1,...n.PROP_BOOLEAN}],["showyaxis",{value:!0,...n.PROP_BOOLEAN}],["showydistance",{value:!1,...n.PROP_BOOLEAN}],["staggerlabels",{value:!1,...n.PROP_BOOLEAN}],["subheading",n.PROP_STRING],["theme",n.PROP_STRING],["title",n.PROP_STRING],["tooltips",{value:!0,...n.PROP_BOOLEAN}],["type",n.PROP_STRING],["viewtype",{value:"Grouped",...n.PROP_STRING}],["xaxisdatakey",n.PROP_STRING],["xaxislabel",n.PROP_STRING],["xaxislabeldistance",{value:12,...n.PROP_NUMBER}],["xdateformat",n.PROP_STRING],["xdomain",{value:"Default",...n.PROP_STRING}],["xnumberformat",n.PROP_STRING],["xunits",n.PROP_STRING],["yaxisdatakey",n.PROP_STRING],["yaxislabel",n.PROP_STRING],["yaxislabeldistance",{value:12,...n.PROP_NUMBER}],["ydomain",{value:"Default",...n.PROP_STRING}],["ynumberformat",n.PROP_STRING],["yunits",n.PROP_STRING]]))}isGroupByEnabled(){return!(!this.groupby||this.groupby===ne)}isValidAxis(){return!this.binddataset||this.xaxisdatakey&&this.yaxisdatakey}isAggregationEnabled(){return!(!this.isGroupByEnabled()||this.aggregation===ne||!this.aggregationcolumn)}isDataFilteringEnabled(){return this.isAggregationEnabled()||!this.isVisuallyGrouped&&this.orderby}getxAxisVal(e,t,i){const n=o.get(e,t);return L(this.type)&&!s.isNumberType(this.xAxisDataType)?(this.xDataKeyArr.push(n),n instanceof Date?n:i):n}getXMinMaxValues(e){if(!e)return;const t={};return t.min=o.minBy(e.values,(e=>e.x||e[0])),t.max=o.maxBy(e.values,(e=>e.x||e[0])),t}getYMinMaxValues(e){const t={},i=[],n=[];if(e)return o.forEach(e,(e=>{i.push(o.minBy(e.values,(function(e){return e.y||e[1]}))),n.push(o.maxBy(e.values,(function(e){return e.y||e[1]})))})),t.min=o.minBy(i,(e=>e.y||e[1])),t.max=o.maxBy(n,(e=>e.y||e[1])),t}getValidData(e){return 1===e.length&&void 0===e[0]?[]:e}valueFinder(e,t,i,n,a){const s=this.getxAxisVal(e,t,n),r=o.get(e,i),l=parseFloat(r)||r,c=parseFloat(e[this.bubblesize])||2;let d={};var p;return k(this.type)?(d.x=s,d.y=l,_(this.type)&&(d.size=c,d.shape=a||"circle")):(p=this.type,o.includes(E,p)&&(d=[s,l])),d._dataObj=e,d}setErrMsg(e){this.showNoDataMsg&&(this.showContentLoadError=!0,this.invalidConfig=!0,this.errMsg="")}processChartData(){if(this.sampleData=B(this),this.xDataKeyArr=[],!this.binddataset)return this.xDataKeyArr=m,this.sampleData;if(!this.chartData||!this.chartData.length)return[];let e,t=[],i=[],n=[];const a=this.xaxisdatakey,r=this.yaxisdatakey?this.yaxisdatakey.split(","):[],l=this.chartData;return o.isArray(l)&&(N(this.type)?(e=r[0],t=o.map(l,((t,i)=>{if(!s.isEmptyObject(l[i]))return this.valueFinder(l[i],a,e)})),t=this.getValidData(t)):(_(this.type)&&(i="random"===this.shape?h:this.shape),r.forEach(((e,r)=>{n=o.map(l,((t,n)=>{if(!s.isEmptyObject(l[n]))return this.valueFinder(l[n],a,e,n,o.isArray(i)&&i[r]||this.shape)})),n=this.getValidData(n),t.push({values:n,key:s.prettifyLabels(e)})})))),t}setChartData(e){e&&(this._processedData=e)}getChartData(){return this._processedData}getVisuallyGroupedData(e,t){let i,n,a={},s=[];const r=[],l=M(this.type),c=o.first(o.split(this.yaxisdatakey,","));return this.xDataKeyArr=[],e=o.orderBy(e,o.split(this.groupby,",")),this.orderby&&(i=ce(this.orderby),e=o.orderBy(e,i.columns,i.orders)),e=o.groupBy(e,t),l&&(n=o.max(o.map(e,(e=>e.length)))),o.forEach(e,((e,t)=>{s=M?o.fill(new Array(n),[0,0]):[],o.forEachRight(e,((e,t)=>{s[t]=this.valueFinder(e,this.xaxisdatakey,c,t)})),a={key:t,values:s},r.push(a)})),r}getGroupingDetails(){if(this.isGroupByEnabled()&&!this.isAggregationEnabled()){let e,t,i,n=!1,a=[];const s=this.groupby&&this.groupby!==ne?this.groupby.split(","):[],r=this.yaxisdatakey?this.yaxisdatakey.split(","):[];return s.length>1&&(s.every(((t,a)=>this.xaxisdatakey===t||-1!==$.inArray(t,r)||(n=!0,e=t,i=a,s.splice(i,1),!1))),e&&a.push(e),s.length&&(a=o.concat(a,s))),this.xaxisdatakey!==this.aggregationcolumn&&a.push(this.xaxisdatakey),o.forEach(r,(e=>{e!==this.aggregationcolumn&&a.push(e)})),t=a.join(","),this.isVisuallyGrouped=n,{expression:t,isVisuallyGrouped:n,visualGroupingColumn:e}}return{expression:"",isVisuallyGrouped:!1,visualGroupingColumn:""}}getAggregatedData(e){const t=this.datasource,i=this.yaxisdatakey?this.yaxisdatakey.split(","):[],n={};let a,r,l,c=[],d=[];t&&(this.isGroupByEnabled()&&(d=o.split(this.groupby,",")),this.orderby&&(a=o.replace(this.orderby,/:/g," "),c=o.uniq(o.concat(c,d,[this.aggregationcolumn])),l=ce(this.orderby).columns,o.forEach(o.intersection(c,l),(e=>{r=de(e),a=o.replace(a,e,r)}))),this.isAggregationEnabled()&&(n.groupByFields=d,n.aggregations=[{field:this.aggregationcolumn,type:re[this.aggregation],alias:de(this.aggregationcolumn)}]),t.execute("getAggregatedData",{aggregations:n,sort:a}).then((t=>{const n=[],a=de(this.aggregationcolumn),r=de(this.xaxisdatakey),l=[];i.forEach((e=>l.push(de(e)))),o.forEach(t.body.content,(e=>{const t={};this.isAggregationEnabled()&&(t[this.aggregationcolumn]=e[a],t[this.aggregationcolumn]=o.get(e,a)||o.get(e,this.aggregationcolumn)),t[this.xaxisdatakey]=o.get(e,r)||o.get(e,this.xaxisdatakey),i.forEach(((i,n)=>{t[i]=e[l[n]],t[i]=o.get(e,l[n])||o.get(e,i)})),n.push(t)})),this.chartData=n,s.triggerFn(e)}),(()=>{this.chartData=[],this.setErrMsg("MESSAGE_ERROR_FETCH_DATA"),s.triggerFn(e)})))}setLabelsMaxWidth(){let e,t,i,n,a,s,o,r,l,c,d,p;const u=parseInt(this.fontsize,10)||12,h=R(this.type);e=$("#wmChart"+this.$id+" svg").find("g.nv-x").find("g.tick").find("text"),e.each((function(){const e=$(this);let i,s;if(e.text()&&"1"===e.css("opacity"))return i=e.parent().attr("transform").split(","),n=parseFloat(i[0].substr(10)),a=parseFloat(i[1]||"0"),!h&&n>0?s=n:a>0&&(s=a),t?(t=s-t,!1):(t=s,!0)})),h?(c=$("#wmChart"+this.$id+" svg>g.nv-wrap>g>g.nv-barsWrap")[0],d=$("#wmChart"+this.$id+" svg>g.nv-wrap>g>g.nv-y")[0],p=$("#wmChart"+this.$id+" svg")[0],s=c?c.getBoundingClientRect().height:0,l=d?p.getBoundingClientRect().width-d.getBoundingClientRect().width:p.getBoundingClientRect().width,i=Math.round(l/u),t<u&&(o=s/u,r=Math.ceil(this.chartData.length/o),d3.select("#wmChart"+this.$id+" svg").select("g.nv-x").selectAll("g.tick").select("text").each((function(e,t){t%r!=0&&d3.select(this).attr("opacity",0)})))):i=Math.round(t/u),i=Math.abs(i),e.each((function(){this.textContent.length>i&&(this.textContent=this.textContent.substr(0,i)+"...")}))}getDefaultColumns(){let e,t,i,n;const a=[],o=this.datasource.execute(s.DataSource.Operation.GET_PROPERTIES_MAP)||[];for(i=0;i<o.length&&a.length<=2;i+=1)e=o[i].type,!o[i].isRelated&&s.isNumberType(e)?a.push(o[i].fieldName):"string"!==e||t||(t=o[i].fieldName);return t&&a.length>0&&!_(this.type)&&(n=a[0],a[0]=t,a[1]=n),a}attachClickEvent(){let e;d3.select("#wmChart"+this.$id+" svg").selectAll(se[this.type]).style("pointer-events","all").on("click",((t,i,n)=>{switch(this.type){case"Column":case"Bar":e=i._dataObj;break;case"Pie":case"Donut":e=i.data._dataObj;break;case"Area":case"Cumulative Line":case"Line":e=i[0]._dataObj;break;case"Bubble":e=i}this.selecteditem=e,this.invokeEventCallback("select",{$event:t,selectedChartItem:i,selectedItem:this.selecteditem})}))}postPlotProcess(e){let t,i,n,a;const r={},l=this.$element;Y(this),N(this.type)?this.showlabelsoutside||(t=d3.select("#wmChart"+this.$id+" svg"),i=t.select(".nv-pieLabels").selectAll(".nv-label"),n=t.select(".nv-pie").selectAll(".nv-slice"),a=[],n&&n.length&&(n.each((function(){d3.select(this).attr("transform",(function(e){a.push((e=>{const t=90*(e.startAngle+e.endAngle)/Math.PI-90;return t>90?t-180:t})(e))}))})),i.each((function(e,t){const i=d3.select(this);$(i[0][0]).find("text").attr("transform","rotate("+a[t]+")")})))):this.setLabelsMaxWidth(),o.forEach(oe,((e,t)=>{r[e]="fontsize"===t||"fontunit"===t?this.fontsize+this.fontunit:this[t]})),pe(r,this.$id),s.triggerFn(this._resizeFn&&this._resizeFn.clear),this._resizeFn=nv.utils.windowResize((()=>{l[0].getBoundingClientRect().height&&(e.update(),Y(this),N(this.type)||this.setLabelsMaxWidth())}))}configureChart(){let e,t,i,n;if(this._processedData.length>0&&(V(this,"x")&&(e=this.binddataset?this.getXMinMaxValues(this._processedData[0]):{min:{x:1},max:{x:5}}),V(this,"y")&&(t=this.binddataset?this.getYMinMaxValues(this._processedData):{min:{y:1},max:{y:5}})),!N(this.type)||this.binddataset&&this.scopedataset||(this._processedData=s.getClonedObject(this.scopedataset||this._processedData)),i=Q(this,e,t,null,!this.binddataset),o.isArray(this._processedData)){const e=$("#wmChart"+this.$id+" svg").find("g.nv-x").find("g.tick");return e&&e.length&&e.remove(),n=this.invokeEventCallback("beforerender",{chartInstance:i}),n&&(i=n),this.chart=i,d3.select("#wmChart"+this.$id+" svg").datum(this._processedData).call(this.chart),this.postPlotProcess(i),i}}plotChart(){const e=this.$element;this.chartData=this.invokeEventCallback("transform")||this.chartData,this.isVisuallyGrouped&&!N(this.type)?this._processedData=this.chartData:this._processedData=this.processChartData(),e[0].getBoundingClientRect().height&&(this.clearCanvas&&(e.find("svg").replaceWith("<svg></svg>"),this.clearCanvas=!1),this.isValidAxis()||(this._processedData=[]),nv.addGraph((()=>this.configureChart()),(()=>{setTimeout((()=>{this.attachClickEvent()}),600)})),this.isLoadInProgress=!1)}get isLiveVariable(){const e=this.datasource;return e&&"wm.LiveVariable"===e.category}plotChartProxy(){this.showContentLoadError=!1,this.invalidConfig=!1,this.isLoadInProgress=!0;const e=this.getGroupingDetails();this.binddataset&&this.isLiveVariable&&(this.filterFields||this.isDataFilteringEnabled())?this.getAggregatedData((()=>this.plotChart())):(this.dataset&&this.isLiveVariable&&(this.chartData=this.dataset,this.isGroupByEnabled()&&e.isVisuallyGrouped&&(this.chartData=this.getVisuallyGroupedData(this.chartData,e.visualGroupingColumn))),this.plotChart())}setDefaultAxisOptions(){const e=this.getDefaultColumns();this.xaxisdatakey=e[0]||null,this.yaxisdatakey=e[1]||null}getCutomizedOptions(e,t){const i=o.split(this.groupby,","),n=o.split(this.aggregationcolumn,",");if(!this.binddataset)return t;let a;switch(this.axisoptions||(this.axisoptions=t),e){case"xaxisdatakey":this.isGroupByEnabled()&&(a=i);break;case"yaxisdatakey":this.isAggregationEnabled()?a=n:this.isLiveVariable&&(a=this.numericColumns);break;case"groupby":this.isLiveVariable&&this.nonPrimaryColumns&&this.nonPrimaryColumns.length&&(a=this.nonPrimaryColumns);break;case"aggregationcolumn":this.isLiveVariable&&this.isAggregationEnabled()&&"count"!==this.aggregation&&(a=this.numericColumns);break;case"orderby":this.isLiveVariable&&this.isAggregationEnabled()&&(a=o.uniq(o.concat(i,n)));break;case"bubblesize":this.numericColumns&&this.numericColumns.length&&(a=this.numericColumns)}return a||t||this.axisoptions}setNumericandNonPrimaryColumns(){let e,t;const i=this.datasource.execute(s.DataSource.Operation.GET_PROPERTIES_MAP);this.numericColumns=[],this.nonPrimaryColumns=[],this.dataset&&!o.isEmpty(i)&&(e=[]),e&&(o.forEach(Object.keys(e),(i=>{t=e[i].type,s.isNumberType(t)&&this.numericColumns.push(i),"true"!==e[i].isRelatedPk&&e[i].isPrimaryKey||this.nonPrimaryColumns.push(i)})),this.numericColumns=this.numericColumns.sort(),this.nonPrimaryColumns=this.nonPrimaryColumns.sort())}handleDataSet(e){this.errMsg="",e||this.binddataset||(this.isVisuallyGrouped=!1,this.axisoptions=null),this.chartData=this.isLiveVariable?e||"":e&&""===e.dataValue&&1===o.keys(e).length?"":e,!o.isArray(this.chartData)&&o.isObject(this.chartData)&&(this.chartData=[this.chartData]),e&&e.filterFields&&(this.filterFields=e.filterFields),this.chartData&&this._plotChartProxy()}setDonutCenterLabel(e){let t,i;t=d3.select("#wmChart"+this.$id+" svg"),i=t.select(".nv-wrap.nv-pie").select(".nv-pie"),i.text(""),i.append("text").attr("dy",".35em").attr("text-anchor","middle").attr("class","nv-pie-title").text(e).each((function(e){var t=d3.select(this),i=d3.select(this.parentElement),n=Number(i.node().getBoundingClientRect().width)-30,a=this.getComputedTextLength();t.attr("data-scale",n/a)})).style("font-size",(function(){var e=16*d3.select(this).attr("data-scale");return e>24?24:e+"px"}))}onPropertyChange(e,t,i){switch(super.onPropertyChange(e,t,i),e){case"dataset":this.handleDataSet(t);break;case"centerlabel":this.chart&&(this.chart.title(t),this.setDonutCenterLabel(t));break;case"type":N(this.type)?(this.offsettop=20,this.offsetright=0,this.offsetbottom=0,this.offsetleft=0):"Pie"!==i&&"Donut"!==i||(this.offsettop=25,this.offsetright=25,this.offsetbottom=55,this.offsetleft=75),i!==t&&(this.clearCanvas=!0),this._plotChartProxy();break;default:this._plotChartProxy()}o.includes(ae,e)&&this._plotChartProxy()}handleLoading(e){const t=this.datasource;t&&t.execute(s.DataSource.Operation.IS_API_AWARE)&&s.isDataSourceEqual(e.variable,t)&&(this.variableInflight=e.active,this.isLoadInProgress=e.active)}hideTooltip(){d3.selectAll(".nvtooltip").style("opacity",0)}onStyleChange(e,t,i){const n={};switch(super.onStyleChange(e,t,i),e){case"fontsize":case"fontunit":case"color":case"fontfamily":case"fontweight":case"fontstyle":case"textdecoration":n[oe[e]]="fontsize"===e||"fontunit"===e?this.fontsize+this.fontunit:t,pe(n,this.$id)}}constructor(e,t,i){super(e,ie,i),this.app=t,this.iconclass="",this.nonPrimaryColumns=[],this.xDataKeyArr=[],this.chartData=[],this._processedData=[],this._subsciptions=[],this._plotChartProxy=o.debounce(this.plotChartProxy.bind(this),100),this.redraw=this._plotChartProxy.bind(this),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER,["fontsize","fontunit","color","fontfamily","fontweight","fontstyle","textdecoration"]),this.$id=this.widgetId||Math.random(),s.removeAttr(this.nativeElement,"title"),this.chartReady=!1,this.binddataset=this.nativeElement.getAttribute("dataset.bind"),this._subsciptions.push(this.app.subscribe("toggle-variable-state",this.handleLoading.bind(this))),this._subsciptions.push(this.app.subscribe("iscroll-start",(()=>{this.hideTooltip()})))}ngAfterViewInit(){super.ngAfterViewInit(),o.includes(["outside","inside","hide"],this.showlabels)||(this.showlabels=le(this.showlabels),this.showlabelsoutside=le(this.showlabelsoutside),this.showlabels=this.showlabels?this.showlabelsoutside?"outside":"inside":"hide"),this.theme||(this.theme=N(this.type)?"Azure":"Terrestrial"),this.nativeElement.setAttribute("id","wmChart"+this.$id),this.binddataset||this.nativeElement.getAttribute("scopedataset")||this._plotChartProxy()}ngOnDestroy(){this.hideTooltip(),this._subsciptions.forEach((e=>{e()})),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||ue)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(p.App),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:ue,selectors:[["div","wmChart",""]],hostVars:2,hostBindings:function(e,t){2&e&&l.\u0275\u0275classProp("panel",t.title)},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(ue)]),l.\u0275\u0275InheritDefinitionFeature],attrs:X,decls:5,vars:6,consts:[["class","panel-heading",4,"ngIf"],[1,"app-chart-inner",3,"ngClass"],["class","wm-content-info readonly-wrapper",4,"ngIf"],["wmSpinner","","show.bind","isLoadInProgress","caption.bind","loadingdatamsg"],[1,"panel-heading"],[1,"panel-title"],[1,"pull-left"],[1,"heading",3,"innerHTML"],["class","description",3,"innerHTML",4,"ngIf"],[1,"description",3,"innerHTML"],[1,"wm-content-info","readonly-wrapper"],[1,"wm-message",3,"title","ngClass","innerText"]],template:function(e,t){1&e&&(l.\u0275\u0275template(0,ee,6,7,"div",0),l.\u0275\u0275elementStart(1,"div",1),l.\u0275\u0275namespaceSVG(),l.\u0275\u0275element(2,"svg"),l.\u0275\u0275template(3,te,2,5,"div",2),l.\u0275\u0275namespaceHTML(),l.\u0275\u0275element(4,"div",3),l.\u0275\u0275elementEnd()),2&e&&(l.\u0275\u0275property("ngIf",t.title),l.\u0275\u0275advance(),l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction2(3,K,t.isLoadInProgress,t.title)),l.\u0275\u0275advance(2),l.\u0275\u0275property("ngIf",t.showContentLoadError&&t.showNoDataMsg))},dependencies:[d.SpinnerComponent,c.NgClass,c.NgIf],styles:[".nvtooltip h3,.nvtooltip p{margin:0;text-align:center}.nv-distx,.nv-disty,.nv-noninteractive,.nvd3 .nv-axis,.nvd3 .nv-interactiveGuideLine,.nvd3.nv-pie .nv-label,.nvd3.nv-sparklineplus g.nv-hoverValue,.nvtooltip{pointer-events:none}.nvd3 .nv-axis{opacity:1}.nvd3 .nv-axis path{fill:none;stroke:#000;stroke-opacity:.75;shape-rendering:crispEdges}.nvd3 .nv-axis .zero line,.nvd3 .nv-axis line.zero,.nvd3 .nv-axis path.domain{stroke-opacity:.75}.nvd3 .nv-axis.nv-x path.domain{stroke-opacity:0}.nvd3 .nv-axis line{fill:none;stroke:#e5e5e5;shape-rendering:crispEdges}.nvd3 .nv-axis .nv-axisMaxMin text,.nvtooltip table td.key.total{font-weight:700}.nvd3 .x .nv-axis .nv-axisMaxMin text,.nvd3 .x2 .nv-axis .nv-axisMaxMin text,.nvd3 .x3 .nv-axis .nv-axisMaxMin text{text-anchor:middle}.nvd3 .nv-axis.nv-disabled,.nvd3 .nv-controlsWrap .nv-legend .nv-check-box .nv-check{opacity:0}.nvd3 .nv-bars rect{fill-opacity:.75;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-bars rect.hover,.nvd3 .nv-boxplot circle:hover,.nvd3 .nv-boxplot rect:hover,.nvd3 .nv-candlestickBar .nv-ticks rect:hover,.nvd3 .nv-discretebar .nv-groups rect:hover,.nvd3 .nv-multibar .nv-groups rect:hover,.nvd3 .nv-multibarHorizontal .nv-groups rect:hover,.nvd3 .nv-scatter .nv-point.hover,.nvd3.nv-bullet .nv-measure:hover,.nvd3.nv-linePlusBar .nv-bar rect:hover,.nvd3.nv-pie .hover path{fill-opacity:1}.nvd3 .nv-bars .hover rect{fill:#add8e6}.nvd3 .nv-bars text{fill:#0000}.nvd3 .nv-bars .hover text{fill:#000}.nvd3 .nv-discretebar .nv-groups rect,.nvd3 .nv-multibar .nv-groups rect,.nvd3 .nv-multibarHorizontal .nv-groups rect{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-discretebar .nv-groups text,.nvd3 .nv-multibarHorizontal .nv-groups text{font-weight:700;fill:#000;stroke:#0000}.nvd3 .nv-boxplot circle{fill-opacity:.5}.nvd3 line.nv-boxplot-median{stroke:#000}.nv-boxplot-tick:hover{stroke-width:2.5px}.nvd3.nv-bullet{font:10px sans-serif}.nvd3.nv-bullet .nv-measure{fill-opacity:.8}.nvd3.nv-bullet .nv-marker{stroke:#000;stroke-width:2px}.nvd3.nv-bullet .nv-markerTriangle{stroke:#000;fill:#fff;stroke-width:1.5px}.nvd3.nv-bullet .nv-markerLine{stroke:#000;stroke-width:1.5px}.nvd3.nv-bullet .nv-tick line{stroke:#666;stroke-width:.5px}.nvd3.nv-bullet .nv-range.nv-s0{fill:#eee}.nvd3.nv-bullet .nv-range.nv-s1{fill:#ddd}.nvd3.nv-bullet .nv-range.nv-s2{fill:#ccc}.nvd3.nv-bullet .nv-title{font-size:14px;font-weight:700}.nvd3.nv-bullet .nv-subtitle{fill:#999}.nvd3.nv-bullet .nv-range{fill:#bababa;fill-opacity:.4}.nvd3.nv-bullet .nv-range:hover{fill-opacity:.7}.nvd3.nv-candlestickBar .nv-ticks .nv-tick,.nvd3.nv-ohlcBar .nv-ticks .nv-tick{stroke-width:1px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.hover,.nvd3.nv-ohlcBar .nv-ticks .nv-tick.hover{stroke-width:2px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.positive rect,.nvd3.nv-sparklineplus .nv-maxValue{stroke:#2ca02c;fill:#2ca02c}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.negative rect,.nvd3.nv-sparklineplus .nv-minValue{stroke:#d62728;fill:#d62728}.with-transitions .nv-candlestickBar .nv-ticks .nv-tick,.with-transitions .nvd3 .nv-groups .nv-point{-webkit-transition:stroke-width .25s linear,stroke-opacity .25s linear;transition:stroke-width .25s linear,stroke-opacity .25s linear}.nvd3.nv-candlestickBar .nv-ticks line{stroke:#333}.nv-force-node{stroke:#fff;stroke-width:1.5px}.nv-force-link{stroke:#999;stroke-opacity:.6}.nv-force-node text{stroke-width:0}.nvd3 .nv-check-box .nv-box{fill-opacity:0;stroke-width:2}.nvd3 .nv-check-box .nv-check{fill-opacity:0;stroke-width:4}.nvd3 .nv-hoverArea,.nvd3 .nv-series.nv-disabled .nv-check-box .nv-check,.nvd3.nv-line .nvd3.nv-scatter .nv-groups .nv-point,.nvd3.nv-pie .nv-label rect{fill-opacity:0;stroke-opacity:0}.nvd3.nv-linePlusBar .nv-bar rect{fill-opacity:.75}.nvd3 .nv-groups path.nv-line,.nvd3.nv-sparkline path{fill:none}.nvd3 .nv-groups path.nv-area{stroke:none}.nvd3.nv-scatter.nv-single-point .nv-groups .nv-point{fill-opacity:.5!important;stroke-opacity:.5!important}.nvd3 .nv-groups .nv-point.hover,.nvd3.nv-scatter .nv-groups .nv-point.hover{stroke-width:7px;fill-opacity:.95!important;stroke-opacity:.95!important}.nvd3 .nv-point-paths path{stroke:#aaa;stroke-opacity:0;fill:#eee;fill-opacity:0}.nvd3 .nv-indexLine{cursor:ew-resize}svg.nvd3-svg{-webkit-user-select:none;-ms-user-select:none;user-select:none;display:block;width:100%;height:100%}.nvtooltip.with-3d-shadow,.with-3d-shadow .nvtooltip{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px #0003;border-radius:5px}.nvd3 text{font:12px Arial,sans-serif}.nvtooltip h3,.nvtooltip table td.key{font-weight:400}.nvd3 .title{font:700 14px Arial,sans-serif}.nvd3 .nv-background{fill:#fff;fill-opacity:0}.nvd3.nv-noData{font-size:18px;font-weight:700}.nv-brush .selection{fill-opacity:.125;shape-rendering:crispEdges}.nv-brush .handle path{fill:#eee;stroke:#666}.nvd3 .nv-legend .nv-series{cursor:pointer}.nvd3 .nv-legend .nv-disabled circle{fill-opacity:0}.nvd3 .nv-brush .selection{fill-opacity:0!important}.nvd3 .nv-brushBackground rect{stroke:#000;stroke-width:.4;fill:#fff;fill-opacity:.7}@media print{.nvd3 text{stroke-width:0;fill-opacity:1}}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.positive{stroke:#2ca02c}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.negative{stroke:#d62728}.nvd3 .background path{fill:none;stroke:#eee;stroke-opacity:.4;shape-rendering:crispEdges}.nvd3 .foreground path{fill:none;stroke-opacity:.7}.nvd3 .nv-parallelCoordinates-brush .selection{fill:#fff;fill-opacity:.6;stroke:gray;shape-rendering:crispEdges}.nvd3 .nv-parallelCoordinates .hover{fill-opacity:1;stroke-width:3px}.nvd3 .missingValuesline line{fill:none;stroke:#000;stroke-width:1;stroke-opacity:1;stroke-dasharray:5,5}.nvd3.nv-pie path{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;stroke:#fff;stroke-width:1px;stroke-opacity:1;fill-opacity:.7}.nvd3.nv-pie .nv-pie-title{font-size:24px;fill:#13c4f996}.nvd3.nv-pie .nv-slice text{stroke:#000;stroke-width:0}.nvd3 .nv-groups .nv-point.hover{stroke-width:20px;stroke-opacity:.5}.nvd3.nv-sparklineplus .nv-hoverValue line{stroke:#333;stroke-width:1.5px}.nvd3.nv-sparklineplus,.nvd3.nv-sparklineplus g{pointer-events:all}.nvd3.nv-sparklineplus .nv-xValue,.nvd3.nv-sparklineplus .nv-yValue{stroke-width:0;font-size:.9em;font-weight:400}.nvd3.nv-sparklineplus .nv-yValue{stroke:#f66}.nvd3.nv-sparklineplus .nv-currentValue{font-weight:700;font-size:1.1em}.nvd3.nv-stackedarea path.nv-area{fill-opacity:.7;stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-opacity .25s linear}.nvd3.nv-stackedarea path.nv-area.hover{fill-opacity:.9}.nvd3.nv-stackedarea .nv-groups .nv-point{stroke-opacity:0;fill-opacity:0}.nvtooltip{position:absolute;background-color:#fff;color:#000;padding:1px;border:1px solid rgba(0,0,0,.5);z-index:10000;display:block;font-family:Arial,sans-serif;font-size:13px;text-align:left;white-space:nowrap;-webkit-user-select:none;-ms-user-select:none;user-select:none;background:#fffc;border-radius:4px}.nvtooltip.with-transitions,.with-transitions .nvtooltip{-webkit-transition:opacity 50ms linear .2s;transition:opacity 50ms linear .2s}.nvtooltip.x-nvtooltip,.nvtooltip.y-nvtooltip{padding:8px}.nvtooltip h3{padding:4px 14px;line-height:18px;background-color:#f7f7f7bf;color:#000;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.nvtooltip p{padding:5px 14px}.nvtooltip span{display:inline-block;margin:2px 0}.nvtooltip table{margin:6px;border-spacing:0}.nvtooltip table td{padding:2px 9px 2px 0;vertical-align:middle}.nvtooltip table td.value{text-align:right;font-weight:700}.nvtooltip table td.percent{color:#a9a9a9}.nvtooltip table tr.highlight td{padding:1px 9px 1px 0;border-bottom-style:solid;border-bottom-width:1px;border-top-style:solid;border-top-width:1px}.nvtooltip table td.legend-color-guide div{vertical-align:middle;width:12px;height:12px;border:1px solid #999}.nvtooltip .footer{padding:3px;text-align:center}.nvtooltip-pending-removal{pointer-events:none;display:none}.nvd3 line.nv-guideline{stroke:#ccc}\n"],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(ue,[{type:t.Component,args:[{selector:"div[wmChart]",providers:[n.provideAsWidgetRef(ue)],encapsulation:t.ViewEncapsulation.None,template:'<div class="panel-heading" *ngIf="title">\n <h3 class="panel-title">\n <div class="pull-left"><i class="app-icon panel-icon {{iconclass}}" [class.ng-hide]="!iconclass"></i></div>\n <div class="heading" [innerHTML]="title"></div>\n <div class="description" *ngIf="subheading" [innerHTML]="subheading"></div>\n </h3>\n</div>\n<div class="app-chart-inner" [ngClass]="{\'loading\':isLoadInProgress, \'panel-body\': title}">\n <svg></svg>\n <div class="wm-content-info readonly-wrapper" *ngIf="showContentLoadError && showNoDataMsg">\n <p class="wm-message" [title]="hintMsg" [ngClass]="{\'error\': invalidConfig}" [innerText]="errMsg"></p>\n </div>\n <div wmSpinner show.bind="isLoadInProgress" caption.bind="loadingdatamsg"></div>\n</div>\n',styles:[".nvtooltip h3,.nvtooltip p{margin:0;text-align:center}.nv-distx,.nv-disty,.nv-noninteractive,.nvd3 .nv-axis,.nvd3 .nv-interactiveGuideLine,.nvd3.nv-pie .nv-label,.nvd3.nv-sparklineplus g.nv-hoverValue,.nvtooltip{pointer-events:none}.nvd3 .nv-axis{opacity:1}.nvd3 .nv-axis path{fill:none;stroke:#000;stroke-opacity:.75;shape-rendering:crispEdges}.nvd3 .nv-axis .zero line,.nvd3 .nv-axis line.zero,.nvd3 .nv-axis path.domain{stroke-opacity:.75}.nvd3 .nv-axis.nv-x path.domain{stroke-opacity:0}.nvd3 .nv-axis line{fill:none;stroke:#e5e5e5;shape-rendering:crispEdges}.nvd3 .nv-axis .nv-axisMaxMin text,.nvtooltip table td.key.total{font-weight:700}.nvd3 .x .nv-axis .nv-axisMaxMin text,.nvd3 .x2 .nv-axis .nv-axisMaxMin text,.nvd3 .x3 .nv-axis .nv-axisMaxMin text{text-anchor:middle}.nvd3 .nv-axis.nv-disabled,.nvd3 .nv-controlsWrap .nv-legend .nv-check-box .nv-check{opacity:0}.nvd3 .nv-bars rect{fill-opacity:.75;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-bars rect.hover,.nvd3 .nv-boxplot circle:hover,.nvd3 .nv-boxplot rect:hover,.nvd3 .nv-candlestickBar .nv-ticks rect:hover,.nvd3 .nv-discretebar .nv-groups rect:hover,.nvd3 .nv-multibar .nv-groups rect:hover,.nvd3 .nv-multibarHorizontal .nv-groups rect:hover,.nvd3 .nv-scatter .nv-point.hover,.nvd3.nv-bullet .nv-measure:hover,.nvd3.nv-linePlusBar .nv-bar rect:hover,.nvd3.nv-pie .hover path{fill-opacity:1}.nvd3 .nv-bars .hover rect{fill:#add8e6}.nvd3 .nv-bars text{fill:#0000}.nvd3 .nv-bars .hover text{fill:#000}.nvd3 .nv-discretebar .nv-groups rect,.nvd3 .nv-multibar .nv-groups rect,.nvd3 .nv-multibarHorizontal .nv-groups rect{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-discretebar .nv-groups text,.nvd3 .nv-multibarHorizontal .nv-groups text{font-weight:700;fill:#000;stroke:#0000}.nvd3 .nv-boxplot circle{fill-opacity:.5}.nvd3 line.nv-boxplot-median{stroke:#000}.nv-boxplot-tick:hover{stroke-width:2.5px}.nvd3.nv-bullet{font:10px sans-serif}.nvd3.nv-bullet .nv-measure{fill-opacity:.8}.nvd3.nv-bullet .nv-marker{stroke:#000;stroke-width:2px}.nvd3.nv-bullet .nv-markerTriangle{stroke:#000;fill:#fff;stroke-width:1.5px}.nvd3.nv-bullet .nv-markerLine{stroke:#000;stroke-width:1.5px}.nvd3.nv-bullet .nv-tick line{stroke:#666;stroke-width:.5px}.nvd3.nv-bullet .nv-range.nv-s0{fill:#eee}.nvd3.nv-bullet .nv-range.nv-s1{fill:#ddd}.nvd3.nv-bullet .nv-range.nv-s2{fill:#ccc}.nvd3.nv-bullet .nv-title{font-size:14px;font-weight:700}.nvd3.nv-bullet .nv-subtitle{fill:#999}.nvd3.nv-bullet .nv-range{fill:#bababa;fill-opacity:.4}.nvd3.nv-bullet .nv-range:hover{fill-opacity:.7}.nvd3.nv-candlestickBar .nv-ticks .nv-tick,.nvd3.nv-ohlcBar .nv-ticks .nv-tick{stroke-width:1px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.hover,.nvd3.nv-ohlcBar .nv-ticks .nv-tick.hover{stroke-width:2px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.positive rect,.nvd3.nv-sparklineplus .nv-maxValue{stroke:#2ca02c;fill:#2ca02c}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.negative rect,.nvd3.nv-sparklineplus .nv-minValue{stroke:#d62728;fill:#d62728}.with-transitions .nv-candlestickBar .nv-ticks .nv-tick,.with-transitions .nvd3 .nv-groups .nv-point{-webkit-transition:stroke-width .25s linear,stroke-opacity .25s linear;transition:stroke-width .25s linear,stroke-opacity .25s linear}.nvd3.nv-candlestickBar .nv-ticks line{stroke:#333}.nv-force-node{stroke:#fff;stroke-width:1.5px}.nv-force-link{stroke:#999;stroke-opacity:.6}.nv-force-node text{stroke-width:0}.nvd3 .nv-check-box .nv-box{fill-opacity:0;stroke-width:2}.nvd3 .nv-check-box .nv-check{fill-opacity:0;stroke-width:4}.nvd3 .nv-hoverArea,.nvd3 .nv-series.nv-disabled .nv-check-box .nv-check,.nvd3.nv-line .nvd3.nv-scatter .nv-groups .nv-point,.nvd3.nv-pie .nv-label rect{fill-opacity:0;stroke-opacity:0}.nvd3.nv-linePlusBar .nv-bar rect{fill-opacity:.75}.nvd3 .nv-groups path.nv-line,.nvd3.nv-sparkline path{fill:none}.nvd3 .nv-groups path.nv-area{stroke:none}.nvd3.nv-scatter.nv-single-point .nv-groups .nv-point{fill-opacity:.5!important;stroke-opacity:.5!important}.nvd3 .nv-groups .nv-point.hover,.nvd3.nv-scatter .nv-groups .nv-point.hover{stroke-width:7px;fill-opacity:.95!important;stroke-opacity:.95!important}.nvd3 .nv-point-paths path{stroke:#aaa;stroke-opacity:0;fill:#eee;fill-opacity:0}.nvd3 .nv-indexLine{cursor:ew-resize}svg.nvd3-svg{-webkit-user-select:none;-ms-user-select:none;user-select:none;display:block;width:100%;height:100%}.nvtooltip.with-3d-shadow,.with-3d-shadow .nvtooltip{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px #0003;border-radius:5px}.nvd3 text{font:12px Arial,sans-serif}.nvtooltip h3,.nvtooltip table td.key{font-weight:400}.nvd3 .title{font:700 14px Arial,sans-serif}.nvd3 .nv-background{fill:#fff;fill-opacity:0}.nvd3.nv-noData{font-size:18px;font-weight:700}.nv-brush .selection{fill-opacity:.125;shape-rendering:crispEdges}.nv-brush .handle path{fill:#eee;stroke:#666}.nvd3 .nv-legend .nv-series{cursor:pointer}.nvd3 .nv-legend .nv-disabled circle{fill-opacity:0}.nvd3 .nv-brush .selection{fill-opacity:0!important}.nvd3 .nv-brushBackground rect{stroke:#000;stroke-width:.4;fill:#fff;fill-opacity:.7}@media print{.nvd3 text{stroke-width:0;fill-opacity:1}}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.positive{stroke:#2ca02c}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.negative{stroke:#d62728}.nvd3 .background path{fill:none;stroke:#eee;stroke-opacity:.4;shape-rendering:crispEdges}.nvd3 .foreground path{fill:none;stroke-opacity:.7}.nvd3 .nv-parallelCoordinates-brush .selection{fill:#fff;fill-opacity:.6;stroke:gray;shape-rendering:crispEdges}.nvd3 .nv-parallelCoordinates .hover{fill-opacity:1;stroke-width:3px}.nvd3 .missingValuesline line{fill:none;stroke:#000;stroke-width:1;stroke-opacity:1;stroke-dasharray:5,5}.nvd3.nv-pie path{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;stroke:#fff;stroke-width:1px;stroke-opacity:1;fill-opacity:.7}.nvd3.nv-pie .nv-pie-title{font-size:24px;fill:#13c4f996}.nvd3.nv-pie .nv-slice text{stroke:#000;stroke-width:0}.nvd3 .nv-groups .nv-point.hover{stroke-width:20px;stroke-opacity:.5}.nvd3.nv-sparklineplus .nv-hoverValue line{stroke:#333;stroke-width:1.5px}.nvd3.nv-sparklineplus,.nvd3.nv-sparklineplus g{pointer-events:all}.nvd3.nv-sparklineplus .nv-xValue,.nvd3.nv-sparklineplus .nv-yValue{stroke-width:0;font-size:.9em;font-weight:400}.nvd3.nv-sparklineplus .nv-yValue{stroke:#f66}.nvd3.nv-sparklineplus .nv-currentValue{font-weight:700;font-size:1.1em}.nvd3.nv-stackedarea path.nv-area{fill-opacity:.7;stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-opacity .25s linear}.nvd3.nv-stackedarea path.nv-area.hover{fill-opacity:.9}.nvd3.nv-stackedarea .nv-groups .nv-point{stroke-opacity:0;fill-opacity:0}.nvtooltip{position:absolute;background-color:#fff;color:#000;padding:1px;border:1px solid rgba(0,0,0,.5);z-index:10000;display:block;font-family:Arial,sans-serif;font-size:13px;text-align:left;white-space:nowrap;-webkit-user-select:none;-ms-user-select:none;user-select:none;background:#fffc;border-radius:4px}.nvtooltip.with-transitions,.with-transitions .nvtooltip{-webkit-transition:opacity 50ms linear .2s;transition:opacity 50ms linear .2s}.nvtooltip.x-nvtooltip,.nvtooltip.y-nvtooltip{padding:8px}.nvtooltip h3{padding:4px 14px;line-height:18px;background-color:#f7f7f7bf;color:#000;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.nvtooltip p{padding:5px 14px}.nvtooltip span{display:inline-block;margin:2px 0}.nvtooltip table{margin:6px;border-spacing:0}.nvtooltip table td{padding:2px 9px 2px 0;vertical-align:middle}.nvtooltip table td.value{text-align:right;font-weight:700}.nvtooltip table td.percent{color:#a9a9a9}.nvtooltip table tr.highlight td{padding:1px 9px 1px 0;border-bottom-style:solid;border-bottom-width:1px;border-top-style:solid;border-top-width:1px}.nvtooltip table td.legend-color-guide div{vertical-align:middle;width:12px;height:12px;border:1px solid #999}.nvtooltip .footer{padding:3px;text-align:center}.nvtooltip-pending-removal{pointer-events:none;display:none}.nvd3 line.nv-guideline{stroke:#ccc}\n"]}]}],(()=>[{type:l.Injector},{type:p.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{title:[{type:t.HostBinding,args:["class.panel"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(ue,{className:"ChartComponent",filePath:"chart.component.ts",lineNumber:139});const he=[ue];class me{static{this.\u0275fac=function(e){return new(e||me)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:me})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[a.BasicModule,i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(me,[{type:t.NgModule,args:[{imports:[a.BasicModule,i.CommonModule,n.WmComponentsModule],declarations:[...he],exports:[...he]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(me,{declarations:[ue],imports:[a.BasicModule,i.CommonModule,n.WmComponentsModule],exports:[ue]}),e.ChartComponent=ue,e.ChartModule=me})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("ngx-bootstrap/dropdown"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/components/input"),require("@angular/router"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","ngx-bootstrap/dropdown","@wm/components/base","@wm/components/basic","@wm/components/input","@angular/router","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.navigation=e.wm.components.navigation||{},e.wm.components.navigation.menu={}),e.ng.core,e.ng.common,e.dropdown,e.wm.components.base,e.wm.components.basic,e.wm.components.input,e.ng.router,e.wm.core,e._)}(this,(function(e,t,i,n,a,s,o,r,l,c){"use strict";function d(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var p=d(t),u=d(i),h=d(n),m=d(a),g=d(s),f=d(o),v=d(r),b=d(l);const y=["wmNav",""],w=[[["","wmNavItem",""]]],C=["[wmNavItem]"],P=e=>({active:e}),I=(e,t,i)=>({item:e,index:t,liRef:i}),A=(e,t)=>({item:e,index:t});function E(e,t){1&e&&p.\u0275\u0275element(0,"div",5)}function O(e,t){if(1&e&&p.\u0275\u0275element(0,"a",6),2&e){const e=t.item,i=p.\u0275\u0275nextContext();p.\u0275\u0275property("disableMenuContext",i.disableMenuContext||!!e.action)("wmNavigationControl",e.link),p.\u0275\u0275attribute("aria-current",e._selected||!i.isactive&&e.link==="#/"+i.activePageName?"page":"")}}function T(e,t){if(1&e&&p.\u0275\u0275elementContainer(0,9),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275reference(1),a=p.\u0275\u0275nextContext(),s=p.\u0275\u0275reference(3);p.\u0275\u0275property("ngTemplateOutlet",s)("ngTemplateOutletContext",p.\u0275\u0275pureFunction3(3,I,t,i,n))("ngTemplateOutletInjector",a.createCustomInjector("anchor_"+n.trackId,p.\u0275\u0275pureFunction3(7,I,t,i,n)))}}function x(e,t){if(1&e&&p.\u0275\u0275elementContainer(0,9),2&e){const e=p.\u0275\u0275nextContext(),t=e.$implicit,i=e.index,n=p.\u0275\u0275reference(1),a=p.\u0275\u0275nextContext(),s=p.\u0275\u0275reference(1);p.\u0275\u0275property("ngTemplateOutlet",s)("ngTemplateOutletContext",p.\u0275\u0275pureFunction2(3,A,t,i))("ngTemplateOutletInjector",a.createCustomInjector("menu_"+n.trackId,p.\u0275\u0275pureFunction2(6,A,t,i)))}}function D(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"li",7,2),p.\u0275\u0275template(2,T,1,11,"ng-container",8)(3,x,1,9,"ng-container",8),p.\u0275\u0275elementEnd()),2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("app-nav-item ",e.class,""),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(6,P,e._selected||!i.isactive&&e.link==="#/"+i.activePageName)),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",!e.children.length),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",e.children.length)}}function R(e,t){1&e&&p.\u0275\u0275projection(0,0,["*ngIf","!nodes.length"])}const S={widgetType:"wm-nav",hostClass:"nav app-nav"},_={pills:"nav-pills",tabs:"nav-tabs",navbar:"navbar-nav"};class M extends a.DatasetAwareNavComponent{static{this.initializeProps=void a.register("wm-nav",new Map([["autoclose",{value:"always",...a.PROP_STRING}],["autoopen",{value:"never",...a.PROP_STRING}],["class",a.PROP_STRING],["dataset",a.PROP_ANY],["iconposition",{value:"left",...a.PROP_STRING}],["isactive",a.PROP_STRING],["itemlabel",a.PROP_STRING],["itemlink",a.PROP_STRING],["itemicon",a.PROP_STRING],["itemclass",a.PROP_STRING],["itemchildren",a.PROP_STRING],["itemaction",a.PROP_STRING],["itembadge",a.PROP_STRING],["itemtarget",a.PROP_STRING],["layout",a.PROP_STRING],["name",a.PROP_STRING],["orderby",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["showonhover",{value:!1,...a.PROP_BOOLEAN}],["type",a.PROP_STRING],["userrole",a.PROP_STRING]]))}get activePageName(){return this.app.activePageName}constructor(e,t,i,n,s,o,r){super(e,S,r),this.cdRef=t,this.route=i,this.userDefinedExecutionContext=n,this.app=s,a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.CONTAINER),this.disableMenuContext=!!o,this.pageScope=this.viewParent;const d=this.nodes$.subscribe((()=>{if(!c.isEmpty(this.nodes)){let e=!1;const t=(i,n)=>{c.forEach(i,(i=>{if(!e)return i.isactive||i.link=="#/"+this.activePageName?(e=!0,this.selecteditem=n?c.omit(i,["children","value"]):i.value,this.invokeEventCallback("select",{$event:{},$item:i.value}),l.triggerItemAction(this,i),n||(i._selected=!0),!1):void(c.isEmpty(i.children)||t(i.children,"menu"))}))};t(this.nodes)}}));this.registerDestroyListener((()=>d.unsubscribe()))}setNavType(e){l.addClass(this.nativeElement,_[e])}setNavLayout(e){l.addClass(this.nativeElement,`nav-${e}`)}onNavSelect(e,t){e.preventDefault();const i=c.find(this.nodes,"_selected");i&&delete i._selected,this.selecteditem=t.value,this.invokeEventCallback("select",{$event:e,$item:t.value}),l.triggerItemAction(this,t)}ngOnInit(){super.ngOnInit(),this.setNavType(this.type),this.setNavLayout(this.layout)}onMenuItemSelect(e,t,i){this.selecteditem=c.omit(i,["children","value"]),this.invokeEventCallback("select",{$event:e,$item:this.selecteditem})}static{this.\u0275fac=function(e){return new(e||M)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(v.Router),p.\u0275\u0275directiveInject(b.UserDefinedExecutionContext),p.\u0275\u0275directiveInject(b.App),p.\u0275\u0275injectAttribute("select.event"),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:M,selectors:[["","wmNav",""]],features:[p.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(M)]),p.\u0275\u0275InheritDefinitionFeature],attrs:y,ngContentSelectors:C,decls:6,vars:2,consts:[["menuRef",""],["anchorRef",""],["liRef","navItemRef"],["wmNavItem","",3,"ngClass","class",4,"ngFor","ngForOf"],[4,"ngIf"],["wmMenu","","dropdown","","type","anchor","autoclose.bind","autoclose","iconclass.bind","item.icon","autoopen.bind","autoopen","caption.bind","item.label","dataset.bind","item.children","badgevalue.bind","item.badge","iconposition.bind","iconposition","showonhover.bind","showonhover","select.event","onMenuItemSelect($event, widget, $item)"],["wmAnchor","","caption.bind","item.label","iconclass.bind","item.icon","badgevalue.bind","item.badge","iconposition.bind","iconposition","click.event","onNavSelect($event, item)",3,"disableMenuContext","wmNavigationControl"],["wmNavItem","",3,"ngClass"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"]],template:function(e,t){1&e&&(p.\u0275\u0275projectionDef(w),p.\u0275\u0275template(0,E,1,0,"ng-template",null,0,p.\u0275\u0275templateRefExtractor)(2,O,1,3,"ng-template",null,1,p.\u0275\u0275templateRefExtractor)(4,D,4,8,"li",3)(5,R,1,0,"ng-content",4)),2&e&&(p.\u0275\u0275advance(4),p.\u0275\u0275property("ngForOf",t.nodes),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!t.nodes.length))},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(M,[{type:t.Component,args:[{selector:"[wmNav]",providers:[a.provideAsWidgetRef(M)],template:'<ng-template #menuRef let-item="item" let-index="index">\n <div wmMenu dropdown\n type="anchor"\n autoclose.bind="autoclose"\n iconclass.bind="item.icon"\n autoopen.bind="autoopen"\n caption.bind="item.label"\n dataset.bind="item.children"\n badgevalue.bind="item.badge"\n iconposition.bind="iconposition"\n showonhover.bind="showonhover"\n select.event="onMenuItemSelect($event, widget, $item)"></div>\n</ng-template>\n\n<ng-template #anchorRef let-item="item" let-index="index" let-liRef="liRef">\n <a wmAnchor\n [disableMenuContext]="disableMenuContext || !!item.action"\n [wmNavigationControl]="item.link"\n [attr.aria-current]="item._selected || (!isactive && item.link === \'#/\' + activePageName) ? \'page\' : \'\'"\n caption.bind="item.label"\n iconclass.bind="item.icon"\n badgevalue.bind="item.badge"\n iconposition.bind="iconposition"\n click.event="onNavSelect($event, item)"></a>\n</ng-template>\n\n<li #liRef="navItemRef" *ngFor="let item of nodes; let index = index;"\n [ngClass]="{active: item._selected || (!isactive && item.link === \'#/\' + activePageName)}"\n class="app-nav-item {{item.class}}"\n wmNavItem>\n <ng-container [ngTemplateOutlet]="anchorRef"\n [ngTemplateOutletContext]="{item: item, index:index, liRef: liRef}"\n [ngTemplateOutletInjector]="createCustomInjector(\'anchor_\' + liRef.trackId, {item: item, index:index, liRef: liRef})"\n *ngIf="!item.children.length"></ng-container>\n <ng-container [ngTemplateOutlet]="menuRef"\n [ngTemplateOutletContext]="{item: item, index:index}"\n [ngTemplateOutletInjector]="createCustomInjector(\'menu_\' + liRef.trackId, {item: item, index:index})"\n *ngIf="item.children.length"></ng-container>\n</li>\n\n<ng-content *ngIf="!nodes.length" select="[wmNavItem]"></ng-content>\n'}]}],(()=>[{type:p.Injector},{type:p.ChangeDetectorRef},{type:v.Router},{type:b.UserDefinedExecutionContext},{type:b.App},{type:void 0,decorators:[{type:t.Attribute,args:["select.event"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(M,{className:"NavComponent",filePath:"nav/nav.component.ts",lineNumber:26});const N=["wmMenu",""],k=e=>[e];function L(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"button",4),p.\u0275\u0275element(1,"span",5),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("btn app-button dropdown-toggle ",e.menuclass,""),p.\u0275\u0275attribute("aria-label",e.hint||"Menu"),p.\u0275\u0275advance(),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(5,k,e.menuCaret))}}function F(e,t){if(1&e&&p.\u0275\u0275element(0,"i")(1,"span",6)(2,"span"),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("app-icon ",e.iconclass,""),p.\u0275\u0275advance(),p.\u0275\u0275property("textContent",e.caption),p.\u0275\u0275advance(),p.\u0275\u0275classMapInterpolate1("pull-right caret fa ",e.menuCaret,"")}}function j(e,t){if(1&e&&(p.\u0275\u0275elementContainerStart(0),p.\u0275\u0275elementStart(1,"a",7),p.\u0275\u0275element(2,"span",5),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementContainerEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275classMapInterpolate1("dropdown-toggle ",e.menuclass,""),p.\u0275\u0275advance(),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(4,k,e.menuCaret))}}function B(e,t){if(1&e&&p.\u0275\u0275element(0,"ul",8),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("icon-position-",e.iconposition,""),p.\u0275\u0275property("items",e.nodes)("ngClass",e.menulayout)}}const V={MOVE_UP:"UP-ARROW",MOVE_LEFT:"LEFT-ARROW",MOVE_RIGHT:"RIGHT-ARROW",MOVE_DOWN:"DOWN-ARROW",ON_ENTER:"ENTER",ON_MOUSE_ENTER:"MOUSE-ENTER",ON_MOUSE_LEAVE:"MOUSE-LEAVE",ON_TAB:"TAB",ON_SHIFT_TAB:"SHIFT-TAB",ON_ESCAPE:"ESC"},G={UP_LEFT:"up,left",UP_RIGHT:"up,right",DOWN_LEFT:"down,left",DOWN_RIGHT:"down,right",INLINE:"inline"},W="down,right",U="down,left",q="up,right",z="up,left",H="inline",Q="fa-caret-up",Y="fa-caret-down",X="pull-left",K="pull-right",J="activepage",Z="always",ee={widgetType:"wm-menu",hostClass:"dropdown app-menu"};class te extends a.DatasetAwareNavComponent{static{this.initializeProps=void a.register("wm-menu",new Map([["accessroles",{value:"Everyone",...a.PROP_STRING}],["animateitems",a.PROP_STRING],["autoclose",{value:"always",...a.PROP_STRING}],["autoopen",{value:"never",...a.PROP_STRING}],["caption",a.PROP_STRING],["class",a.PROP_STRING],["dataset",{value:"Menu Item 1, Menu Item 2, Menu Item 3",...a.PROP_ANY}],["hint",{value:"",...a.PROP_STRING}],["isactive",a.PROP_STRING],["iconclass",a.PROP_STRING],["iconposition",{value:"left",...a.PROP_STRING}],["itemaction",a.PROP_STRING],["itemchildren",a.PROP_STRING],["itemclass",a.PROP_STRING],["itemicon",a.PROP_STRING],["itemlabel",a.PROP_STRING],["itemlink",a.PROP_STRING],["itemtarget",a.PROP_STRING],["linktarget",{value:"_self",...a.PROP_STRING}],["menuclass",a.PROP_STRING],["menulayout",a.PROP_STRING],["menuposition",a.PROP_STRING],["name",a.PROP_STRING],["orderby",a.PROP_STRING],["shortcutkey",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["showonhover",{value:!1,...a.PROP_BOOLEAN}],["tabindex",{value:0,...a.PROP_NUMBER}],["type",{value:"menu",...a.PROP_STRING}],["userrole",a.PROP_STRING]]))}onShow(){this._menuposition=this.menuposition,this._selectFirstItem&&setTimeout((()=>{this.$element.find("> ul[wmmenudropdown] li.app-menu-item").first().find("> a").focus()})),l.$appDigest()}onHide(){this.$element.find("li").removeClass("open"),this._selectFirstItem=!1,this.menuposition=this._menuposition?this._menuposition:G.DOWN_RIGHT,this.setMenuPosition(),l.$appDigest()}onKeyDown(e,t){const i=c.clone(V);this.menuposition===G.UP_RIGHT?(i.MOVE_UP="DOWN-ARROW",i.MOVE_DOWN="UP-ARROW"):this.menuposition===G.UP_LEFT?(i.MOVE_UP="DOWN-ARROW",i.MOVE_DOWN="UP-ARROW",i.MOVE_LEFT="RIGHT-ARROW",i.MOVE_RIGHT="LEFT-ARROW"):this.menuposition===G.DOWN_LEFT&&(i.MOVE_LEFT="RIGHT-ARROW",i.MOVE_RIGHT="LEFT-ARROW"),c.includes([i.MOVE_DOWN,i.MOVE_RIGHT],t)?this.bsDropdown.isOpen?this.$element.find("> ul[wmmenudropdown] li.app-menu-item").first().find("> a").focus():(this._selectFirstItem=!0,this.bsDropdown.show()):t===i.ON_ENTER||t===i.ON_MOUSE_ENTER&&this.showonhover?this.bsDropdown.toggle(!0):(c.includes([i.MOVE_UP,i.MOVE_LEFT],t)||t==i.ON_MOUSE_LEAVE&&this.autoclose==a.AUTOCLOSE_TYPE.ALWAYS)&&this.bsDropdown.hide(),e.preventDefault()}constructor(e,t,i,n,s,o,r,d){super(e,ee,d),this.route=t,this.userDefinedExecutionContext=i,this.app=n,this.bsDropdown=s,this.parentNav=o,this.selectEventCB=r,this.menuCaret="fa-caret-down",this._selectFirstItem=!1,this.disableMenuContext=o?!!o.disableMenuContext:!!r;const p=this.nodes$.subscribe((()=>{if(!c.isEmpty(this.nodes)){if(a.hasLinkToCurrentPage(this.nodes,this.route.url)&&l.addClass(this.nativeElement.querySelector(".dropdown-toggle"),"active"),this.parentNav)return;let e=!1;const t=i=>{c.forEach(i,(i=>{if(!e)return i.isactive?(e=!0,this.onMenuItemSelect({$event:{},$item:i}),l.triggerItemAction(this,i),!1):void(c.isEmpty(i.children)||t(i.children))}))};t(this.nodes)}}));this.registerDestroyListener((()=>p.unsubscribe()))}resetNodes(){super.resetNodes(),(this.autoopen===J&&a.hasLinkToCurrentPage(this.nodes,this.route.url)||this.autoopen===Z)&&this.bsDropdown.show()}ngOnInit(){super.ngOnInit(),this.setMenuPosition();const e=this.app.subscribe("highlightActiveLink",(e=>{l.toggleClass(this.nativeElement.querySelector(".dropdown-toggle"),"active",a.hasLinkToCurrentPage(this.nodes,this.route.url))}));this.registerDestroyListener((()=>e()))}onPropertyChange(e,t,i){"tabindex"!==e&&("autoclose"===e?(this.bsDropdown.autoClose=t!==a.AUTOCLOSE_TYPE.DISABLED,this.autoclose=t):super.onPropertyChange(e,t,i))}setMenuPosition(){switch(this.menuposition){case W:l.removeClass(this.nativeElement,"dropup"),this.menualign=X,this.menuCaret=Y;break;case U:l.removeClass(this.nativeElement,"dropup"),this.menualign=K,this.menuCaret=Y;break;case z:l.addClass(this.nativeElement,"dropup"),this.menualign=K,this.menuCaret=Q;break;case q:l.addClass(this.nativeElement,"dropup"),this.menualign=X,this.menuCaret=Q;break;case H:this.menualign="dropinline-menu"}}onMenuItemSelect(e){const{$event:t}=e,i=e.$item.value;this.invokeEventCallback("select",{$event:t,$item:i})}ngAfterViewInit(){super.ngAfterViewInit(),a.styler(this.nativeElement.querySelector(".dropdown-toggle"),this)}static{this.\u0275fac=function(e){return new(e||te)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(v.Router),p.\u0275\u0275directiveInject(b.UserDefinedExecutionContext),p.\u0275\u0275directiveInject(b.App),p.\u0275\u0275directiveInject(h.BsDropdownDirective,10),p.\u0275\u0275directiveInject(M,8),p.\u0275\u0275injectAttribute("select.event"),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:te,selectors:[["","wmMenu",""]],hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("onShown",(function(){return t.onShow()}))("onHidden",(function(){return t.onHide()}))("keydown.arrowup",(function(e){return t.onKeyDown(e,"UP-ARROW")}))("mouseenter",(function(e){return t.onKeyDown(e,"MOUSE-ENTER")}))("mouseleave",(function(e){return t.onKeyDown(e,"MOUSE-LEAVE")}))("keydown.arrowdown",(function(e){return t.onKeyDown(e,"DOWN-ARROW")}))("keydown.arrowright",(function(e){return t.onKeyDown(e,"RIGHT-ARROW")}))("keydown.arrowleft",(function(e){return t.onKeyDown(e,"LEFT-ARROW")}))("keydown.enter",(function(e){return t.onKeyDown(e,"ENTER")}))},features:[p.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(te)]),p.\u0275\u0275InheritDefinitionFeature],attrs:N,decls:6,vars:2,consts:[["menuTemplate",""],["innerTemplate",""],[4,"ngIf","ngIfElse"],["wmMenuDropdown","","aria-labelledby","dropdownmenu","role","menubar",3,"items","ngClass","class",4,"dropdownMenu"],["wmButton","","dropdownToggle","","aria-haspopup","true","aria-expanded","false","hint.bind","hint","shortcutkey.bind","shortcutkey","tabindex.bind","tabindex","caption.bind","caption","iconclass.bind","iconclass","iconposition.bind","iconposition"],[1,"pull-right","caret","fa",3,"ngClass"],[1,"caption",3,"textContent"],["wmAnchor","","dropdownToggle","","href","javascript:void(0);","role","button","aria-haspopup","true","aria-expanded","false","hint.bind","hint","shortcutkey.bind","shortcutkey","tabindex.bind","tabindex","caption.bind","caption","iconclass.bind","iconclass","iconposition.bind","iconposition","badgevalue.bind","badgevalue"],["wmMenuDropdown","","aria-labelledby","dropdownmenu","role","menubar",3,"items","ngClass"]],template:function(e,t){if(1&e&&p.\u0275\u0275template(0,L,2,7,"ng-template",null,0,p.\u0275\u0275templateRefExtractor)(2,F,3,7,"ng-template",null,1,p.\u0275\u0275templateRefExtractor)(4,j,3,6,"ng-container",2)(5,B,1,5,"ul",3),2&e){const e=p.\u0275\u0275reference(1);p.\u0275\u0275advance(4),p.\u0275\u0275property("ngIf","anchor"===t.type)("ngIfElse",e)}},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(te,[{type:t.Component,args:[{selector:"[wmMenu]",providers:[a.provideAsWidgetRef(te)],template:'<ng-template #menuTemplate>\n <button wmButton\n dropdownToggle\n aria-haspopup="true"\n aria-expanded="false"\n [attr.aria-label]="hint || \'Menu\'"\n class="btn app-button dropdown-toggle {{menuclass}}"\n hint.bind="hint"\n shortcutkey.bind="shortcutkey"\n tabindex.bind="tabindex"\n caption.bind="caption"\n iconclass.bind="iconclass"\n iconposition.bind="iconposition">\n <span class="pull-right caret fa" [ngClass]="[menuCaret]"></span>\n </button>\n</ng-template>\n\n<ng-template #innerTemplate>\n <i class="app-icon {{iconclass}}"></i>\n <span class="caption" [textContent]="caption"></span>\n <span class="pull-right caret fa {{menuCaret}}"></span>\n</ng-template>\n\n<ng-container *ngIf="type === \'anchor\'; else menuTemplate">\n <a wmAnchor\n dropdownToggle\n\n href="javascript:void(0);"\n role="button"\n aria-haspopup="true"\n aria-expanded="false"\n\n hint.bind="hint"\n class="dropdown-toggle {{menuclass}}"\n shortcutkey.bind="shortcutkey"\n tabindex.bind="tabindex"\n caption.bind="caption"\n iconclass.bind="iconclass"\n iconposition.bind="iconposition"\n badgevalue.bind="badgevalue"\n >\n <span class="pull-right caret fa" [ngClass]="[menuCaret]"></span>\n </a>\n</ng-container>\n\n<ul wmMenuDropdown [items]="nodes" [ngClass]="menulayout" class="icon-position-{{iconposition}}" *dropdownMenu aria-labelledby="dropdownmenu" role="menubar"></ul>\n'}]}],(()=>[{type:p.Injector},{type:v.Router},{type:b.UserDefinedExecutionContext},{type:b.App},{type:h.BsDropdownDirective,decorators:[{type:t.Self},{type:t.Optional}]},{type:M,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Attribute,args:["select.event"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{onShow:[{type:t.HostListener,args:["onShown"]}],onHide:[{type:t.HostListener,args:["onHidden"]}],onKeyDown:[{type:t.HostListener,args:["keydown.arrowup",["$event",'"UP-ARROW"']]},{type:t.HostListener,args:["mouseenter",["$event",'"MOUSE-ENTER"']]},{type:t.HostListener,args:["mouseleave",["$event",'"MOUSE-LEAVE"']]},{type:t.HostListener,args:["keydown.arrowdown",["$event",'"DOWN-ARROW"']]},{type:t.HostListener,args:["keydown.arrowright",["$event",'"RIGHT-ARROW"']]},{type:t.HostListener,args:["keydown.arrowleft",["$event",'"LEFT-ARROW"']]},{type:t.HostListener,args:["keydown.enter",["$event",'"ENTER"']]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(te,{className:"MenuComponent",filePath:"menu.component.ts",lineNumber:90});const ie=["wmMenuDropdownItem",""],ne=e=>({item:e});function ae(e,t){if(1&e&&p.\u0275\u0275element(0,"span"),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275classMapInterpolate1("pull-right fa caret ",e.menualign,"")}}function se(e,t){if(1&e&&p.\u0275\u0275element(0,"span",6),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("textContent",e.item.badge)}}function oe(e,t){if(1&e&&p.\u0275\u0275elementContainer(0,7),2&e){const e=p.\u0275\u0275nextContext(),t=p.\u0275\u0275reference(8);p.\u0275\u0275property("ngTemplateOutlet",t)("ngTemplateOutletContext",p.\u0275\u0275pureFunction1(2,ne,e.item))}}function re(e,t){if(1&e&&p.\u0275\u0275element(0,"ul",8),2&e){const e=t.item;p.\u0275\u0275property("items",e.children)}}const le={"pull-right":"fa-caret-left","dropinline-menu":"fa-caret-down","pull-left":"fa-caret-right"},ce="horizontal";class de{constructor(e,t,i,n,a){this.app=e,this.menuRef=t,this.userDefinedExecutionContext=i,this.parentNav=n,this.onSelect=(e,t)=>{if(this.nativeElement!==$(e.target).closest(".app-menu-item").get(0))return;"outsideClick"===this.menuRef.autoclose&&e.stopPropagation(),e.preventDefault();const i={$event:e,$item:t};this.menuRef.onMenuItemSelect(i);const n=c.clone(t);n.target=n.target||this.menuRef.linktarget,l.triggerItemAction(this,n)},this.nativeElement=a.nativeElement,l.addClass(this.nativeElement,"app-menu-item"),this.menualign=le[this.menuRef.menualign]||le["pull-left"]}ngOnInit(){this.parentNav&&(a.hasLinkToCurrentPage([this.item],this.menuRef.route.url)&&l.addClass(this.nativeElement,"active"),this.highlightActiveLinkSubscription=this.app.subscribe("highlightActiveLink",(e=>{l.toggleClass(this.nativeElement,"active",a.hasLinkToCurrentPage([this.item],this.menuRef.route.url))})))}getInitialKeyMovements(){const e=c.clone(V);return this.menuRef.menulayout===ce?(e.MOVE_UP="LEFT-ARROW",e.MOVE_LEFT="UP-ARROW",e.MOVE_RIGHT="DOWN-ARROW",e.MOVE_DOWN="RIGHT-ARROW"):this.menuRef.menuposition===G.DOWN_LEFT||this.menuRef.menuposition===G.UP_LEFT?(e.MOVE_LEFT="RIGHT-ARROW",e.MOVE_RIGHT="LEFT-ARROW"):"inline"===this.menuRef.menuposition&&(e.MOVE_UP="LEFT-ARROW",e.MOVE_LEFT="UP-ARROW",e.MOVE_RIGHT="DOWN-ARROW",e.MOVE_DOWN="RIGHT-ARROW"),e}onKeyDown(e,t){const i=$(this.nativeElement),n=$(this.nativeElement).closest("ul.dropdown-menu"),a=this.menuRef.$element.find("> ul.dropdown-menu"),s=this.getInitialKeyMovements();if(c.includes(["LEFT-ARROW","RIGHT-ARROW","UP-ARROW","DOWN-ARROW"],t)&&e.preventDefault(),t===s.ON_TAB&&a.children().last()[0]===this.nativeElement||t===s.ON_SHIFT_TAB&&a.children().first()[0]===this.nativeElement||t===s.ON_ESCAPE)e.preventDefault(),this.menuRef.bsDropdown.hide();else if(t===s.ON_ENTER&&!this.item.link||t===s.MOVE_RIGHT)e.stopPropagation(),this.item.children.length?(i.toggleClass("open"),i.find("li").first().find("> a").focus()):i.find("> a").focus();else if(t===s.MOVE_LEFT||t===s.ON_TAB&&n.children().last()[0]===this.nativeElement||t===s.ON_SHIFT_TAB&&n.children().first()[0]===this.nativeElement){if(a[0]!==n[0]){const t=n.parent();t.toggleClass("open").find("li.open").removeClass("open"),t.find("> a").focus(),e.preventDefault(),e.stopPropagation()}}else t===s.MOVE_UP?a[0]===n[0]&&a.find("> li").first()[0]===this.nativeElement||(e.stopPropagation(),i.prev().find("> a").focus()):t===s.MOVE_DOWN?(e.stopPropagation(),a.find("> li").last()[0]===this.nativeElement&&(this.menuRef.menulayout!==ce&&this.menuRef.menuposition===G.UP_RIGHT||this.menuRef.menuposition===G.UP_LEFT)?this.menuRef.bsDropdown.hide():i.next().find("> a").focus()):t===s.ON_ENTER?this.onSelect(e,this.item):e.stopPropagation()}ngOnDestroy(){this.highlightActiveLinkSubscription&&this.highlightActiveLinkSubscription()}static{this.\u0275fac=function(e){return new(e||de)(p.\u0275\u0275directiveInject(b.App),p.\u0275\u0275directiveInject(te),p.\u0275\u0275directiveInject(b.UserDefinedExecutionContext),p.\u0275\u0275directiveInject(M,8),p.\u0275\u0275directiveInject(p.ElementRef))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:de,selectors:[["li","wmMenuDropdownItem",""]],hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("keydown.tab",(function(e){return t.onKeyDown(e,"TAB")}))("keydown.shift.tab",(function(e){return t.onKeyDown(e,"SHIFT-TAB")}))("keydown.escape",(function(e){return t.onKeyDown(e,"ESC")}))("keydown.enter",(function(e){return t.onKeyDown(e,"ENTER")}))("keydown.arrowup",(function(e){return t.onKeyDown(e,"UP-ARROW")}))("keydown.arrowdown",(function(e){return t.onKeyDown(e,"DOWN-ARROW")}))("keydown.arrowright",(function(e){return t.onKeyDown(e,"RIGHT-ARROW")}))("keydown.arrowleft",(function(e){return t.onKeyDown(e,"LEFT-ARROW")}))("click",(function(e){return t.onSelect(e,t.item)}))},inputs:{item:"item"},attrs:ie,decls:9,vars:10,consts:[["nestedMenuDropdown",""],["href","javascript:void(0);",3,"title","wmNavigationControl","disableMenuContext"],[3,"class",4,"ngIf"],[1,"anchor-caption"],["class","badge pull-right",3,"textContent",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext",4,"ngIf"],[1,"badge","pull-right",3,"textContent"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["wmMenuDropdown","",3,"items"]],template:function(e,t){1&e&&(p.\u0275\u0275elementStart(0,"a",1),p.\u0275\u0275template(1,ae,1,3,"span",2),p.\u0275\u0275element(2,"i"),p.\u0275\u0275elementStart(3,"span",3),p.\u0275\u0275text(4),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(5,se,1,1,"span",4),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(6,oe,1,4,"ng-container",5)(7,re,1,1,"ng-template",null,0,p.\u0275\u0275templateRefExtractor)),2&e&&(p.\u0275\u0275property("title",t.item.label)("wmNavigationControl",t.item.link)("disableMenuContext",t.menuRef.disableMenuContext||!!t.item.action),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.item.children.length),p.\u0275\u0275advance(),p.\u0275\u0275classMapInterpolate1("app-icon ",t.item.icon,""),p.\u0275\u0275advance(2),p.\u0275\u0275textInterpolate(t.item.label),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.item.badge),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.item.children.length))},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(de,[{type:t.Component,args:[{selector:"li[wmMenuDropdownItem]",template:'<a href="javascript:void(0);" [title]="item.label" [wmNavigationControl]="item.link" [disableMenuContext]="menuRef.disableMenuContext || !!item.action">\n <span *ngIf="item.children.length" class="pull-right fa caret {{menualign}}"></span>\n <i class="app-icon {{item.icon}}"></i>\n <span class="anchor-caption">{{item.label}}</span>\n <span *ngIf="item.badge" class="badge pull-right" [textContent]="item.badge"></span>\n</a>\n<ng-container [ngTemplateOutlet]="nestedMenuDropdown" *ngIf="item.children.length" [ngTemplateOutletContext]="{item: item}"></ng-container>\n\n<ng-template #nestedMenuDropdown let-item="item">\n <ul wmMenuDropdown [items]="item.children"></ul>\n</ng-template>\n'}]}],(()=>[{type:b.App},{type:te},{type:b.UserDefinedExecutionContext},{type:M,decorators:[{type:t.Optional}]},{type:p.ElementRef}]),{item:[{type:t.Input}],onKeyDown:[{type:t.HostListener,args:["keydown.tab",["$event",'"TAB"']]},{type:t.HostListener,args:["keydown.shift.tab",["$event",'"SHIFT-TAB"']]},{type:t.HostListener,args:["keydown.escape",["$event",'"ESC"']]},{type:t.HostListener,args:["keydown.enter",["$event",'"ENTER"']]},{type:t.HostListener,args:["keydown.arrowup",["$event",'"UP-ARROW"']]},{type:t.HostListener,args:["keydown.arrowdown",["$event",'"DOWN-ARROW"']]},{type:t.HostListener,args:["keydown.arrowright",["$event",'"RIGHT-ARROW"']]},{type:t.HostListener,args:["keydown.arrowleft",["$event",'"LEFT-ARROW"']]}],onSelect:[{type:t.HostListener,args:["click",["$event","item"]]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(de,{className:"MenuDropdownItemComponent",filePath:"menu-dropdown-item/menu-dropdown-item.component.ts",lineNumber:27});const pe=["wmMenuDropdown",""],ue=(e,t)=>({disabled:e,"dropdown-submenu":t});function he(e,t){if(1&e&&p.\u0275\u0275element(0,"li",1),2&e){const e=t.$implicit;p.\u0275\u0275classMap(e.class),p.\u0275\u0275property("item",e)("ngClass",p.\u0275\u0275pureFunction2(5,ue,e.disabled,e.children.length>0))}}const me={scale:{name:"wmScaleInLeft","down,right":"wmScaleInLeft","down,left":"wmScaleInRight","up,right":"wmScaleInTopLeft","up,left":"wmScaleInTopRight"},fade:{name:"fadeIn","down,right":"fadeIn","down,left":"fadeIn","up,right":"fadeIn","up,left":"fadeIn"},slide:{name:"wmSlideInDown","down,right":"wmSlideInDown","down,left":"wmSlideInDown","up,right":"wmSlideInUp","up,left":"wmSlideInUp"}};class ge{constructor(e,t){this.menuRef=t,this.nativeElement=e.nativeElement,this.hasExecutedCallback=!1,l.addClass(this.nativeElement,"dropdown-menu")}ngAfterViewInit(){const e=this.menuRef.animateitems;let t="";e&&(t=`animated ${me[e][this.menuRef.menuposition]||me[e].name}`),l.addClass(this.nativeElement,`dropdown-menu ${this.menuRef.menualign} ${t}`,!0),this.getParentWidget()}getParentWidget(){const e=$(this.menuRef.nativeElement).closest("table, ul.list-group");e&&$(e).has(this.menuRef.nativeElement).length>0&&this.createObserver(this,this.callback)}callback(e,t){if(!this.hasExecutedCallback){const t=this,i=this.menuRef.menuposition?.split(",")||[];e.forEach((e=>{if(e.isIntersecting)i[0]="down",t.menuRef.menuposition=i.length>1?i.join():"down,right",t.nativeElement.parentElement?.classList.add("dropdown"),t.menuRef.setMenuPosition();else{i[0]="up",t.menuRef.menuposition=i.length>1?i.join():"up,right",t.nativeElement.parentElement?.classList.add("dropup"),t.menuRef.setMenuPosition();const e=t.nativeElement.parentElement?.parentElement;"BS-DROPDOWN-CONTAINER"===e.tagName.toUpperCase()&&t.nativeElement.parentElement?.parentElement?.classList.add("parent-position")}})),this.hasExecutedCallback=!0}}createObserver(e,t){new IntersectionObserver(t.bind(this),{root:null,threshold:1,once:!0}).observe(e.nativeElement)}static{this.\u0275fac=function(e){return new(e||ge)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(te))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:ge,selectors:[["ul","wmMenuDropdown",""]],inputs:{items:"items"},attrs:pe,decls:1,vars:1,consts:[["wmMenuDropdownItem","","role","menuitem",3,"item","ngClass","class",4,"ngFor","ngForOf"],["wmMenuDropdownItem","","role","menuitem",3,"item","ngClass"]],template:function(e,t){1&e&&p.\u0275\u0275template(0,he,1,8,"li",0),2&e&&p.\u0275\u0275property("ngForOf",t.items)},dependencies:[u.NgClass,u.NgForOf,de],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ge,[{type:t.Component,args:[{selector:"ul[wmMenuDropdown]",template:'<li wmMenuDropdownItem *ngFor="let item of items"\n [item]="item"\n [ngClass]="{disabled: item.disabled, \'dropdown-submenu\': item.children.length > 0}"\n class="{{item.class}}"\n role="menuitem">\n</li>\n'}]}],(()=>[{type:p.ElementRef},{type:te}]),{items:[{type:t.Input}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(ge,{className:"MenuDropdownComponent",filePath:"menu-dropdown/menu-dropdown.component.ts",lineNumber:37});const fe={widgetType:"wm-nav-item",hostClass:"app-nav-item"};class ve extends a.StylableComponent{static{this.initializeProps=void a.register("wm-nav-item",new Map([["class",a.PROP_STRING],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}]]))}makeActive(){const e=this.nativeElement.parentNode;$(e).find("> li.active").removeClass("active"),this.isAttached&&l.addClass(this.nativeElement,"active")}constructor(e,t){super(e,fe,t),a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.CONTAINER)}ngAfterViewInit(){this.innerLink&&this.innerLink.onActive((()=>this.makeActive()))}ngOnDetach(){l.removeClass(this.nativeElement,"active",!0),super.ngOnDetach()}static{this.\u0275fac=function(e){return new(e||ve)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:ve,selectors:[["","wmNavItem",""]],contentQueries:function(e,t,i){if(1&e&&p.\u0275\u0275contentQuery(i,s.AnchorComponent,5),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.innerLink=e.first)}},hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("click",(function(){return t.makeActive()}))("keydown.enter",(function(){return t.makeActive()}))},exportAs:["navItemRef"],features:[p.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(ve)]),p.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ve,[{type:t.Directive,args:[{selector:"[wmNavItem]",exportAs:"navItemRef",providers:[a.provideAsWidgetRef(ve)]}]}],(()=>[{type:p.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{innerLink:[{type:t.ContentChild,args:[s.AnchorComponent]}],makeActive:[{type:t.HostListener,args:["click"]},{type:t.HostListener,args:["keydown.enter"]}]});const be=e=>{e.preventDefault()};class ye{set wmNavigationControl(e){this._link=e,e&&!this.disableMenuContext?(l.setAttr(this.nativeElement,"href",e),this.nativeElement.removeEventListener("contextmenu",be)):(l.setAttr(this.nativeElement,"href","javascript:void(0)"),this.nativeElement.addEventListener("contextmenu",be))}constructor(e){this.nativeElement=e.nativeElement}static{this.\u0275fac=function(e){return new(e||ye)(p.\u0275\u0275directiveInject(p.ElementRef))}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:ye,selectors:[["","wmNavigationControl",""]],inputs:{disableMenuContext:"disableMenuContext",wmNavigationControl:"wmNavigationControl"}})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(ye,[{type:t.Directive,args:[{selector:"[wmNavigationControl]"}]}],(()=>[{type:p.ElementRef}]),{disableMenuContext:[{type:t.Input}],wmNavigationControl:[{type:t.Input}]});const we=[te,ge,de,ye,M,ve];class Ce{static{this.\u0275fac=function(e){return new(e||Ce)}}static{this.\u0275mod=p.\u0275\u0275defineNgModule({type:Ce})}static{this.\u0275inj=p.\u0275\u0275defineInjector({imports:[s.BasicModule,n.BsDropdownModule,i.CommonModule,o.InputModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Ce,[{type:t.NgModule,args:[{imports:[s.BasicModule,n.BsDropdownModule,i.CommonModule,o.InputModule,a.WmComponentsModule],declarations:[...we],exports:[...we]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&p.\u0275\u0275setNgModuleScope(Ce,{declarations:[te,ge,de,ye,M,ve],imports:[s.BasicModule,n.BsDropdownModule,i.CommonModule,o.InputModule,a.WmComponentsModule],exports:[te,ge,de,ye,M,ve]}),p.\u0275\u0275setComponentScope(te,[g.AnchorComponent,h.BsDropdownMenuDirective,h.BsDropdownToggleDirective,u.NgClass,u.NgIf,f.ButtonComponent,m.TextContentDirective,ge],[]),p.\u0275\u0275setComponentScope(de,[u.NgIf,u.NgTemplateOutlet,m.TextContentDirective,ge,ye],[]),p.\u0275\u0275setComponentScope(M,[g.AnchorComponent,h.BsDropdownDirective,u.NgClass,u.NgForOf,u.NgIf,u.NgTemplateOutlet,te,ye,ve],[]);const Pe=["itemlabel","itemicon","itemlink","itemaction","itemchildren","userrole"];class Ie extends a.BaseContainerComponent{constructor(e,t,i){super(e,t,i),this.pageScope=this.viewParent,this.binditemlabel=this.nativeElement.getAttribute("itemlabel.bind"),this.binditemicon=this.nativeElement.getAttribute("itemicon.bind"),this.binditemaction=this.nativeElement.getAttribute("itemaction.bind"),this.binditemlink=this.nativeElement.getAttribute("itemlink.bind"),this.binduserrole=this.nativeElement.getAttribute("userrole.bind"),this.binditemchildren=this.nativeElement.getAttribute("itemchildren.bind")}onPropertyChange(e,t,i){c.includes(Pe,e)&&this.menuRef?this.menuRef.itemlabel=t:super.onPropertyChange(e,t,i)}ngAfterViewInit(){super.ngAfterViewInit();const e=this.menuRefQL.changes.subscribe((t=>{t.first&&(this.menuRef=t.first,Pe.forEach((e=>{const t=`bind${e}`;this[t]&&(this.menuRef[t]=this[t]),this.menuRef[e]=this[e]})),e.unsubscribe())}))}static{this.\u0275fac=function(e){p.\u0275\u0275invalidFactory()}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:Ie,viewQuery:function(e,t){if(1&e&&p.\u0275\u0275viewQuery(te,5),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.menuRefQL=e)}},features:[p.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(Ie,[{type:t.Directive}],(()=>[{type:void 0},{type:void 0},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{menuRefQL:[{type:t.ViewChildren,args:[te]}]}),e.KEYBOARD_MOVEMENTS=V,e.MENU_POSITION=G,e.MenuAdapterComponent=Ie,e.MenuComponent=te,e.MenuDropdownComponent=ge,e.MenuDropdownItemComponent=de,e.MenuModule=Ce,e.NavComponent=M,e.NavItemDirective=ve,e.NavigationControlDirective=ye,e.disableContextMenu=be})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.navigation=e.wm.components.navigation||{},e.wm.components.navigation.navbar={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";function a(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var s=a(t),o=a(i),r=a(n);const l=["navContent"],c=["wmNavbar",""],d=["*"];function p(e,t){if(1&e&&(s.\u0275\u0275element(0,"img",11),s.\u0275\u0275pipe(1,"image")),2&e){const e=s.\u0275\u0275nextContext(2);s.\u0275\u0275property("alt",e.Brand)("src",s.\u0275\u0275pipeBind1(1,2,e.imgsrc),s.\u0275\u0275sanitizeUrl)}}function u(e,t){if(1&e&&(s.\u0275\u0275elementStart(0,"a",8),s.\u0275\u0275pipe(1,"trustAs"),s.\u0275\u0275template(2,p,2,4,"img",9),s.\u0275\u0275element(3,"span",10),s.\u0275\u0275elementEnd()),2&e){const e=s.\u0275\u0275nextContext();s.\u0275\u0275property("href",s.\u0275\u0275pipeBind2(1,3,e.homelink,"resource")||"#/",s.\u0275\u0275sanitizeUrl),s.\u0275\u0275advance(2),s.\u0275\u0275property("ngIf",e.imgsrc),s.\u0275\u0275advance(),s.\u0275\u0275property("textContent",e.title)}}const h={widgetType:"wm-navbar",hostClass:"navbar navbar-default app-navbar"};class m extends n.StylableComponent{static{this.initializeProps=void n.register("wm-navbar",new Map([["class",{value:"",...n.PROP_STRING}],["homelink",n.PROP_STRING],["imgsrc",n.PROP_STRING],["menuiconclass",{value:"wi wi-more-vert",...n.PROP_STRING}],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["title",n.PROP_STRING]]))}constructor(e,t){super(e,h,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}toggleCollapse(){const e=$(this.navContent.nativeElement);e.animate({height:"toggle"}),e.hasClass("in")?setTimeout((()=>this.toggleNavCollapse()),500):this.toggleNavCollapse()}toggleNavCollapse(){this.navContent.nativeElement.classList.toggle("in")}static{this.\u0275fac=function(e){return new(e||m)(s.\u0275\u0275directiveInject(s.Injector),s.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=s.\u0275\u0275defineComponent({type:m,selectors:[["","wmNavbar",""]],viewQuery:function(e,t){if(1&e&&s.\u0275\u0275viewQuery(l,7),2&e){let e;s.\u0275\u0275queryRefresh(e=s.\u0275\u0275loadQuery())&&(t.navContent=e.first)}},features:[s.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(m)]),s.\u0275\u0275InheritDefinitionFeature],attrs:c,ngContentSelectors:d,decls:10,vars:2,consts:[["navContent",""],[1,"container-fluid"],[1,"navbar-header"],["type","button","data-toggle","collapse","aria-expanded","false",1,"btn-transparent","navbar-toggle","collapsed",3,"click"],[1,"sr-only"],[3,"ngClass"],["class","navbar-brand",3,"href",4,"ngIf"],[1,"collapse","navbar-collapse"],[1,"navbar-brand",3,"href"],["data-identifier","img","class","brand-image","height","20",3,"alt","src",4,"ngIf"],[1,"title",3,"textContent"],["data-identifier","img","height","20",1,"brand-image",3,"alt","src"]],template:function(e,t){if(1&e){const e=s.\u0275\u0275getCurrentView();s.\u0275\u0275projectionDef(),s.\u0275\u0275elementStart(0,"div",1)(1,"div",2)(2,"button",3),s.\u0275\u0275listener("click",(function(){return s.\u0275\u0275restoreView(e),s.\u0275\u0275resetView(t.toggleCollapse())})),s.\u0275\u0275elementStart(3,"span",4),s.\u0275\u0275text(4,"Toggle navigation"),s.\u0275\u0275elementEnd(),s.\u0275\u0275element(5,"i",5),s.\u0275\u0275elementEnd(),s.\u0275\u0275template(6,u,4,6,"a",6),s.\u0275\u0275elementEnd(),s.\u0275\u0275elementStart(7,"div",7,0),s.\u0275\u0275projection(9),s.\u0275\u0275elementEnd()()}2&e&&(s.\u0275\u0275advance(5),s.\u0275\u0275property("ngClass",t.menuiconclass),s.\u0275\u0275advance(),s.\u0275\u0275property("ngIf",t.title||t.imgsrc))},dependencies:[o.NgClass,o.NgIf,r.TextContentDirective,r.TrustAsPipe,r.ImagePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&s.\u0275setClassMetadata(m,[{type:t.Component,args:[{selector:"[wmNavbar]",providers:[n.provideAsWidgetRef(m)],template:'<div class="container-fluid">\n <div class="navbar-header">\n <button type="button" class="btn-transparent navbar-toggle collapsed" data-toggle="collapse" (click)="toggleCollapse()" aria-expanded="false">\n <span class="sr-only">Toggle navigation</span>\n <i [ngClass]="menuiconclass"></i>\n </button>\n <a class="navbar-brand" [href]="(homelink | trustAs: \'resource\') || \'#/\'" *ngIf="title || imgsrc">\n <img data-identifier="img" class="brand-image" [alt]="Brand" height="20" *ngIf="imgsrc" [src]="imgsrc | image"/>\n <span class="title" [textContent]="title"></span>\n </a>\n </div>\n <div class="collapse navbar-collapse" #navContent>\n <ng-content></ng-content>\n </div>\n</div>'}]}],(()=>[{type:s.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{navContent:[{type:t.ViewChild,args:["navContent",{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&s.\u0275setClassDebugInfo(m,{className:"NavbarComponent",filePath:"navbar.component.ts",lineNumber:19});const g=[m];class f{static{this.\u0275fac=function(e){return new(e||f)}}static{this.\u0275mod=s.\u0275\u0275defineNgModule({type:f})}static{this.\u0275inj=s.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&s.\u0275setClassMetadata(f,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...g],exports:[...g]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&s.\u0275\u0275setNgModuleScope(f,{declarations:[m],imports:[i.CommonModule,n.WmComponentsModule],exports:[m]}),e.NavbarComponent=m,e.NavbarModule=f})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/navigation/menu"),require("@angular/router"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/navigation/menu","@angular/router","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.navigation=e.wm.components.navigation||{},e.wm.components.navigation.breadcrumb={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.navigation.menu,e.ng.router,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(n),p=r(a),u=r(s);const h=["wmBreadcrumb",""],m=e=>({active:e});function g(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"a",4),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext().$implicit,n=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(n.onItemClick(t,i))})),l.\u0275\u0275elementEnd()}if(2&e){const e=l.\u0275\u0275nextContext().$implicit,t=l.\u0275\u0275nextContext();l.\u0275\u0275property("title",e.label)("wmNavigationControl",e.link)("disableMenuContext",t.disableMenuContext||!!e.action)("textContent",e.label)}}function f(e,t){if(1&e&&l.\u0275\u0275element(0,"label",5),2&e){const e=l.\u0275\u0275nextContext().$implicit;l.\u0275\u0275property("textContent",e.label)}}function v(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"li",1),l.\u0275\u0275element(1,"i"),l.\u0275\u0275template(2,g,1,4,"a",2)(3,f,1,1,"label",3),l.\u0275\u0275elementEnd()),2&e){const e=t.$implicit,i=t.last;l.\u0275\u0275classMap(e.class),l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction1(9,m,i)),l.\u0275\u0275advance(),l.\u0275\u0275classMap(e.icon),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",!i),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",i)}}const b={widgetType:"wm-breadcrumb",hostClass:"breadcrumb app-breadcrumb"};class y extends n.DatasetAwareNavComponent{static{this.initializeProps=void n.register("wm-breadcrumb",new Map([["class",n.PROP_STRING],["dataset",n.PROP_ANY],["itemlabel",n.PROP_STRING],["itemid",n.PROP_STRING],["itemlink",n.PROP_STRING],["itemicon",n.PROP_STRING],["itemchildren",n.PROP_STRING],["itemclass",n.PROP_STRING],["itemtarget",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t,i,a,s){super(e,b,s),this.route=t,this.location=i,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER),this.disableMenuContext=!!a}getPath(e,t,i=[]){return t.forEach((t=>e.isPathFound?i:t.id===e.key?(e.isPathFound=!0,i.push(t),i):void(t.children.length&&(i.push(t),this.getPath(e,t.children,i),e.isPathFound||i.pop())))),i}getCurrentRoute(){return this.location.path().substr(1).split("?")[0]}resetNodes(){super.resetNodes(),(this.itemid||this.binditemid)&&(this.nodes=this.getPath({key:this.getCurrentRoute(),isPathFound:!1},this.nodes))}onItemClick(e,t){e.preventDefault();const i={$item:t.value,$event:e},n=!(!1===this.invokeEventCallback("beforenavigate",i)),a=t.target;let s=t.link;if(s&&n)if(!s.startsWith("#/")||a&&"_self"!==a)o.openLink(s,a);else{const e=o.getUrlParams(s);s=o.getRouteNameFromLink(s),this.route.navigate([s],{queryParams:e})}}static{this.\u0275fac=function(e){return new(e||y)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(u.Router),l.\u0275\u0275directiveInject(c.Location),l.\u0275\u0275injectAttribute("beforenavigate.event"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:y,selectors:[["","wmBreadcrumb",""]],features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(y)]),l.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:1,vars:1,consts:[[3,"ngClass","class",4,"ngFor","ngForOf"],[3,"ngClass"],["href","javascript:void(0)",3,"title","wmNavigationControl","disableMenuContext","textContent","click",4,"ngIf"],[3,"textContent",4,"ngIf"],["href","javascript:void(0)",3,"click","title","wmNavigationControl","disableMenuContext","textContent"],[3,"textContent"]],template:function(e,t){1&e&&l.\u0275\u0275template(0,v,4,11,"li",0),2&e&&l.\u0275\u0275property("ngForOf",t.nodes)},dependencies:[c.NgClass,c.NgForOf,c.NgIf,p.NavigationControlDirective,d.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(y,[{type:t.Component,args:[{selector:"[wmBreadcrumb]",providers:[n.provideAsWidgetRef(y)],template:'<li *ngFor="let item of nodes; let last = last; let index = index" [ngClass]="{active: last}" class="{{item.class}}">\n <i class="{{item.icon}}"></i>\n <a [title]="item.label" href="javascript:void(0)" [wmNavigationControl]="item.link" [disableMenuContext]="disableMenuContext || !!item.action" (click)="onItemClick($event, item)" *ngIf="!last" [textContent]="item.label"></a>\n <label *ngIf="last" [textContent]="item.label"></label>\n</li>\n'}]}],(()=>[{type:l.Injector},{type:u.Router},{type:c.Location},{type:void 0,decorators:[{type:t.Attribute,args:["beforenavigate.event"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(y,{className:"BreadcrumbComponent",filePath:"breadcrumb.component.ts",lineNumber:20});const w=[y];class C{static{this.\u0275fac=function(e){return new(e||C)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:C})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,a.MenuModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(C,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.MenuModule,n.WmComponentsModule],declarations:[...w],exports:[...w]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(C,{declarations:[y],imports:[i.CommonModule,a.MenuModule,n.WmComponentsModule],exports:[y]}),e.BreadcrumbComponent=y,e.BreadcrumbModule=C})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("ngx-bootstrap/popover"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","ngx-bootstrap/popover","@wm/components/base","@wm/components/basic","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.navigation=e.wm.components.navigation||{},e.wm.components.navigation.popover={}),e.ng.core,e.ng.common,e.popover,e.wm.components.base,e.wm.components.basic,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(n),p=r(s),u=r(o);const h=["partial"],m=["anchor"],g=e=>({"disable-popover":e}),f={widgetType:"wm-popover",hostClass:"app-popover-wrapper"},v={click:"click",hover:"mouseenter:click",default:"click mouseenter"};let b;class y extends a.StylableComponent{static{this.initializeProps=void a.register("wm-popover",new Map([["autoclose",{value:"outsideClick",...a.PROP_STRING}],["badgevalue",a.PROP_STRING],["caption",{value:"Link",...a.PROP_STRING}],["class",a.PROP_STRING],["conditionalclass",a.PROP_ANY],["content",a.PROP_STRING],["contentanimation",a.PROP_STRING],["contentsource",{value:"partial",...a.PROP_STRING}],["encodeurl",a.PROP_BOOLEAN],["hint",a.PROP_STRING],["hyperlink",{value:"javascript:void(0)",PROP_STRING:a.PROP_STRING}],["iconclass",a.PROP_STRING],["iconheight",a.PROP_STRING],["iconmargin",a.PROP_STRING],["iconposition",a.PROP_STRING],["iconurl",a.PROP_STRING],["iconwidth",a.PROP_STRING],["interaction",{value:"click",...a.PROP_STRING}],["name",a.PROP_STRING],["popoverarrow",{value:!0,...a.PROP_BOOLEAN}],["popoverheight",a.PROP_STRING],["popoverplacement",{value:"bottom",...a.PROP_STRING}],["popoverwidth",a.PROP_STRING],["shortcutkey",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["tabindex",{value:0,...a.PROP_NUMBER}],["title",a.PROP_STRING],["adaptiveposition",{value:!0,...a.PROP_BOOLEAN}]]))}constructor(e,t,i){super(e,f,i),this.app=t,this.isOpen=!1,this.canPopoverOpen=!0,this.popoverContainerCls=`app-popover-${this.widgetId}`}open(){this.showPopover()}close(){this.isOpen=!1}onHidden(){this.invokeEventCallback("hide",{$event:{type:"hide"}}),this.isOpen=!1}setFocusToPopoverLink(){setTimeout((()=>this.anchorRef.nativeElement.focus()),10)}adjustPopoverArrowPosition(e,t){this.bsPopoverDirective._popover._ngZone.onStable.subscribe((()=>{e.find(".popover-arrow").css("left",t+"px")}))}calculatePopoverPostion(e){const t=$(e);let i=t.offset().left;const n=t[0].offsetWidth,a=$(window).width(),s=this.anchorRef.nativeElement.getBoundingClientRect();if(i<0){o.adjustContainerPosition(t,this.nativeElement,this.bsPopoverDirective._popover);const e=4,i=s.left+s.width/2-e;this.adjustPopoverArrowPosition(t,i)}i+n>a&&(o.adjustContainerRightEdges(t,this.nativeElement,this.bsPopoverDirective._popover),setTimeout((()=>{i=t.offset().left;const e=i-(i+n-a);let o;o=i<=100?s.left+s.width/2-i:s.left+s.width/2-e,a>500&&(o+=30),this.adjustPopoverArrowPosition(t,o)})))}onShown(){const e=o.findRootContainer(this.$element);e&&$("body > popover-container").wrap("<"+e+"/>"),b&&b.isOpen&&b.autoclose!==a.AUTOCLOSE_TYPE.DISABLED&&(b.isOpen=!1),b=this,b.isOpen=!0;const t=document.querySelector(`.${this.popoverContainerCls}`);o.setCSSFromObj(t,{height:this.popoverheight,minWidth:this.popoverwidth,width:this.popoverwidth}),this.popoverarrow||o.addClass(t.querySelector(".arrow"),"hidden"),"hover"!==this.interaction&&"default"!==this.interaction||(t.onmouseenter=()=>clearTimeout(this.closePopoverTimeout),t.onmouseleave=()=>this.hidePopover(),this.anchorRef.nativeElement.onmouseenter=()=>clearTimeout(this.closePopoverTimeout),this.anchorRef.nativeElement.onmouseleave=()=>this.hidePopover()),setTimeout((()=>{this.anchorRef.nativeElement.removeAttribute("aria-describedby")}));const i=this.eventManager.addEventListener(t,"keydown.esc",(()=>{this.isOpen=!1,this.setFocusToPopoverLink(),i()})),n=t.querySelector(".popover-start"),s=t.querySelector(".popover-end");n.onkeydown=e=>{e.shiftKey&&"Tab"===e.key&&(this.bsPopoverDirective.hide(),e.preventDefault(),this.setFocusToPopoverLink(),this.isOpen=!1)},s.onkeydown=e=>{e.shiftKey||"Tab"!==e.key||(this.bsPopoverDirective.hide(),e.preventDefault(),this.setFocusToPopoverLink(),this.isOpen=!1)},this.autoclose===a.AUTOCLOSE_TYPE.ALWAYS&&(t.onclick=()=>this.close()),setTimeout((()=>n.focus()),50),setTimeout((()=>{this.adaptiveposition||this.calculatePopoverPostion(t),this.triggerPopoverEvents()}))}triggerPopoverEvents(){if("partial"===this.contentsource){const e=this.app.subscribe("partialLoaded",(t=>{const i=this.partialRef.nativeElement;let n;i&&(n=i.widget,this.Widgets=n.Widgets,this.Variables=n.Variables,this.Actions=n.Actions,this.invokeEventCallback("load"),this.invokeEventCallback("show",{$event:{type:"show"}})),e()}))}else this.Widgets=this.viewParent.Widgets,this.Variables=this.viewParent.Variables,this.Actions=this.viewParent.Actions,this.invokeEventCallback("show",{$event:{type:"show"}})}hidePopover(){this.closePopoverTimeout=setTimeout((()=>this.isOpen=!1),500)}showPopover(){this.bsPopoverDirective.show()}onPopoverAnchorKeydown(e){this.canPopoverOpen&&"Enter"===e.key&&(e.stopPropagation(),e.preventDefault(),this.showPopover())}onPropertyChange(e,t,i){"class"!==e&&"tabindex"!==e&&("contentsource"===e&&("partial"!==this.contentsource||this.content||(this.canPopoverOpen=!1)),"content"===e&&t&&(this.canPopoverOpen=!0),"autoclose"===e&&(this.outsideclick=t===a.AUTOCLOSE_TYPE.OUTSIDECLICK||t===a.AUTOCLOSE_TYPE.ALWAYS),super.onPropertyChange(e,t,i))}ngOnInit(){super.ngOnInit(),this.event=v[this.interaction]}ngAfterViewInit(){super.ngAfterViewInit(),a.styler(this.anchorRef.nativeElement,this),this.containerTarget=a.getContainerTargetClass(this.nativeElement)}ngOnDetach(){this.bsPopoverDirective.hide()}static{this.\u0275fac=function(e){return new(e||y)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(u.App),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:y,selectors:[["wm-popover"]],contentQueries:function(e,i,n){if(1&e&&(l.\u0275\u0275contentQuery(n,t.TemplateRef,5),l.\u0275\u0275contentQuery(n,h,5)),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.popoverTemplate=e.first),l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.partialRef=e.first)}},viewQuery:function(e,t){if(1&e&&(l.\u0275\u0275viewQuery(n.PopoverDirective,5),l.\u0275\u0275viewQuery(m,7)),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.bsPopoverDirective=e.first),l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.anchorRef=e.first)}},features:[l.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(y)]),l.\u0275\u0275InheritDefinitionFeature],decls:2,vars:21,consts:[["anchor",""],["boundariesElement","window","role","button","name.bind","name","wmAnchor","","animation.bind","animation","badgevalue.bind","badgevalue","caption.bind","caption","encodeurl.bind","encodeurl","hint.bind","hint","hyperlink.bind","hyperlink","iconurl.bind","iconurl","iconwidth.bind","iconwidth","iconheight.bind","iconheight","iconmargin.bind","iconmargin","iconclass.bind","iconclass","iconposition.bind","iconposition","shortcutkey.bind","shortcutkey","tabindex.bind","tabindex",3,"onShown","onHidden","keydown","popover","popoverContext","popoverTitle","placement","outsideClick","triggers","containerClass","container","isOpen","tabindex","name","ngClass","adaptivePosition"]],template:function(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"a",1,0),l.\u0275\u0275listener("onShown",(function(){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onShown())}))("onHidden",(function(){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onHidden())}))("keydown",(function(i){return l.\u0275\u0275restoreView(e),l.\u0275\u0275resetView(t.onPopoverAnchorKeydown(i))})),l.\u0275\u0275elementEnd()}2&e&&(l.\u0275\u0275classMap(t.class),l.\u0275\u0275propertyInterpolate2("containerClass","app-popover animated ",t.contentanimation," ",t.popoverContainerCls,""),l.\u0275\u0275property("popover",t.popoverTemplate)("popoverContext",t.context)("popoverTitle",t.title)("placement",t.popoverplacement)("outsideClick",t.outsideclick)("triggers",t.event)("container",t.containerTarget||".wm-app")("isOpen",t.isOpen)("tabindex",t.tabindex)("name",t.name)("ngClass",l.\u0275\u0275pureFunction1(19,g,!t.canPopoverOpen))("adaptivePosition",t.adaptiveposition),l.\u0275\u0275attribute("aria-label",t.hint||"Popover menu")("aria-expanded",t.isOpen))},dependencies:[c.NgClass,p.AnchorComponent,d.PopoverDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(y,[{type:t.Component,args:[{selector:"wm-popover",providers:[a.provideAsWidgetRef(y)],template:'<a [popover]="popoverTemplate"\n [popoverContext]="context"\n [popoverTitle]="title"\n [placement]="popoverplacement"\n [outsideClick]="outsideclick"\n [triggers]="event"\n (onShown)="onShown()"\n (onHidden)="onHidden()"\n containerClass="app-popover animated {{contentanimation}} {{popoverContainerCls}}"\n [container]="containerTarget || \'.wm-app\'"\n [isOpen]="isOpen"\n [tabindex]="tabindex"\n [name]="name"\n [class]="class"\n [ngClass]="{\'disable-popover\': !canPopoverOpen}"\n [adaptivePosition]="adaptiveposition"\n boundariesElement="window"\n [attr.aria-label]="hint || \'Popover menu\'"\n [attr.aria-expanded]="isOpen"\n role="button"\n #anchor\n name.bind="name"\n wmAnchor\n animation.bind="animation"\n badgevalue.bind="badgevalue"\n caption.bind="caption"\n encodeurl.bind="encodeurl"\n hint.bind="hint"\n hyperlink.bind="hyperlink"\n iconurl.bind="iconurl"\n iconwidth.bind="iconwidth"\n iconheight.bind="iconheight"\n iconmargin.bind="iconmargin"\n iconclass.bind="iconclass"\n iconposition.bind="iconposition"\n shortcutkey.bind="shortcutkey"\n tabindex.bind="tabindex"\n (keydown)="onPopoverAnchorKeydown($event)">\n</a>\n'}]}],(()=>[{type:l.Injector},{type:u.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{bsPopoverDirective:[{type:t.ViewChild,args:[n.PopoverDirective]}],anchorRef:[{type:t.ViewChild,args:["anchor",{static:!0}]}],popoverTemplate:[{type:t.ContentChild,args:[t.TemplateRef]}],partialRef:[{type:t.ContentChild,args:["partial"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(y,{className:"PopoverComponent",filePath:"popover.component.ts",lineNumber:57});const w=[y];class C{static{this.\u0275fac=function(e){return new(e||C)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:C})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,s.BasicModule,n.PopoverModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(C,[{type:t.NgModule,args:[{imports:[i.CommonModule,s.BasicModule,n.PopoverModule,a.WmComponentsModule],declarations:[...w],exports:[...w]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(C,{declarations:[y],imports:[i.CommonModule,s.BasicModule,n.PopoverModule,a.WmComponentsModule],exports:[y]}),e.PopoverComponent=y,e.PopoverModule=C})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("ngx-bootstrap/modal"),require("@wm/core"),require("@wm/components/base"),require("@angular/router"),require("@wavemaker/focus-trap"),require("@angular/common")):"function"==typeof define&&define.amd?define(["exports","@angular/core","ngx-bootstrap/modal","@wm/core","@wm/components/base","@angular/router","@wavemaker/focus-trap","@angular/common"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs={}),e.ng.core,e.modal,e.wm.core,e.wm.components.base,e.ng.router,e.focusTrap,e.ng.common)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(a),u=l(r);class h{constructor(e,t,i,a){this.dialogRef=t,this.renderer=a,n.addClass(e.nativeElement,"app-dialog-body modal-body");const s=i.onShown.subscribe((()=>{const t=$(e.nativeElement).closest(".app-dialog")[0];let i=$("body.wm-app")[0];if(!i){const e=$("body > .modal-backdrop")[0],t=$("body > modal-container")[0];i=$(".wm-app")[0],i&&t&&(e&&this.renderer.appendChild(i,e),this.renderer.appendChild(i,t))}const a=this.dialogRef.width,o=this.dialogRef.height;o&&setTimeout((t=>{n.setCSS($(e.nativeElement)[0],"height",o)})),t&&(a&&n.setCSS(t,"width",a),n.setAttr(t,"tabindex",this.dialogRef.tabindex),n.setAttr(t,"name",this.dialogRef.name)),s.unsubscribe()}))}static{this.\u0275fac=function(e){return new(e||h)(c.\u0275\u0275directiveInject(c.ElementRef),c.\u0275\u0275directiveInject(a.DialogRef),c.\u0275\u0275directiveInject(d.BsModalService),c.\u0275\u0275directiveInject(c.Renderer2))}}static{this.\u0275dir=c.\u0275\u0275defineDirective({type:h,selectors:[["div","wmDialogBody",""]],hostVars:2,hostBindings:function(e,t){2&e&&c.\u0275\u0275styleProp("height",t.height)}})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(h,[{type:t.Directive,args:[{selector:"div[wmDialogBody]"}]}],(()=>[{type:c.ElementRef},{type:void 0,decorators:[{type:t.Inject,args:[a.DialogRef]}]},{type:d.BsModalService},{type:c.Renderer2}]),{height:[{type:t.HostBinding,args:["style.height"]}]});const m={widgetType:"wm-dialogfooter",hostClass:"app-dialog-footer modal-footer"};class g extends a.BaseComponent{static{this.initializeProps=void a.register("wm-dialogfooter",new Map([["class",a.PROP_STRING],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}]]))}constructor(e,t){super(e,m,t)}static{this.\u0275fac=function(e){return new(e||g)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=c.\u0275\u0275defineDirective({type:g,selectors:[["div","wmDialogFooter",""]],features:[c.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(g)]),c.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(g,[{type:t.Directive,args:[{selector:"div[wmDialogFooter]",providers:[a.provideAsWidgetRef(g)]}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const f={activeElement:null};class v extends a.BaseComponent{constructor(e,t,a,r){super(e,t,r),this.modalOptions=a,this.titleId="wmdialog-"+n.generateGUId(),this.dialogService=e.get(n.AbstractDialogService),this.bsModal=e.get(i.BsModalService);const l=e.get(s.Router),c=[this.bsModal.onShown.subscribe((({id:e})=>{const t=this.dialogService.getLastOpenedDialog();t!==this||this.dialogId||((e=>{e&&setTimeout((()=>{const t=n.findRootContainer(e.$element);t&&$("body > modal-container > div").wrap("<"+t+"/>"),e.invokeEventCallback("opened",{$event:{type:"opened"}});const i=$("[aria-labelledby= "+e.titleId+"]")[0],a=[i.querySelectorAll('a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex="-1"])')].filter((e=>!e[0].hasAttribute("disabled")&&!e[0].hasAttribute("hidden")))[0];$(a[0]).focus(),f[e.titleId]=o.createFocusTrap(i,{onActivate:()=>i.classList.add("is-active"),onDeactivate:()=>i.classList.remove("is-active"),allowOutsideClick:!0,setReturnFocus:f.activeElement}),f[e.titleId].activate()}))})(t),this.dialogId=e)})),this.bsModal.onShow.subscribe((()=>{f.activeElement=document.activeElement})),this.bsModal.onHidden.subscribe((e=>{let t=this.dialogService.getDialogRefFromClosedDialogs();this.dialogId&&e?.id===this.dialogId?t=this:"esc"!==e&&"backdrop-click"!==e||(t=this.dialogService.getLastOpenedDialog()),t===this&&(this.dialogId=null,this.dialogService.removeFromOpenedDialogs(t),this.dialogService.removeFromClosedDialogs(t),(e=>{e&&(e.invokeEventCallback("close"),e.dialogRef=void 0)})(t),t.closeCallBackFn&&t.closeCallBackFn())})),this.bsModal.onHide.subscribe((()=>{const e=this.dialogService.getDialogRefFromClosedDialogs();e&&void 0!==f[e.titleId]&&f[e.titleId].deactivate()})),l.events.subscribe((e=>{e instanceof s.NavigationEnd&&this.close()}))];this.registerDestroyListener((()=>{this.dialogService.removeFromOpenedDialogs(this),this.dialogService.removeFromClosedDialogs(this),c.forEach((e=>e.unsubscribe()))}))}open(e){if(!this.dialogService.getOpenedDialogs().some((e=>e===this))&&(this.dialogService.addToOpenedDialogs(this),Object.assign(this.context,e),this.modalOptions.ariaLabelledBy=this.titleId,this.dialogRef=this.bsModal.show(this.getTemplateRef(),this.modalOptions),1===this.dialogService.getOpenedDialogs().length&&(n.isMobile()||n.isMobileApp()))){$("body > app-root")[0].setAttribute("aria-hidden","true")}}close(){this.dialogRef&&(this.dialogService.addToClosedDialogs(this),this.dialogRef.hide())}register(e){this.dialogService.register(this.name,this,e)}deRegister(e){this.dialogService.deRegister(this.name,e)}onPropertyChange(e,t,i){"class"!==e&&"name"!==e&&"tabindex"!==e&&("animation"===e&&(this.modalOptions.class=this.modalOptions.class.replace(" animated "+i,""),t&&(this.modalOptions.class=this.modalOptions.class+" animated "+t)),super.onPropertyChange(e,t,i))}ngOnDestroy(){this.close(),this.deRegister(this.viewParent),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||v)(c.\u0275\u0275inject(c.Injector),c.\u0275\u0275inject(a.WidgetConfig),c.\u0275\u0275inject(d.ModalOptions),c.\u0275\u0275inject("EXPLICIT_CONTEXT",8))}}static{this.\u0275prov=c.\u0275\u0275defineInjectable({token:v,factory:v.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(v,[{type:t.Injectable}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:[a.WidgetConfig]}]},{type:d.ModalOptions},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const b=["wmDialogHeader",""],y=(e,t,i)=>({width:e,height:t,margin:i});function w(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"button",5),c.\u0275\u0275listener("click",(function(){c.\u0275\u0275restoreView(e);const t=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(t.closeDialog())})),c.\u0275\u0275elementStart(1,"span",6),c.\u0275\u0275text(2,"\xd7"),c.\u0275\u0275elementEnd()()}}function C(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function P(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h1",7),c.\u0275\u0275template(2,C,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function I(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function A(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h2",7),c.\u0275\u0275template(2,I,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function E(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function O(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h3",7),c.\u0275\u0275template(2,E,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function T(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function x(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h4",7),c.\u0275\u0275template(2,T,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function D(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function R(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h5",7),c.\u0275\u0275template(2,D,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function S(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function _(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h6",7),c.\u0275\u0275template(2,S,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function M(e,t){1&e&&c.\u0275\u0275elementContainer(0)}function N(e,t){if(1&e&&(c.\u0275\u0275elementContainerStart(0),c.\u0275\u0275elementStart(1,"h4",7),c.\u0275\u0275template(2,M,1,0,"ng-container",8),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementContainerEnd()),2&e){c.\u0275\u0275nextContext();const e=c.\u0275\u0275reference(10);c.\u0275\u0275advance(2),c.\u0275\u0275property("ngTemplateOutlet",e)}}function k(e,t){if(1&e&&c.\u0275\u0275element(0,"i",13),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("ngClass",e.iconclass)("ngStyle",c.\u0275\u0275pureFunction3(2,y,e.iconwidth,e.iconheight,e.iconmargin))}}function L(e,t){if(1&e&&(c.\u0275\u0275element(0,"img",14),c.\u0275\u0275pipe(1,"image")),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("src",c.\u0275\u0275pipeBind1(1,2,e.iconurl),c.\u0275\u0275sanitizeUrl)("ngStyle",c.\u0275\u0275pureFunction3(4,y,e.iconwidth,e.iconheight,e.iconmargin))}}function F(e,t){if(1&e&&c.\u0275\u0275element(0,"span",15),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("title",e.subheading)("textContent",e.subheading)}}function j(e,t){if(1&e&&(c.\u0275\u0275template(0,k,1,6,"i",9)(1,L,2,8,"img",10),c.\u0275\u0275element(2,"span",11),c.\u0275\u0275template(3,F,1,2,"span",12)),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275property("ngIf",e.iconclass&&!e.iconurl),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.iconurl),c.\u0275\u0275advance(),c.\u0275\u0275property("textContent",e.heading)("id",e.titleid),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.subheading)}}const B="21px";class V{get isClosable(){return n.toBoolean(this.closable)}constructor(e,t){this.dialogRef=t,this.iconwidth=B,this.iconheight=B,this.closable=!0,this.headinglevel="h4",n.addClass(e.nativeElement,"app-dialog-header modal-header")}closeDialog(){this.dialogRef.close()}static{this.\u0275fac=function(e){return new(e||V)(c.\u0275\u0275directiveInject(c.ElementRef),c.\u0275\u0275directiveInject(a.DialogRef))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:V,selectors:[["div","wmDialogHeader",""]],inputs:{iconwidth:"iconwidth",iconheight:"iconheight",iconmargin:"iconmargin",iconclass:"iconclass",iconurl:"iconurl",closable:"closable",heading:"heading",headinglevel:"headinglevel",subheading:"subheading",titleid:"titleid"},attrs:b,decls:11,vars:8,consts:[["headerTemplate",""],["aria-label","Close","class","app-dialog-close close","title","Close",3,"click",4,"ngIf"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["aria-label","Close","title","Close",1,"app-dialog-close","close",3,"click"],["aria-hidden","true"],[1,"app-dialog-title","modal-title"],[4,"ngTemplateOutlet"],[3,"ngClass","ngStyle",4,"ngIf"],["data-identifier","img",3,"src","ngStyle",4,"ngIf"],[1,"dialog-heading",3,"textContent","id"],["class","dialog-sub-heading",3,"title","textContent",4,"ngIf"],[3,"ngClass","ngStyle"],["data-identifier","img",3,"src","ngStyle"],[1,"dialog-sub-heading",3,"title","textContent"]],template:function(e,t){1&e&&(c.\u0275\u0275template(0,w,3,0,"button",1),c.\u0275\u0275elementContainerStart(1,2),c.\u0275\u0275template(2,P,3,1,"ng-container",3)(3,A,3,1,"ng-container",3)(4,O,3,1,"ng-container",3)(5,x,3,1,"ng-container",3)(6,R,3,1,"ng-container",3)(7,_,3,1,"ng-container",3)(8,N,3,1,"ng-container",4),c.\u0275\u0275elementContainerEnd(),c.\u0275\u0275template(9,j,4,5,"ng-template",null,0,c.\u0275\u0275templateRefExtractor)),2&e&&(c.\u0275\u0275property("ngIf",t.isClosable),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitch",t.headinglevel),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitchCase","h1"),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitchCase","h2"),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitchCase","h3"),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitchCase","h4"),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitchCase","h5"),c.\u0275\u0275advance(),c.\u0275\u0275property("ngSwitchCase","h6"))},dependencies:[u.NgClass,u.NgIf,u.NgTemplateOutlet,u.NgStyle,u.NgSwitch,u.NgSwitchCase,u.NgSwitchDefault,p.TextContentDirective,p.ImagePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(V,[{type:t.Component,args:[{selector:"div[wmDialogHeader]",template:'<button *ngIf="isClosable" aria-label="Close" class="app-dialog-close close" (click)="closeDialog();" title="Close">\n <span aria-hidden="true">&times;</span>\n</button>\n\n<ng-container [ngSwitch]="headinglevel">\n <ng-container *ngSwitchCase="\'h1\'">\n <h1 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h1>\n </ng-container>\n <ng-container *ngSwitchCase="\'h2\'">\n <h2 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h2>\n </ng-container>\n <ng-container *ngSwitchCase="\'h3\'">\n <h3 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h3>\n </ng-container>\n <ng-container *ngSwitchCase="\'h4\'">\n <h4 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h4>\n </ng-container>\n <ng-container *ngSwitchCase="\'h5\'">\n <h5 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h5>\n </ng-container>\n <ng-container *ngSwitchCase="\'h6\'">\n <h6 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h6>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <h4 class="app-dialog-title modal-title">\n <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n </h4>\n </ng-container>\n</ng-container>\n\n<ng-template #headerTemplate>\n <i [ngClass]="iconclass" [ngStyle]="{width: iconwidth, height: iconheight, margin: iconmargin}" *ngIf="iconclass && !iconurl"></i>\n <img data-identifier="img" [src]="iconurl | image" *ngIf="iconurl" [ngStyle]="{width: iconwidth, height: iconheight, margin: iconmargin}"/>\n <span class="dialog-heading" [textContent]="heading" [id]="titleid"></span>\n <span class="dialog-sub-heading" *ngIf="subheading" [title]="subheading" [textContent]="subheading"></span>\n</ng-template>\n'}]}],(()=>[{type:c.ElementRef},{type:v,decorators:[{type:t.Inject,args:[a.DialogRef]}]}]),{iconwidth:[{type:t.Input}],iconheight:[{type:t.Input}],iconmargin:[{type:t.Input}],iconclass:[{type:t.Input}],iconurl:[{type:t.Input}],closable:[{type:t.Input}],heading:[{type:t.Input}],headinglevel:[{type:t.Input}],subheading:[{type:t.Input}],titleid:[{type:t.Input}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(V,{className:"DialogHeaderComponent",filePath:"dialog-header/dialog-header.component.ts",lineNumber:15});const G=[h,g,V];class W{static{this.\u0275fac=function(e){return new(e||W)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:W})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[r.CommonModule,i.ModalModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(W,[{type:t.NgModule,args:[{imports:[r.CommonModule,i.ModalModule,a.WmComponentsModule],declarations:[...G],exports:[...G]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(W,{declarations:[h,g,V],imports:[r.CommonModule,i.ModalModule,a.WmComponentsModule],exports:[h,g,V]}),e.BaseDialog=v,e.DialogBodyDirective=h,e.DialogFooterDirective=g,e.DialogHeaderComponent=V,e.DialogModule=W})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/dialogs"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/dialogs","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs=e.wm.components.dialogs||{},e.wm.components.dialogs.alertdialog={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.dialogs,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(n),d=r(a),p=r(s);const u=["dialogTemplate"],h=["wmAlertDialog",""];function m(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275element(0,"div",1),l.\u0275\u0275elementStart(1,"div",2),l.\u0275\u0275element(2,"p",3),l.\u0275\u0275elementEnd(),l.\u0275\u0275elementStart(3,"div",4)(4,"button",5),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(i.onOk(t))})),l.\u0275\u0275elementEnd()()}if(2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("closable",e.closable)("iconclass",e.iconclass)("iconurl",e.iconurl)("iconwidth",e.iconwidth)("iconheight",e.iconheight)("iconmargin",e.iconmargin)("heading",e.title)("headinglevel",e.headinglevel)("titleid",e.titleId),l.\u0275\u0275advance(2),l.\u0275\u0275classMapInterpolate1("app-dialog-message text-",e.alerttype,""),l.\u0275\u0275property("textContent",e.message)}}const g={widgetType:"wm-alertdialog"};class f extends a.BaseDialog{static{this.initializeProps=void n.register("wm-alertdialog",new Map([["alerttype",{value:"error",...n.PROP_STRING}],["animation",n.PROP_STRING],["class",n.PROP_STRING],["closable",{value:!0,PROP_BOOLEAN:n.PROP_BOOLEAN}],["iconclass",{value:"wi wi-warning",PROP_STRING:n.PROP_STRING}],["iconheight",n.PROP_STRING],["iconmargin",n.PROP_STRING],["iconurl",n.PROP_STRING],["iconwidth",n.PROP_STRING],["message",{value:"Am an alert box!",...n.PROP_STRING}],["modal",{value:!1,...n.PROP_BOOLEAN}],["name",n.PROP_STRING],["oktext",{value:"OK",...n.PROP_STRING}],["tabindex",{value:0,...n.PROP_NUMBER}],["headinglevel",{value:"h4",...n.PROP_STRING}],["title",{value:"Alert",...n.PROP_STRING}]]))}constructor(e,t,i,n,a){null==i&&(i=!1);const s=!o.toBoolean(i)||"static";super(e,g,{class:`app-dialog modal-dialog app-alert-dialog ${t||""}`,backdrop:s,keyboard:!o.toBoolean(i)},a)}getTemplateRef(){return this.dialogTemplate}onOk(e){this.invokeEventCallback("ok",{$event:e})}ngOnInit(){super.ngOnInit(),this.register(this.viewParent)}static{this.\u0275fac=function(e){return new(e||f)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275injectAttribute("class"),l.\u0275\u0275injectAttribute("modal"),l.\u0275\u0275injectAttribute("closable"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:f,selectors:[["div","wmAlertDialog",""]],viewQuery:function(e,t){if(1&e&&l.\u0275\u0275viewQuery(u,7),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.dialogTemplate=e.first)}},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(f),n.provideAsDialogRef(f)]),l.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:2,vars:0,consts:[["dialogTemplate",""],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid"],["wmDialogBody",""],[3,"textContent"],["wmDialogFooter",""],["wmButton","","caption.bind","oktext","aria-label","Submit button",1,"btn-primary","ok-action",3,"click"]],template:function(e,t){1&e&&l.\u0275\u0275template(0,m,5,13,"ng-template",null,0,l.\u0275\u0275templateRefExtractor)},dependencies:[d.DialogBodyDirective,d.DialogFooterDirective,d.DialogHeaderComponent,p.ButtonComponent,c.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(f,[{type:t.Component,args:[{selector:"div[wmAlertDialog]",providers:[n.provideAsWidgetRef(f),n.provideAsDialogRef(f)],template:'<ng-template #dialogTemplate>\n <div wmDialogHeader [closable]="closable"\n [iconclass]="iconclass"\n [iconurl]="iconurl"\n [iconwidth]="iconwidth"\n [iconheight]="iconheight"\n [iconmargin]="iconmargin"\n [heading]="title"\n [headinglevel]="headinglevel"\n [titleid]="titleId"></div>\n <div wmDialogBody>\n <p class="app-dialog-message text-{{alerttype}}" [textContent]="message"></p>\n </div>\n <div wmDialogFooter>\n <button wmButton class="btn-primary ok-action" caption.bind="oktext" aria-label="Submit button" (click)="onOk($event)"></button>\n </div>\n</ng-template>\n'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["class"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["modal"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["closable"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dialogTemplate:[{type:t.ViewChild,args:["dialogTemplate",{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(f,{className:"AlertDialogComponent",filePath:"alert-dialog.component.ts",lineNumber:31});const v=[f];class b{static{this.\u0275fac=function(e){return new(e||b)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:b})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(b,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],declarations:[...v],exports:[...v]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(b,{declarations:[f],imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],exports:[f]}),e.AlertDialogComponent=f,e.AlertDialogModule=b})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/dialogs"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/dialogs","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs=e.wm.components.dialogs||{},e.wm.components.dialogs.confirmdialog={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.dialogs,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(a),d=r(s);const p=["dialogTemplate"],u=["wmConfirmDialog",""];function h(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275element(0,"div",1),l.\u0275\u0275elementStart(1,"div",2)(2,"p"),l.\u0275\u0275text(3),l.\u0275\u0275elementEnd()(),l.\u0275\u0275elementStart(4,"div",3)(5,"button",4),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(i.onCancel(t))})),l.\u0275\u0275elementEnd(),l.\u0275\u0275elementStart(6,"button",5),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(i.onOk(t))})),l.\u0275\u0275elementEnd()()}if(2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("closable",e.closable)("iconclass",e.iconclass)("iconurl",e.iconurl)("iconwidth",e.iconwidth)("iconheight",e.iconheight)("iconmargin",e.iconmargin)("heading",e.title)("headinglevel",e.headinglevel)("titleid",e.titleId),l.\u0275\u0275advance(2),l.\u0275\u0275classMapInterpolate1("app-dialog-message ",e.messageclass,""),l.\u0275\u0275attribute("aria-describedby",e.message),l.\u0275\u0275advance(),l.\u0275\u0275textInterpolate(e.message)}}const m={widgetType:"wm-confirmdialog"};class g extends a.BaseDialog{static{this.initializeProps=void n.register("wm-confirmdialog",new Map([["animation",n.PROP_STRING],["canceltext",{value:"CANCEL",...n.PROP_STRING}],["class",n.PROP_STRING],["closable",{value:!0,PROP_BOOLEAN:n.PROP_BOOLEAN}],["iconclass",{value:"wm-sl-l sl-check",PROP_STRING:n.PROP_STRING}],["iconheight",n.PROP_STRING],["iconmargin",n.PROP_STRING],["iconurl",n.PROP_STRING],["iconwidth",n.PROP_STRING],["message",{value:"I am confirm box!",...n.PROP_STRING}],["modal",{value:!1,...n.PROP_BOOLEAN}],["name",n.PROP_STRING],["oktext",{value:"OK",...n.PROP_STRING}],["tabindex",{value:0,...n.PROP_NUMBER}],["headinglevel",{value:"h4",...n.PROP_STRING}],["title",{value:"Confirm",...n.PROP_STRING}]]))}constructor(e,t,i,n,a){null==i&&(i=!1);super(e,m,{class:`app-dialog modal-dialog app-confirm-dialog ${t||""}`,backdrop:"static",keyboard:!o.toBoolean(i)},a)}onEscape(e){}getTemplateRef(){return this.dialogTemplate}onOk(e){this.invokeEventCallback("ok",{$event:e})}onCancel(e){this.invokeEventCallback("cancel",{$event:e})}ngOnInit(){super.ngOnInit(),this.register(this.viewParent)}static{this.\u0275fac=function(e){return new(e||g)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275injectAttribute("class"),l.\u0275\u0275injectAttribute("modal"),l.\u0275\u0275injectAttribute("closable"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:g,selectors:[["div","wmConfirmDialog",""]],viewQuery:function(e,t){if(1&e&&l.\u0275\u0275viewQuery(p,7),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.dialogTemplate=e.first)}},hostBindings:function(e,t){1&e&&l.\u0275\u0275listener("keydown.esc",(function(e){return t.onEscape(e)}),!1,l.\u0275\u0275resolveWindow)},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(g),n.provideAsDialogRef(g)]),l.\u0275\u0275InheritDefinitionFeature],attrs:u,decls:2,vars:0,consts:[["dialogTemplate",""],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid"],["wmDialogBody",""],["wmDialogFooter",""],["wmButton","","caption.bind","canceltext","aria-label","Cancel button",1,"btn-default","cancel-action",3,"click"],["wmButton","","caption.bind","oktext","aria-label","Submit button",1,"btn-primary","ok-action",3,"click"]],template:function(e,t){1&e&&l.\u0275\u0275template(0,h,7,14,"ng-template",null,0,l.\u0275\u0275templateRefExtractor)},dependencies:[c.DialogBodyDirective,c.DialogFooterDirective,c.DialogHeaderComponent,d.ButtonComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(g,[{type:t.Component,args:[{selector:"div[wmConfirmDialog]",providers:[n.provideAsWidgetRef(g),n.provideAsDialogRef(g)],template:'<ng-template #dialogTemplate>\n <div wmDialogHeader [closable]="closable"\n [iconclass]="iconclass"\n [iconurl]="iconurl"\n [iconwidth]="iconwidth"\n [iconheight]="iconheight"\n [iconmargin]="iconmargin"\n [heading]="title"\n [headinglevel]="headinglevel"\n [titleid]="titleId"></div>\n <div wmDialogBody>\n <p class="app-dialog-message {{messageclass}}" [attr.aria-describedby]="message">{{message}}</p>\n </div>\n <div wmDialogFooter>\n <button wmButton class="btn-default cancel-action" caption.bind="canceltext" aria-label="Cancel button" (click)="onCancel($event)"></button>\n <button wmButton class="btn-primary ok-action" caption.bind="oktext" aria-label="Submit button" (click)="onOk($event)"></button>\n </div>\n</ng-template>\n'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["class"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["modal"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["closable"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dialogTemplate:[{type:t.ViewChild,args:["dialogTemplate",{static:!0}]}],onEscape:[{type:t.HostListener,args:["window:keydown.esc",["$event"]]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(g,{className:"ConfirmDialogComponent",filePath:"confirm-dialog.component.ts",lineNumber:31});const f=[g];class v{static{this.\u0275fac=function(e){return new(e||v)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:v})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(v,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],declarations:[...f],exports:[...f]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(v,{declarations:[g],imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],exports:[g]}),e.ConfirmDialogComponent=g,e.ConfirmDialogModule=v})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/dialogs"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/dialogs","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs=e.wm.components.dialogs||{},e.wm.components.dialogs.designdialog={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.dialogs,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(a);const p=["dialogBody"],u=["dialogFooter"],h=["dialogTemplate"],m=["wmDialog",""];function g(e,t){if(1&e&&l.\u0275\u0275element(0,"div",4),2&e){const e=l.\u0275\u0275nextContext(2);l.\u0275\u0275property("closable",e.closable)("iconclass",e.iconclass)("iconurl",e.iconurl)("iconwidth",e.iconwidth)("iconheight",e.iconheight)("iconmargin",e.iconmargin)("heading",e.title)("headinglevel",e.headinglevel)("titleid",e.titleId)}}function f(e,t){1&e&&l.\u0275\u0275elementContainer(0)}function v(e,t){1&e&&l.\u0275\u0275elementContainer(0)}function b(e,t){if(1&e&&(l.\u0275\u0275template(0,g,1,9,"div",1),l.\u0275\u0275elementStart(1,"div",2),l.\u0275\u0275template(2,f,1,0,"ng-container",3),l.\u0275\u0275elementEnd(),l.\u0275\u0275template(3,v,1,0,"ng-container",3)),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("ngIf",e.showheader),l.\u0275\u0275advance(2),l.\u0275\u0275property("ngTemplateOutlet",e.dialogBody),l.\u0275\u0275advance(),l.\u0275\u0275property("ngTemplateOutlet",e.dialogFooter)}}const y={widgetType:"wm-dialog"};class w extends a.BaseDialog{static{this.initializeProps=void n.register("wm-dialog",new Map([["animation",n.PROP_STRING],["class",n.PROP_STRING],["closable",{value:!0,...n.PROP_BOOLEAN}],["iconclass",{value:"wi wi-file-text",PROP_STRING:n.PROP_STRING}],["iconheight",n.PROP_STRING],["iconmargin",n.PROP_STRING],["iconurl",n.PROP_STRING],["iconwidth",n.PROP_STRING],["modal",{value:!0,...n.PROP_BOOLEAN}],["name",n.PROP_STRING],["showheader",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}],["title",{value:"Information",...n.PROP_STRING}],["headinglevel",{value:"h4",...n.PROP_STRING}],["eventsource",n.PROP_ANY]]))}constructor(e,t,i,n,a,s){null==i&&(i=!0),null==n&&(n=!0),a[0].closeDialog=()=>this.close();const r=!o.toBoolean(i)||"static";super(e,y,{class:`app-dialog modal-dialog ${t||""}`,backdrop:r,keyboard:!!o.toBoolean(n)||!o.toBoolean(i)},s),this.isDialogComponent=!0}getTemplateRef(){return this.dialogTemplate}ngOnInit(){super.ngOnInit(),this.register(this.viewParent)}static{this.\u0275fac=function(e){return new(e||w)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275injectAttribute("class"),l.\u0275\u0275injectAttribute("modal"),l.\u0275\u0275injectAttribute("closable"),l.\u0275\u0275directiveInject(n.Context,2),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:w,selectors:[["div","wmDialog",""]],contentQueries:function(e,i,n){if(1&e&&(l.\u0275\u0275contentQuery(n,p,5,t.TemplateRef),l.\u0275\u0275contentQuery(n,u,5,t.TemplateRef)),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.dialogBody=e.first),l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.dialogFooter=e.first)}},viewQuery:function(e,i){if(1&e&&l.\u0275\u0275viewQuery(h,7,t.TemplateRef),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.dialogTemplate=e.first)}},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(w),n.provideAsDialogRef(w),{provide:n.Context,useFactory:()=>({}),multi:!0}]),l.\u0275\u0275InheritDefinitionFeature],attrs:m,decls:2,vars:0,consts:[["dialogTemplate",""],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid",4,"ngIf"],["wmDialogBody",""],[4,"ngTemplateOutlet"],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid"]],template:function(e,t){1&e&&l.\u0275\u0275template(0,b,4,3,"ng-template",null,0,l.\u0275\u0275templateRefExtractor)},dependencies:[c.NgIf,c.NgTemplateOutlet,d.DialogBodyDirective,d.DialogHeaderComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(w,[{type:t.Component,args:[{selector:"div[wmDialog]",providers:[n.provideAsWidgetRef(w),n.provideAsDialogRef(w),{provide:n.Context,useFactory:()=>({}),multi:!0}],template:'<ng-template #dialogTemplate>\n <div wmDialogHeader [closable]="closable"\n [iconclass]="iconclass"\n [iconurl]="iconurl"\n [iconwidth]="iconwidth"\n [iconheight]="iconheight"\n [iconmargin]="iconmargin"\n [heading]="title"\n [headinglevel]="headinglevel"\n *ngIf="showheader"\n [titleid]="titleId"\n ></div>\n <div wmDialogBody>\n <ng-container *ngTemplateOutlet="dialogBody"></ng-container>\n </div>\n <ng-container *ngTemplateOutlet="dialogFooter"></ng-container>\n</ng-template>\n'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["class"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["modal"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["closable"]}]},{type:Array,decorators:[{type:t.Self},{type:t.Inject,args:[n.Context]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dialogTemplate:[{type:t.ViewChild,args:["dialogTemplate",{static:!0,read:t.TemplateRef}]}],dialogBody:[{type:t.ContentChild,args:["dialogBody",{read:t.TemplateRef}]}],dialogFooter:[{type:t.ContentChild,args:["dialogFooter",{read:t.TemplateRef}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(w,{className:"DialogComponent",filePath:"dialog.component.ts",lineNumber:33});const C=[w];class P{static{this.\u0275fac=function(e){return new(e||P)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:P})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(P,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],declarations:[...C],exports:[...C]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(P,{declarations:[w],imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],exports:[w]}),e.DesignDialogModule=P,e.DialogComponent=w})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@angular/platform-browser"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@angular/platform-browser","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.page={}),e.ng.core,e.ng.common,e.wm.components.base,e.ng.platformBrowser,e.wm.core)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r=o(t),l=o(a),c=o(s);const d={widgetType:"wm-page",hostClass:"app-page container"};class p extends n.StylableComponent{static{this.initializeProps=void n.register("wm-page",new Map([["cache",{value:!1,...n.PROP_BOOLEAN}],["refreshdataonattach",{value:!0,...n.PROP_BOOLEAN}],["pagetitle",n.PROP_STRING],["hint",n.PROP_STRING]]))}onPropertyChange(e,t,i){"pagetitle"===e?this.titleService.setTitle(t):super.onPropertyChange(e,t,i)}constructor(e,t,i,n){super(e,d,n),this.titleService=t,this.viewport=i,this._eventNotifier=new s.EventNotifier(!1),this.refreshdataonattach=!0}notify(e,...t){this._eventNotifier.notify.apply(this._eventNotifier,arguments)}subscribe(e,t){return this._eventNotifier.subscribe(e,t)}ngAfterViewInit(){setTimeout((()=>{this._eventNotifier.start(),n.updateDeviceView(this.nativeElement,this.getAppInstance().isTabletApplicationType)}),1),this.registerDestroyListener(this.viewport.subscribe("resize",(e=>{this.invokeEventCallback("resize",{$event:e.$event,widget:this,data:e.data})}))),this.registerDestroyListener(this.viewport.subscribe("orientationchange",(e=>{this.invokeEventCallback("orientationchange",{$event:e.$event,widget:this,data:e.data})})))}ngOnAttach(){this.titleService.setTitle(this.pagetitle),this.invokeEventCallback("attach",{widget:this}),this.notify("attach",{refreshData:this.refreshdataonattach})}ngOnDetach(){this.invokeEventCallback("detach",{widget:this}),this.notify("detach")}ngOnDestroy(){this.invokeEventCallback("destroy",{widget:this}),this._eventNotifier.destroy()}static{this.\u0275fac=function(e){return new(e||p)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(l.Title),r.\u0275\u0275directiveInject(c.Viewport),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:p,selectors:[["","wmPage",""]],exportAs:["wmPage"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(p)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(p,[{type:t.Directive,args:[{selector:"[wmPage]",providers:[n.provideAsWidgetRef(p)],exportAs:"wmPage"}]}],(()=>[{type:r.Injector},{type:l.Title},{type:c.Viewport},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const u=["wmContent",""],h=["*"],m={widgetType:"wm-content",hostClass:"app-content clearfix"};class g extends n.StylableComponent{static{this.initializeProps=void n.register("wm-content",new Map([["name",n.PROP_STRING],["class",n.PROP_STRING]]))}constructor(e,t){super(e,m,t),n.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||g)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:g,selectors:[["","wmContent",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(g)]),r.\u0275\u0275InheritDefinitionFeature],attrs:u,ngContentSelectors:h,decls:2,vars:0,consts:[[1,"row","app-content-row","clearfix"]],template:function(e,t){1&e&&(r.\u0275\u0275projectionDef(),r.\u0275\u0275elementStart(0,"div",0),r.\u0275\u0275projection(1),r.\u0275\u0275elementEnd())},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(g,[{type:t.Component,args:[{selector:"[wmContent]",providers:[n.provideAsWidgetRef(g)],template:'<div class="row app-content-row clearfix">\n <ng-content></ng-content>\n</div>'}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(g,{className:"ContentComponent",filePath:"content/content.component.ts",lineNumber:17});const f=["wmPageContent",""],v=["*"],b={widgetType:"wm-page-content",hostClass:"app-page-content app-content-column"};class y extends n.StylableComponent{static{this.initializeProps=void n.register("wm-page-content",new Map([["class",n.PROP_STRING],["columnwidth",n.PROP_NUMBER],["content",n.PROP_STRING],["name",n.PROP_STRING],["pulltorefresh",{value:s.isMobileApp(),...n.PROP_BOOLEAN}]]))}constructor(e,t,i){super(e,b,i),this.app=t,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER),this.registerDestroyListener(this.app.subscribe("pullToRefresh:enable",(()=>{this.childPullToRefresh=!0,this.initPullToRefresh()})))}onPropertyChange(e,t,i){"columnwidth"===e?s.switchClass(this.nativeElement,`col-md-${t} col-sm-${t}`,`col-md-${i} col-sm-${i}`):"pulltorefresh"===e&&t?setTimeout((()=>{this.initPullToRefresh()})):super.onPropertyChange(e,t,i)}initPullToRefresh(){const e=this.hasEventCallback("pulltorefresh");!this.pullToRefreshIns&&(this.childPullToRefresh||e)&&this.pulltorefresh&&(this.pullToRefreshIns=new n.PullToRefresh($(this.nativeElement),this.app,(()=>{e?this.invokeEventCallback("pulltorefresh"):this.app.notify("pulltorefresh")})),this.registerDestroyListener((()=>{this.pullToRefreshIns.cancelSubscription&&this.pullToRefreshIns.cancelSubscription()})))}static{this.\u0275fac=function(e){return new(e||y)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.App),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:y,selectors:[["","wmPageContent",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(y)]),r.\u0275\u0275InheritDefinitionFeature],attrs:f,ngContentSelectors:v,decls:1,vars:0,template:function(e,t){1&e&&(r.\u0275\u0275projectionDef(),r.\u0275\u0275projection(0))},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(y,[{type:t.Component,args:[{selector:"[wmPageContent]",providers:[n.provideAsWidgetRef(y)],template:"<ng-content></ng-content>"}]}],(()=>[{type:r.Injector},{type:c.App},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(y,{className:"PageContentComponent",filePath:"page-content/page-content.component.ts",lineNumber:18});const w={widgetType:"wm-spa-page",hostClass:"app-spa-page"};class C extends n.StylableComponent{static{this.initializeProps=void n.register("wm-spa-page",new Map([["cache",{value:!1,...n.PROP_BOOLEAN}],["refreshdataonattach",{value:!0,...n.PROP_BOOLEAN}],["pagetitle",n.PROP_STRING],["hint",n.PROP_STRING]]))}onPropertyChange(e,t,i){"pagetitle"===e?this.titleService.setTitle(t):super.onPropertyChange(e,t,i)}constructor(e,t,i,n){super(e,w,n),this.titleService=t,this.viewport=i,this._eventNotifier=new s.EventNotifier(!1),this.refreshdataonattach=!0}notify(e,...t){this._eventNotifier.notify.apply(this._eventNotifier,arguments)}subscribe(e,t){return this._eventNotifier.subscribe(e,t)}ngAfterViewInit(){setTimeout((()=>{this._eventNotifier.start(),n.updateDeviceView(this.nativeElement,this.getAppInstance().isTabletApplicationType)}),1),this.registerDestroyListener(this.viewport.subscribe("resize",(e=>{this.invokeEventCallback("resize",{$event:e.$event,widget:this,data:e.data})}))),this.registerDestroyListener(this.viewport.subscribe("orientationchange",(e=>{this.invokeEventCallback("orientationchange",{$event:e.$event,widget:this,data:e.data})})))}ngOnAttach(){this.titleService.setTitle(this.pagetitle),this.invokeEventCallback("attach",{widget:this}),this.notify("attach",{refreshData:this.refreshdataonattach})}ngOnDetach(){this.invokeEventCallback("detach",{widget:this}),this.notify("detach")}ngOnDestroy(){this.invokeEventCallback("destroy",{widget:this}),this._eventNotifier.destroy()}static{this.\u0275fac=function(e){return new(e||C)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(l.Title),r.\u0275\u0275directiveInject(c.Viewport),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:C,selectors:[["","wmSpaPage",""]],exportAs:["wmSpaPage"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(C)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(C,[{type:t.Directive,args:[{selector:"[wmSpaPage]",providers:[n.provideAsWidgetRef(C)],exportAs:"wmSpaPage"}]}],(()=>[{type:r.Injector},{type:l.Title},{type:c.Viewport},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const P={widgetType:"wm-layout",hostClass:"app-page container"};class I extends n.StylableComponent{static{this.initializeProps=void n.register("wm-layout",new Map([]))}constructor(e,t){super(e,P,t),this._eventNotifier=new s.EventNotifier(!1)}notify(e,...t){this._eventNotifier.notify.apply(this._eventNotifier,arguments)}ngAfterViewInit(){setTimeout((()=>{n.updateDeviceView(this.nativeElement,this.getAppInstance().isTabletApplicationType)}),1)}static{this.\u0275fac=function(e){return new(e||I)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:I,selectors:[["","wmLayout",""]],exportAs:["wmLayout"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(I)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(I,[{type:t.Directive,args:[{selector:"[wmLayout]",providers:[n.provideAsWidgetRef(I)],exportAs:"wmLayout"}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const A={widgetType:"wm-router-outlet",hostClass:"app-content-column-wrapper"};class E extends n.StylableComponent{static{this.initializeProps=void n.register("wm-router-outlet",new Map([["columnwidth",n.PROP_NUMBER],["name",n.PROP_STRING]]))}constructor(e,t){super(e,A,t)}onPropertyChange(e,t,i){"columnwidth"===e?s.switchClass(this.nativeElement,`col-md-${t} col-sm-${t}`,`col-md-${i} col-sm-${i}`):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||E)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:E,selectors:[["","wmRouterOutlet",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(E)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(E,[{type:t.Directive,args:[{selector:"[wmRouterOutlet]",providers:[n.provideAsWidgetRef(E)]}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const O=[p,I,g,y,C,E];class T{static{this.\u0275fac=function(e){return new(e||T)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:T})}static{this.\u0275inj=r.\u0275\u0275defineInjector({providers:[p,C],imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(T,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...O],exports:[...O],providers:[p,C]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&r.\u0275\u0275setNgModuleScope(T,{declarations:[p,I,g,y,C,E],imports:[i.CommonModule,n.WmComponentsModule],exports:[p,I,g,y,C,E]}),e.ContentComponent=g,e.LayoutDirective=I,e.PageContentComponent=y,e.PageDirective=p,e.PageModule=T,e.RouterOutletDirective=E,e.SpaPageDirective=C})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.page=e.wm.components.page||{},e.wm.components.page.footer={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";var a,s,o=(a=t,s=Object.create(null),a&&Object.keys(a).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}})),s.default=a,Object.freeze(s));const r={widgetType:"wm-footer",hostClass:"app-footer clearfix"};class l extends n.StylableComponent{static{this.initializeProps=void n.register("wm-footer",new Map([["name",n.PROP_STRING],["class",n.PROP_STRING],["content",n.PROP_STRING],["hint",n.PROP_STRING]]))}constructor(e,t){super(e,r,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||l)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:l,selectors:[["","wmFooter",""]],exportAs:["wmFooter"],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(l)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(l,[{type:t.Directive,args:[{selector:"[wmFooter]",providers:[n.provideAsWidgetRef(l)],exportAs:"wmFooter"}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const c=[l];class d{static{this.\u0275fac=function(e){return new(e||d)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:d})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(d,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...c],exports:[...c]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(d,{declarations:[l],imports:[i.CommonModule,n.WmComponentsModule],exports:[l]}),e.FooterDirective=l,e.FooterModule=d})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.page=e.wm.components.page||{},e.wm.components.page.header={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";var a,s,o=(a=t,s=Object.create(null),a&&Object.keys(a).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}})),s.default=a,Object.freeze(s));const r=["wmHeader",""],l={widgetType:"wm-header",hostClass:"app-header clearfix"};class c extends n.StylableComponent{static{this.initializeProps=void n.register("wm-header",new Map([["name",n.PROP_STRING],["class",n.PROP_STRING],["content",n.PROP_STRING],["hint",n.PROP_STRING]]))}constructor(e,t){super(e,l,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||c)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=o.\u0275\u0275defineComponent({type:c,selectors:[["","wmHeader",""]],exportAs:["wmHeader"],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(c)]),o.\u0275\u0275InheritDefinitionFeature],attrs:r,decls:4,vars:0,consts:[["data-role","page-left-panel-icon",1,"app-header-menu"],["href","javascript:void(0)","aria-expanded","false","aria-label","Expand Left navigation","role","button",1,"app-header-action"],[1,"wi","wi-menu"],["partial-container-target","",1,"app-header-container"]],template:function(e,t){1&e&&(o.\u0275\u0275elementStart(0,"div",0)(1,"a",1),o.\u0275\u0275element(2,"i",2),o.\u0275\u0275elementEnd()(),o.\u0275\u0275element(3,"div",3))},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(c,[{type:t.Component,args:[{selector:"[wmHeader]",providers:[n.provideAsWidgetRef(c)],exportAs:"wmHeader",template:'<div class="app-header-menu" data-role="page-left-panel-icon">\n <a class="app-header-action" href="javascript:void(0)" aria-expanded="false" aria-label="Expand Left navigation" role="button">\n <i class="wi wi-menu"></i>\n </a>\n</div>\n<div class="app-header-container" partial-container-target></div>\n'}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassDebugInfo(c,{className:"HeaderComponent",filePath:"header.component.ts",lineNumber:20});const d=[c];class p{static{this.\u0275fac=function(e){return new(e||p)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:p})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(p,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...d],exports:[...d]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(p,{declarations:[c],imports:[i.CommonModule,n.WmComponentsModule],exports:[c]}),e.HeaderComponent=c,e.HeaderModule=p})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@angular/router"),require("@wm/core"),require("@wm/components/page"),require("@swipey")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@angular/router","@wm/core","@wm/components/page","@swipey"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.page=e.wm.components.page||{},e.wm.components.page.leftpanel={}),e.ng.core,e.ng.common,e.wm.components.base,e.ng.router,e.wm.core,e.wm.components.page,e.swipey)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(a),p=l(s),u=l(o);class h extends r.SwipeAnimation{constructor(e){super(),this.leftPanel=e,this.init(this.leftPanel.$ele,this.leftPanel.$page)}bounds(t,i){let n=0;return this.setGesturesEnabled(this.leftPanel.isGesturesEnabled()),this._width||(this._pageContainerWidth=this.leftPanel.$page.width(),this._leftPanelWidth=this.leftPanel.$ele.width(),this._maxX=this._leftPanelWidth/this._pageContainerWidth*100,this._width=this.leftPanel.animation===e.AnimationType.SLIDE_IN?this._pageContainerWidth:this._leftPanelWidth),this._expanded=this.leftPanel.expanded,this._expanded?{center:this._leftPanelWidth,lower:-(this._leftPanelWidth-n)}:(this.leftPanel.app.isTabletApplicationType&&(n=53.32),t&&(t.pageX||t.touches&&t.touches[0].pageX)>n+100?{strict:!0}:{center:0,upper:this._leftPanelWidth-n})}context(){return{w:this._width,pageW:this._pageContainerWidth,leftW:this._leftPanelWidth,maxX:this._maxX,limit:(e,t,i)=>t<e?e:t>i?i:t}}animation(){return this._$animatedElements=this.leftPanel.$ele,this.leftPanel.animation===e.AnimationType.SLIDE_IN?(this._$animatedElements=this._$animatedElements.add(this.leftPanel.$page),this.leftPanel.app.isTabletApplicationType?[{target:this.leftPanel.$ele,css:{transform:"translate3d(${{ limit(-100, -($d * 100 / leftW), 0) + '%' }}, 0, 0)"}},{target:this.leftPanel.$page,css:{transform:"translate3d(${{ (($d) * 100 / pageW) + '%' }}, 0, 0)",width:"${{ (pageW - $d) + 'px' }}","z-index":101}}]:[{target:this.leftPanel.$ele,css:{transform:"translate3d(-100%, 0, 0)",opacity:1,"z-index":101}},{target:this.leftPanel.$page,css:{transform:"translate3d(${{ limit( 0, ((($D + $d) * 100 / w)), maxX ) + '%' }}, 0, 0)",opacity:1,"z-index":101}}]):{transform:"translate3d(${{ limit( -100, ((($D + $d) * 100 / w) - 100), 0 ) + '%'}}, 0, 0)",opacity:1,"z-index":101}}onLower(){this._expanded=!1,this.leftPanel.collapse(),this.resetTransition(),s.$appDigest()}onUpper(){this._expanded=!0,this.leftPanel.expand(),this.resetTransition(),s.$appDigest()}resetTransition(){this._$animatedElements&&setTimeout((()=>{this._$animatedElements.css({transform:"",opacity:"","z-index":"",width:""})}),100)}}const m={widgetType:"wm-left-panel",hostClass:"app-left-panel left-panel-collapsed"};var g;e.AnimationType=void 0,(g=e.AnimationType||(e.AnimationType={})).SLIDE_IN="slide-in",g.SLIDE_OVER="slide-over";class f extends n.StylableComponent{static{this.initializeProps=void n.register("wm-left-panel",new Map([["animation",{value:"slide-in",...n.PROP_STRING}],["class",n.PROP_STRING],["columnwidth",{value:3,...n.PROP_NUMBER}],["content",n.PROP_STRING],["gestures",{value:"on",...n.PROP_STRING}],["name",n.PROP_STRING],["xscolumnwidth",{value:10,...n.PROP_NUMBER}],["hint",n.PROP_STRING]]))}constructor(e,t,i,o,r,l){super(o,m,l),this.app=e,this.page=t,this.layout=i,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER),this.$ele=this.$element,this.$page=this.getAttr("spa")&&i&&i.$element||t&&t.$element,s.addClass(this.$page[0],"left-panel-collapsed-container"),this.columnwidth&&this.setLeftPanelWidth(["md","sm"],this.columnwidth),this.app.isTabletApplicationType&&s.addClass(this.nativeElement,"wm-tablet-app-left-panel");const c=r.events.subscribe((e=>{e instanceof a.NavigationStart&&this.collapse()}));this.registerDestroyListener((()=>c.unsubscribe()))}collapse(){s.addClass(this.nativeElement,"swipee-transition"),s.switchClass(this.nativeElement,"left-panel-collapsed","left-panel-expanded"),this.expanded&&setTimeout((()=>{const e=$(".app-header-action");e.attr("aria-expanded","false"),e.focus()}),50),s.isMobile()&&s.addClass(this.nativeElement,"hidden"),this.expanded=!1,s.switchClass(this.$page[0],"left-panel-collapsed-container","left-panel-expanded-container"),this.animation===e.AnimationType.SLIDE_IN&&(this.setPageWidthAndPosition(["md","sm"],null,this.columnwidth),this.setPageWidthAndPosition(["xs"],null,this.xscolumnwidth)),this._destroyCollapseActionListener&&this._destroyCollapseActionListener(),(this.getAttr("spa")&&this.layout||this.page).notify("wmLeftPanel:collapse")}expand(){s.removeClass(this.nativeElement,"hidden"),s.removeClass(this.nativeElement,"swipee-transition"),s.switchClass(this.nativeElement,"left-panel-expanded","left-panel-collapsed"),this.expanded=!0,this.app.isTabletApplicationType&&this.animation===e.AnimationType.SLIDE_IN||(this._destroyCollapseActionListener=this.listenForCollapseAction()),s.switchClass(this.$page[0],"left-panel-expanded-container","left-panel-collapsed-container"),this.animation===e.AnimationType.SLIDE_IN&&(this.setPageWidthAndPosition(["md","sm"],this.columnwidth),this.setPageWidthAndPosition(["xs"],this.xscolumnwidth)),(this.getAttr("spa")&&this.layout||this.page).notify("wmLeftPanel:expand"),$(".app-header-action").attr("aria-expanded",`${this.expanded}`);const t=n.getKeyboardFocusableElements(this.nativeElement),i=t[0],a=t[t.length-1];setTimeout((()=>{$(i).focus()}),50),$(i).on("keydown",(e=>{e.shiftKey&&"Tab"===e.key&&this.collapse()})),$(a).on("keydown",(e=>{"Tab"===e.key&&this.collapse()})),this.$element.on("keydown",(e=>{"Escape"===e.key&&this.collapse()}))}isGesturesEnabled(){return"on"===this.gestures}isVisible(){return this.expanded}onPropertyChange(t,i,n){switch(t){case"animation":i===e.AnimationType.SLIDE_IN?(s.removeClass(this.$page[0],"slide-over-left-panel-container"),s.addClass(this.$page[0],"slide-in-left-panel-container"),this.setPageWidthAndPosition(["md","sm"],this.columnwidth),this.setPageWidthAndPosition(["xs"],this.xscolumnwidth)):i===e.AnimationType.SLIDE_OVER&&(s.removeClass(this.$page[0],"slide-in-left-panel-container"),s.addClass(this.$page[0],"slide-over-left-panel-container")),this._leftPanelAnimator=new h(this),s.switchClass(this.nativeElement,i,n);break;case"columnwidth":this.setLeftPanelWidth(["md","sm"],i,n),this.animation===e.AnimationType.SLIDE_IN&&this.setPageWidthAndPosition(["md","sm"],i,n);break;case"expanded":s.toggleClass(this.nativeElement,"left-panel-expanded",i),s.toggleClass(this.nativeElement,"left-panel-collapsed",!i);break;case"xscolumnwidth":this.setLeftPanelWidth(["xs"],i,n),this.animation===e.AnimationType.SLIDE_IN&&this.setPageWidthAndPosition(["xs"],i,n);break;default:super.onPropertyChange(t,i,n)}}toggle(){this.app.isTabletApplicationType?setTimeout((()=>{this.expanded?this.collapse():this.expand()}),50):this.$ele.swipeAnimation(this.expanded?"gotoLower":"gotoUpper")}listenForCollapseAction(){const e="click.leftNavToggle";let t=!1;return this.$ele.on(e,(()=>{t=!0})),this.$page.on(e,(()=>{t||this.toggle(),t=!1})),()=>{this.$ele.off(e),this.$page.off(e)}}setLeftPanelWidth(e,t,i){e.forEach((e=>{t&&s.addClass(this.nativeElement,`col-${e}-${t}`),i&&s.removeClass(this.nativeElement,`col-${e}-${i}`)}))}setPageWidthAndPosition(e,t,i){e.forEach((e=>{t&&s.addClass(this.$page[0],`left-panel-container-${e}-${12-t}`),i&&s.removeClass(this.$page[0],`left-panel-container-${e}-${12-i}`)}))}static{this.\u0275fac=function(e){return new(e||f)(c.\u0275\u0275directiveInject(p.App),c.\u0275\u0275directiveInject(u.PageDirective,8),c.\u0275\u0275directiveInject(u.LayoutDirective,8),c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject(d.Router),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=c.\u0275\u0275defineDirective({type:f,selectors:[["","wmLeftPanel",""]],exportAs:["wmLeftPanel"],features:[c.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(f)]),c.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(f,[{type:t.Directive,args:[{selector:"[wmLeftPanel]",providers:[n.provideAsWidgetRef(f)],exportAs:"wmLeftPanel"}]}],(()=>[{type:p.App},{type:u.PageDirective,decorators:[{type:t.Optional}]},{type:u.LayoutDirective,decorators:[{type:t.Optional}]},{type:c.Injector},{type:d.Router},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const v=[f];class b{static{this.\u0275fac=function(e){return new(e||b)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:b})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(b,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...v],exports:[...v]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(b,{declarations:[f],imports:[i.CommonModule,n.WmComponentsModule],exports:[f]}),e.LeftPanelDirective=f,e.LeftPanelModule=b})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.page=e.wm.components.page||{},e.wm.components.page.rightpanel={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.core)}(this,(function(e,t,i,n,a){"use strict";var s,o,r=(s=t,o=Object.create(null),s&&Object.keys(s).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(s,e);Object.defineProperty(o,e,t.get?t:{enumerable:!0,get:function(){return s[e]}})}})),o.default=s,Object.freeze(o));const l={widgetType:"wm-right-panel",hostClass:"app-right-panel"};class c extends n.StylableComponent{static{this.initializeProps=void n.register("wm-right-panel",new Map([["class",n.PROP_STRING],["columnwidth",n.PROP_NUMBER],["content",n.PROP_STRING],["name",n.PROP_STRING],["hint",n.PROP_STRING]]))}constructor(e,t){super(e,l,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}onPropertyChange(e,t,i){"columnwidth"===e?a.switchClass(this.nativeElement,`col-sm-${t}`,i?` col-sm-${i}`:""):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||c)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:c,selectors:[["","wmRightPanel",""]],exportAs:["wmRightPanel"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(c)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(c,[{type:t.Directive,args:[{selector:"[wmRightPanel]",providers:[n.provideAsWidgetRef(c)],exportAs:"wmRightPanel"}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const d=[c];class p{static{this.\u0275fac=function(e){return new(e||p)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:p})}static{this.\u0275inj=r.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(p,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...d],exports:[...d]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&r.\u0275\u0275setNgModuleScope(p,{declarations:[c],imports:[i.CommonModule,n.WmComponentsModule],exports:[c]}),e.RightPanelDirective=c,e.RightPanelModule=p})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.page=e.wm.components.page||{},e.wm.components.page.topnav={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";var a,s,o=(a=t,s=Object.create(null),a&&Object.keys(a).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}})),s.default=a,Object.freeze(s));const r={widgetType:"wm-top-nav",hostClass:"app-top-nav"};class l extends n.StylableComponent{static{this.initializeProps=void n.register("wm-top-nav",new Map([["name",n.PROP_STRING],["content",n.PROP_STRING],["hint",n.PROP_STRING]]))}constructor(e,t){super(e,r,t),n.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||l)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:l,selectors:[["","wmTopNav",""]],exportAs:["wmTopNav"],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(l)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(l,[{type:t.Directive,args:[{selector:"[wmTopNav]",providers:[n.provideAsWidgetRef(l)],exportAs:"wmTopNav"}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const c=[l];class d{static{this.\u0275fac=function(e){return new(e||d)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:d})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(d,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...c],exports:[...c]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(d,{declarations:[l],imports:[i.CommonModule,n.WmComponentsModule],exports:[l]}),e.TopNavDirective=l,e.TopNavModule=d})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.prefab={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.core,e._)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r=o(t),l=o(a);const c=new Map([["animation",n.PROP_STRING],["class",{value:"",...n.PROP_STRING}],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]),d=new Set;class p extends n.StylableComponent{constructor(e,t,i,s,o){const r=`wm-prefab-${s}`,l={widgetType:r,hostClass:"app-prefab"};let c=a.noop;super(e,l,o,new Promise((e=>c=e))),this.propsReady=c,this.prefabName=s,this.widgetType=r,this.name=t.nativeElement.getAttribute("name"),n.styler(this.nativeElement,this),this.registerReadyStateListener((()=>{super.onPropertyChange("name",this.name)}))}onStyleChange(e,t,i){"height"===e&&a.setCSS(this.nativeElement,"overflow","auto")}setProps(e){e&&e.properties&&(d.has(this.widgetType)||n.register(this.widgetType,this.prepareProps(e.properties)),this.propsReady())}handleEvent(){}prepareProps(e={}){const t=new Map(c);return Object.entries(e).forEach((([e,i])=>{let a=n.PROP_TYPE.STRING;"boolean"===i.type?a=n.PROP_TYPE.BOOLEAN:"number"===i.type?a=n.PROP_TYPE.NUMBER:"string"!==i.type&&(a=i.type),t.set(e,{type:a,value:s.startsWith(i.value,"bind:")?void 0:i.value})})),d.add(this.widgetType),t}ngOnDestroy(){this.invokeEventCallback("destroy",{widget:this})}static{this.\u0275fac=function(e){return new(e||p)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(r.ElementRef),r.\u0275\u0275directiveInject(r.ChangeDetectorRef),r.\u0275\u0275injectAttribute("prefabname"),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:p,selectors:[["section","wmPrefab",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(p)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(p,[{type:t.Directive,args:[{selector:"section[wmPrefab]",providers:[n.provideAsWidgetRef(p)]}]}],(()=>[{type:r.Injector},{type:r.ElementRef},{type:r.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Attribute,args:["prefabname"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const u={widgetType:"wm-prefab-container",hostClass:"app-prefab-container full-height"};class h extends n.StylableComponent{static{this.initializeProps=void n.register("wm-prefab-container",new Map([["class",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t,i){super(e,u,i),this.viewport=t,n.styler(this.nativeElement,this),this.registerDestroyListener(this.viewport.subscribe("resize",(e=>this.callback("resize",e)))),this.registerDestroyListener(this.viewport.subscribe("orientationchange",(e=>this.callback("orientationchange",e))))}callback(e,t){t=s.assign({widget:this},t),this.invokeEventCallback(e,t)}ngOnAttach(){this.callback("attach")}ngOnDetach(){this.callback("detach")}ngOnDestroy(){this.callback("destroy"),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||h)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(l.Viewport),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:h,selectors:[["","wmPrefabContainer",""]],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(h)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(h,[{type:t.Directive,args:[{selector:"[wmPrefabContainer]",providers:[n.provideAsWidgetRef(h)]}]}],(()=>[{type:r.Injector},{type:l.Viewport},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const m=[p,h];class g{static{this.\u0275fac=function(e){return new(e||g)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:g})}static{this.\u0275inj=r.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(g,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...m],exports:[...m]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&r.\u0275\u0275setNgModuleScope(g,{declarations:[p,h],imports:[i.CommonModule,n.WmComponentsModule],exports:[p,h]}),e.PrefabContainerDirective=h,e.PrefabDirective=p,e.PrefabModule=g})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-bootstrap/pagination"),require("@wm/components/base"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","ngx-bootstrap/pagination","@wm/components/base","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.data=e.wm.components.data||{},e.wm.components.data.pagination={}),e.ng.core,e.ng.common,e.ng.forms,e.pagination,e.wm.components.base,e.wm.core,e._)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(n),u=l(a);const h=["wmPagination",""],m=e=>({disabled:e}),g=()=>({standalone:!0});function f(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"li",23)(1,"a",24),c.\u0275\u0275text(2),c.\u0275\u0275elementEnd()()),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275advance(2),c.\u0275\u0275textInterpolate2("",e.appLocale.LABEL_TOTAL_RECORDS,": ",e.dataSize,"")}}function v(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"ul")(1,"li",6)(2,"a",7),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.navigatePage("first",t))})),c.\u0275\u0275elementStart(3,"span",8),c.\u0275\u0275element(4,"i",9),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(5,"span",10),c.\u0275\u0275text(6),c.\u0275\u0275elementEnd()()(),c.\u0275\u0275elementStart(7,"li",6)(8,"a",11),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.navigatePage("prev",t))})),c.\u0275\u0275elementStart(9,"span",8),c.\u0275\u0275element(10,"i",12),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(11,"span",10),c.\u0275\u0275text(12),c.\u0275\u0275elementEnd()()(),c.\u0275\u0275elementStart(13,"li",13)(14,"a",14)(15,"input",15),c.\u0275\u0275twoWayListener("ngModelChange",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275twoWayBindingSet(i.dn.currentPage,t)||(i.dn.currentPage=t),c.\u0275\u0275resetView(t)})),c.\u0275\u0275listener("keydown",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.onKeyDown(t))}))("change",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.onModelChange(t))})),c.\u0275\u0275elementEnd()()(),c.\u0275\u0275elementStart(16,"li",16)(17,"a",17),c.\u0275\u0275text(18),c.\u0275\u0275elementEnd()(),c.\u0275\u0275elementStart(19,"li",6)(20,"a",18),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.navigatePage("next",t))})),c.\u0275\u0275elementStart(21,"span",8),c.\u0275\u0275element(22,"i",19),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(23,"span",10),c.\u0275\u0275text(24),c.\u0275\u0275elementEnd()()(),c.\u0275\u0275elementStart(25,"li",6)(26,"a",20),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.navigatePage("last",t))})),c.\u0275\u0275elementStart(27,"span",8),c.\u0275\u0275element(28,"i",21),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(29,"span",10),c.\u0275\u0275text(30),c.\u0275\u0275elementEnd()()(),c.\u0275\u0275template(31,f,3,2,"li",22),c.\u0275\u0275elementEnd()}if(2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275classMapInterpolate1("pagination advanced ",e.navigationClass,""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(26,m,e.isDisableFirst)),c.\u0275\u0275advance(),c.\u0275\u0275property("title",e.appLocale.LABEL_FIRST),c.\u0275\u0275attribute("aria-disabled",e.isDisableFirst),c.\u0275\u0275advance(4),c.\u0275\u0275textInterpolate1("Go to first page ",e.isDisableFirst?" , Disabled":"",""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(28,m,e.isDisablePrevious)),c.\u0275\u0275advance(),c.\u0275\u0275property("title",e.appLocale.LABEL_PREVIOUS),c.\u0275\u0275attribute("aria-disabled",e.isDisablePrevious),c.\u0275\u0275advance(4),c.\u0275\u0275textInterpolate1("Go to previous page ",e.isDisablePrevious?", Disabled":"",""),c.\u0275\u0275advance(3),c.\u0275\u0275twoWayProperty("ngModel",e.dn.currentPage),c.\u0275\u0275property("disabled",e.isDisableCurrent)("ngModelOptions",c.\u0275\u0275pureFunction0(30,g)),c.\u0275\u0275attribute("aria-label","Showing Page "+e.dn.currentPage+" of "+e.pageCount),c.\u0275\u0275advance(2),c.\u0275\u0275property("hidden",e.isDisableCount),c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate1(" / ",e.pageCount,""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(31,m,e.isDisableNext)),c.\u0275\u0275advance(),c.\u0275\u0275property("title",e.appLocale.LABEL_NEXT),c.\u0275\u0275attribute("aria-disabled",e.isDisableNext),c.\u0275\u0275advance(4),c.\u0275\u0275textInterpolate1("Go to next page ",e.isDisableNext?" , Disabled":"",""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(33,m,e.isDisableLast)),c.\u0275\u0275advance(),c.\u0275\u0275property("title",e.appLocale.LABEL_LAST),c.\u0275\u0275attribute("aria-disabled",e.isDisableLast),c.\u0275\u0275advance(4),c.\u0275\u0275textInterpolate1("Go to last page ",e.isDisableLast?" , Disabled":"",""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.showrecordcount)}}function b(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"ul")(1,"li",25)(2,"a",26),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.navigatePage("prev",t))})),c.\u0275\u0275elementStart(3,"span",8),c.\u0275\u0275element(4,"i",12),c.\u0275\u0275elementEnd(),c.\u0275\u0275text(5),c.\u0275\u0275elementStart(6,"span",10),c.\u0275\u0275text(7),c.\u0275\u0275elementEnd()()(),c.\u0275\u0275elementStart(8,"li",27)(9,"a",26),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.navigatePage("next",t))})),c.\u0275\u0275elementStart(10,"span",8),c.\u0275\u0275element(11,"i",19),c.\u0275\u0275elementEnd(),c.\u0275\u0275text(12),c.\u0275\u0275elementStart(13,"span",10),c.\u0275\u0275text(14),c.\u0275\u0275elementEnd()()()()}if(2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275classMapInterpolate1("pager ",e.navigationClass,""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(11,m,e.isDisablePrevious)),c.\u0275\u0275advance(),c.\u0275\u0275attribute("aria-disabled",e.isDisablePrevious),c.\u0275\u0275advance(3),c.\u0275\u0275textInterpolate1(" ",e.appLocale.LABEL_PREVIOUS," "),c.\u0275\u0275advance(2),c.\u0275\u0275textInterpolate(e.isDisablePrevious?" , Disabled":""),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(13,m,e.isDisableNext)),c.\u0275\u0275advance(),c.\u0275\u0275attribute("aria-disabled",e.isDisableNext),c.\u0275\u0275advance(3),c.\u0275\u0275textInterpolate1(" ",e.appLocale.LABEL_NEXT," "),c.\u0275\u0275advance(2),c.\u0275\u0275textInterpolate(e.isDisableNext?" , Disabled":"")}}function y(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"pagination",28),c.\u0275\u0275listener("pageChanged",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.pageChanged(t))})),c.\u0275\u0275elementEnd()}if(2&e){const e=c.\u0275\u0275nextContext(),t=c.\u0275\u0275reference(5),i=c.\u0275\u0275reference(7),n=c.\u0275\u0275reference(9);c.\u0275\u0275property("ngClass",e.navigationClass)("itemsPerPage",e.maxResults)("totalItems",e.dataSize)("ngModelOptions",c.\u0275\u0275pureFunction0(12,g))("ngModel",e.dn.currentPage)("boundaryLinks",e.boundarylinks)("maxSize",e.maxsize)("directionLinks",e.directionlinks)("customPreviousTemplate",i)("customNextTemplate",n)("customPageTemplate",t),c.\u0275\u0275attribute("aria-label","Showing Page "+e.dn.currentPage+" of "+e.pageCount+" pages")}}function w(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"ul",29)(1,"li",30)(2,"a",24),c.\u0275\u0275text(3),c.\u0275\u0275elementEnd()()()),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275advance(3),c.\u0275\u0275textInterpolate2("",e.appLocale.LABEL_TOTAL_RECORDS,": ",e.dataSize,"")}}function C(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"span",10),c.\u0275\u0275text(1),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext().$implicit,t=c.\u0275\u0275nextContext();c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate1(" ",", Showing page "+e.number+" of "+t.pageCount,"")}}function P(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"span",10),c.\u0275\u0275text(1),c.\u0275\u0275elementEnd(),c.\u0275\u0275text(2),c.\u0275\u0275template(3,C,2,1,"span",31)),2&e){const e=t.$implicit;c.\u0275\u0275attribute("data-isacitvepage",e.active),c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate("Page "),c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate1(" ",e.number," "),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.active)}}function I(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"span",10),c.\u0275\u0275text(1),c.\u0275\u0275elementEnd()),2&e){const e=t.disabled;c.\u0275\u0275attribute("data-isdisabled",e),c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate1("Go to Previous page ",e?", Disabled":"","")}}function A(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"span",10),c.\u0275\u0275text(1),c.\u0275\u0275elementEnd()),2&e){const e=t.disabled;c.\u0275\u0275attribute("data-isdisabled",e),c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate1("Go to Next page ",e?", Disabled":"","")}}const E={widgetType:"wm-pagination",hostClass:"app-datanavigator clearfix"},O={Pager:{small:"pager-sm",large:"pager-lg"},Basic:{small:"pagination-sm",large:"pagination-lg"},Classic:{small:"pagination-sm",large:"pagination-lg"}};class T extends s.StylableComponent{static{this.initializeProps=void s.register("wm-pagination",new Map([["boundarylinks",{value:!1,...s.PROP_BOOLEAN}],["class",s.PROP_STRING],["dataset",s.PROP_ANY],["directionlinks",{value:!0,...s.PROP_BOOLEAN}],["forceellipses",{value:!0,...s.PROP_BOOLEAN}],["maxResults",s.PROP_NUMBER],["maxsize",{value:5,...s.PROP_NUMBER}],["name",s.PROP_STRING],["navigation",{value:"Basic",...s.PROP_STRING}],["navigationalign",{value:"left",...s.PROP_STRING}],["navigationsize",s.PROP_STRING],["show",{value:!0,...s.PROP_BOOLEAN}],["showrecordcount",s.PROP_BOOLEAN],["tabindex",{value:0,...s.PROP_NUMBER}]]))}_setAriaForBasicNavigation(){r.forEach(this.nativeElement.getElementsByTagName("a"),(e=>{e.setAttribute("href","javascript:void(0);");const t=e.querySelector("span");"true"===t?.dataset.isacitvepage&&e.setAttribute("aria-current","true"),"true"===t?.dataset.isdisabled?e.setAttribute("aria-disabled","true"):e.removeAttribute("aria-disabled")}))}constructor(e,i,n){super(e,E,n),this.parent=i,this.resultEmitter=new t.EventEmitter,this.maxResultsEmitter=new t.EventEmitter,this.dn={currentPage:1},this.pageCount=0,this.isDisableNext=!0,this.isDisablePrevious=!0,this.isDisableFirst=!0,this.isDisableLast=!0,this._debouncedApplyDataset=o.debounce((()=>this.widget.dataset=this.dataset),s.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME),this._debouncedPageChanged=o.debounce((e=>{const t=e&&e.page;if(t!==this.dn.currentPage){const e=this.parent||this;this.dn.currentPage=t,e.invokeEventCallback("paginationchange",{$event:void 0,$index:this.dn.currentPage}),this.goToPage(),"Basic"===this.navigation&&this._setAriaForBasicNavigation()}}),s.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME),s.styler(this.nativeElement,this)}setResult(e){this.result=e,this.resultEmitter.emit(this.result)}updateNavSize(){const e=O[this.navcontrols];e&&this.navigationsize?this.navigationClass=e[this.navigationsize]:this.navigationClass=""}resetPageNavigation(){this.pageCount=0,this.dn.currentPage=1,this.dataSize=0}calculatePagingValues(){this.pageCount=this.dataSize>this.maxResults?Math.ceil(this.dataSize/this.maxResults):this.dataSize<0?0:1,this.dn.currentPage=this.dn.currentPage||1}setDefaultPagingValues(e,t,i){e||t?(this.maxResults=t||this.maxResults,this.dataSize=o.isDefined(e)?e:this.dataSize,this.dn.currentPage=i||this.dn.currentPage,this.calculatePagingValues()):(this.pageCount=1,this.dn.currentPage=1,this.maxResults=e,this.dataSize=e),this.maxResultsEmitter.emit(this.maxResults)}checkDataSize(e,t,i){-1===e||e===o.AppConstants.INT_MAX_VALUE?(this.prevshowrecordcount=this.showrecordcount,this.isDisableLast=!0,this.isDisableCount=!0,this.showrecordcount=!1,t<i&&(this.isDisableNext=!0)):(this.isDisableCount=!1,this.showrecordcount=this.prevshowrecordcount||this.showrecordcount)}disableNavigation(){const e=1===this.dn.currentPage,t=this.dn.currentPage===this.pageCount;this.pagination?.next?(this.isDisableFirst=this.isDisablePrevious=!this.pagination.prev,this.isDisableNext=this.isDisableLast=!this.pagination.next):(this.isDisableFirst=this.isDisablePrevious=e,this.isDisableNext=this.isDisableLast=t),this.isDisableCurrent=e&&t,this.dataset&&this.dataset.length&&this.isDisableNext&&this.parent.onDemandLoad&&"wm-table"===this.parent.widgetType&&this.parent.callDataGridMethod("hideLoadingIndicator",this.isDisableNext,this.parent.infScroll)}isDataSourceHasPaging(){return this.datasource&&this.datasource.execute(o.DataSource.Operation.IS_PAGEABLE)}setNonPageableData(e){let t,i,n,a;t=r.isArray(e)?e.length:r.isEmpty(e)?0:1,i=this.options&&this.options.maxResults||t,n=this.datasource&&(this.datasource.execute(o.DataSource.Operation.IS_API_AWARE)||"wm-table"===this.parent.widgetType&&this.parent.gridOptions.isNavTypeScrollOrOndemand()&&(r.get(this.parent,"gridOptions.lastActionPerformed")===this.parent.gridOptions.ACTIONS.DATASET_UPDATE||!r.get(this.parent,"gridOptions.isNextPageData")))?1:this.dn.currentPage||1,this.setDefaultPagingValues(t,i,n),this.disableNavigation(),a=(this.dn.currentPage-1)*this.maxResults,this.setResult(r.isArray(e)?e.slice(a,a+this.maxResults):e)}setPagingValues(e){let t,i,n,a,l={};this.__fullData=e,this.binddataset?(a=this.datasource||{},l=a._options||{},e?this.isDataSourceHasPaging()?(this.pagination=this.datasource.execute(o.DataSource.Operation.GET_PAGING_OPTIONS)||{},this.filterFields=l.filterFields||{},this.logicalOp=l.logicalOp||"",this.sortOptions=l.orderBy||(r.isArray(this.pagination.sort)?s.getOrderByExpr(this.pagination.sort):""),t=this.pagination.totalElements,i=this.pagination.size,this.pagination.numberOfElements>0?(o.isDefined(this.pagination.number)&&(this.dn.currentPage=this.pagination.number+1),n=this.dn.currentPage||1):n=1,this.setDefaultPagingValues(t,i,n),this.disableNavigation(),this.checkDataSize(t,this.pagination.numberOfElements,this.pagination.size),this.setResult(e)):r.isString(e)||this.setNonPageableData(e):(this.setResult(e),this.resetPageNavigation()),"Basic"===this.navigation&&this._setAriaForBasicNavigation()):e&&!r.isString(e)&&this.setNonPageableData(e)}isFirstPage(){return 1===this.dn.currentPage||!this.dn.currentPage}isLastPage(){return this.dn.currentPage===this.pageCount}goToLastPage(e,t,i){this.isLastPage()?e&&this.goToPage(t,i):(this.dn.currentPage=this.pageCount,this.goToPage(t,i))}goToFirstPage(e,t,i){this.isFirstPage()?e&&this.goToPage(t,i):(this.dn.currentPage=1,this.goToPage(t,i))}goToPage(e,t){this.firstRow=(this.dn.currentPage-1)*this.maxResults;const i=this.parent.statePersistence.computeMode(this.statehandler);!i||"none"===i.toLowerCase()||"wm-table"!==this.parent.widgetType&&"wm-list"!==this.parent.widgetType||(this.parent._selectedItemsExist=!0,this.isFirstPage()?this.parent.statePersistence.removeWidgetState(this.parent,"pagination"):s.unsupportedStatePersistenceTypes.indexOf(this.parent.navigation)<0?this.parent.statePersistence.setWidgetState(this.parent,{pagination:this.dn.currentPage}):"wm-list"!==this.parent.widgetType&&"wm-table"!==this.parent.widgetType||console.warn("Retain State handling on Widget "+this.parent.name+" is not supported for current pagination type.")),this.getPageData(e,t)}onPageDataReady(e,t,i){this.disableNavigation(),this.invokeSetRecord(e,t),o.triggerFn(i)}getPageData(e,t){let i,n;if(this.isDataSourceHasPaging()){let i=this.dn.currentPage;this.isEditNotInCurrentPage()&&"delete"!==this.parent.gridOptions.lastActionPerformed&&(i=this.parent.actionRowPage),this.datasource.execute(o.DataSource.Operation.LIST_RECORDS,{page:i,filterFields:this.filterFields,orderBy:this.sortOptions,logicalOp:this.logicalOp,matchMode:"anywhereignorecase"}).then((i=>{this.onPageDataReady(e,i&&i.data,t),o.$appDigest()}),(e=>{}))}else n=this.isEditNotInCurrentPage()?(this.parent.actionRowPage-1)*this.maxResults:(this.dn.currentPage-1)*this.maxResults,i=r.isArray(this.__fullData)?this.__fullData.slice(n,n+this.maxResults):this.__fullData,this.setResult(i),this.onPageDataReady(e,i,t)}isEditNotInCurrentPage(){const e=this.dn.currentPage;return"wm-table"===this.parent.widgetType&&e===this.parent.currentPage&&this.parent.actionRowPage&&this.parent.actionRowPage<e}invokeSetRecord(e,t){const i={currentPage:this.dn.currentPage,size:this.maxResults,totalElements:this.dataSize,totalPages:this.pageCount};this.parent?this.parent.invokeEventCallback("setrecord",{$event:e,$data:t,$index:this.dn.currentPage,pageInfo:i,data:t}):this.invokeEventCallback("setrecord",{$event:e,$data:t,$index:this.dn.currentPage,pageInfo:i,data:t})}validateCurrentPage(e,t){return!e||!(isNaN(this.dn.currentPage)||this.dn.currentPage<=0||this.pageCount&&(this.dn.currentPage>this.pageCount||r.isNull(this.dn.currentPage)))||(this.dn.currentPage<=0?this.dn.currentPage=1:this.dn.currentPage>this.pageCount&&(this.dn.currentPage=this.pageCount),!1)}onModelChange(e){this.validateCurrentPage(e)&&this.goToPage(e)}onKeyDown(e){const t=$(e.target).closest("a");return"KeyE"===e.code?(t.addClass("ng-invalid"),!1):(t.removeClass("ng-invalid"),!0)}pageChanged(e){this._debouncedPageChanged(e)}navigatePage(e,t,i,n){switch(o.isDefined(this.parent.isDataLoading)&&!this.isDisableNext&&(this.parent.isDataLoading=!0,this.parent.infScroll&&(this.parent.variableInflight=!0,this.parent.callDataGridMethod("showLoadingIndicator",this.parent.loadingdatamsg,!0))),"wm-table"===this.parent.widgetType&&this.parent.gridOptions.isNavTypeScrollOrOndemand()&&(this.parent.gridOptions.setLastActionPerformed(this.parent.gridOptions.ACTIONS.DEFAULT),this.parent.gridOptions.setIsDatasetUpdated(!1)),this.invokeEventCallback("paginationchange",{$event:void 0,$index:this.dn.currentPage}),this.dn.currentPage=+this.dn.currentPage,e){case"first":return void this.goToFirstPage(i,t,n);case"prev":if(!(this.pagination?.next||!this.isFirstPage()&&this.validateCurrentPage(t,n)))return;this.pagination?.next&&(this.datasource.pagination.isNext=!1,this.datasource.pagination.isPrev=!0),this.dn.currentPage-=1;break;case"next":if(!(this.pagination?.next||!this.isLastPage()&&this.validateCurrentPage(t,n)))return;this.pagination?.next&&(this.datasource.pagination.isNext=!0,this.datasource.pagination.isPrev=!1),this.dn.currentPage+=1;break;case"last":return void this.goToLastPage(i,t,n)}this.goToPage(t,n)}setBindDataSet(e,t,i,n,a,s,r){const l=e.split(".");let c;if(this.statehandler=r,"Variables"!==l[0]&&"Widgets"!==l[0]||(c=`${l[0]}.${l[1]}.pagination`),!a&&n&&!s)return this.dataset=n,void this._debouncedApplyDataset();this.binddataset=e,setTimeout((()=>{this.registerDestroyListener(o.$watch(e,t,s?i:{},(e=>{e?(this.dataset=e,this._debouncedApplyDataset()):this.widget.dataset=e}))),c&&this.registerDestroyListener(o.$watch(c,t,{},(()=>this._debouncedApplyDataset())))})),s||(this.datasource=i)}setDataSource(e){this.datasource=e}onPropertyChange(e,t,i){if("dataset"===e){let e;e=this.parent&&this.parent.onDataNavigatorDataSetChange?this.parent.onDataNavigatorDataSetChange(t):t,"wm-table"===this.parent.widgetType&&(this.parent._triggeredByUser=!1),this.isEditNotInCurrentPage()?this.setResult(e):this.setPagingValues(e)}else"navigation"===e?("Advanced"===t&&(this.navigation="Classic"),this.updateNavSize(),this.navcontrols=t):"navigationsize"===e?this.updateNavSize():"navigationalign"===e?o.switchClass(this.nativeElement,`text-${t}`,`text-${i}`):"maxResults"===e?this.setPagingValues(this.dataset):super.onPropertyChange(e,t,i)}ngAfterViewInit(){this.nativeElement.onclick=e=>{e.stopPropagation()}}static{this.\u0275fac=function(e){return new(e||T)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject(s.WidgetRef,4),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:T,selectors:[["","wmPagination",""]],outputs:{resultEmitter:"resultEmitter",maxResultsEmitter:"maxResultsEmitter"},features:[c.\u0275\u0275ProvidersFeature([s.provideAsWidgetRef(T)]),c.\u0275\u0275InheritDefinitionFeature],attrs:h,decls:10,vars:4,consts:[["pageTemplate",""],["prevTemplate",""],["nextTemplate",""],[3,"class",4,"ngIf"],["class","pagination basic","role","navigation","firstText","Firtst","lastText","Last",3,"ngClass","itemsPerPage","totalItems","ngModelOptions","ngModel","boundaryLinks","maxSize","directionLinks","customPreviousTemplate","customNextTemplate","customPageTemplate","pageChanged",4,"ngIf"],["class","pagination",4,"ngIf"],[3,"ngClass"],["name","first","href","javascript:void(0);",3,"click","title"],["aria-hidden","true"],[1,"wi","wi-first-page"],[1,"sr-only"],["name","prev","href","javascript:void(0);",3,"click","title"],[1,"wi","wi-chevron-left"],[1,"pagecount","disabled"],["href","javascript:void(0);"],["type","number",1,"form-control",3,"ngModelChange","keydown","change","ngModel","disabled","ngModelOptions"],[1,"disabled"],[3,"hidden"],["name","next","href","javascript:void(0);",3,"click","title"],[1,"wi","wi-chevron-right"],["name","last","href","javascript:void(0);",3,"click","title"],[1,"wi","wi-last-page"],["class","totalcount disabled",4,"ngIf"],[1,"totalcount","disabled"],["href","javascript:void(0);","tabindex","-1","aria-disabled","true"],[1,"previous",3,"ngClass"],["href","javascript:void(0);",3,"click"],[1,"next",3,"ngClass"],["role","navigation","firstText","Firtst","lastText","Last",1,"pagination","basic",3,"pageChanged","ngClass","itemsPerPage","totalItems","ngModelOptions","ngModel","boundaryLinks","maxSize","directionLinks","customPreviousTemplate","customNextTemplate","customPageTemplate"],[1,"pagination"],[1,"totalcount","disabled","basiccount"],["class","sr-only",4,"ngIf"]],template:function(e,t){1&e&&c.\u0275\u0275template(0,v,32,35,"ul",3)(1,b,15,15,"ul",3)(2,y,1,13,"pagination",4)(3,w,4,2,"ul",5)(4,P,4,4,"ng-template",null,0,c.\u0275\u0275templateRefExtractor)(6,I,2,2,"ng-template",null,1,c.\u0275\u0275templateRefExtractor)(8,A,2,2,"ng-template",null,2,c.\u0275\u0275templateRefExtractor),2&e&&(c.\u0275\u0275property("ngIf","Classic"===t.navcontrols),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf","Pager"===t.navcontrols),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf","Basic"===t.navcontrols),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf","Basic"===t.navcontrols&&t.showrecordcount))},dependencies:[d.NgClass,d.NgIf,p.DefaultValueAccessor,p.NumberValueAccessor,p.NgControlStatus,p.NgModel,u.PaginationComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(T,[{type:t.Component,args:[{selector:"[wmPagination]",providers:[s.provideAsWidgetRef(T)],template:'\n<ul class="pagination advanced {{navigationClass}}" *ngIf="navcontrols === \'Classic\'">\n <li [ngClass]="{\'disabled\':isDisableFirst}">\n <a [title]="appLocale.LABEL_FIRST" name="first" href="javascript:void(0);"\n [attr.aria-disabled]="isDisableFirst"\n (click)="navigatePage(\'first\', $event)">\n <span aria-hidden="true"><i class="wi wi-first-page"></i></span>\n <span class="sr-only">Go to first page {{ isDisableFirst ? \' , Disabled\' : \'\'}}</span>\n </a>\n </li>\n <li [ngClass]="{\'disabled\':isDisablePrevious}">\n <a [title]="appLocale.LABEL_PREVIOUS" name="prev" href="javascript:void(0);"\n [attr.aria-disabled]="isDisablePrevious"\n (click)="navigatePage(\'prev\', $event)">\n <span aria-hidden="true"><i class="wi wi-chevron-left"></i></span>\n <span class="sr-only">Go to previous page {{ isDisablePrevious ? \', Disabled\' : \'\'}}</span>\n </a>\n </li>\n <li class="pagecount disabled">\n <a href="javascript:void(0);">\n <input [(ngModel)]="dn.currentPage" [attr.aria-label]="\'Showing Page \' + dn.currentPage + \' of \' + pageCount" [disabled]="isDisableCurrent"\n [ngModelOptions]="{standalone: true}"\n type="number"\n (keydown)="onKeyDown($event)" (change)="onModelChange($event)" class="form-control"/>\n </a>\n </li>\n <li class="disabled">\n <a [hidden]="isDisableCount"> / {{pageCount}}</a>\n </li>\n <li [ngClass]="{\'disabled\':isDisableNext}">\n <a [title]="appLocale.LABEL_NEXT" name="next" href="javascript:void(0);"\n [attr.aria-disabled]="isDisableNext"\n (click)="navigatePage(\'next\', $event)">\n <span aria-hidden="true"><i class="wi wi-chevron-right"></i></span>\n <span class="sr-only">Go to next page {{ isDisableNext ? \' , Disabled\' : \'\'}}</span>\n </a>\n </li>\n <li [ngClass]="{\'disabled\':isDisableLast}">\n <a [title]="appLocale.LABEL_LAST" name="last" href="javascript:void(0);"\n [attr.aria-disabled]="isDisableLast"\n (click)="navigatePage(\'last\', $event)">\n <span aria-hidden="true"><i class="wi wi-last-page"></i></span>\n <span class="sr-only">Go to last page {{ isDisableLast ? \' , Disabled\' : \'\'}}</span>\n </a>\n </li>\n <li *ngIf="showrecordcount" class="totalcount disabled">\n <a href="javascript:void(0);" tabindex="-1" aria-disabled="true">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n</ul>\n<ul class="pager {{navigationClass}}" *ngIf="navcontrols === \'Pager\'">\n <li class="previous" [ngClass]="{\'disabled\':isDisablePrevious}">\n <a href="javascript:void(0);" (click)="navigatePage(\'prev\', $event)"\n [attr.aria-disabled]="isDisablePrevious">\n <span aria-hidden="true"><i class="wi wi-chevron-left"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class="sr-only">{{ isDisablePrevious ? \' , Disabled\' : \'\'}}</span>\n </a>\n </li>\n <li class="next" [ngClass]="{\'disabled\':isDisableNext}">\n <a href="javascript:void(0);" (click)="navigatePage(\'next\', $event)"\n [attr.aria-disabled]="isDisableNext">\n <span aria-hidden="true"><i class="wi wi-chevron-right"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class="sr-only">{{ isDisableNext ? \' , Disabled\' : \'\'}}</span>\n </a>\n </li>\n</ul>\n\n<pagination class="pagination basic" [ngClass]="navigationClass" *ngIf="navcontrols === \'Basic\'" role="navigation"\n [itemsPerPage]="maxResults" [totalItems]="dataSize"\n (pageChanged)="pageChanged($event)" [ngModelOptions]="{standalone:true}" [ngModel]="dn.currentPage"\n [attr.aria-label]="\'Showing Page \' + dn.currentPage + \' of \' + pageCount + \' pages\'"\n [boundaryLinks]="boundarylinks" [maxSize]="maxsize"\n [directionLinks]="directionlinks"\n firstText="Firtst" lastText="Last"\n [customPreviousTemplate]="prevTemplate"\n [customNextTemplate]="nextTemplate"\n [customPageTemplate]="pageTemplate"></pagination>\n\n<ul *ngIf="navcontrols === \'Basic\' && showrecordcount" class="pagination">\n <li class="totalcount disabled basiccount">\n <a href="javascript:void(0);" tabindex="-1" aria-disabled="true">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n</ul>\n\n<ng-template #pageTemplate let-page>\n <span class="sr-only" [attr.data-isacitvepage]="page.active">{{\'Page \'}}</span>\n {{page.number}}\n <span class="sr-only" *ngIf="page.active"> {{\', Showing page \' + page.number + \' of \' + pageCount}}</span>\n</ng-template>\n<ng-template #prevTemplate let-disabled="disabled">\n <span class="sr-only" [attr.data-isdisabled]="disabled">Go to Previous page {{disabled ? \', Disabled\' : \'\'}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled="disabled">\n <span class="sr-only" [attr.data-isdisabled]="disabled">Go to Next page {{disabled ? \', Disabled\' : \'\'}}</span>\n</ng-template>\n'}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.SkipSelf},{type:t.Inject,args:[s.WidgetRef]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{resultEmitter:[{type:t.Output}],maxResultsEmitter:[{type:t.Output}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(T,{className:"PaginationComponent",filePath:"pagination.component.ts",lineNumber:41});const x=[T];class D{static{this.\u0275fac=function(e){return new(e||D)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:D})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[i.CommonModule,n.FormsModule,a.PaginationModule,s.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(D,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.FormsModule,a.PaginationModule,s.WmComponentsModule],declarations:[...x],exports:[...x]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(D,{declarations:[T],imports:[i.CommonModule,n.FormsModule,a.PaginationModule,s.WmComponentsModule],exports:[T]}),e.PaginationComponent=T,e.PaginationModule=D})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("ngx-bootstrap/dropdown"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/components/navigation/menu"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","ngx-bootstrap/dropdown","@wm/components/base","@wm/components/basic","@wm/components/navigation/menu","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.data=e.wm.components.data||{},e.wm.components.data.card={}),e.ng.core,e.ng.common,e.dropdown,e.wm.components.base,e.wm.components.basic,e.wm.components.navigation.menu,e.wm.core)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(n),u=l(a),h=l(s),m=l(o);const g=["cardContainerWrapper"],f=["wmCard",""],v=["*","*","*"],b=e=>({"max-height":e});function y(e,t){if(1&e&&c.\u0275\u0275element(0,"i",12),2&e){const e=c.\u0275\u0275nextContext(3);c.\u0275\u0275property("ngClass",e.iconclass)}}function w(e,t){if(1&e&&c.\u0275\u0275element(0,"img",13),2&e){const e=c.\u0275\u0275nextContext(3);c.\u0275\u0275property("src",e.iconurl,c.\u0275\u0275sanitizeUrl)}}function C(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"div",9),c.\u0275\u0275template(1,y,1,1,"i",10)(2,w,1,1,"img",11),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.iconclass&&!e.iconurl),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.iconurl)}}function P(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"div",14),c.\u0275\u0275element(1,"div",15),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275advance(),c.\u0275\u0275property("autoClose","disabled"!==e.autoclose)}}function I(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"div",3),c.\u0275\u0275template(1,C,3,2,"div",4),c.\u0275\u0275elementStart(2,"div",5),c.\u0275\u0275element(3,"h4",6)(4,"h5",7),c.\u0275\u0275elementEnd(),c.\u0275\u0275template(5,P,2,1,"div",8),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.iconclass||e.iconurl),c.\u0275\u0275advance(2),c.\u0275\u0275property("textContent",e.title),c.\u0275\u0275advance(),c.\u0275\u0275property("textContent",e.subheading),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.actions)}}function A(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"div",16),c.\u0275\u0275element(1,"img",17),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275property("ngStyle",c.\u0275\u0275pureFunction1(1,b,e.imageheight))}}const E={widgetType:"wm-card",hostClass:"app-card card app-panel"};class O extends o.MenuAdapterComponent{static{this.initializeProps=void a.register("wm-card",new Map([["actions",a.PROP_STRING],["animation",a.PROP_STRING],["class",a.PROP_STRING],["iconclass",a.PROP_STRING],["iconurl",a.PROP_STRING],["imageheight",{value:"200px",...a.PROP_STRING}],["itemaction",a.PROP_STRING],["itemchildren",a.PROP_STRING],["itemicon",a.PROP_STRING],["itemlabel",a.PROP_STRING],["itemlink",a.PROP_STRING],["name",a.PROP_STRING],["picturesource",a.PROP_STRING],["picturetitle",{value:"",...a.PROP_STRING}],["show",{value:!0,...a.PROP_BOOLEAN}],["subheading",a.PROP_STRING],["title",a.PROP_STRING],["userrole",a.PROP_STRING]]))}constructor(e,t,i){super(e,E,i),this.render2=t,a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.SHELL)}ngAfterViewInit(){super.ngAfterViewInit(),a.styler(this.cardContainerElRef.nativeElement,this,a.APPLY_STYLES_TYPE.INNER_SHELL)}ngOnInit(){super.ngOnInit(),r.removeAttr(this.nativeElement.parentElement,"tabindex"),r.setAttr(this.nativeElement,"tabindex",0),this.render2.listen(this.nativeElement,"keydown.Enter",(e=>{e.preventDefault(),this.nativeElement.click()}))}onPropertyChange(e,t,i){"title"===e||"subheading"===e||"iconclass"===e||"iconurl"===e||"actions"===e?this.showHeader=!!(this.title||this.subheading||this.iconclass||this.iconurl||this.actions):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||O)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject(c.Renderer2),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:O,selectors:[["","wmCard",""]],viewQuery:function(e,t){if(1&e&&c.\u0275\u0275viewQuery(g,7),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.cardContainerElRef=e.first)}},features:[c.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(O)]),c.\u0275\u0275InheritDefinitionFeature],attrs:f,ngContentSelectors:v,decls:9,vars:2,consts:[["cardContainerWrapper",""],["class","app-card-header panel-heading",4,"ngIf"],["class","app-card-image",3,"ngStyle",4,"ngIf"],[1,"app-card-header","panel-heading"],["class","app-card-avatar",4,"ngIf"],[1,"app-card-header-text"],[1,"card-heading",3,"textContent"],[1,"card-subheading","text-muted",3,"textContent"],["class","panel-actions",4,"ngIf"],[1,"app-card-avatar"],["class","app-icon",3,"ngClass",4,"ngIf"],["class","img-circle",3,"src",4,"ngIf"],[1,"app-icon",3,"ngClass"],[1,"img-circle",3,"src"],[1,"panel-actions"],["wmMenu","","dropdown","","type","anchor","iconclass","wm-sl-l sl-more-menu-vertical","menuposition","down,left","hint","Actions","caption","","dataset.bind","actions",1,"panel-action",3,"autoClose"],[1,"app-card-image",3,"ngStyle"],["wmPicture","","picturesource.bind","picturesource","hint.bind","picturetitle",1,"card-image"]],template:function(e,t){1&e&&(c.\u0275\u0275projectionDef(v),c.\u0275\u0275template(0,I,6,4,"div",1)(1,A,2,3,"div",2),c.\u0275\u0275elementStart(2,"div",null,0),c.\u0275\u0275projection(4,0,["ngProjectAs","[wmCardContent]",5,["","wmCardContent",""]]),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(5,"div"),c.\u0275\u0275projection(6,1,["ngProjectAs","[wmCardActions]",5,["","wmCardActions",""]]),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(7,"div"),c.\u0275\u0275projection(8,2,["ngProjectAs","[wmCardFooter]",5,["","wmCardFooter",""]]),c.\u0275\u0275elementEnd()),2&e&&(c.\u0275\u0275property("ngIf",t.showHeader),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",t.picturesource))},dependencies:[h.PictureDirective,p.BsDropdownDirective,d.NgClass,d.NgIf,d.NgStyle,m.MenuComponent,u.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(O,[{type:t.Component,args:[{selector:"[wmCard]",providers:[a.provideAsWidgetRef(O)],template:'<div class="app-card-header panel-heading" *ngIf="showHeader">\n <div class="app-card-avatar" *ngIf="iconclass || iconurl">\n <i class="app-icon" [ngClass]="iconclass" *ngIf="iconclass && !iconurl"></i>\n <img class="img-circle" [src]="iconurl" *ngIf="iconurl" />\n </div>\n <div class="app-card-header-text">\n <h4 class="card-heading" [textContent]="title"></h4>\n <h5 class="card-subheading text-muted" [textContent]="subheading"></h5>\n </div>\n <div class="panel-actions" *ngIf="actions">\n \x3c!-- TODO(punith) need to bind autoclose--\x3e\n <div wmMenu dropdown\n [autoClose]="autoclose !== \'disabled\'"\n class="panel-action"\n type="anchor"\n iconclass="wm-sl-l sl-more-menu-vertical"\n menuposition="down,left"\n hint="Actions"\n caption=""\n dataset.bind="actions">\n </div>\n </div>\n</div>\n<div class="app-card-image" *ngIf="picturesource" [ngStyle]="{\'max-height\':imageheight}">\n <img wmPicture class="card-image" picturesource.bind="picturesource" hint.bind="picturetitle" />\n</div>\n<div #cardContainerWrapper>\n <ng-content ngProjectAs="[wmCardContent]"></ng-content>\n</div>\n<div>\n <ng-content ngProjectAs="[wmCardActions]"></ng-content>\n</div>\n<div>\n <ng-content ngProjectAs="[wmCardFooter]"></ng-content>\n</div>\n'}]}],(()=>[{type:c.Injector},{type:c.Renderer2},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{cardContainerElRef:[{type:t.ViewChild,args:["cardContainerWrapper",{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(O,{className:"CardComponent",filePath:"card.component.ts",lineNumber:33});const T={widgetType:"wm-card-actions",hostClass:"app-card-actions"};class x extends a.StylableComponent{static{this.initializeProps=void a.register("wm-card-actions",new Map([["class",a.PROP_STRING],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}]]))}constructor(e,t){super(e,T,t),a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||x)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=c.\u0275\u0275defineDirective({type:x,selectors:[["","wmCardActions",""]],features:[c.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(x,[{type:t.Directive,args:[{selector:"[wmCardActions]"}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const D=["cardContentContainer"],R=["wmCardContent",""],S=["*"],_={widgetType:"wm-card-content",hostClass:"app-card-content card-body card-block"};class M extends a.StylableComponent{static{this.initializeProps=void a.register("wm-card-content",new Map([["class",a.PROP_STRING],["content",a.PROP_STRING],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}]]))}constructor(e,t){super(e,_,t)}ngAfterViewInit(){super.ngAfterViewInit(),a.styler(this.cardContentContainerElRef.nativeElement,this,a.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||M)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:M,selectors:[["div","wmCardContent",""]],viewQuery:function(e,t){if(1&e&&c.\u0275\u0275viewQuery(D,5),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.cardContentContainerElRef=e.first)}},features:[c.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(M)]),c.\u0275\u0275InheritDefinitionFeature],attrs:R,ngContentSelectors:S,decls:3,vars:0,consts:[["cardContentContainer",""],["partial-container-target",""]],template:function(e,t){1&e&&(c.\u0275\u0275projectionDef(),c.\u0275\u0275elementStart(0,"div",1,0),c.\u0275\u0275projection(2),c.\u0275\u0275elementEnd())},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(M,[{type:t.Component,args:[{selector:"div[wmCardContent]",providers:[a.provideAsWidgetRef(M)],template:"<div partial-container-target #cardContentContainer>\n <ng-content></ng-content>\n</div>"}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{cardContentContainerElRef:[{type:t.ViewChild,args:["cardContentContainer"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(M,{className:"CardContentComponent",filePath:"card-content/card-content.component.ts",lineNumber:19});const N={widgetType:"wm-card-footer",hostClass:"app-card-footer text-muted card-footer"};class k extends a.StylableComponent{static{this.initializeProps=void a.register("wm-card-footer",new Map([["class",a.PROP_STRING],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}]]))}constructor(e,t){super(e,N,t),a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||k)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=c.\u0275\u0275defineDirective({type:k,selectors:[["","wmCardFooter",""]],features:[c.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(k,[{type:t.Directive,args:[{selector:"[wmCardFooter]"}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const L=[O,x,M,k];class F{static{this.\u0275fac=function(e){return new(e||F)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:F})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[s.BasicModule,n.BsDropdownModule,i.CommonModule,o.MenuModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(F,[{type:t.NgModule,args:[{imports:[s.BasicModule,n.BsDropdownModule,i.CommonModule,o.MenuModule,a.WmComponentsModule],declarations:[...L],exports:[...L]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(F,{declarations:[O,x,M,k],imports:[s.BasicModule,n.BsDropdownModule,i.CommonModule,o.MenuModule,a.WmComponentsModule],exports:[O,x,M,k]}),e.CardActionsDirective=x,e.CardComponent=O,e.CardContentComponent=M,e.CardFooterDirective=k,e.CardModule=F})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/data/pagination"),require("@wm/core"),require("@wm/components/input"),require("rxjs"),require("@swipey"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/data/pagination","@wm/core","@wm/components/input","rxjs","@swipey","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.data=e.wm.components.data||{},e.wm.components.data.list={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.data.pagination,e.wm.core,e.wm.components.input,e.rxjs,e.swipey,e._)}(this,(function(e,t,i,n,a,s,o,r,l,c){"use strict";function d(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var p=d(t),u=d(i),h=d(n),m=d(a),g=d(s);class f{onFocus(){this.listComponent.lastSelectedItem=this}get $index(){return this.context.index}get $even(){return this.context.even}get $odd(){return this.context.odd}get $first(){return this.context.first}get $last(){return this.context.last}get currentItemWidgets(){const e=Array.from(this.nativeElement.querySelectorAll("[widget-id]"));return Object.assign(this._currentItemWidgets,e.reduce(((e,t)=>(e[t.widget.name]=t.widget,e)),{}))}set wmListItem(e){this.item=e}constructor(e,i,a,s){this.inj=e,this.app=a,this._viewParent=s,this.destroy=new r.Subject,this.destroy$=this.destroy.asObservable(),this.itemClass="",this._currentItemWidgets={},this.trackId=n.widgetIdGenerator.nextUid(),this.isActive=!1,this.disableItem=!1,this.viewContainerRef=e.get(t.ViewContainerRef),this.nativeElement=i.nativeElement,this.listComponent=s,this.context=this.inj._lView[8],this.itemClassWatcher(this.listComponent),this.disableItemWatcher(this.listComponent),$(this.nativeElement).data("listItemContext",this)}registerWatch(e,t){this.destroy$.subscribe(s.$watch(e,this.listComponent.viewParent,this,t))}itemClassWatcher(e){e.binditemclass?this.registerWatch(e.binditemclass,(e=>this.itemClass=e||"")):this.itemClass=e.itemclass}disableItemWatcher(e){e.binddisableitem?this.registerWatch(e.binddisableitem,(e=>this.disableItem=e||!1)):this.disableItem=e.disableitem||!1}setUpCUDHandlers(){const e=this.nativeElement.querySelector(".edit-list-item"),t=this.nativeElement.querySelector(".delete-list-item");e&&e.addEventListener("click",(e=>{this.listComponent.update()})),t&&t.addEventListener("click",(e=>{this.listComponent.delete()}))}ngOnInit(){this.listComponent.mouseEnterCB&&this.nativeElement.addEventListener("mouseenter",(e=>{this.listComponent.invokeEventCallback("mouseenter",{widget:this,$event:e})})),this.listComponent.mouseLeaveCB&&this.nativeElement.addEventListener("mouseleave",(e=>{this.listComponent.invokeEventCallback("mouseleave",{widget:this,$event:e})})),$(this.nativeElement).attr("listitemindex",this.$index)}ngAfterViewInit(){this.setUpCUDHandlers()}static{this.\u0275fac=function(e){return new(e||f)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(g.App),p.\u0275\u0275directiveInject(U,8))}}static{this.\u0275dir=p.\u0275\u0275defineDirective({type:f,selectors:[["","wmListItem",""]],hostVars:4,hostBindings:function(e,t){1&e&&p.\u0275\u0275listener("focus",(function(){return t.onFocus()})),2&e&&p.\u0275\u0275classProp("active",t.isActive)("disable-item",t.disableItem)},inputs:{wmListItem:"wmListItem"},exportAs:["listItemRef"]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(f,[{type:t.Directive,args:[{selector:"[wmListItem]",exportAs:"listItemRef"}]}],(()=>[{type:p.Injector},{type:p.ElementRef},{type:g.App},{type:U,decorators:[{type:t.Optional}]}]),{isActive:[{type:t.HostBinding,args:["class.active"]}],disableItem:[{type:t.HostBinding,args:["class.disable-item"]}],onFocus:[{type:t.HostListener,args:["focus"]}],wmListItem:[{type:t.Input}]});class v extends l.SwipeAnimation{constructor(e){super(),this.list=e,this.$el=$(this.list.getNativeElement()).find("ul.app-livelist-container").first(),this.leftChildrenCount=this.$el.find(">.app-list-item-left-action-panel > button:visible").length,this.rightChildrenCount=this.$el.find(">.app-list-item-right-action-panel > button:visible").length,(this.leftChildrenCount||this.rightChildrenCount)&&(this.init(this.$el),this.$btnSubscription=this.list.btnComponents.changes.subscribe((e=>this.actionItems=e)))}createActionPanel(e,t){return t.css({width:e.outerWidth()+"px",height:e.outerHeight()+"px",marginBottom:-1*e.outerHeight()+"px",float:"left",padding:0}),t.insertBefore(e)}computeTotalChildrenWidth(e){return c.reduce(e.children(),((e,t)=>e+$(t).outerWidth()),0)}computeTransitionProportions(e){const t=this.computeTotalChildrenWidth(e),i="right"===this.position;let n=0;return c.map(e.children(),(e=>{const a=(t-n)/t;return n+=$(e).outerWidth(),i?a:n/t}))}resetElement(e){e&&e.css({transform:"none",transition:"none"})}resetState(){this.resetElement(this.li),this.resetElement(this.actionPanel),this.actionPanel&&(this.actionPanel=null)}getChildActionElement(e){if(e.children().length)return"left"===this.position?e.children().first():e.children().last()}initActionPanel(e){this.actionPanel=this.createActionPanel(this.li,e),this.actionPanel.css({backgroundColor:this.getChildActionElement(this.actionPanel).css("background-color")}),this.limit=this.computeTotalChildrenWidth(this.actionPanel),this.transitionProportions=this.computeTransitionProportions(this.actionPanel)}bounds(e,t){const i=$(e.target).closest("li");let n={strictUpper:!0,strictLower:!0,lower:0,center:0,upper:0};if(!i.hasClass("app-list-item"))return n;if(this.li&&this.li[0]===i[0])"left"===this.position?n={strictUpper:!1,lower:-this.limit,center:this.limit}:"right"===this.position&&(n={center:-this.limit,upper:this.limit,strictLower:!1});else{let e=t>0?".app-list-item-left-action-panel":".app-list-item-right-action-panel",a=this.$el.find(">"+e);if(!a.length&&this.list.groupby&&(e="li > ul.list-group >"+e,a=this.$el.find(">"+e)),!a.length||!a.find("button:visible").length)return n;this.resetState(),this.li=i,this.position=a.attr("position"),this.initActionPanel(a),n=t>0?{strictUpper:!1,lower:0,center:0,upper:this.limit}:{strictLower:!1,lower:-this.limit,center:0,upper:0}}return n}context(){return{computeActionTransition:(e,t)=>{const i=t>0?1:-1;return i*t>this.limit?t-i*this.limit+this.transitionProportions[e]*i*this.limit:this.transitionProportions[e]*t}}}animation(){return[{target:()=>this.li,css:{transform:"translate3d(${{$D + $d}}px, 0, 0)"}},{target:()=>this.actionPanel&&this.actionPanel.children(),css:{transform:"translate3d(${{computeActionTransition($i, $D + $d)}}px, 0, 0)"}}]}invokeFullSwipeEvt(e){let t,i,n;"left"===this.position?(i=this.actionItems.filter((e=>"left"===e.getAttr("swipe-position")&&e.$element.is(":visible"))),n=0):(i=this.actionItems.filter((e=>"right"===e.getAttr("swipe-position")&&e.$element.is(":visible"))),n=i.length-1),t=i[n],t&&t.hasEventCallback("tap")&&t.invokeEventCallback("tap",{$event:e}),this.resetState(),this.li=null}onAnimation(e,t){if(this.list.triggerListItemSelection(this.li,e),this.actionPanel&&"true"===this.actionPanel.attr("enablefullswipe")){const i=t>0?1:-1,n=this.getChildActionElement(this.actionPanel);if(n){const a="right"===this.position?this.rightChildrenCount-1:0;this.transitionProportions[a]*i*t*100/(this.li.outerWidth()-this.limit+n.width())>50&&this.invokeFullSwipeEvt(e)}}}onLower(){"left"===this.position&&(this.resetState(),this.li=null)}onUpper(){"right"===this.position&&(this.resetState(),this.li=null)}threshold(){return 10}}const b=["listTemplate"],y=["listLeftActionTemplate"],w=["listRightActionTemplate"],C=["wmList",""],P=e=>({disabled:e}),I=(e,t,i,n,a,s)=>({item:e,$index:t,itemRef:i,$first:n,$last:a,currentItemWidgets:s}),A=e=>({"collapsible-content":e});function E(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",14)(1,"h3",15)(2,"div",16),p.\u0275\u0275element(3,"i",17),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(4,"div",16),p.\u0275\u0275element(5,"div",18)(6,"div",19),p.\u0275\u0275elementEnd()()()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(3),p.\u0275\u0275classMapInterpolate1("app-icon panel-icon ",e.iconclass,""),p.\u0275\u0275property("hidden",!e.iconclass),p.\u0275\u0275advance(2),p.\u0275\u0275property("innerHTML",e.title,p.\u0275\u0275sanitizeHtml),p.\u0275\u0275advance(),p.\u0275\u0275property("innerHTML",e.subheading,p.\u0275\u0275sanitizeHtml)}}function O(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"div",20)(1,"ul",21)(2,"li",22)(3,"a",23),p.\u0275\u0275listener("click",(function(t){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(i.dataNavigator.navigatePage("prev",t))})),p.\u0275\u0275element(4,"i",24),p.\u0275\u0275elementStart(5,"span",25),p.\u0275\u0275text(6),p.\u0275\u0275elementEnd()()()()()}if(2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275attribute("aria-disabled",e.dataNavigator.isDisablePrevious),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(4,P,!e.dataNavigator||e.dataNavigator.isDisablePrevious)),p.\u0275\u0275advance(),p.\u0275\u0275attribute("aria-disabled",e.dataNavigator.isDisablePrevious),p.\u0275\u0275advance(3),p.\u0275\u0275textInterpolate1("Go to Previous page ",e.dataNavigator.isDisablePrevious?", Disabled":"","")}}function T(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",26),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275textInterpolate1(" ","Page "+e.dataNavigator.dn.currentPage+" of "+e.dataNavigator.pageCount,"")}}function x(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",27),p.\u0275\u0275text(1," Press space bar to toggle drag drop mode, use arrow keys to move selected elements. "),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275propertyInterpolate("id",e.titleId)}}function D(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",28),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(),p.\u0275\u0275textInterpolate1(" ",e.ariaText+e.currentIndex+" of "+e.listItems.length," ")}}function R(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"li",30,1),p.\u0275\u0275elementContainer(2,31),p.\u0275\u0275elementEnd()),2&e){const e=t.$implicit,i=t.index,n=t.first,a=t.last,s=p.\u0275\u0275reference(1),o=p.\u0275\u0275nextContext(2);p.\u0275\u0275classMapInterpolate1("app-list-item ","horizontal"===o.direction?"":o.itemsPerRowClass,""),p.\u0275\u0275property("ngClass",s.itemClass)("wmListItem",e),p.\u0275\u0275attribute("tabindex",o.tabindex),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngTemplateOutlet",o.listTemplate)("ngTemplateOutletInjector",o.createCustomInjector("falt_"+s.trackId,p.\u0275\u0275pureFunction6(9,I,e,i,s,n,a,s.currentItemWidgets)))("ngTemplateOutletContext",p.\u0275\u0275pureFunction6(16,I,e,i,s,n,a,s.currentItemWidgets))}}function S(e,t){if(1&e&&p.\u0275\u0275template(0,R,3,23,"li",29),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngForOf",e.fieldDefs)}}function _(e,t){if(1&e&&p.\u0275\u0275element(0,"div",32),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("textContent",e.nodatamessage)}}function M(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",33)(1,"span"),p.\u0275\u0275element(2,"i",34),p.\u0275\u0275elementStart(3,"span",25),p.\u0275\u0275text(4,"Loading"),p.\u0275\u0275elementEnd(),p.\u0275\u0275element(5,"span",35),p.\u0275\u0275elementEnd()()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275advance(2),p.\u0275\u0275property("ngClass",e.loadingicon),p.\u0275\u0275advance(3),p.\u0275\u0275property("textContent",e.loadingdatamsg)}}function N(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"div",36)(1,"ul",21)(2,"li",37)(3,"a",23),p.\u0275\u0275listener("click",(function(t){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(i.dataNavigator.navigatePage("next",t))})),p.\u0275\u0275element(4,"i",38),p.\u0275\u0275elementStart(5,"span",25),p.\u0275\u0275text(6),p.\u0275\u0275elementEnd()()()()()}if(2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275attribute("aria-disabled",e.dataNavigator.isDisableNext),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(4,P,!e.dataNavigator||e.dataNavigator.isDisableNext)),p.\u0275\u0275advance(),p.\u0275\u0275attribute("aria-disabled",e.dataNavigator.isDisableNext),p.\u0275\u0275advance(3),p.\u0275\u0275textInterpolate1("Go to Next page ",e.dataNavigator.isDisableNext?", Disabled":"","")}}function k(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"a",42),p.\u0275\u0275listener("click",(function(t){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(i.dataNavigator.navigatePage("next",t))})),p.\u0275\u0275elementEnd()}if(2&e){const e=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("ngClass",e.paginationclass)("textContent",e.ondemandmessage)}}function L(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"div",39),p.\u0275\u0275element(1,"nav",40),p.\u0275\u0275template(2,k,1,2,"a",41),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("hidden",!e.showNavigation||e.onDemandLoad&&e.dataNavigator.isDisableNext||e.dataNavigator.dataSize<=e.pagesize||!e.dataNavigator.dataSize&&!(null!=e.dataNavigator.datasource&&(null!=e.dataNavigator.datasource.pagination&&e.dataNavigator.datasource.pagination.next))),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",e.onDemandLoad)}}function F(e,t){1&e&&p.\u0275\u0275element(0,"i",51)}function j(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"span",52),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&e){const e=p.\u0275\u0275nextContext().$implicit;p.\u0275\u0275advance(),p.\u0275\u0275textInterpolate(e.data.length)}}function B(e,t){if(1&e&&(p.\u0275\u0275elementStart(0,"li",53,1),p.\u0275\u0275elementContainer(2,31),p.\u0275\u0275elementEnd()),2&e){const e=t.$implicit,i=t.index,n=t.first,a=t.last,s=p.\u0275\u0275reference(1),o=p.\u0275\u0275nextContext(3);p.\u0275\u0275classMapInterpolate1("app-list-item group-list-item ",o.itemsPerRowClass,""),p.\u0275\u0275property("ngClass",s.itemClass)("wmListItem",e),p.\u0275\u0275attribute("tabindex",o.tabindex),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngTemplateOutlet",o.listTemplate)("ngTemplateOutletInjector",o.createCustomInjector("group_"+s.trackId,p.\u0275\u0275pureFunction6(9,I,e,i,s,n,a,s.currentItemWidgets)))("ngTemplateOutletContext",p.\u0275\u0275pureFunction6(16,I,e,i,s,n,a,s.currentItemWidgets))}}function V(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"li",44)(1,"ul",45)(2,"li",46),p.\u0275\u0275listener("click",(function(t){p.\u0275\u0275restoreView(e);const i=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(i.handleHeaderClick(t))})),p.\u0275\u0275elementStart(3,"h4"),p.\u0275\u0275text(4),p.\u0275\u0275elementStart(5,"div",47),p.\u0275\u0275template(6,F,1,0,"i",48)(7,j,2,1,"span",49),p.\u0275\u0275elementEnd()()(),p.\u0275\u0275elementStart(8,"ul"),p.\u0275\u0275template(9,B,3,23,"li",50),p.\u0275\u0275elementEnd()()()}if(2&e){const e=t.$implicit,i=p.\u0275\u0275nextContext(2);p.\u0275\u0275advance(),p.\u0275\u0275property("ngClass",i.listclass),p.\u0275\u0275attribute("tabindex",i.tabindex),p.\u0275\u0275advance(),p.\u0275\u0275property("ngClass",p.\u0275\u0275pureFunction1(11,A,i.collapsible)),p.\u0275\u0275advance(2),p.\u0275\u0275textInterpolate1("",e.key," "),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",i.collapsible),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",i.showcount),p.\u0275\u0275advance(),p.\u0275\u0275classMapInterpolate1("list-group clearfix ","horizontal"===i.direction?"app-horizontal-list":"",""),p.\u0275\u0275advance(),p.\u0275\u0275property("ngForOf",e.data)("ngForTrackBy",i.trackByFn)}}function G(e,t){if(1&e&&p.\u0275\u0275template(0,V,10,13,"li",43),2&e){const e=p.\u0275\u0275nextContext();p.\u0275\u0275property("ngForOf",e.groupedData)}}const W={widgetType:"wm-list",hostClass:"app-livelist app-panel"};class U extends n.StylableComponent{static{this.initializeProps=void n.register("wm-list",new Map([["boundarylinks",{value:!1,...n.PROP_BOOLEAN}],["class",n.PROP_STRING],["collapsible",n.PROP_BOOLEAN],["dateformat",n.PROP_STRING],["dataset",n.PROP_ANY],["datasource",n.PROP_ANY],["direction",{value:"vertical",...n.PROP_STRING}],["directionlinks",{value:!0,...n.PROP_BOOLEAN}],["disableitem",n.PROP_BOOLEAN],["enablereorder",n.PROP_BOOLEAN],["forceellipses",{value:!0,...n.PROP_BOOLEAN}],["groupby",n.PROP_STRING],["iconclass",n.PROP_STRING],["itemclass",{value:"",...n.PROP_STRING}],["itemsperrow",n.PROP_STRING],["listclass",{value:"list-group",...n.PROP_STRING}],["multiselect",n.PROP_BOOLEAN],["loadingdatamsg",{value:"Loading...",...n.PROP_STRING}],["loadingicon",{value:"fa fa-circle-o-notch",...n.PROP_STRING}],["match",n.PROP_STRING],["maxsize",{value:5,...n.PROP_NUMBER}],["name",n.PROP_STRING],["navigation",n.PROP_STRING],["navigationalign",{value:"left",...n.PROP_STRING}],["nodatamessage",{value:"No data found",...n.PROP_STRING}],["ondemandmessage",{value:"Load More",...n.PROP_STRING}],["orderby",n.PROP_STRING],["paginationclass",n.PROP_STRING],["pagesize",n.PROP_NUMBER],["pulltorefresh",{value:s.isMobileApp(),...n.PROP_BOOLEAN}],["selectfirstitem",n.PROP_BOOLEAN],["selectionlimit",n.PROP_NUMBER],["show",{value:!0,...n.PROP_BOOLEAN}],["showcount",n.PROP_BOOLEAN],["showrecordcount",n.PROP_BOOLEAN],["statehandler",{value:"none",...n.PROP_STRING}],["subheading",n.PROP_STRING],["tabindex",{value:0,...n.PROP_NUMBER}],["title",n.PROP_STRING]]))}constructor(e,t,i,a,o,r,l,d,p,u,h,m,g,f,v){let b=s.noop;const y=new Promise((e=>b=e));super(e,W,v,y),this.propsInitPromise=y,this.promiseResolverFn=b,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.SHELL),this.cdRef=t,this.ngZone=r,this.datePipe=i,this.statePersistence=g,this.paginationService=f,this._pageLoad=!0,this.binditemclass=l,this.binddisableitem=d,this.binddataset=p,this.mouseEnterCB=h,this.mouseLeaveCB=m,this.binddatasource=u,this.app=a,this.appDefaults=o,this.variableInflight=!1,this.noDataFound=!p,this.titleId="wmlist-"+s.generateGUId(),this._listenerDestroyers=[this.app.subscribe("check-state-persistence-options",(e=>{let t=c.get(this.datasource,"name");t||(t=n.extractDataSourceName(this.binddatasource)),c.get(e,"variable.name")===t&&this.handleStateParams(e)})),this.app.subscribe("toggle-variable-state",this.handleLoading.bind(this)),this.app.subscribe("setup-cud-listener",(e=>{this.nativeElement.getAttribute("name")===e&&(this._isDependent=!0)}))]}get selecteditem(){return this.multiselect?s.getClonedObject(this._items):c.isEmpty(this._items)?{}:s.getClonedObject(this._items[0])}set selecteditem(e){this._items.length=0,this.deselectListItems(),c.isArray(e)?e.forEach((e=>this.selectItem(e))):this.selectItem(e),s.$appDigest()}getWidgets(e,t){let i;const n=[];if(e)return s.isDefined(t)?(t=+t||0,i=c.get(this.listItems.toArray(),t),i?[c.get(i.currentItemWidgets,e)]:void 0):(c.forEach(this.listItems.toArray(),(t=>{i=c.get(t.currentItemWidgets,e),i&&n.push(i)})),n)}getItem(e){return this.getListItemByIndex(e)}getIndex(e){return e instanceof f?this.getListItemIndex(e):e?this.fieldDefs.findIndex((t=>c.isEqual(t,e))):void 0}create(){this._isDependent&&this.triggerWMEvent("insert")}editRow(e){if(this._isDependent){let t;e&&(t=this.getItemRefByIndexOrModel(e).item),this.triggerWMEvent("update",t)}}update(e){this.editRow(e)}deleteRow(e){if(this._isDependent){let t;e&&(t=this.getItemRefByIndexOrModel(e).item),this.triggerWMEvent("delete",t)}}delete(e){this.deleteRow(e)}handleLoading(e){const t=this.datasource;t&&t.execute(s.DataSource.Operation.IS_API_AWARE)&&s.isDataSourceEqual(e.variable,t)&&this.ngZone.run((()=>{this.handleStateParams(e),this.variableInflight=e.active;const t=e.data?.pagination?.totalElements;c.isUndefined(t)?this.noDataFound=c.isEmpty(e.data?.data):this.noDataFound=0===t}))}triggerListItemSelection(e,t){if(e&&e[0]){const i=e.data("listItemContext");i.listComponent===this&&this.onItemClick(t,i)}}execute(e,t){return![s.DataSource.Operation.IS_API_AWARE,s.DataSource.Operation.IS_PAGEABLE,s.DataSource.Operation.SUPPORTS_SERVER_FILTER].includes(e)&&this.datasource.execute(e,t)}handleKeyDown(e,t){e.stopPropagation(),13===e.keyCode||9===e.keyCode||(e.target.classList.contains("form-control")||e.target.classList.contains("note-editable"))&&32===e.keyCode||e.preventDefault();const i=this.listItems;let n=this.getListItemIndex(this.lastSelectedItem);if(this.multiselect){const a=this.getListItemIndex(this.firstSelectedItem),o=c.isArray(this.selecteditem)?this.selecteditem.length:s.isObject(this.selecteditem)?1:0;"selectPrev"===t?n>0&&(n<=a&&this.checkSelectionLimit(o)?(this.lastSelectedItem=this.getListItemByIndex(n-1),this.toggleListItemSelection(this.lastSelectedItem)):n>a?(this.toggleListItemSelection(this.getListItemByIndex(n)),this.lastSelectedItem=this.getListItemByIndex(n-1)):this.invokeEventCallback("selectionlimitexceed",{$event:e})):"selectNext"===t&&n<i.length-1&&(n>=a&&this.checkSelectionLimit(o)?(this.lastSelectedItem=this.getListItemByIndex(n+1),this.toggleListItemSelection(this.lastSelectedItem)):n<a?(this.toggleListItemSelection(this.getListItemByIndex(n)),this.lastSelectedItem=this.getListItemByIndex(n+1)):this.invokeEventCallback("selectionlimitexceed",{$event:e}))}if("focusPrev"===t)if(this.isListElementMovable){if(n=n<=0?0:n,0===n)return;this.lastSelectedItem=this.getListItemByIndex(n);this.getListItemByIndex(n-1).nativeElement.before(this.lastSelectedItem.nativeElement),this.lastSelectedItem.nativeElement.focus(),this.statePersistence.removeWidgetState(this,"selectedItem");const e=this.listItems.toArray();[e[n-1],e[n]]=[e[n],e[n-1]],this.listItems.reset(e),this.currentIndex=n,this.ariaText="selected "}else n=n<=0?0:n-1,this.lastSelectedItem=this.getListItemByIndex(n),this.lastSelectedItem.nativeElement.focus(),this.currentIndex=n+1,this.ariaText="selected ";else if("focusNext"===t)if(this.isListElementMovable){if(n=n<i.length-1?n:i.length-1,n===this.listItems.length-1)return;this.lastSelectedItem=this.getListItemByIndex(n);this.getListItemByIndex(n+1).nativeElement.after(this.lastSelectedItem.nativeElement),this.lastSelectedItem.nativeElement.focus(),this.statePersistence.removeWidgetState(this,"selectedItem");const e=this.listItems.toArray();[e[n],e[n+1]]=[e[n+1],e[n]],this.listItems.reset(e),this.currentIndex=n+2,this.ariaText="selected "}else n=n<i.length-1?n+1:i.length-1,this.lastSelectedItem=this.getListItemByIndex(n),this.lastSelectedItem.nativeElement.focus(),this.currentIndex=n+1,this.ariaText="selected ";else if("select"===t){if(-1===n||!$(e.target).closest(this.lastSelectedItem.nativeElement)){const t=$(e.target).closest("li.app-list-item");n=t.closest("ul.app-livelist-container").find("li.app-list-item").index(t)}this.onItemClick(e,this.getListItemByIndex(n))}else if("space"===t){if(!this.enablereorder)return;this.isListElementMovable=!this.isListElementMovable,this.onItemClick(e,this.getListItemByIndex(n)),this.currentIndex=n+1,this.isListElementMovable?(this.ariaText=`Item ${this.currentIndex} grabbed, current position `,this.$ulEle.data("oldIndex",n)):(this.ariaText=`Item ${this.currentIndex} dropped, final position `,this.onUpdate(e,void 0,n))}}onPropertyChange(e,t,i){if("dataset"===e){if(!t&&this.binddatasource&&!this.datasource)return;this.onDataSetChange(t)}else if("datasource"===e)this.dataset&&this.onDataSetChange(this.dataset);else if("navigation"===e){if("Advanced"===t)return void(this.navigation="Classic");s.switchClass(this.nativeElement,t,i),this.onNavigationTypeChange(t),this.dataNavigator&&(this.dataNavigator.navigationClass=this.paginationclass)}else if("itemsperrow"===e)s.setListClass(this);else{if("tabindex"===e)return;"pulltorefresh"===e&&t?(this.app.notify("pullToRefresh:enable"),this.subscribeToPullToRefresh()):"paginationclass"===e?this.dataNavigator&&setTimeout((()=>this.dataNavigator.navigationClass=t)):"pagesize"===e?(this.dataNavigator.options={maxResults:t},this.dataNavigator.widget.maxResults=t,this.dataNavigator.maxResults=t):"enablereorder"===e?t&&this.$ulEle?(this.$ulEle.attr("aria-describedby",this.titleId),this.configureDnD(),this.$ulEle.sortable("enable")):this.$ulEle&&!t&&(this.$ulEle.removeAttr("aria-describedby"),this.$ulEle.sortable("disable")):super.onPropertyChange(e,t,i)}}onItemClick(e,t){let i;if(!t.disableItem){if(this.firstSelectedItem=this.firstSelectedItem||t,i=c.isArray(this.selecteditem)?this.selecteditem.length:s.isObject(this.selecteditem)?1:0,this.multiselect&&s.isMobile())this.checkSelectionLimit(i)||t.isActive?this.toggleListItemSelection(t):this.invokeEventCallback("selectionlimitexceed",{$event:e});else if((e.ctrlKey||e.metaKey)&&this.multiselect)this.checkSelectionLimit(i)||t.isActive?(this.firstSelectedItem=this.lastSelectedItem=t,this.toggleListItemSelection(t)):this.invokeEventCallback("selectionlimitexceed",{$event:e});else if(e.shiftKey&&this.multiselect){let i=t.context.index,n=this.firstSelectedItem.context.index;i>n&&(n=[i,i=n][0]),this.checkSelectionLimit(n-i)?(this.clearSelectedItems(),this.listItems.forEach((e=>{const t=e.context.index;t>=i&&t<=n&&this.toggleListItemSelection(e)})),this.lastSelectedItem=t):this.invokeEventCallback("selectionlimitexceed",{$event:e})}else(!t.isActive||i>1)&&(this.clearSelectedItems(),this.toggleListItemSelection(t),this.firstSelectedItem=this.lastSelectedItem=t);s.$appDigest()}}clear(){this.updateFieldDefs([])}deselectItem(e){const t=this.getItemRefByIndexOrModel(e);t&&t.isActive&&this.toggleListItemSelection(t)}selectItem(e,t){const i=this.getItemRefByIndexOrModel(e);i&&(i.isActive||this.toggleListItemSelection(i,t),i.nativeElement.focus())}ngOnInit(){super.ngOnInit(),this.handleHeaderClick=s.noop,setTimeout((()=>{this.debouncedFetchNextDatasetOnScroll=this.paginationService.debouncedFetchNextDatasetOnScroll(this.dataNavigator,n.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME,this)}),0),this._items=[],this.fieldDefs=[],this.reorderProps={minIndex:null,maxIndex:null}}ngAfterViewInit(){this.promiseResolverFn(),this.propsInitPromise.then((()=>{super.ngAfterViewInit(),this.setUpCUDHandlers(),this.selectedItemWidgets=this.multiselect?[]:{};var e=$(this.nativeElement).find(".app-livelist-container");this.enablereorder&&!this.groupby&&(e&&e.attr("aria-describedby",this.titleId),this.configureDnD()),this.enablereorder||e&&e.removeAttr("aria-describedby"),this.groupby&&this.collapsible&&(this.handleHeaderClick=n.handleHeaderClick,this.toggleAllHeaders=n.toggleAllHeaders.bind(void 0,this)),s.setListClass(this)})),this.setupHandlers();const e=this.nativeElement.querySelector("ul.app-livelist-container");n.styler(e,this,n.APPLY_STYLES_TYPE.SCROLLABLE_CONTAINER),this.enablereorder&&e&&e.setAttribute("aria-describedby",this.titleId),this.enablereorder||e&&e.removeAttribute("aria-describedby"),s.isMobileApp()&&e.querySelector(".app-list-item-action-panel")&&(this._listAnimator=new v(this))}ngOnDestroy(){this._listAnimator&&this._listAnimator.$btnSubscription&&this._listAnimator.$btnSubscription.unsubscribe(),this._listenerDestroyers.forEach((e=>e&&e())),super.ngOnDestroy()}ngOnDetach(){super.ngOnDetach(),this._pageLoad=!0}handleEvent(e,t,i,n){const a={tap:"click",doubletap:"dblclick"};c.includes(["click","tap","dblclick","doubletap"],t)&&this.eventManager.addEventListener(this.nativeElement,a[t]||t,(e=>{const i=$(e.target).closest(".app-list-item");if(i.length){const n=i.data("listItemContext");n.disableItem||this.invokeEventCallback(t,{widget:n,$event:e,item:n.item})}}))}getConfiguredState(){const e=this.statePersistence.computeMode(this.statehandler);return e&&e.toLowerCase()}handleStateParams(e){if(this._pageLoad&&"none"!==this.getConfiguredState()){this._pageLoad=!1;const t=this.statePersistence.getWidgetState(this);c.get(t,"pagination")&&(e.options=e.options||{},e.options.page=t.pagination),c.get(t,"selectedItem")&&(this._selectedItemsExist=!0)}}triggerWMEvent(e,t){s.$invokeWatchers(!0);let i=this.multiselect?c.last(this.selecteditem):this.selecteditem;t&&(i=t),this.app.notify("wm-event",{eventName:e,widgetName:this.name,row:i})}resetNavigation(){this.showNavigation=!1,this.navControls=void 0,this.infScroll=!1,this.onDemandLoad=!1}enableBasicNavigation(){this.navControls=n.NAVIGATION_TYPE.BASIC,this.showNavigation=!0}enableInlineNavigation(){this.navControls=n.NAVIGATION_TYPE.INLINE}enableClassicNavigation(){this.navControls=n.NAVIGATION_TYPE.CLASSIC,this.showNavigation=!0}enablePagerNavigation(){this.navControls=n.NAVIGATION_TYPE.PAGER,this.showNavigation=!0}setNavigationTypeNone(){this.navControls=n.NAVIGATION_TYPE.NONE,this.showNavigation=!1}enableInfiniteScroll(){this.infScroll=!0}enableOnDemandLoad(){this.onDemandLoad=!0,this.showNavigation=!0}onNavigationTypeChange(e){switch(this.resetNavigation(),e){case n.NAVIGATION_TYPE.BASIC:this.enableBasicNavigation();break;case n.NAVIGATION_TYPE.INLINE:this.enableInlineNavigation();break;case n.NAVIGATION_TYPE.ADVANCED:case n.NAVIGATION_TYPE.CLASSIC:this.enableClassicNavigation();break;case n.NAVIGATION_TYPE.PAGER:this.enablePagerNavigation();break;case n.NAVIGATION_TYPE.NONE:this.setNavigationTypeNone();break;case n.NAVIGATION_TYPE.SCROLL:this.enableInfiniteScroll();break;case n.NAVIGATION_TYPE.ONDEMAND:this.enableOnDemandLoad()}}updateFieldDefs(e){this.infScroll||this.onDemandLoad?[this.fieldDefs,this.currentPage]=this.paginationService.updateFieldsOnPagination(this,e):this.fieldDefs=e,this.orderby&&(this.fieldDefs=n.getOrderedDataset(this.fieldDefs,this.orderby)),this.groupby&&(this.groupedData=n.groupData(this,this.fieldDefs,this.groupby,this.match,this.orderby,this.dateformat,this.datePipe,void 0,this.appDefaults)),this.fieldDefs.length||(this.noDataFound=!0,this.selecteditem=void 0),s.$appDigest(),this.listItems.setDirty()}onDataChange(e){c.isEmpty(e)?this.updateFieldDefs([]):(this.noDataFound=!1,this.isDataChanged=!0,this.datasource&&this.datasource.execute(s.DataSource.Operation.IS_API_AWARE)&&(e=c.cloneDeep(e)),s.isObject(e)&&!c.isArray(e)&&(e=c.isEmpty(e)?[]:[e]),c.isString(e)&&(e=e.split(",")),this.datasource&&"App"===this.datasource.owner&&(this.infScroll||this.onDemandLoad)&&!this.currentPage&&this.datasource.execute(s.DataSource.Operation.GET_PAGING_OPTIONS).number>0&&(e=this.datasource.execute(s.DataSource.Operation.LIST_RECORDS,{page:1})),c.isArray(e)&&(e.length&&this.invokeEventCallback("beforedatarender",{$data:e}),this.updateFieldDefs(e)))}setupDataSource(){const e=this.dataNavigator;e.options={maxResults:this.pagesize||20},this.dataNavigatorWatched=!0,this.navigatorResultWatch&&this.navigatorResultWatch.unsubscribe(),this.navigatorResultWatch=e.resultEmitter.subscribe((e=>{this.onDataChange(e)}),!0),this.navigatorMaxResultWatch&&this.navigatorMaxResultWatch.unsubscribe(),this.navigatorMaxResultWatch=e.maxResultsEmitter.subscribe((e=>{this.pagesize=e})),e.maxResults=this.pagesize||20,this.removePropertyBinding("dataset");const t=this.getAttr("datasetboundexpr");this.dataNavigator.setBindDataSet(this.binddataset,this.viewParent,t?this.context:this.datasource,this.dataset,this.binddatasource,t,this.statehandler)}onDataSetChange(e){if("wm.Variable"===c.get(this.datasource,"category")&&"none"!==this.getConfiguredState()&&this._pageLoad){const e=this.statePersistence.getWidgetState(this);this._pageLoad=!1,c.get(e,"pagination")&&this.dataNavigator.pageChanged({page:e.pagination},!0),c.get(e,"selectedItem")&&(this._selectedItemsExist=!0)}this.dataNavigatorWatched?this.navigation&&this.navigation!==n.NAVIGATION_TYPE.NONE&&this.dataNavigator.setDataSource(this.datasource):this.navigation&&this.navigation!==n.NAVIGATION_TYPE.NONE?this.setupDataSource():this.onDataChange(e)}deselectListItems(){this.listItems.forEach((e=>e.isActive=!1))}clearSelectedItems(){this.deselectListItems(),this._items.length=0,s.$appDigest()}getListItemByModel(e){return this.listItems.find((t=>{let i=t.item;if(this.groupby&&!c.has(e,"_groupIndex")&&(i=c.clone(i),delete i._groupIndex),c.isEqual(i,e))return!0}))||null}updateSelectedItemsWidgets(e){let t,i={};const a=c.get(this.dataNavigator,"dn.currentPage")||1;"none"!==this.getConfiguredState()&&(t=this.statePersistence.getWidgetState(this)||{},c.get(t,"selectedItem")&&(this.multiselect&&1===this.selecteditem.length?t.selectedItem=[]:c.remove(t.selectedItem,(function(e){return e.page===a})))),this.multiselect&&(this.selectedItemWidgets.length=0),this.listItems.forEach(((e,n)=>{e.isActive&&(this.multiselect?this.selectedItemWidgets.push(e.currentItemWidgets):this.selectedItemWidgets=e.currentItemWidgets,i={page:a,index:n},c.get(t,"selectedItem")&&this.multiselect?c.some(t.selectedItem,i)||t.selectedItem.push(i):t.selectedItem=[i])})),"none"===this.getConfiguredState()||e||(n.unsupportedStatePersistenceTypes.indexOf(this.navigation)<0?(this.statePersistence.removeWidgetState(this,"selectedItem"),this.statePersistence.setWidgetState(this,{selectedItem:t.selectedItem})):console.warn("Retain State handling on Widget "+this.name+" is not supported for current pagination type."))}toggleListItemSelection(e,t){if(e&&!e.disableItem){let i=e.item;this.groupby&&c.has(i,"_groupIndex")&&(i=c.clone(i),delete i._groupIndex),e.isActive?(this._items=c.pullAllWith(this._items,[i],c.isEqual),e.isActive=!1):(this.multiselect||this.clearSelectedItems(),this._items.push(i),this.invokeEventCallback("select",{widget:e,$data:i}),e.isActive=!0),this.updateSelectedItemsWidgets(t)}}onListRender(e){if(this.isDataChanged&&(s.$invokeWatchers(!0),this.invokeEventCallback("render",{$data:this.fieldDefs})),this.isDataChanged&&"none"!==this.getConfiguredState()&&e.length&&this._selectedItemsExist){const e=this.statePersistence.getWidgetState(this);if(c.get(e,"selectedItem")){this._selectedItemsExist=!1;const t=c.isArray(this.selecteditem)?this.selecteditem.length:c.toNumber(!c.isEmpty(this.selecteditem)),i=c.get(this.dataNavigator,"dn.currentPage")||1;e.pagination=e.pagination||1,t!==e.selectedItem.length&&e.pagination===i&&e.selectedItem.forEach((e=>{e.page===i&&this.selectItem(e.index,!0)}))}}const t=c.isArray(this.selecteditem)?this.selecteditem:[this.selecteditem];if(this.firstSelectedItem=this.lastSelectedItem=null,!e.length||!this.selectfirstitem||this._items.length&&this.multiselect||!1===this._selectedItemsExist)this.deselectListItems(),t.forEach((e=>{const t=this.getListItemByModel(e);t&&(t.isActive=!0,this.lastSelectedItem=t,t.nativeElement.focus())}));else{const t=e.first;t.disableItem||!this.isDataChanged||(this.infScroll||this.onDemandLoad)&&this._items.length||(this.clearSelectedItems(),this.firstSelectedItem=this.lastSelectedItem=t,this.selectItem(0))}if(this.fieldDefs.length&&this.infScroll){const e=this.$element.closest("[wmsmoothscroll]");if(s.isMobileApp()&&e.length&&"true"===e.attr("wmsmoothscroll"))this.paginationService.bindIScrollEvt(this,n.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);else{const e=this.$element.closest(".modal-body"),t=this.$element.find("ul").height(),i=window.innerHeight-140;s.isMobile()&&e.length&&t>i&&this.$element.css("height",i+"px"),this.paginationService.bindScrollEvt(this,"> ul",n.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME)}}this.isDataChanged=!1}setupHandlers(){this.listItems.changes.subscribe((e=>{this.onListRender(e),this.cdRef.detectChanges()})),this.nativeElement.querySelector("ul.app-livelist-container").addEventListener("click",(e=>{let t=$(e.target).closest(".app-list-item");for(;t.get(0)&&t.closest("ul.app-livelist-container").get(0)!==e.currentTarget;)t=t.parent().closest(".app-list-item");this.triggerListItemSelection(t,e)}),!0)}onReorderStart(e,t){t.placeholder.height(t.item.height()),this.$ulEle.data("oldIndex",t.item.index())}onSort(e,t){if(this.infScroll){const e=this.$ulEle.find(`[listitemindex=${this.fieldDefs.length-1}]`).offset();e&&e.top<t.offset.top&&(this.paginationService.bindScrollEvt(this,"> ul",n.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME),this.debouncedFetchNextDatasetOnScroll())}}onUpdate(e,t,i){const n=this.fieldDefs,a=void 0===t?i:t.item.index(),s=this.$ulEle.data("oldIndex"),o=c.min([a,s]),r=c.max([a,s]),l=c.pullAt(n,s)[0];if(l){"none"!==this.getConfiguredState()&&this.statePersistence.removeWidgetState(this,"selectedItem"),this.reorderProps.minIndex=c.min([o,this.reorderProps.minIndex]),this.reorderProps.maxIndex=c.max([r,this.reorderProps.maxIndex]),n.splice(a,0,l),this.cdRef.markForCheck(),this.cdRef.detectChanges();const t={oldIndex:s,newIndex:a,item:n[a]};this.invokeEventCallback("reorder",{$event:e,$data:n,$changedItem:t}),this.$ulEle.removeData("oldIndex")}}configureDnD(){let e;const t=$(document).find(".modal");e=this.getAttr("height")?"parent":t.length?t[t.length-1]:"body";const i=s.isMobileApp()?{}:{appendTo:e},a=$(this.nativeElement);this.$ulEle=a.find(".app-livelist-container"),n.configureDnD(this.$ulEle,i,this.onReorderStart.bind(this),this.onUpdate.bind(this),this.onSort.bind(this)),this.$ulEle.droppable({accept:".app-list-item"}),s.isMobileApp()&&(this.$ulEle.sortable("disable"),this.$ulEle.on("touchstart",(function(e){let t=this;t.touching||(t.touched&&clearTimeout(t.touched),setTimeout((()=>{e.cancelable&&e.preventDefault()}),50),t.touched=setTimeout((()=>{$(e.currentTarget).addClass("no-selection"),$(e.currentTarget).sortable("enable"),t.touching=!0,$(t).trigger(e)}),350))})).on("touchend",(function(e){this.touching=!1,$(e.currentTarget).removeClass("no-selection"),$(e.currentTarget).sortable("disable"),clearTimeout(this.touched)})).on("touchmove",(function(){clearTimeout(this.touched)})))}checkSelectionLimit(e){return!this.selectionlimit||e<this.selectionlimit}getListItemByIndex(e){return this.listItems.toArray()[e]}getListItemIndex(e){return this.listItems.toArray().indexOf(e)}getItemRefByIndexOrModel(e){let t;return t=c.isNumber(e)?this.getListItemByIndex(e):this.getListItemByModel(e),t}beforePaginationChange(e,t){this.invokeEventCallback("paginationchange",{$event:e,$index:t})}trackByFn(e){return e}subscribeToPullToRefresh(){this._listenerDestroyers.push(this.app.subscribe("pulltorefresh",(()=>{this.datasource&&this.datasource.listRecords&&this.datasource.listRecords()})))}setUpCUDHandlers(){const e=document.getElementsByClassName("add-list-item")[0];e&&e.addEventListener("click",(e=>{this.create()}))}static{this.\u0275fac=function(e){return new(e||U)(p.\u0275\u0275directiveInject(p.Injector),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(h.ToDatePipe),p.\u0275\u0275directiveInject(g.App),p.\u0275\u0275directiveInject(g.AppDefaults),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275injectAttribute("itemclass.bind"),p.\u0275\u0275injectAttribute("disableitem.bind"),p.\u0275\u0275injectAttribute("dataset.bind"),p.\u0275\u0275injectAttribute("datasource.bind"),p.\u0275\u0275injectAttribute("mouseenter.event"),p.\u0275\u0275injectAttribute("mouseleave.event"),p.\u0275\u0275directiveInject(g.StatePersistence),p.\u0275\u0275directiveInject(g.PaginationService),p.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=p.\u0275\u0275defineComponent({type:U,selectors:[["div","wmList",""]],contentQueries:function(e,t,i){if(1&e&&(p.\u0275\u0275contentQuery(i,b,5),p.\u0275\u0275contentQuery(i,y,5),p.\u0275\u0275contentQuery(i,w,5),p.\u0275\u0275contentQuery(i,o.ButtonComponent,4)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.listTemplate=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.listLeftActionTemplate=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.listRightActionTemplate=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.btnComponents=e)}},viewQuery:function(e,t){if(1&e&&(p.\u0275\u0275viewQuery(a.PaginationComponent,5),p.\u0275\u0275viewQuery(f,5)),2&e){let e;p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.dataNavigator=e.first),p.\u0275\u0275queryRefresh(e=p.\u0275\u0275loadQuery())&&(t.listItems=e)}},features:[p.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(U)]),p.\u0275\u0275InheritDefinitionFeature],attrs:C,decls:16,vars:19,consts:[["groupedListTemplate",""],["listItemRef","listItemRef"],["class","panel-heading",4,"ngIf"],["class","app-datanavigator","aria-label","Page navigation",4,"ngIf"],["aria-live","polite","aria-atomic","true","class","sr-only",4,"ngIf"],["class","sr-only",3,"id",4,"ngIf"],["aria-live","assertive","class","sr-only",4,"ngIf"],["role","list",3,"keydown.enter","keydown.space","keydown.arrowup","keydown.arrowdown","keydown.arrowleft","keydown.arrowright","keydown.shift.arrowup","keydown.shift.arrowdown","keydown.shift.arrowleft","keydown.shift.arrowright","hidden"],[3,"ngIf","ngIfElse"],[3,"ngTemplateOutlet"],["class","no-data-msg",3,"textContent",4,"ngIf"],["class","loading-data-msg",4,"ngIf"],["class","app-datanavigator",4,"ngIf"],["class","panel-footer",3,"hidden",4,"ngIf"],[1,"panel-heading"],[1,"panel-title"],[1,"pull-left"],["aria-hidden","true",3,"hidden"],[1,"heading",3,"innerHTML"],[1,"description",3,"innerHTML"],["aria-label","Page navigation",1,"app-datanavigator"],[1,"pager"],[1,"previous",3,"ngClass"],["href","javascript:void(0);",3,"click"],["aria-hidden","true",1,"wi","wi-chevron-left"],[1,"sr-only"],["aria-live","polite","aria-atomic","true",1,"sr-only"],[1,"sr-only",3,"id"],["aria-live","assertive",1,"sr-only"],["role","listitem",3,"class","ngClass","wmListItem",4,"ngFor","ngForOf"],["role","listitem",3,"ngClass","wmListItem"],[3,"ngTemplateOutlet","ngTemplateOutletInjector","ngTemplateOutletContext"],[1,"no-data-msg",3,"textContent"],[1,"loading-data-msg"],["aria-hidden","true",1,"app-icon","panel-icon","fa-spin",3,"ngClass"],[1,"loading-text",3,"textContent"],[1,"app-datanavigator"],[1,"next",3,"ngClass"],["aria-hidden","true",1,"wi","wi-chevron-right"],[1,"panel-footer",3,"hidden"],["wmPagination","","navigationalign.bind","navigationalign","navigation.bind","navControls","showrecordcount.bind","showrecordcount","maxsize.bind","maxsize","boundarylinks.bind","boundarylinks","forceellipses.bind","forceellipses","directionlinks.bind","directionlinks","show.bind","!onDemandLoad","paginationchange.event","beforePaginationChange($event, $index)"],["href","javascript:void(0);","class","app-button btn btn-block",3,"ngClass","textContent","click",4,"ngIf"],["href","javascript:void(0);",1,"app-button","btn","btn-block",3,"click","ngClass","textContent"],["class","app-list-item-group clearfix",4,"ngFor","ngForOf"],[1,"app-list-item-group","clearfix"],[1,"list-group","item-group",3,"ngClass"],[1,"app-list-item-header","list-item","list-group-header",3,"click","ngClass"],[1,"header-action"],["class","app-icon wi action wi-chevron-up",4,"ngIf"],["class","label label-default",4,"ngIf"],[3,"class","ngClass","wmListItem",4,"ngFor","ngForOf","ngForTrackBy"],[1,"app-icon","wi","action","wi-chevron-up"],[1,"label","label-default"],[3,"ngClass","wmListItem"]],template:function(e,t){if(1&e){const e=p.\u0275\u0275getCurrentView();p.\u0275\u0275template(0,E,7,6,"div",2)(1,O,7,6,"div",3)(2,T,2,1,"div",4),p.\u0275\u0275elementStart(3,"div"),p.\u0275\u0275template(4,x,2,1,"div",5)(5,D,2,1,"div",6),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(6,"ul",7),p.\u0275\u0275listener("keydown.enter",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"select"))}))("keydown.space",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"space"))}))("keydown.arrowup",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"focusPrev"))}))("keydown.arrowdown",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"focusNext"))}))("keydown.arrowleft",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"focusPrev"))}))("keydown.arrowright",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"focusNext"))}))("keydown.shift.arrowup",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"selectPrev"))}))("keydown.shift.arrowdown",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"selectNext"))}))("keydown.shift.arrowleft",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"selectPrev"))}))("keydown.shift.arrowright",(function(i){return p.\u0275\u0275restoreView(e),p.\u0275\u0275resetView(t.handleKeyDown(i,"selectNext"))})),p.\u0275\u0275template(7,S,1,1,"ng-template",8),p.\u0275\u0275elementContainer(8,9)(9,9),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(10,_,1,1,"div",10)(11,M,6,2,"div",11)(12,N,7,6,"div",12)(13,L,3,2,"div",13)(14,G,1,1,"ng-template",null,0,p.\u0275\u0275templateRefExtractor)}if(2&e){const e=p.\u0275\u0275reference(15);p.\u0275\u0275property("ngIf",t.title||t.subheading||t.iconclass),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf","Inline"===t.navigation&&!t.noDataFound),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf","Inline"===t.navigation&&!t.noDataFound),p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",t.enablereorder),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.listItems&&t.enablereorder&&t.currentIndex),p.\u0275\u0275advance(),p.\u0275\u0275classMapInterpolate2("app-livelist-container clearfix ","horizontal"===t.direction?"app-horizontal-list":""," ",t.listclass,""),p.\u0275\u0275property("hidden",t.noDataFound&&!t.variableInflight),p.\u0275\u0275attribute("tabindex",t.tabindex),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",!t.groupby)("ngIfElse",e),p.\u0275\u0275advance(),p.\u0275\u0275property("ngTemplateOutlet",t.listLeftActionTemplate),p.\u0275\u0275advance(),p.\u0275\u0275property("ngTemplateOutlet",t.listRightActionTemplate),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.noDataFound&&!t.variableInflight),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf",t.variableInflight&&!t.pulltorefresh),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf","Inline"===t.navigation&&!t.noDataFound),p.\u0275\u0275advance(),p.\u0275\u0275property("ngIf","None"!==t.navigation)}},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(U,[{type:t.Component,args:[{selector:"div[wmList]",providers:[n.provideAsWidgetRef(U)],template:'<div class="panel-heading" *ngIf="title || subheading || iconclass">\n <h3 class="panel-title">\n <div class="pull-left">\n <i class="app-icon panel-icon {{iconclass}}" aria-hidden="true" [hidden]="!iconclass"></i>\n </div>\n <div class="pull-left">\n <div class="heading" [innerHTML]="title"></div>\n <div class="description" [innerHTML]="subheading"></div>\n </div>\n </h3>\n</div>\n\n<div class="app-datanavigator" [attr.aria-disabled]="dataNavigator.isDisablePrevious" aria-label="Page navigation" *ngIf="navigation === \'Inline\' && !noDataFound">\n <ul class="pager">\n <li class="previous" [ngClass]="{\'disabled\': (dataNavigator ? dataNavigator.isDisablePrevious : true)}">\n <a href="javascript:void(0);" (click)="dataNavigator.navigatePage(\'prev\', $event)"\n [attr.aria-disabled]="dataNavigator.isDisablePrevious">\n <i class="wi wi-chevron-left" aria-hidden="true"></i>\n <span class="sr-only">Go to Previous page {{dataNavigator.isDisablePrevious ? \', Disabled\' : \'\'}}</span>\n </a>\n </li>\n </ul>\n</div>\n<div *ngIf="navigation === \'Inline\' && !noDataFound" aria-live="polite" aria-atomic="true" class="sr-only"> {{\'Page \' + dataNavigator.dn.currentPage + \' of \' + dataNavigator.pageCount }}</div>\n\n<div>\n <div id={{titleId}} class="sr-only" *ngIf="enablereorder">\n Press space bar to toggle drag drop mode, use arrow keys to move selected elements.\n </div>\n\n <div aria-live="assertive" *ngIf="listItems && enablereorder && currentIndex" class="sr-only" >\n {{ariaText + currentIndex + \' of \' + listItems.length}}\n </div>\n</div>\n\n<ul [attr.tabindex]="tabindex" class="app-livelist-container clearfix {{direction === \'horizontal\' ? \'app-horizontal-list\': \'\'}} {{listclass}}" role="list"\n (keydown.enter)="handleKeyDown($event, \'select\')"\n\n (keydown.space)="handleKeyDown($event, \'space\')"\n\n (keydown.arrowup)="handleKeyDown($event, \'focusPrev\')"\n (keydown.arrowdown)="handleKeyDown($event, \'focusNext\')"\n (keydown.arrowleft)="handleKeyDown($event, \'focusPrev\')"\n (keydown.arrowright)="handleKeyDown($event, \'focusNext\')"\n\n (keydown.shift.arrowup)="handleKeyDown($event, \'selectPrev\')"\n (keydown.shift.arrowdown)="handleKeyDown($event, \'selectNext\')"\n (keydown.shift.arrowleft)="handleKeyDown($event, \'selectPrev\')"\n (keydown.shift.arrowright)="handleKeyDown($event, \'selectNext\')"\n [hidden]="noDataFound && !variableInflight"\n>\n <ng-template [ngIf]="!groupby" [ngIfElse]="groupedListTemplate">\n <li *ngFor="let item of fieldDefs; index as $index; first as $first; last as $last;" class="app-list-item {{direction === \'horizontal\' ? \'\' : itemsPerRowClass}}" [ngClass]="listItemRef.itemClass"\n [wmListItem]="item"\n #listItemRef="listItemRef"\n [attr.tabindex]="tabindex"\n role="listitem">\n <ng-container [ngTemplateOutlet]="listTemplate"\n [ngTemplateOutletInjector]="createCustomInjector(\'falt_\' + listItemRef.trackId, {item: item, $index: $index, itemRef: listItemRef, $first: $first, $last: $last, currentItemWidgets: listItemRef.currentItemWidgets})"\n [ngTemplateOutletContext]="{item: item, $index: $index, itemRef: listItemRef, $first: $first, $last: $last, currentItemWidgets: listItemRef.currentItemWidgets}"></ng-container>\n </li>\n </ng-template>\n <ng-container [ngTemplateOutlet]="listLeftActionTemplate"></ng-container>\n <ng-container [ngTemplateOutlet]="listRightActionTemplate"></ng-container>\n</ul>\n\n<div class="no-data-msg" *ngIf="noDataFound && !variableInflight" [textContent]="nodatamessage"></div>\n\n<div class="loading-data-msg" *ngIf="variableInflight && !pulltorefresh">\n <span>\n <i class="app-icon panel-icon fa-spin" aria-hidden="true" [ngClass]="loadingicon"></i>\n <span class="sr-only">Loading</span>\n <span class="loading-text" [textContent]="loadingdatamsg"></span>\n </span>\n</div>\n\n<div class="app-datanavigator" [attr.aria-disabled]="dataNavigator.isDisableNext" *ngIf="navigation === \'Inline\' && !noDataFound">\n <ul class="pager">\n <li class="next" [ngClass]="{\'disabled\': (dataNavigator ? dataNavigator.isDisableNext : true)}">\n <a href="javascript:void(0);" (click)="dataNavigator.navigatePage(\'next\', $event)"\n [attr.aria-disabled]="dataNavigator.isDisableNext">\n <i class="wi wi-chevron-right" aria-hidden="true"></i>\n <span class="sr-only">Go to Next page {{dataNavigator.isDisableNext ? \', Disabled\' : \'\'}}</span>\n </a>\n </li>\n </ul>\n</div>\n\n<div class="panel-footer" *ngIf="navigation !== \'None\'" [hidden]="!showNavigation || (onDemandLoad && dataNavigator.isDisableNext) || (dataNavigator.dataSize <= pagesize) || (!dataNavigator.dataSize && !dataNavigator.datasource?.pagination?.next)">\n <nav wmPagination\n navigationalign.bind="navigationalign"\n navigation.bind="navControls"\n showrecordcount.bind="showrecordcount"\n maxsize.bind="maxsize"\n boundarylinks.bind="boundarylinks"\n forceellipses.bind="forceellipses"\n directionlinks.bind="directionlinks"\n show.bind="!onDemandLoad"\n paginationchange.event="beforePaginationChange($event, $index)"\n ></nav>\n <a *ngIf="onDemandLoad" href="javascript:void(0);"\n (click)="dataNavigator.navigatePage(\'next\', $event)"\n class="app-button btn btn-block"\n [ngClass]="paginationclass"\n [textContent]="ondemandmessage"\n ></a>\n</div>\n\n\x3c!--This template will be displayed when groupby is specified--\x3e\n<ng-template #groupedListTemplate>\n <li *ngFor="let groupObj of groupedData; let groupIndex = index;" class="app-list-item-group clearfix">\n <ul [attr.tabindex]="tabindex" class="list-group item-group" [ngClass]="listclass">\n <li class="app-list-item-header list-item list-group-header" (click)="handleHeaderClick($event)" [ngClass]="{\'collapsible-content\': collapsible}">\n <h4>{{groupObj.key}}\n <div class="header-action">\n <i class="app-icon wi action wi-chevron-up" *ngIf="collapsible"></i>\n <span *ngIf="showcount" class="label label-default">{{groupObj.data.length}}</span>\n </div>\n </h4>\n </li>\n <ul class="list-group clearfix {{direction === \'horizontal\' ? \'app-horizontal-list\': \'\'}}">\n <li *ngFor="let item of groupObj.data; index as $index; trackBy: trackByFn; first as $first; last as $last;" [attr.tabindex]="tabindex"\n class="app-list-item group-list-item {{itemsPerRowClass}}"\n [ngClass]="listItemRef.itemClass"\n [wmListItem]="item" #listItemRef="listItemRef">\n <ng-container [ngTemplateOutlet]="listTemplate"\n [ngTemplateOutletInjector]="createCustomInjector(\'group_\' + listItemRef.trackId, {item: item, $index: $index, itemRef: listItemRef, $first: $first, $last: $last, currentItemWidgets: listItemRef.currentItemWidgets})"\n [ngTemplateOutletContext]="{item: item, $index: $index, itemRef: listItemRef, $first: $first, $last: $last, currentItemWidgets: listItemRef.currentItemWidgets}"></ng-container>\n </li>\n </ul>\n </ul>\n </li>\n</ng-template>\n'}]}],(()=>[{type:p.Injector},{type:p.ChangeDetectorRef},{type:h.ToDatePipe},{type:g.App},{type:g.AppDefaults},{type:p.NgZone},{type:void 0,decorators:[{type:t.Attribute,args:["itemclass.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["disableitem.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["datasource.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["mouseenter.event"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["mouseleave.event"]}]},{type:g.StatePersistence},{type:g.PaginationService},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{listTemplate:[{type:t.ContentChild,args:["listTemplate"]}],listLeftActionTemplate:[{type:t.ContentChild,args:["listLeftActionTemplate"]}],listRightActionTemplate:[{type:t.ContentChild,args:["listRightActionTemplate"]}],btnComponents:[{type:t.ContentChildren,args:[o.ButtonComponent]}],dataNavigator:[{type:t.ViewChild,args:[a.PaginationComponent]}],listItems:[{type:t.ViewChildren,args:[f]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassDebugInfo(U,{className:"ListComponent",filePath:"list.component.ts",lineNumber:91});const q=[U,f];class z{static{this.\u0275fac=function(e){return new(e||z)}}static{this.\u0275mod=p.\u0275\u0275defineNgModule({type:z})}static{this.\u0275inj=p.\u0275\u0275defineInjector({imports:[i.CommonModule,a.PaginationModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&p.\u0275setClassMetadata(z,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.PaginationModule,n.WmComponentsModule],declarations:[...q],exports:[...q]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&p.\u0275\u0275setNgModuleScope(z,{declarations:[U,f],imports:[i.CommonModule,a.PaginationModule,n.WmComponentsModule],exports:[U,f]}),p.\u0275\u0275setComponentScope(U,[u.NgClass,u.NgForOf,u.NgIf,u.NgTemplateOutlet,m.PaginationComponent,h.TextContentDirective,f],[]),e.ListComponent=U,e.ListItemDirective=f,e.ListModule=z})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-bootstrap/tooltip"),require("ngx-bootstrap/dropdown"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/components/input"),require("@wm/components/navigation/menu"),require("@wm/components/data/list"),require("@wm/components/data/pagination"),require("@wm/core"),require("rxjs"),require("rxjs/operators"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","ngx-bootstrap/tooltip","ngx-bootstrap/dropdown","@wm/components/base","@wm/components/basic","@wm/components/input","@wm/components/navigation/menu","@wm/components/data/list","@wm/components/data/pagination","@wm/core","rxjs","rxjs/operators","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.data=e.wm.components.data||{},e.wm.components.data.table={}),e.ng.core,e.ng.common,e.ng.forms,e.tooltip,e.dropdown,e.wm.components.base,e.wm.components.basic,e.wm.components.input,e.wm.components.navigation.menu,e.wm.components.data.list,e.wm.components.data.pagination,e.wm.core,e.rxjs,e.rxjs.operators,e._)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u,h,m,g){"use strict";function f(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var v=f(t),b=f(i),y=f(n),w=f(s),C=f(o),P=f(r),I=f(l),A=f(c),E=f(d),O=f(p),T=f(u);const x=["rowExpansionTmpl"],D=["rowActionTmpl"],R=["filterTmpl"],S=["inlineWidgetTmpl"],_=["inlineWidgetTmplNew"],M=["customExprTmpl"],N=["rowExpansionActionTmpl"],k=["datagridElement"],L=["rowActionsView"],F=["multiColumnFilterView"],j=["inlineEditView"],B=["inlineEditNewView"],V=["customExprView"],G=["rowDetailView"],W=["rowExpansionActionView"],U=["dynamicTable"],q=["wmTable",""],z=e=>({btn:e}),H=(e,t)=>({"btn-sm":e,"disabled-new":t});function Q(e,t){if(1&e&&v.\u0275\u0275element(0,"i"),2&e){const e=v.\u0275\u0275nextContext(2);v.\u0275\u0275classMapInterpolate1("app-icon panel-icon ",e.iconclass,"")}}function Y(e,t){if(1&e&&v.\u0275\u0275elementContainer(0,29),2&e){const e=t.$implicit,i=t.index,n=v.\u0275\u0275nextContext(3),a=v.\u0275\u0275reference(8),s=v.\u0275\u0275reference(10);v.\u0275\u0275property("ngTemplateOutlet","button"===e.widgetType?a:s)("ngTemplateOutletContext",v.\u0275\u0275pureFunction1(3,z,e))("ngTemplateOutletInjector",n.createCustomInjector("actions_header_"+i,v.\u0275\u0275pureFunction1(5,z,e)))}}function X(e,t){if(1&e&&v.\u0275\u0275element(0,"div",30),2&e){const e=v.\u0275\u0275nextContext(3);v.\u0275\u0275attributeInterpolate1("name","",e.name,"-export")}}function K(e,t){if(1&e&&(v.\u0275\u0275elementStart(0,"div",26),v.\u0275\u0275template(1,Y,1,7,"ng-container",27)(2,X,1,2,"div",28),v.\u0275\u0275elementEnd()),2&e){const e=v.\u0275\u0275nextContext(2);v.\u0275\u0275advance(),v.\u0275\u0275property("ngForOf",e._actions.header),v.\u0275\u0275advance(),v.\u0275\u0275property("ngIf",e.exportOptions.length)}}function J(e,t){if(1&e&&(v.\u0275\u0275elementStart(0,"div",19)(1,"h3",20)(2,"div",21),v.\u0275\u0275template(3,Q,1,3,"i",22),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(4,"div",21),v.\u0275\u0275element(5,"div",23)(6,"div",24),v.\u0275\u0275elementEnd(),v.\u0275\u0275template(7,K,3,2,"div",25),v.\u0275\u0275elementEnd()()),2&e){const e=v.\u0275\u0275nextContext();v.\u0275\u0275advance(3),v.\u0275\u0275property("ngIf",e.iconclass),v.\u0275\u0275advance(2),v.\u0275\u0275property("innerHTML",e.title,v.\u0275\u0275sanitizeHtml),v.\u0275\u0275advance(),v.\u0275\u0275property("innerHTML",e.subheading,v.\u0275\u0275sanitizeHtml),v.\u0275\u0275advance(),v.\u0275\u0275property("ngIf",e.exportOptions.length||e._actions.header.length)}}function Z(e,t){if(1&e&&v.\u0275\u0275elementContainer(0,29),2&e){const e=t.$implicit,i=t.index,n=v.\u0275\u0275nextContext(2),a=v.\u0275\u0275reference(8),s=v.\u0275\u0275reference(10);v.\u0275\u0275property("ngTemplateOutlet","button"===e.widgetType?a:s)("ngTemplateOutletContext",v.\u0275\u0275pureFunction1(3,z,e))("ngTemplateOutletInjector",n.createCustomInjector("actions_footer_"+i,v.\u0275\u0275pureFunction1(5,z,e)))}}function ee(e,t){if(1&e&&(v.\u0275\u0275elementStart(0,"div",31),v.\u0275\u0275template(1,Z,1,7,"ng-container",27),v.\u0275\u0275elementEnd()),2&e){const e=v.\u0275\u0275nextContext();v.\u0275\u0275advance(),v.\u0275\u0275property("ngForOf",e._actions.footer)}}function te(e,t){if(1&e){const e=v.\u0275\u0275getCurrentView();v.\u0275\u0275elementStart(0,"button",32),v.\u0275\u0275listener("click",(function(t){const i=v.\u0275\u0275restoreView(e).btn,n=v.\u0275\u0275nextContext();return v.\u0275\u0275resetView(n.invokeActionEvent(t,i.action))})),v.\u0275\u0275elementEnd()}if(2&e){const e=t.btn,i=v.\u0275\u0275nextContext();v.\u0275\u0275property("ngClass",v.\u0275\u0275pureFunction2(2,H,"condensed"===i.spacing,"addNewRow"===e.key&&(i.isGridEditMode||i.isLoading))),v.\u0275\u0275attribute("aria-label",e.displayName)}}function ie(e,t){if(1&e){const e=v.\u0275\u0275getCurrentView();v.\u0275\u0275elementStart(0,"a",33),v.\u0275\u0275listener("click",(function(t){const i=v.\u0275\u0275restoreView(e).btn,n=v.\u0275\u0275nextContext();return v.\u0275\u0275resetView(n.invokeActionEvent(t,i.action))})),v.\u0275\u0275elementEnd()}if(2&e){const e=t.btn,i=v.\u0275\u0275nextContext();v.\u0275\u0275property("ngClass",v.\u0275\u0275pureFunction2(1,H,"condensed"===i.spacing,"addNewRow"===e.key&&(i.isGridEditMode||i.isLoading)))}}const ne={widgetType:"wm-table",hostClass:"app-grid app-panel panel"},ae={EXCEL:"fa fa-file-excel-o",CSV:"fa fa-file-text-o"},se="rowOperations",oe=()=>{};class re extends o.StylableComponent{static{this.initializeProps=void o.register("wm-table",new Map([["boundarylinks",{value:!1,...o.PROP_BOOLEAN}],["class",o.PROP_STRING],["confirmdelete",{value:"Are you sure you want to delete this?",...o.PROP_STRING}],["datasource",o.PROP_STRING],["dataset",o.PROP_ANY],["deletecanceltext",o.PROP_STRING],["deleteoktext",o.PROP_STRING],["deletemessage",{value:"Record deleted successfully",...o.PROP_STRING}],["directionlinks",{value:!0,...o.PROP_BOOLEAN}],["editmode",o.PROP_STRING],["errorstyle",{value:"hover",...o.PROP_STRING}],["enablecolumnselection",{value:!1,...o.PROP_BOOLEAN}],["enablesort",{value:!0,...o.PROP_BOOLEAN}],["errormessage",o.PROP_STRING],["exportformat",o.PROP_STRING],["exportdatasize",{value:100,...o.PROP_NUMBER}],["filtermode",o.PROP_STRING],["filteronkeypress",{value:!1,...o.PROP_BOOLEAN}],["filternullrecords",{value:!0,...o.PROP_BOOLEAN}],["forceellipses",{value:!0,...o.PROP_BOOLEAN}],["formposition",o.PROP_STRING],["gridclass",{value:"table-hover",...o.PROP_STRING}],["gridfirstrowselect",o.PROP_BOOLEAN],["iconclass",o.PROP_STRING],["insertmessage",{value:"Record added successfully",...o.PROP_STRING}],["isdynamictable",o.PROP_BOOLEAN],["isrowexpansionenabled",o.PROP_BOOLEAN],["loadingdatamsg",{value:"Loading...",...o.PROP_STRING}],["loadingicon",{value:"fa fa-circle-o-notch fa-spin",...o.PROP_STRING}],["maxsize",{value:5,...o.PROP_NUMBER}],["multiselect",o.PROP_BOOLEAN],["name",o.PROP_STRING],["navigation",{value:"Basic",...o.PROP_STRING}],["navigationalign",{value:"left",...o.PROP_STRING}],["nodatamessage",{value:"No data found.",...o.PROP_STRING}],["ondemandmessage",{value:"Load More",...o.PROP_STRING}],["showviewlessbutton",{value:!1,...o.PROP_BOOLEAN}],["viewlessmessage",{value:"View Less",...o.PROP_STRING}],["pagesize",o.PROP_NUMBER],["radioselect",o.PROP_BOOLEAN],["rowclass",o.PROP_STRING],["rowngclass",o.PROP_STRING],["searchlabel",{value:"Search",...o.PROP_STRING}],["show",{value:!0,...o.PROP_BOOLEAN}],["showheader",{value:!0,...o.PROP_BOOLEAN}],["shownewrow",{value:!0,...o.PROP_BOOLEAN}],["showrecordcount",o.PROP_BOOLEAN],["showrowindex",o.PROP_BOOLEAN],["spacing",{value:"normal",...o.PROP_STRING}],["statehandler",{value:"none",...o.PROP_STRING}],["subheading",o.PROP_STRING],["tabindex",{value:0,...o.PROP_NUMBER}],["title",o.PROP_STRING],["updatemessage",{value:"Record updated successfully",...o.PROP_STRING}]]))}set gridData(e){if(this.isDataLoading=!1,this.variableInflight&&g.isEmpty(e))return;if(this.variableInflight=!1,e&&0===e.length?this.callDataGridMethod("setStatus","nodata",this.nodatamessage):this.callDataGridMethod("setStatus","ready"),this.gridOptions.isNavTypeScrollOrOndemand()){if([this._gridData,this.currentPage]=this.paginationService.updateFieldsOnPagination(this,e),this.gridOptions.lastActionPerformed===this.gridOptions.ACTIONS.EDIT){const t=g.floor(this.actionRowIndex%this.pagesize);this._gridData.splice(this.actionRowIndex,1,e[t])}this.setDataGridOption("isLastPage",!!this.dataNavigator.isDisableNext),this.$element.find(".on-demand-datagrid").length||this.dataNavigator.isDisableNext||!this.onDemandLoad?this._gridData&&this._gridData.length&&(this.dataNavigator.isDisableNext||!this.isDataLoading)&&this.callDataGridMethod("hideLoadingIndicator",this.dataNavigator.isDisableNext,this.infScroll):this.gridOptions.addLoadMoreBtn()}else this._gridData=e;let t,i=0;if(this._onChange(this._gridData),this._onTouched(),u.isDefined(e)){if(this.gridOptions.bindScrollEvt(),this.isNavigationEnabled()&&this.dataNavigator.dn.currentPage&&(i=(this.dataNavigator.dn.currentPage-1)*(this.dataNavigator.maxResults||1)+1,this.setDataGridOption("startRowIndex",i)),t=this.callDataGridMethod("getOptions"),!t)return;!t.colDefs.length&&this.fieldDefs.length&&this.setDataGridOption("colDefs",u.getClonedObject(this.fieldDefs)),this.isdynamictable||g.isEmpty(e)||!t.colDefs.length||this.invokeEventCallback("beforedatarender",{$data:this._gridData,$columns:this.columns,data:this._gridData,columns:this.columns}),this.setDataGridOption("data",u.getClonedObject(this._gridData))}}get gridData(){return this._gridData||[]}get selecteditem(){return this.multiselect?u.getClonedObject(this.items):g.isEmpty(this.items)?{}:u.getClonedObject(this.items[0])}set selecteditem(e){this.items.length=0,this.callDataGridMethod("selectRows",e)}onKeyPress(e){13===e.which&&this.invokeEventCallback("enterkeypress",{$event:e,$data:this.gridData})}constructor(e,t,i,n,a,s,r,l,c,d,p,f,v,b){super(e,ne,b),this.inj=e,this.fb=t,this.app=i,this.dynamicComponentProvider=n,this.statePersistence=a,this.paginationService=s,this.viewport=r,this.parentList=l,this.binddataset=c,this.binddatasource=d,this.readonlygrid=p,this.ngZone=f,this.trustAsPipe=v,this.rowActionsCompiledTl={},this.rowFilterCompliedTl={},this.inlineCompliedTl={},this.inlineNewCompliedTl={},this.customExprCompiledTl={},this.customExprCompiledSummaryTl={},this.rowDefInstances={},this.rowDefMap={},this.rowExpansionActionTl={},this.columns={},this.formfields={},this.enablesort=!0,this.showviewlessbutton=!1,this.primaryKey=[],this.selectedItems=[],this.selectedItemChange=new h.Subject,this.selectedItemChange$=this.selectedItemChange.asObservable(),this.actions=[],this._actions={header:[],footer:[]},this.exportOptions=[],this.headerConfig=[],this.items=[],this.rowActions=[],this.shownavigation=!1,this.showFirstRow=!1,this.documentClickBind=oe,this.prevFilterExpression=[],this.fieldDefs=[],this.rowDef={},this.rowInstance={},this.fullFieldDefs=[],this.variableInflight=!0,this.applyProps=new Map,this.redraw=g.debounce(this._redraw,150),this.debouncedHandleLoading=g.debounce(this.handleLoading,350),this.rowFilter={},this._searchSortHandler=oe,this.searchSortHandler=(...e)=>{this._searchSortHandler.apply(this,e)},this.onRowFilterChange=oe,this.onFilterConditionSelect=oe,this.showClearIcon=oe,this.clearRowFilter=oe,this.adjustContainer=oe,this._pageLoad=!0,this.gridOptions={data:[],colDefs:[],startRowIndex:1,mode:"",sortInfo:{field:"",direction:""},filtermode:"",filteronkeypress:!1,searchLabel:"",rowActions:[],headerConfig:[],rowClass:"",editmode:"",formPosition:"",isMobile:!1,rowExpansionEnabled:!1,rowDef:{position:"0"},name:"",messages:{selectField:"Select Field"},securityUtils:{pipeTransform:{}},navigation:"",isdynamictable:"",deletedRowIndex:-1,lastActionPerformed:"scroll",isSearchTrigerred:!1,isDatasetUpdated:!1,isDataUpdatedByUser:!1,showviewlessbutton:!1,ondemandmessage:"",viewlessmessage:"",loadingdatamsg:"",isNextPageData:void 0,ACTIONS:{DELETE:"delete",EDIT:"edit",SEARCH_OR_SORT:"search_or_sort",DEFAULT:"scroll",FILTER_CRITERIA:"filter",DATASET_UPDATE:"dataset_update"},actionRowIndex:void 0,actionRowPage:void 0,isLastPage:!1,getCurrentPage:()=>g.get(this.dataNavigator,"dn.currentPage")||1,setCurrentPage:e=>{g.set(this.dataNavigator,"dn.currentPage",e||1)},getDataSource:()=>this.datasource,getPageSize:()=>this.pagesize,getPageCount:()=>this.dataNavigator.pageCount,enableNavigation:()=>{this.dataNavigator.widget.isDisableNext=!1,this.dataNavigator.widget.isDisableLast=!1,this.gridOptions.mode="viewless"},setDeletedRowIndex:e=>{this.setDataGridOption("deletedRowIndex",e)},setLastActionPerformed:e=>{this.setDataGridOption("lastActionPerformed",e||this.gridOptions.lastActionPerformed)},isNavTypeScrollOrOndemand:()=>"Scroll"===this.gridOptions.navigation||"On-Demand"===this.gridOptions.navigation,setIsSearchTrigerred:e=>{this.setDataGridOption("isSearchTrigerred",e)},setIsDatasetUpdated:e=>{this.setDataGridOption("isDatasetUpdated",e)},setIsNextPageData:e=>{this.setDataGridOption("isNextPageData",e)},setIsDataUpdatedByUser:e=>{this.setDataGridOption("isDataUpdatedByUser",e)},onDataRender:()=>{this.ngZone.run((()=>{this.gridData.length&&this.invokeEventCallback("datarender",{$data:this.gridData,data:this.gridData}),this.multiselect||(this.items.length=0),this.infScroll||this.onDemandLoad||this.callDataGridMethod("selectRows",this.items),this.selectedItems=this.callDataGridMethod("getSelectedRows"),this.selectedItems.length&&this.selectedItemChange.next(this.selectedItems),this._isPageSearch&&this.filterInfo&&this.searchSortHandler(this.filterInfo,void 0,"search")}))},onRowSelect:(e,t)=>{this.ngZone.run((()=>{this.selectedItems=this.callDataGridMethod("getSelectedRows"),this.selectedItems.length&&this.selectedItemChange.next(this.selectedItems);const i=this.addRowIndex(e);if(this.selectedItems.length&&i.$index&&"none"!==this.getConfiguredState()&&this.dataNavigator&&o.unsupportedStatePersistenceTypes.indexOf(this.navigation)<0){const e={page:this.dataNavigator.dn.currentPage,index:i.$index-1},t=this.statePersistence.getWidgetState(this);g.get(t,"selectedItem")&&this.multiselect?(g.some(t.selectedItem,e)||t.selectedItem.push(e),this.statePersistence.setWidgetState(this,{selectedItem:t.selectedItem})):this.statePersistence.setWidgetState(this,{selectedItem:[e]})}else console.warn("Retain State handling on Widget "+this.name+" is not supported for current pagination type.");this.invokeEventCallback("rowselect",{$data:i,$event:t,row:i})}))},assignSelectedItems:(e,t,i)=>{this.ngZone.run((()=>{this.multiselect?-1===g.findIndex(this.items,e)&&(void 0===i?._selected||1==i?._selected||this.gridfirstrowselect&&0==i?.rowId&&!this.showFirstRow)&&(this.items.push(e),0==i?.rowId&&(this.showFirstRow=!0)):(this.items.length=0,this.items.push(e))}))},onRowDblClick:(e,t)=>{const i=this.addRowIndex(e);this.invokeEventCallback("rowdblclick",{$data:i,$event:t,row:i})},onRowDeselect:(e,t)=>{this.multiselect&&this.ngZone.run((()=>{this.items=g.pullAllWith(this.items,[e],g.isEqual),this.selectedItems=this.callDataGridMethod("getSelectedRows"),this.invokeEventCallback("rowdeselect",{$data:e,$event:t,row:e});const i=this.addRowIndex(e);if("none"!==this.getConfiguredState()&&o.unsupportedStatePersistenceTypes.indexOf(this.navigation)<0){const e={page:this.dataNavigator.dn.currentPage,index:i.$index-1},t=this.statePersistence.getWidgetState(this);g.get(t,"selectedItem")&&(g.remove(t.selectedItem,(function(t){return g.isEqual(t,e)})),this.statePersistence.removeWidgetState(this,"selectedItem"),t.selectedItem.length>0&&this.statePersistence.setWidgetState(this,{selectedItem:t.selectedItem}))}else console.warn("Retain State handling on Widget "+this.name+" is not supported for current pagination type.")}))},callOnRowDeselectEvent:(e,t)=>{this.items=this.selectedItems=this.callDataGridMethod("getSelectedRows"),this.invokeEventCallback("rowdeselect",{$data:e,$event:t,row:e})},callOnRowClickEvent:(e,t)=>{this.ngZone.run((()=>{if(t&&t.hasOwnProperty("originalEvent")){const i=this.addRowIndex(e);this.invokeEventCallback("rowclick",{$data:i,$event:t,row:i})}}))},closePopover:u.closePopover,onColumnSelect:(e,t)=>{this.selectedColumns=this.callDataGridMethod("getSelectedColumns"),this.invokeEventCallback("columnselect",{$data:e,$event:t})},onColumnDeselect:(e,t)=>{this.selectedColumns=this.callDataGridMethod("getSelectedColumns"),this.invokeEventCallback("columndeselect",{$data:e,$event:t})},onHeaderClick:(e,t)=>{this.invokeEventCallback("headerclick",{$event:t,$data:e,column:e})},onRowDelete:(e,t,i,n,a)=>{this.ngZone.run((()=>{this.deleteRecord(g.extend({},a,{row:e,cancelRowDeleteCallback:t,evt:i,callBack:n}))}))},onRowInsert:(e,t,i,n)=>{this.insertRecord(g.extend({},n,{row:e,event:t,callBack:i}))},beforeRowUpdate:(e,t)=>{this._liveTableParent&&this._liveTableParent.updateRow(e,t),this.prevData=u.getClonedObject(e)},afterRowUpdate:(e,t,i,n)=>{this.updateRecord(g.extend({},n,{row:e,prevData:this.prevData,event:t,callBack:i}))},onBeforeRowUpdate:(e,t,i)=>this.invokeEventCallback("beforerowupdate",{$event:t,$data:e,row:e,options:i}),onBeforeRowInsert:(e,t,i)=>this.invokeEventCallback("beforerowinsert",{$event:t,$data:e,row:e,options:i}),onBeforeRowDelete:(e,t,i)=>{const n=this.addRowIndex(e);return this.invokeEventCallback("beforerowdelete",{$event:t,row:n,options:i})},onFormRender:(e,t,i,n)=>{const a=n?"inlineInstanceNew":"inlineInstance";setTimeout((()=>{this.formWidgets={},this.fieldDefs.forEach((e=>{e[a]&&(this.formWidgets[e.field]=e[a],e[a].context&&(e[a].context.formWidgets=this.formWidgets),this.setDisabledOnField(i,e,a))})),this.invokeEventCallback("formrender",{$event:t,formWidgets:this.formWidgets,$operation:i})}),250)},onBeforeFormRender:(e,t,i)=>this.invokeEventCallback("beforeformrender",{$event:t,row:e,$operation:i}),registerRowNgClassWatcher:(e,t)=>{if(!this.rowngclass)return;const i=this.getClonedRowObject(e),n=`${this.widgetId}_rowNgClass_${t}`;u.$unwatch(n),this.registerDestroyListener(u.$watch(this.rowngclass,this.viewParent,{row:i},((e,i)=>{this.callDataGridMethod("applyRowNgClass",o.getConditionalClasses(e,i),t)}),n))},registerColNgClassWatcher:(e,t,i,n)=>{if(!t["col-ng-class"])return;const a=this.getClonedRowObject(e),s=`${this.widgetId}_colNgClass_${i}_${n}`;u.$unwatch(s),this.registerDestroyListener(u.$watch(t["col-ng-class"],this.viewParent,{row:a},((e,t)=>{this.callDataGridMethod("applyColNgClass",o.getConditionalClasses(e,t),i,n)}),s))},clearCustomExpression:()=>{this.customExprViewRef.clear(),this.customExprCompiledTl={},this.customExprCompiledSummaryTl={}},clearRowDetailExpression:()=>{this.rowDetailViewRef.clear(),this.rowDefMap={},this.rowDefInstances={}},generateCustomExpressions:(e,t,i)=>{const n=this.getClonedRowObject(e),a=e=>{if(!e)return;const a={},s={row:n,colDef:a};this.addEventsToContext(s);const o=this.customExprViewRef.createEmbeddedView(e,s).rootNodes[0],r=o.getAttribute("data-col-identifier");g.extend(a,this.columns[r]),i?this.customExprCompiledSummaryTl[r+t]=o:this.customExprCompiledTl[r+t]=o};this.isdynamictable?this.fieldDefs.forEach((e=>{a(e.customExprTmpl)})):this.customExprTmpl.forEach(a.bind(this))},generateRowExpansionCell:(e,t)=>{const i=this.getClonedRowObject(e);this.rowExpansionActionTmpl.forEach((e=>{this.rowExpansionActionTl[t]=this.rowExpansionActionViewRef.createEmbeddedView(e,{row:i}).rootNodes}))},getRowExpansionAction:e=>this.rowExpansionActionTl[e],generateRowDetailView:(e,t,i,n,a,s)=>{const o=this.getClonedRowObject(t),r=u.getClonedObject(this.rowDef);if(!1===this.rowInstance.invokeEventCallback("beforerowexpand",{$event:e,$data:r,row:o}))return;if(!r.content)return;if(s(),this.rowDefMap[i]&&this.rowDefMap[i].content===r.content)return void this.rowInstance.invokeEventCallback("rowexpand",{$event:e,row:o,$data:this.rowDefInstances[i]});this.rowDefMap[i]=r,n.empty(),n.hide(),a.show();const l={row:o,rowDef:r,containerLoad:t=>{setTimeout((()=>{a.hide(),n.show(),this.rowDefInstances[i]=t,this.rowInstance.invokeEventCallback("rowexpand",{$event:e,row:o,$data:t})}),500)}},c=this.rowDetailViewRef.createEmbeddedView(this.rowExpansionTmpl,l).rootNodes[0];n[0].appendChild(c),u.$appDigest()},onBeforeRowCollapse:(e,t,i)=>this.rowInstance.invokeEventCallback("beforerowcollapse",{$event:e,row:t,$data:this.rowDefInstances[i]}),onRowCollapse:(e,t)=>{this.rowInstance.invokeEventCallback("rowcollapse",{$event:e,row:t})},getCustomExpression:(e,t,i)=>{let n;return n=i?this.customExprCompiledSummaryTl[e+t]:this.customExprCompiledTl[e+t],n||""},clearRowActions:()=>{this.rowActionsViewRef.clear(),this.rowActionsCompiledTl={},this.rowExpansionActionViewRef.clear(),this.rowExpansionActionTl={}},generateRowActions:(e,t)=>{const i=this.getClonedRowObject(e);this.rowActionsCompiledTl[t]=[],this.rowActionTmpl.forEach((e=>{this.rowActionsCompiledTl[t].push(...this.rowActionsViewRef.createEmbeddedView(e,{row:i}).rootNodes)}))},getRowAction:e=>this.rowActionsCompiledTl[e],generateInlineEditRow:(e,t)=>{const i=this.getClonedRowObject(e);if(t)return this.inlineEditNewViewRef.clear(),this.inlineNewCompliedTl={},this.inlineWidgetNewTmpl.forEach((e=>{let t;const n={row:i,getControl:()=>this.ngform.controls[t+"_new"]||{},getValidationMessage:()=>this.columns[t]&&this.columns[t].validationmessage,getPendingSpinnerStatusNew:()=>this.columns[t]&&this.columns[t].showPendingSpinnerNew},a=this.inlineEditNewViewRef.createEmbeddedView(e,n).rootNodes[0];t=a.getAttribute("data-col-identifier"),this.inlineNewCompliedTl[t]=a})),void this.clearForm(!0);this.inlineEditViewRef.clear(),this.inlineCompliedTl={},this.clearForm(),this.inlineWidgetTmpl.forEach((e=>{let t;const n={row:i,getControl:()=>this.ngform.controls[t]||{},getValidationMessage:()=>this.columns[t]&&this.columns[t].validationmessage,getPendingSpinnerStatus:()=>this.columns[t]&&this.columns[t].showPendingSpinner},a=this.inlineEditViewRef.createEmbeddedView(e,n).rootNodes[0];t=a.getAttribute("data-col-identifier"),this.inlineCompliedTl[t]=a}))},getInlineEditWidget:(e,t,i)=>i?(this.gridOptions.setFieldValue(e+"_new",t),this.inlineNewCompliedTl[e]):(this.gridOptions.setFieldValue(e,t),this.inlineCompliedTl[e]),setFieldValue:(e,t)=>{const i=this.ngform.controls&&this.ngform.controls[e];i&&i.setValue(t)},getFieldValue:e=>{const t=this.ngform.controls&&this.ngform.controls[e];return t&&t.value},addLoadMoreBtn:()=>{this.callDataGridMethod("addLoadMoreBtn",this.ondemandmessage,this.loadingdatamsg,(e=>{this.gridOptions.setIsNextPageData(!0),this.gridOptions.setIsDataUpdatedByUser(!1),"viewless"===this.gridOptions.mode?(this.dataNavigator.navigatePage("first",e,!0),this.gridOptions.mode=""):(this.dataNavigator.navigatePage("next",e),this.isDataLoading=!0)}),this.infScroll)},bindScrollEvt:()=>{this._gridData&&this._gridData.length&&this.infScroll&&setTimeout((()=>{this.paginationService.bindScrollEvt(this,"tbody",o.DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME)}),0)},generateFilterRow:()=>{this.filterViewRef.clear(),this.rowFilterCompliedTl={},this.filterTmpl.forEach((e=>{const t=this.filterViewRef.createEmbeddedView(e,{changeFn:this.onRowFilterChange.bind(this),isDisabled:e=>this.emptyMatchModes.indexOf(this.rowFilter[e]&&this.rowFilter[e].matchMode)>-1}).rootNodes[0];this.rowFilterCompliedTl[t.getAttribute("data-col-identifier")]=t}))},getFilterWidget:e=>this.rowFilterCompliedTl[e],setGridEditMode:e=>{this.ngZone.run((()=>{this.isGridEditMode=e,u.$appDigest()}))},setGridState:e=>{this.isLoading="loading"===e},setActionRowIndex:e=>{this.gridOptions.isNavTypeScrollOrOndemand()&&(this.actionRowIndex=parseInt(e),this.setDataGridOption("actionRowIndex",this.actionRowIndex),g.isNaN(this.actionRowIndex)||(this.actionRowPage=Math.floor(this.actionRowIndex/this.pagesize)+1,this.setDataGridOption("actionRowPage",this.actionRowPage||this.gridOptions.actionRowPage)))},clearActionRowIndex:()=>{this.isRowDeleted||!this.infScroll&&!this.onDemandLoad||this.clearActionRowVars()},noChangesDetected:()=>{this.toggleMessage(!0,"info","No Changes Detected","")},redrawWidgets:()=>{this.fieldDefs.forEach((e=>{u.triggerFn(e.inlineInstance&&e.inlineInstance.redraw),u.triggerFn(e.inlineInstanceNew&&e.inlineInstanceNew.redraw),u.triggerFn(e.filterInstance&&e.filterInstance.redraw)}))},searchHandler:this.searchSortHandler.bind(this),sortHandler:this.searchSortHandler.bind(this),timeoutCall:(e,t)=>{setTimeout(e,t)},runInNgZone:e=>{this.ngZone.run(e)},safeApply:()=>{u.$appDigest()},setTouched:e=>{const t=this.ngform.controls[e];t&&t.markAsTouched()},clearForm:this.clearForm.bind(this),callLoadInlineWidgetData:()=>{this.fullFieldDefs.forEach((e=>{g.isUndefined(e.isDataSetBound)&&u.triggerFn(e.loadInlineWidgetData&&e.loadInlineWidgetData.bind(e))}))},applyValidations:(e,t)=>{t?u.triggerFn(e.applyNewRowValidations&&e.applyNewRowValidations.bind(e)):u.triggerFn(e.applyValidations&&e.applyValidations.bind(e))},removeValidations:e=>{this.fullFieldDefs.forEach((t=>{t.readonly||"rowOperations"===t.binding||(e?u.triggerFn(t.removeNewRowValidations&&t.removeNewRowValidations.bind(t)):u.triggerFn(t.removeValidations&&t.removeValidations.bind(t)))}))}},this._selectedItemsExist=!1,this._onChange=()=>{},this._onTouched=()=>{},o.styler(this.nativeElement,this),this.ngform=t.group({}),this.addEventsToContext(this.context);[this.app.subscribe("check-state-persistence-options",(e=>{let t=g.get(this.datasource,"name");if(t||(t=o.extractDataSourceName(this.binddatasource)),g.get(e,"variable.name")===t&&this._pageLoad&&"none"!==this.getConfiguredState()){this._pageLoad=!1;const t=this.statePersistence.getWidgetState(this);t?e=this.handleStateParams(t,e):this.setDataGridOption("selectFirstRow",this.gridfirstrowselect)}})),this.app.subscribe("toggle-variable-state",(e=>{if(this.datasource&&this.datasource.execute(u.DataSource.Operation.IS_API_AWARE)&&u.isDataSourceEqual(e.variable,this.datasource)){if(this._pageLoad&&"none"!==this.getConfiguredState()){this._pageLoad=!1;const t=this.statePersistence.getWidgetState(this);t?e=this.handleStateParams(t,e):this.setDataGridOption("selectFirstRow",this.gridfirstrowselect)}u.isDefined(this.variableInflight)?this.debouncedHandleLoading(e):this.handleLoading(e)}})),this.app.subscribe("setup-cud-listener",(e=>{this.name===e&&(this._isDependent=!0,this.selectedItemChange$.pipe(m.debounceTime(250)).subscribe(this.triggerWMEvent.bind(this)))}))].forEach((e=>this.registerDestroyListener(e))),this.deleteoktext=this.appLocale.LABEL_OK,this.deletecanceltext=this.appLocale.LABEL_CANCEL}ngAfterContentInit(){super.ngAfterContentInit(),this.headerConfig=this.headerConfig.filter(this.filterEmptyValues.bind(this)),g.remove(this.fieldDefs,(e=>void 0===e));this._liveTableParent&&(this.isPartOfLiveGrid=!0),!this.readonlygrid&&this.editmode||("true"===this.readonlygrid?this.editmode="":this.isPartOfLiveGrid?this.editmode="inline"===this.isPartOfLiveGrid.formlayout?o.EDIT_MODE.FORM:o.EDIT_MODE.DIALOG:this.editmode=this.readonlygrid?o.EDIT_MODE.INLINE:""),this.gridOptions.colDefs=this.fullFieldDefs,this.gridOptions.rowActions=this.rowActions,this.gridOptions.headerConfig=this.headerConfig,this.gridOptions.rowClass=this.rowclass,this.gridOptions.editmode=this.editmode,this.gridOptions.formPosition=this.formposition,this.gridOptions.filtermode=this.filtermode,this.gridOptions.filteronkeypress=this.filteronkeypress,this.gridOptions.searchLabel=this.searchlabel,this.gridOptions.isMobile=u.isMobile(),this.gridOptions.name=this.name,this.gridOptions.securityUtils.pipeTransform=this.trustAsPipe,this.gridOptions.navigation=this.navigation,this.gridOptions.isdynamictable=this.isdynamictable,this.gridOptions.showviewlessbutton=this.showviewlessbutton,this.gridOptions.ondemandmessage=this.ondemandmessage,this.gridOptions.viewlessmessage=this.viewlessmessage,this.gridOptions.loadingdatamsg=this.loadingdatamsg,g.isEmpty(this.gridData)||(this.gridOptions.data=u.getClonedObject(this.gridData)),this.gridOptions.messages={selectField:this.appLocale.MESSAGE_SELECT_FIELD},this.datagridElement=$(this._tableElement.nativeElement),this.gridElement=this.$element,this.$element.css({position:"relative"}),g.forEach({showrowindex:"showRowIndex",multiselect:"multiselect",radioselect:"showRadioColumn",filternullrecords:"filterNullRecords",enablesort:"enableSort",showheader:"showHeader",enablecolumnselection:"enableColumnSelection",shownewrow:"showNewRow",gridfirstrowselect:"selectFirstRow"},((e,t)=>{u.isDefined(this[t])&&(this.gridOptions[e]="true"===this[t]||!0===this[t])})),"none"!==this.statehandler&&(this.gridOptions.selectFirstRow=!1),this.renderOperationColumns(),this.gridOptions.colDefs=this.fieldDefs,this.datagridElement.datatable(this.gridOptions),this.callDataGridMethod("setStatus","loading",this.loadingdatamsg),this.applyProps.forEach((e=>this.callDataGridMethod(...e))),this.editmode===o.EDIT_MODE.QUICK_EDIT&&(this.documentClickBind=this._documentClickBind.bind(this),document.addEventListener("click",this.documentClickBind))}getConfiguredState(){const e=this.statePersistence.computeMode(this.statehandler);return e&&e.toLowerCase()}handleStateParams(e,t){return g.get(e,"selectedItem")&&(this._selectedItemsExist=!0),t.options=t.options||{},g.get(e,"pagination")?(t.options.page=e.pagination,g.get(e,"sort")&&(this.sortStateHandler(e),t.options.orderBy=g.get(e,"sort.field")+" "+g.get(e,"sort.direction")),g.get(e,"search")&&(setTimeout((()=>{this.searchStateHandler(e)}),500),t.options.filterFields=this.getFilterFields(e.search))):(t.options.page=1,g.get(e,"search")&&(setTimeout((()=>{this.searchStateHandler(e)}),500),t.options.filterFields=this.getFilterFields(e.search)),g.get(e,"sort")&&(this.sortStateHandler(e),t.options.orderBy=g.get(e,"sort.field")+" "+g.get(e,"sort.direction"))),t}triggerWMEvent(e){"dialog"!==this.editmode&&(u.$invokeWatchers(!0),this.app.notify("wm-event",{eventName:"selectedItemChange",widgetName:this.name,row:e,table:this}))}sortStateHandler(e){const t=this.datagridElement.find('th[data-col-field="'+g.get(e,"sort.field")+'"] .sort-icon');"asc"===g.get(e,"sort.direction")&&t.length?t.addClass("asc wi wi-long-arrow-up"):"desc"===g.get(e,"sort.direction")&&t.length&&t.addClass("desc wi wi-long-arrow-down")}searchStateHandler(e){if(g.isArray(e.search))g.forEach(e.search,(e=>{this.rowFilter[e.field]&&(this.rowFilter[e.field].value=e.value,this.rowFilter[e.field].matchMode=e.matchMode,this.rowFilter[e.field].type=e.type,$(this.rowFilterCompliedTl[e.field]).length&&("integer"===e.type?parseInt(e.value):e.value,$(this.rowFilterCompliedTl[e.field]).find("input").val(e.value)))}));else{const t=this.datagridElement;t.find('[data-element="dgSearchText"]').val(e.search.value),t.find('[data-element="dgFilterValue"]').val(e.search.field)}}filterEmptyValues(e){return e.columns&&(e.columns=e.columns.filter(this.filterEmptyValues.bind(this))),void 0!==e}compareFilterExpressions(e,t){return!(e.length!==t.length||!g.isEqual(e,t))}setLastActionToFilterCriteria(){this.prevFilterExpression=g.get(this.datasource,"filterExpressions.rules")?u.getClonedObject(this.datasource.filterExpressions.rules):u.getClonedObject([].concat(this.datasource.dataBinding)),this.gridOptions.setLastActionPerformed(this.gridOptions.ACTIONS.FILTER_CRITERIA),this.gridOptions.setIsSearchTrigerred(!0)}setLastActionToDatasetUpdate(){this.gridOptions.setLastActionPerformed(this.gridOptions.ACTIONS.DATASET_UPDATE),this.gridOptions.setCurrentPage(1),this.gridOptions.setIsDatasetUpdated(!0)}checkIfVarFiltersApplied(){if(!g.isEmpty(g.get(this.datasource,"filterExpressions.rules"))||!g.isEmpty(g.get(this.datasource,"dataBinding"))){const e=g.get(this.datasource,"filterExpressions.rules")?this.datasource.filterExpressions.rules:[].concat(this.datasource.dataBinding);this.compareFilterExpressions(this.prevFilterExpression,e)||this.setLastActionToFilterCriteria()}}watchVariableDataSet(e){let t;if(this.gridOptions.isNavTypeScrollOrOndemand()&&this.checkIfVarFiltersApplied(),"wm.Variable"===g.get(this.datasource,"category")&&this._pageLoad&&"none"!==this.getConfiguredState()){const e=this.statePersistence.getWidgetState(this);this._pageLoad=!1,g.get(e,"selectedItem")?this._selectedItemsExist=!0:this.setDataGridOption("selectFirstRow",this.gridfirstrowselect),g.get(e,"search")&&(this.searchStateHandler(e),this.searchSortHandler(e.search,void 0,"search",!0)),g.get(e,"sort")&&(this.searchSortHandler(e.sort,void 0,"sort",!0),this.sortStateHandler(e)),g.get(e,"pagination")&&this.dataNavigator.pageChanged({page:e.pagination},!0)}if(this.dataNavigatorWatched&&g.isUndefined(e)&&this.__fullData)return;this.variableInflight&&!this.infScroll&&this.callDataGridMethod("setStatus","loading",this.loadingdatamsg),t=u.getValidJSON(e),t&&(e=t);const i=this.getSortExpr(),n=i.split(" ");if(i&&n.length&&(this.sortInfo={direction:n[1],field:n[0]}),this.isDataValid()){if(e){if(this.shownavigation&&!this.dataNavigatorWatched)return void this.enablePageNavigation()}else this.resetPageNavigation(),""!==e&&void 0!==e&&"wm.Variable"!==g.get(this.datasource,"category")||(this.variableInflight=!1),this.variableInflight||this.callDataGridMethod("setStatus","nodata",this.nodatamessage),this.setDataGridOption("selectFirstRow",this.gridfirstrowselect);!this.isNavigationEnabled()&&e&&this.checkFiltersApplied(this.getSortExpr()),!g.isObject(e)||""===e||e&&""===e.dataValue?this.variableInflight||this.setGridData([]):e&&this.populateGridData(e)}}ngOnDestroy(){document.removeEventListener("click",this.documentClickBind),this.navigatorResultWatch&&this.navigatorResultWatch.unsubscribe(),this.navigatorMaxResultWatch&&this.navigatorMaxResultWatch.unsubscribe(),super.ngOnDestroy()}addRowIndex(e){const t=u.getClonedObject(e),i=g.indexOf(this.gridOptions.data,e);return i<0?e:(t.$index=i+1,t.$isFirst=1===t.$index,t.$isLast=this.gridData.length===t.$index,t)}addEventsToContext(e){e.addNewRow=()=>this.addNewRow(),e.deleteRow=()=>this.deleteRow(),e.editRow=()=>this.editRow()}execute(e,t){return![u.DataSource.Operation.IS_API_AWARE,u.DataSource.Operation.IS_PAGEABLE,u.DataSource.Operation.SUPPORTS_SERVER_FILTER].includes(e)&&(this.datasource?this.datasource.execute(e,t):{})}isNavigationEnabled(){return this.shownavigation&&this.dataNavigator&&this.dataNavigatorWatched}getClonedRowObject(e){const t=u.getClonedObject(e);return t.getProperty=e=>g.get(t,e),t.$isFirst=1===t.$index,t.$isLast=this.gridData.length===t.$index,delete t.$$index,delete t.$$pk,t}handleLoading(e){this.variableInflight=e.active,e.active?this.callDataGridMethod("setStatus","loading",this.loadingdatamsg):!this.isGridEditMode&&g.isEmpty(this.dataset)?this.callDataGridMethod("setStatus","nodata",this.nodatamessage):this.callDataGridMethod("setStatus","ready")}setDisabledOnField(e,t,i){"new"===e||!t["primary-key"]||"assigned"!==t.generator||t["related-entity-name"]||t.period||(t[i].disabled=!0)}resetFormControl(e){e.markAsUntouched(),e.markAsPristine()}clearForm(e){const t=this.ngform.controls;g.keys(this.ngform.controls).forEach((i=>{!i.endsWith("_filter")&&(i.endsWith("_new")&&e||!i.endsWith("_new")&&!e)&&(t[i].setValue(""),this.resetFormControl(t[i]))}))}showFieldBasedOnScreenType(e){let t;return t=u.isMobile()&&this.viewport.isMobileType?e.mobileDisplay:this.viewport.isTabletType?e.tabletDisplay:e.pcDisplay,t}isEmptyRecord(e){let t,i;return Object.keys(e).every(((n,a)=>(t=e[n],i=this.fieldDefs.length&&u.isDefined(this.fieldDefs[a])&&this.showFieldBasedOnScreenType(this.fieldDefs[a])||!0,!i||(null==t||""===t))))}removeEmptyRecords(e){const t=e;let i=[];return t&&t.length&&(i=t.filter((e=>e&&!this.isEmptyRecord(e)))),i}setGridData(e){const t=this.filternullrecords?this.removeEmptyRecords(e):e;"wm.Variable"!==g.get(this.datasource,"category")&&void 0!==g.get(this.datasource,"category")||(this.variableInflight=!1),this.variableInflight||(t&&0===t.length?this.callDataGridMethod("setStatus","nodata",this.nodatamessage):this.callDataGridMethod("setStatus","ready")),this.gridData=t}setDataGridOption(e,t,i=!1){if(!this.datagridElement||!this.datagridElement.datatable||!this.datagridElement.datatable("instance"))return;const n={};!u.isDefined||g.isEqual(t,this.gridOptions[e])&&!i||(n[e]=t,this.datagridElement.datatable("option",n),this.gridOptions[e]=t)}callDataGridMethod(...e){if(this.datagridElement&&this.datagridElement.datatable("instance"))return this.datagridElement.datatable.apply(this.datagridElement,e);this.applyProps.set(e[1],e)}renderOperationColumns(){let e,t;const i=o.getRowOperationsColumn(),n={name:i.field,field:i.field,isPredefined:!0};this.fieldDefs.length&&(e=g.find(this.fullFieldDefs,{field:se,type:"custom"}),g.remove(this.fieldDefs,{type:"custom",field:se}),g.remove(this.headerConfig,{field:i.field}),this.rowActions.length&&(e?(t=e.rowactionsposition?g.toNumber(e.rowactionsposition):this.fieldDefs.length,this.fieldDefs.splice(t,0,e),0===t?this.headerConfig.unshift(n):this.headerConfig.push(n)):(this.fieldDefs.push(i),this.headerConfig.push(n))),this.setDataGridOption("headerConfig",this.headerConfig))}enablePageNavigation(){this.dataset&&this.binddataset&&this.dataNavigator&&(this.dataNavigatorWatched=!0,this.navigatorResultWatch&&this.navigatorResultWatch.unsubscribe(),this.navigatorResultWatch=this.dataNavigator.resultEmitter.subscribe((e=>{u.isDefined(e)?g.isEqual(this.dataset,e)?this.watchVariableDataSet(e):g.isArray(e)?this.widget.dataset=[].concat(e):g.isObject(e)?this.widget.dataset=g.extend({},e):this.widget.dataset=e:this.widget.dataset=void 0}),!0),this.navigatorMaxResultWatch&&this.navigatorMaxResultWatch.unsubscribe(),this.navigatorMaxResultWatch=this.dataNavigator.maxResultsEmitter.subscribe((e=>{this.pagesize=e})),this.__fullData=this.dataset,this.dataNavigator.widget.maxResults=this.pagesize||5,this.dataNavigator.options={maxResults:this.pagesize||5},this.removePropertyBinding("dataset"),this.dataNavigator.setBindDataSet(this.binddataset,this.viewParent,this.datasource,this.dataset,this.binddatasource,void 0,this.statehandler))}resetPageNavigation(){this.dataNavigator&&this.dataNavigator.resetPageNavigation()}isDataValid(){let e;const t=this.dataset||{};return t.error&&(e=t.error),t.data&&t.data.error&&t.data.errorMessage&&(e=t.data.errorMessage),!e||(this.setGridData([]),this.callDataGridMethod("setStatus","error",e),!1)}populateGridData(e){let t;if(e=o.transformData(e,this.name),!this.isNavigationEnabled()&&this._isClientSearch?(t=u.getClonedObject(e),t=this.getSearchResult(t,this.filterInfo),t=this.getSortResult(t,this.sortInfo),this.serverData=t):this.serverData=e,this.isdynamictable?this.createGridColumns(this.serverData):this.setGridData(this.serverData),"none"!==this.getConfiguredState()&&this._selectedItemsExist&&e.length){const e=this.statePersistence.getWidgetState(this);let t;g.get(e,"selectedItem")&&(t=e.selectedItem.filter((e=>e.page===this.dataNavigator.dn.currentPage)),this._selectedItemsExist=!1,t.length&&this.selecteditem.length!==e.selectedItem.length&&(g.isArray(this.selecteditem)?t.forEach((e=>{this.selectItem(e.index,void 0)})):this.selecteditem=t.map((function(e){return e.index}))))}}async generateDynamicColumns(e){if(this.fieldDefs=[],this.filterTmpl._results=[],g.isEmpty(e))return;let t="";e.forEach((e=>{let i="",n="";g.forEach(e,((e,t)=>{g.isUndefined(e)||""===e||("customExpression"===t?n=e:i+=` ${t}="${e}"`)})),t+=`<wm-table-column ${i} tableName="${this.name}${this.$attrs.get("table_reference")}">${n}</wm-table-column>`})),this.dynamicTableRef.clear(),this._dynamicContext||(this._dynamicContext=Object.create(this.viewParent),this._dynamicContext[this.getAttr("wmTable")]=this),this.noOfColumns=e.length;const i=await this.dynamicComponentProvider.getComponentFactoryRef("app-table-dynamic-"+this.widgetId,t,{noCache:!0,transpile:!0}),n=this.dynamicTableRef.createComponent(i,0,this.inj);u.extendProto(n.instance,this._dynamicContext),this.$element.find(".dynamic-table-container")[0].appendChild(n.location.nativeElement)}prepareColDefs(e){let t,i,n=0,a=0;this.fieldDefs=[],this.headerConfig=[],this.columns={},i=e,t=o.prepareFieldDefs(i),g.forEach(t,(e=>{e.binding=e.field,e.caption=e.displayName,e.pcDisplay=!0,e.mobileDisplay=!0,e.tabletDisplay=!0,e.searchable=!0,e.showinfilter=!0,e.type="string",e.index=n,e.headerIndex=a,n++,a++})),t.forEach((e=>{this.columns[e.field]=e})),this.invokeEventCallback("beforedatarender",{$data:e,$columns:this.columns,data:e,columns:this.columns}),t=[],g.forEach(this.columns,(e=>{t.push(e)})),this.generateDynamicColumns(t)}createGridColumns(e){const t=e&&!e.error;t&&!g.isArray(e)&&(e=[e]),g.isEmpty(e)?this.setGridData(e):t&&(this.prepareColDefs(e),this.serverData=e,this.setGridData(this.serverData))}getSortExpr(){let e,t;return this.datasource&&this.datasource.execute(u.DataSource.Operation.IS_PAGEABLE)&&(t=this.datasource.execute(u.DataSource.Operation.GET_PAGING_OPTIONS),e=g.isEmpty(t)?"":o.getOrderByExpr(t.sort)),e||""}onPropertyChange(e,t,i){let n;switch(e){case"datasource":!1===t.startUpdate&&(this.variableInflight=!1,this.callDataGridMethod("setStatus","nodata",this.nodatamessage)),this.watchVariableDataSet(this.dataset),this.onDataSourceChange();break;case"dataset":if(this.gridOptions.isNavTypeScrollOrOndemand()&&1===this.gridOptions.getCurrentPage()&&this.gridOptions.setIsNextPageData(!1),this.binddatasource&&!this.datasource)return;this.parentList&&!this.datasource&&g.startsWith(this.binddataset,"item")&&(this.datasource=u.getDatasourceFromExpr(this.widget.$attrs.get("datasetboundexpr"),this)),this.gridOptions.isNavTypeScrollOrOndemand()&&(this.gridOptions.isNextPageData?this.gridOptions.setIsDataUpdatedByUser(!1):(this.gridOptions.setIsDataUpdatedByUser(!0),this.setLastActionToDatasetUpdate(),this.gridOptions.setIsNextPageData(!1))),("wm.Variable"!==g.get(this.datasource,"category")||!this._pageLoad||"none"===this.getConfiguredState()||this.parentList&&g.startsWith(this.binddataset,"item"))&&this.watchVariableDataSet(t);break;case"filtermode":this.setDataGridOption("filtermode",t);break;case"searchlabel":this.setDataGridOption("searchLabel",t);break;case"navigation":if("Advanced"===t)return void(this.navigation="Classic");"None"!==t&&(this.shownavigation=!0),this.setDataGridOption("navigation",this.navigation),this.onDemandLoad=t===o.NAVIGATION_TYPE.ONDEMAND,this.infScroll=t===o.NAVIGATION_TYPE.SCROLL,this.navControls=t;break;case"gridfirstrowselect":this.setDataGridOption("selectFirstRow",t);break;case"gridclass":this.callDataGridMethod("option","cssClassNames.grid",t);break;case"nodatamessage":this.callDataGridMethod("option","dataStates.nodata",t);break;case"loadingdatamsg":this.callDataGridMethod("option","dataStates.loading",t);break;case"loadingicon":this.callDataGridMethod("option","loadingicon",t);break;case"spacing":this.callDataGridMethod("option","spacing",t),this.navigationSize="condensed"===t?"small":"";break;case"exportformat":this.exportOptions=[],t&&g.forEach(g.split(t,","),(e=>{this.exportOptions.push({label:e,icon:ae[e]})}));break;case"shownewrow":n=t||g.some(this.actions,(e=>g.includes(e.action,"addNewRow()"))),this.callDataGridMethod("option","actionsEnabled.new",n);break;case"pagesize":this.dataNavigator.options={maxResults:t},this.dataNavigator.widget.maxResults=t,this.dataNavigator.maxResults=t;break;case"ondemandmessage":t&&this.$element.find(".on-demand-datagrid > a").text(t),this.gridOptions.ondemandmessage=t;break;case"viewlessmessage":this.gridOptions.viewlessmessage=t;break;case"show":t?this.invokeEventCallback("show"):this.invokeEventCallback("hide");default:super.onPropertyChange(e,t,i)}}onDataSourceChange(){this.fieldDefs.forEach((e=>{u.triggerFn(e.onDataSourceChange&&e.onDataSourceChange.bind(e))}))}clearActionRowVars(){this.actionRowIndex=void 0,this.actionRowPage=void 0,this.setDataGridOption("actionRowIndex",void 0),this.setDataGridOption("actionRowPage",void 0)}onStyleChange(e,t,i){switch(e){case"width":this.callDataGridMethod("setGridDimensions","width",t);break;case"height":this.callDataGridMethod("setGridDimensions","height",t)}super.onStyleChange(e,t,i)}populateActions(){this._actions.header=[],this._actions.footer=[],g.forEach(this.actions,(e=>{g.includes(e.position,"header")&&this._actions.header.push(e),g.includes(e.position,"footer")&&this._actions.footer.push(e)}))}renderDynamicFilterColumn(e){this.isdynamictable&&this.filterTmpl._results.push(e)}registerColumns(e,t){if(u.isMobile()&&this.viewport.isMobileType){if(!e.mobileDisplay)return}else if(this.viewport.isTabletType){if(!e.tabletDisplay)return}else if(!e.pcDisplay)return;e["primary-key"]&&this.primaryKey.push(e.field),this.fieldDefs[t]=e;const i=this.fieldDefs.length;this.fullFieldDefs.push(e),this.rowFilter[e.field]={value:void 0},this.fieldDefs.forEach((e=>{this.columns[e.field]=e})),this.isdynamictable&&i===this.noOfColumns&&(this.renderOperationColumns(),this.setDataGridOption("colDefs",this.fieldDefs))}registerFormField(e,t){this.formfields[e]=t}registerActions(e){this.actions.push(e),this.populateActions()}registerRow(e,t){this.rowDef=e,this.rowInstance=t,this.callDataGridMethod("option","cssClassNames.rowExpandIcon",this.rowDef.expandicon),this.callDataGridMethod("option","cssClassNames.rowCollapseIcon",this.rowDef.collapseicon),this.gridOptions.rowExpansionEnabled=!0,this.gridOptions.rowDef=this.rowDef}registerRowActions(e){this.rowActions.push(e)}selectItem(e,t){t&&(this.serverData=t),g.isObject(e)&&(e=g.omitBy(e,(e=>g.isArray(e)&&g.isEmpty(e)))),this.callDataGridMethod("selectRow",e,!0)}deselectItem(e){this.callDataGridMethod("deselectRow",e)}onDataNavigatorDataSetChange(e){let t;return this.__fullData=e,this.checkFiltersApplied(this.getSortExpr()),this._isClientSearch?(t=u.getClonedObject(this.__fullData),g.isObject(t)&&!g.isArray(t)&&(t=[t]),t=this.getSearchResult(t,this.filterInfo),t=this.getSortResult(t,this.sortInfo),t):e}toggleMessage(e,t,i,n){e&&i&&this.app.notifyApp(i,t,n)}export(e){let t;const i=g.isEmpty(this.sortInfo)?"":this.sortInfo.field+" "+this.sortInfo.direction,n={};let a,s;this.fieldDefs.forEach((e=>{if(e.field===se||!e.show)return;const t={header:e.displayName};e.exportexpression?t.expression=e.exportexpression:t.field=e.field,n[e.field]=t})),t=this.getFilterFields(this.filterInfo),s={matchMode:"anywhereignorecase",filterFields:t,orderBy:i,exportType:e.label,logicalOp:"AND",exportSize:this.exportdatasize,columns:n},a=this.invokeEventCallback("beforeexport",{$data:s}),!1!==a&&(s.fields=g.values(s.columns),this.datasource.execute(u.DataSource.Operation.DOWNLOAD,{data:s}))}expandRow(e){this.callDataGridMethod("expandRow",e)}collapseRow(e){this.callDataGridMethod("collapseRow",e)}_documentClickBind(e){const t=e.target;this.$element[0].contains(t)||e.target.doctype||(e=>{let t=!1;return[".dropdown-menu",".uib-typeahead-match",".modal-dialog",".toast"].forEach((i=>{if(e.closest(i).length)return t=!0,!1})),t||["bsdatepickerdaydecorator"].forEach((i=>{if(e[0].hasAttribute(i))return t=!0,!1})),t})($(t))||this.callDataGridMethod("saveRow")}_redraw(e){e?this.datagridElement.datatable(this.gridOptions):setTimeout((()=>{this.callDataGridMethod("setColGroupWidths"),this.callDataGridMethod("addOrRemoveScroll")}))}invokeActionEvent(e,t){u.$parseEvent(t)(this.viewParent,Object.assign(this.context,{$event:e}))}handleEvent(e,t,i,n){"select"!==t&&super.handleEvent(this.nativeElement,t,i,n)}triggerUploadEvent(e,t,i,n){const a={$event:e,row:n};this.columns[i]&&("change"===t&&(a.newVal=e.target.files,a.oldVal=this.columns[i]._oldUploadVal,this.columns[i]._oldUploadVal=a.newVal),this.columns[i].invokeEventCallback(t,a))}registerFormWidget(){}writeValue(){}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}ngOnDetach(){super.ngOnDetach(),"wm.Variable"===g.get(this.datasource,"category")&&"none"!==this.getConfiguredState()?this._pageLoad=!1:this._pageLoad=!0}static{this.\u0275fac=function(e){return new(e||re)(v.\u0275\u0275directiveInject(v.Injector),v.\u0275\u0275directiveInject(y.FormBuilder),v.\u0275\u0275directiveInject(T.App),v.\u0275\u0275directiveInject(T.DynamicComponentRefProvider),v.\u0275\u0275directiveInject(T.StatePersistence),v.\u0275\u0275directiveInject(T.PaginationService),v.\u0275\u0275directiveInject(T.Viewport),v.\u0275\u0275directiveInject(E.ListComponent,8),v.\u0275\u0275injectAttribute("dataset.bind"),v.\u0275\u0275injectAttribute("datasource.bind"),v.\u0275\u0275injectAttribute("readonlygrid"),v.\u0275\u0275directiveInject(v.NgZone),v.\u0275\u0275directiveInject(C.TrustAsPipe),v.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=v.\u0275\u0275defineComponent({type:re,selectors:[["","wmTable",""]],contentQueries:function(e,t,i){if(1&e&&(v.\u0275\u0275contentQuery(i,x,5),v.\u0275\u0275contentQuery(i,D,5),v.\u0275\u0275contentQuery(i,R,5),v.\u0275\u0275contentQuery(i,S,5),v.\u0275\u0275contentQuery(i,_,5),v.\u0275\u0275contentQuery(i,M,5),v.\u0275\u0275contentQuery(i,N,5)),2&e){let e;v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.rowExpansionTmpl=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.rowActionTmpl=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.filterTmpl=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.inlineWidgetTmpl=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.inlineWidgetNewTmpl=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.customExprTmpl=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.rowExpansionActionTmpl=e)}},viewQuery:function(e,i){if(1&e&&(v.\u0275\u0275viewQuery(p.PaginationComponent,7),v.\u0275\u0275viewQuery(k,7),v.\u0275\u0275viewQuery(L,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(F,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(j,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(B,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(V,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(G,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(W,7,t.ViewContainerRef),v.\u0275\u0275viewQuery(U,7,t.ViewContainerRef)),2&e){let e;v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.dataNavigator=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i._tableElement=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.rowActionsViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.filterViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.inlineEditViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.inlineEditNewViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.customExprViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.rowDetailViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.rowExpansionActionViewRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(i.dynamicTableRef=e.first)}},hostBindings:function(e,t){1&e&&v.\u0275\u0275listener("keypress",(function(e){return t.onKeyPress(e)}))},features:[v.\u0275\u0275ProvidersFeature([o.provideAs(re,n.NG_VALUE_ACCESSOR,!0),o.provideAsWidgetRef(re)]),v.\u0275\u0275InheritDefinitionFeature],attrs:q,decls:29,vars:4,consts:[["datagridElement",""],["buttonRef",""],["anchorRef",""],["multiColumnFilterView",""],["inlineEditView",""],["inlineEditNewView",""],["rowActionsView",""],["rowExpansionActionView",""],["customExprView",""],["dynamicTable",""],["rowDetailView",""],["class","panel-heading",4,"ngIf"],[1,"app-datagrid"],[1,"panel-footer","clearfix",3,"hidden"],[1,"app-datagrid-paginator",3,"hidden"],["wmPagination","","show.bind","shownavigation","navigationalign.bind","navigationalign","navigationsize.bind","navigationSize","navigation.bind","navControls","showrecordcount.bind","showrecordcount","maxsize.bind","maxsize","boundarylinks.bind","boundarylinks","forceellipses.bind","forceellipses","directionlinks.bind","directionlinks"],["class","app-datagrid-actions",4,"ngIf"],["hidden",""],[1,"dynamic-table-container"],[1,"panel-heading"],[1,"panel-title"],[1,"pull-left"],[3,"class",4,"ngIf"],[1,"heading",3,"innerHTML"],[1,"description",3,"innerHTML"],["class","panel-actions app-datagrid-actions",4,"ngIf"],[1,"panel-actions","app-datagrid-actions"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector",4,"ngFor","ngForOf"],["wmMenu","","dropdown","","caption.bind","appLocale.LABEL_EXPORT","autoclose","always","dataset.bind","exportOptions","select.event","export($item)","menuposition","down,left",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"],["wmMenu","","dropdown","","caption.bind","appLocale.LABEL_EXPORT","autoclose","always","dataset.bind","exportOptions","select.event","export($item)","menuposition","down,left"],[1,"app-datagrid-actions"],["wmButton","","caption.bind","btn.displayName","show.bind","btn.show","class.bind","btn.class","iconclass.bind","btn.iconclass","type","button","shortcutkey.bind","btn.shortcutkey","tabindex.bind","btn.tabindex","hint.bind","btn.title","disabled.bind","btn.disabled","conditionalclass.bind","btn.conditionalclass","conditionalstyle.bind","btn.conditionalstyle",3,"click","ngClass"],["wmAnchor","","caption.bind","btn.displayName","show.bind","btn.show","class.bind","btn.class","iconclass.bind","btn.iconclass","shortcutkey.bind","btn.shortcutkey","tabindex.bind","btn.tabindex","hint.bind","btn.title","hyperlink.bind","btn.hyperlink","target.bind","btn.target","conditionalclass.bind","btn.conditionalclass","conditionalstyle.bind","btn.conditionalstyle",3,"click","ngClass"]],template:function(e,t){1&e&&(v.\u0275\u0275template(0,J,8,4,"div",11),v.\u0275\u0275element(1,"div",12,0),v.\u0275\u0275elementStart(3,"div",13)(4,"div",14),v.\u0275\u0275element(5,"nav",15),v.\u0275\u0275elementEnd(),v.\u0275\u0275template(6,ee,2,1,"div",16),v.\u0275\u0275elementEnd(),v.\u0275\u0275template(7,te,1,5,"ng-template",null,1,v.\u0275\u0275templateRefExtractor)(9,ie,1,4,"ng-template",null,2,v.\u0275\u0275templateRefExtractor),v.\u0275\u0275elementStart(11,"div",17),v.\u0275\u0275elementContainer(12,null,3)(14,null,4)(16,null,5)(18,null,6)(20,null,7)(22,null,8)(24,null,9)(26,null,10),v.\u0275\u0275element(28,"div",18),v.\u0275\u0275elementEnd()),2&e&&(v.\u0275\u0275property("ngIf",t.title||t.subheading||t.iconclass||t.exportOptions.length||t._actions.header.length),v.\u0275\u0275advance(3),v.\u0275\u0275property("hidden",!t._actions.footer.length&&(!t.shownavigation||t.onDemandLoad&&t.dataNavigator.isDisableNext||(null==t.dataNavigator?null:t.dataNavigator.dataSize)<=t.pagesize)),v.\u0275\u0275advance(),v.\u0275\u0275property("hidden",!(null!=t.dataNavigator&&t.dataNavigator.dataSize)&&!(null!=t.dataNavigator.datasource&&(null!=t.dataNavigator.datasource.pagination&&t.dataNavigator.datasource.pagination.next))||!t.shownavigation||t.onDemandLoad&&t.dataNavigator.isDisableNext||(null==t.dataNavigator?null:t.dataNavigator.dataSize)<=t.pagesize),v.\u0275\u0275advance(2),v.\u0275\u0275property("ngIf",t._actions.footer.length))},dependencies:[P.AnchorComponent,w.BsDropdownDirective,b.NgClass,b.NgForOf,b.NgIf,b.NgTemplateOutlet,I.ButtonComponent,A.MenuComponent,O.PaginationComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(re,[{type:t.Component,args:[{selector:"[wmTable]",providers:[o.provideAs(re,n.NG_VALUE_ACCESSOR,!0),o.provideAsWidgetRef(re)],template:'<div class="panel-heading" *ngIf="title || subheading || iconclass || exportOptions.length || _actions.header.length">\n <h3 class="panel-title">\n <div class="pull-left">\n <i class="app-icon panel-icon {{iconclass}}" *ngIf="iconclass"></i>\n </div>\n <div class="pull-left">\n <div class="heading" [innerHTML]="title"></div>\n <div class="description" [innerHTML]="subheading"></div>\n </div>\n <div class="panel-actions app-datagrid-actions" *ngIf="exportOptions.length || _actions.header.length">\n <ng-container *ngFor="let btn of _actions.header; let index = index;"\n [ngTemplateOutlet]="btn.widgetType === \'button\' ? buttonRef : anchorRef"\n [ngTemplateOutletContext]="{btn:btn}"\n [ngTemplateOutletInjector]="createCustomInjector(\'actions_header_\' + index, {btn:btn})">\n </ng-container>\n <div wmMenu dropdown caption.bind="appLocale.LABEL_EXPORT" *ngIf="exportOptions.length" autoclose="always" attr.name="{{name}}-export"\n dataset.bind="exportOptions" select.event="export($item)" menuposition="down,left"></div>\n </div>\n </h3>\n</div>\n<div class="app-datagrid" #datagridElement></div>\n\n<div class="panel-footer clearfix" [hidden]="!_actions.footer.length && (!shownavigation || (onDemandLoad && dataNavigator.isDisableNext) || dataNavigator?.dataSize <= pagesize)">\n <div class="app-datagrid-paginator" [hidden]="(!dataNavigator?.dataSize && !dataNavigator.datasource?.pagination?.next) || !shownavigation || (onDemandLoad && dataNavigator.isDisableNext) || dataNavigator?.dataSize <= pagesize">\n <nav wmPagination show.bind="shownavigation" navigationalign.bind="navigationalign"\n navigationsize.bind="navigationSize"\n navigation.bind="navControls" showrecordcount.bind="showrecordcount" maxsize.bind="maxsize"\n boundarylinks.bind="boundarylinks"\n forceellipses.bind="forceellipses" directionlinks.bind="directionlinks"></nav>\n </div>\n <div class="app-datagrid-actions" *ngIf="_actions.footer.length">\n <ng-container *ngFor="let btn of _actions.footer; let index = index;"\n [ngTemplateOutlet]="btn.widgetType === \'button\' ? buttonRef : anchorRef"\n [ngTemplateOutletContext]="{btn:btn}"\n [ngTemplateOutletInjector]="createCustomInjector(\'actions_footer_\' + index, {btn:btn})">\n </ng-container>\n </div>\n</div>\n\n<ng-template #buttonRef let-btn="btn">\n <button wmButton caption.bind="btn.displayName" show.bind="btn.show" class.bind="btn.class" iconclass.bind="btn.iconclass" (click)="invokeActionEvent($event, btn.action)"\n [ngClass]="{\'btn-sm\': spacing === \'condensed\', \'disabled-new\': btn.key === \'addNewRow\' && (isGridEditMode || isLoading)}"\n type="button" shortcutkey.bind="btn.shortcutkey" tabindex.bind="btn.tabindex" hint.bind="btn.title" [attr.aria-label]="btn.displayName" disabled.bind="btn.disabled" conditionalclass.bind="btn.conditionalclass" conditionalstyle.bind="btn.conditionalstyle"></button>\n</ng-template>\n\n<ng-template #anchorRef let-btn="btn">\n <a wmAnchor caption.bind="btn.displayName" show.bind="btn.show" class.bind="btn.class" iconclass.bind="btn.iconclass" (click)="invokeActionEvent($event, btn.action)"\n [ngClass]="{\'btn-sm\': spacing === \'condensed\', \'disabled-new\': btn.key === \'addNewRow\' && (isGridEditMode || isLoading)}"\n shortcutkey.bind="btn.shortcutkey" tabindex.bind="btn.tabindex" hint.bind="btn.title"\n hyperlink.bind="btn.hyperlink" target.bind="btn.target" conditionalclass.bind="btn.conditionalclass" conditionalstyle.bind="btn.conditionalstyle"></a>\n</ng-template>\n\n<div hidden>\n <ng-container #multiColumnFilterView></ng-container>\n\n <ng-container #inlineEditView></ng-container>\n\n <ng-container #inlineEditNewView></ng-container>\n\n <ng-container #rowActionsView></ng-container>\n\n <ng-container #rowExpansionActionView></ng-container>\n\n <ng-container #customExprView></ng-container>\n\n <ng-container #dynamicTable></ng-container>\n\n <ng-container #rowDetailView></ng-container>\n\n <div class="dynamic-table-container"></div>\n</div>\n'}]}],(()=>[{type:v.Injector},{type:y.FormBuilder},{type:T.App},{type:T.DynamicComponentRefProvider},{type:T.StatePersistence},{type:T.PaginationService},{type:T.Viewport},{type:E.ListComponent,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["datasource.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["readonlygrid"]}]},{type:v.NgZone},{type:C.TrustAsPipe},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dataNavigator:[{type:t.ViewChild,args:[p.PaginationComponent,{static:!0}]}],_tableElement:[{type:t.ViewChild,args:["datagridElement",{static:!0}]}],rowActionTmpl:[{type:t.ContentChildren,args:["rowActionTmpl",{descendants:!0}]}],rowActionsViewRef:[{type:t.ViewChild,args:["rowActionsView",{static:!0,read:t.ViewContainerRef}]}],filterTmpl:[{type:t.ContentChildren,args:["filterTmpl",{descendants:!0}]}],filterViewRef:[{type:t.ViewChild,args:["multiColumnFilterView",{static:!0,read:t.ViewContainerRef}]}],inlineWidgetTmpl:[{type:t.ContentChildren,args:["inlineWidgetTmpl",{descendants:!0}]}],inlineEditViewRef:[{type:t.ViewChild,args:["inlineEditView",{static:!0,read:t.ViewContainerRef}]}],inlineWidgetNewTmpl:[{type:t.ContentChildren,args:["inlineWidgetTmplNew",{descendants:!0}]}],inlineEditNewViewRef:[{type:t.ViewChild,args:["inlineEditNewView",{static:!0,read:t.ViewContainerRef}]}],customExprTmpl:[{type:t.ContentChildren,args:["customExprTmpl",{descendants:!0}]}],customExprViewRef:[{type:t.ViewChild,args:["customExprView",{static:!0,read:t.ViewContainerRef}]}],rowExpansionActionTmpl:[{type:t.ContentChildren,args:["rowExpansionActionTmpl",{descendants:!0}]}],rowExpansionTmpl:[{type:t.ContentChild,args:["rowExpansionTmpl"]}],rowDetailViewRef:[{type:t.ViewChild,args:["rowDetailView",{static:!0,read:t.ViewContainerRef}]}],rowExpansionActionViewRef:[{type:t.ViewChild,args:["rowExpansionActionView",{static:!0,read:t.ViewContainerRef}]}],dynamicTableRef:[{type:t.ViewChild,args:["dynamicTable",{static:!0,read:t.ViewContainerRef}]}],onKeyPress:[{type:t.HostListener,args:["keypress",["$event"]]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassDebugInfo(re,{className:"TableComponent",filePath:"table.component.ts",lineNumber:122});const le="new",ce="edit",de="delete";class pe{constructor(e,t,i){this.table=e,this.dialogService=t,this.app=i,e.initiateSelectItem=this.initiateSelectItem.bind(this),e.updateVariable=this.updateVariable.bind(this),e.updateRecord=this.updateRecord.bind(this),e.deleteRecord=this.deleteRecord.bind(this),e.insertRecord=this.insertRecord.bind(this),e.editRow=this.editRow.bind(this),e.addNewRow=this.addNewRow.bind(this),e.addRow=this.addNewRow.bind(this),e.deleteRow=this.deleteRow.bind(this),e.onRecordDelete=this.onRecordDelete.bind(this),e.hideEditRow=this.hideEditRow.bind(this),e.saveRow=this.saveRow.bind(this),e.cancelRow=this.cancelRow.bind(this)}selectItemOnSuccess(e,t,i){setTimeout((()=>{t||this.table.selectItem(e,this.table.dataset),u.triggerFn(i)}),250)}initiateSelectItem(e,t,i,n,a){this.table.gridOptions.isNavTypeScrollOrOndemand()&&!this.table.dataNavigator.isDisableNext&&this.table.isNewRowInserted?this.table.isNewRowInserted=!1:("last"===e&&(n||(this.table.dataNavigator.dataSize+=1),this.table.isNavigationEnabled()||(e="current")),this.table.dataNavigator.calculatePagingValues(),this.table.dataNavigator.__fullData=this.table.__fullData,this.table.dataNavigator.navigatePage(e,null,!0,(()=>{(this.table.isNavigationEnabled()||n)&&this.selectItemOnSuccess(t,i,a),"quickedit"!==this.table.editmode||i||this.table.callDataGridMethod("setActiveRow",t)})))}updateVariable(e,t){const i=this.table.datasource;if(i&&(i.execute(u.DataSource.Operation.FETCH_DISTINCT_VALUES),!this.table.isNavigationEnabled())){const n=this.table.sortInfo,a=n&&n.direction?n.field+" "+n.direction:"";o.refreshDataSource(i,{page:1,filterFields:this.table.getFilterFields(this.table.filterInfo),orderBy:a,matchMode:"anywhereignorecase"}).then((()=>{u.$appDigest(),this.selectItemOnSuccess(e,!0,t)}))}}insertSuccessHandler(e,t){if(e.error)this.table.invokeEventCallback("error",{$event:t.event,$operation:le,$data:e.error}),this.table.onError||this.table.toggleMessage(!0,"error",this.table.errormessage||e.error),u.triggerFn(t.error,e);else{if(this.table.gridOptions.isNavTypeScrollOrOndemand()&&(this.table.isNewRowInserted=!0),t.event){const e=$(t.event.target).closest("tr");this.table.callDataGridMethod("hideRowEditMode",e)}this.table.onRowinsert||this.table.toggleMessage(!0,"success",this.table.insertmessage),this.table.datasource.execute(u.DataSource.Operation.SUPPORTS_CRUD)?(this.table.initiateSelectItem(this.table.getNavigationTargetBySortInfo(),e,void 0,!1,t.callBack),this.updateVariable(e,t.callBack)):this.table.datasource.execute(u.DataSource.Operation.IS_API_AWARE)||this.table.initiateSelectItem(this.table.getNavigationTargetBySortInfo(),e,void 0,!1,t.callBack),u.triggerFn(t.success,e),this.table.invokeEventCallback("rowinsert",{$event:t.event,$data:e,row:e})}}generatePath(e){let t,i,n=this.table.widget.$attrs.get("datasetboundexpr");if(g.startsWith(e,"item")&&n){g.startsWith(n,"Widgets.")&&(n=u.extractCurrentItemExpr(n,this.table));const e=this.table.$element.parents(".app-list-item"),a=g.map(e,(e=>g.parseInt($(e).attr("listitemindex"))));for(let e=a.length-1;e>=0;e--)n=n.replace("$i",a[e]);i=g.last(a),t=n.replace(/^Variables\..*\.dataSet([^.])*(\.|$)/g,"")}else{/^Variables\..*\.dataSet([\[][0-9]])/g.test(e)&&(i=g.parseInt(e.replace(/^Variables\..*\.dataSet([\[])/g,""))),t=e.replace(/^Variables\..*\.dataSet([^.])*(\.|$)/g,"")}return{path:t,index:i}}insertRecord(e){const t=this.table.datasource;if(!t)return;const i=t.pagination&&t.pagination.number+1,n={row:e.row,skipNotification:!0,period:e.period};if(t.execute(u.DataSource.Operation.SUPPORTS_CRUD)||!t.execute(u.DataSource.Operation.IS_API_AWARE)||"wm.CrudVariable"===t.category){if(!t.execute(u.DataSource.Operation.IS_API_AWARE)){const i=this.generatePath(this.table.binddataset);return t.execute(u.DataSource.Operation.ADD_ITEM,{item:e.row,path:i.path,parentIndex:i.index}),void this.insertSuccessHandler(e.row,e)}t.execute(u.DataSource.Operation.INSERT_RECORD,n).then((n=>{this.insertSuccessHandler(n,e),"wm.CrudVariable"===t.category&&t.execute(u.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0,operation:"list",page:i})}),(t=>{this.table.invokeEventCallback("error",{$event:e.event,$operation:le,$data:t}),this.table.onError||this.table.toggleMessage(!0,"error",this.table.errormessage||t),u.triggerFn(e.error,t),u.triggerFn(e.callBack,void 0,!0)}))}else this.table.invokeEventCallback("rowinsert",{$event:e.event,row:e.row})}updateSuccessHandler(e,t){if(e.error)this.table.invokeEventCallback("error",{$event:t.event,$operation:ce,$data:e.error}),this.table.onError||this.table.toggleMessage(!0,"error",this.table.errormessage||e.error),u.triggerFn(t.error,e);else{if(t.event){const e=$(t.event.target).closest("tr");this.table.callDataGridMethod("hideRowEditMode",e)}this.table.onRowupdate||this.table.toggleMessage(!0,"success",this.table.updatemessage),this.table.datasource.execute(u.DataSource.Operation.SUPPORTS_CRUD)?(this.table.initiateSelectItem("current",e,void 0,!1,t.callBack),this.updateVariable(e,t.callBack)):this.table.datasource.execute(u.DataSource.Operation.IS_API_AWARE)||this.table.initiateSelectItem("current",e,void 0,!1,t.callBack),u.triggerFn(t.success,e),this.table.invokeEventCallback("rowupdate",{$event:t.event,$data:e,row:e})}}updateRecord(e){const t=this.table.datasource;if(!t)return;const i=t.pagination&&t.pagination.number+1,n={row:e.row,prevData:e.prevData,skipNotification:!0,period:e.period};if(t.execute(u.DataSource.Operation.SUPPORTS_CRUD)||!t.execute(u.DataSource.Operation.IS_API_AWARE)||"wm.CrudVariable"===t.category){if(!t.execute(u.DataSource.Operation.IS_API_AWARE)){const i=this.generatePath(this.table.binddataset);return t.execute(u.DataSource.Operation.SET_ITEM,{prevItem:e.prevData,item:e.row,path:i.path,parentIndex:i.index}),void this.updateSuccessHandler(e.row,e)}t.execute(u.DataSource.Operation.UPDATE_RECORD,n).then((n=>{this.updateSuccessHandler(n,e),"wm.CrudVariable"===t.category&&t.execute(u.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0,operation:"list",page:i})}),(t=>{this.table.invokeEventCallback("error",{$event:e.event,$operation:ce,$data:t}),this.table.onError||this.table.toggleMessage(!0,"error",this.table.errormessage||t),u.triggerFn(e.error,t),u.triggerFn(e.callBack,void 0,!0)}))}else this.table.invokeEventCallback("rowupdate",{$event:e.event,row:e.row})}onRecordDelete(e){let t;this.table.dataNavigator&&(this.table.dataNavigator.dataSize-=1,this.table.dataNavigator.calculatePagingValues(),t=this.table.dataNavigator.pageCount<this.table.dataNavigator.dn.currentPage?"prev":void 0,this.table.dataNavigator.__fullData=this.table.__fullData,this.table.dataNavigator.navigatePage(t,null,!0,(()=>{setTimeout((()=>{u.triggerFn(e)}),void 0,!1)})))}deleteSuccessHandler(e,t,i,n){t&&t.error?this.table.onError||this.table.toggleMessage(!0,"error",this.table.errormessage||t.error):(this.onRecordDelete(n),this.table.datasource.execute(u.DataSource.Operation.SUPPORTS_CRUD)&&this.updateVariable(e,n),this.table.onRowdelete||this.table.toggleMessage(!0,"success",this.table.deletemessage),this.table.invokeEventCallback("rowdelete",{$event:i,$data:e,row:e}),this.table.invokeEventCallback("rowdeleted",{$event:i,$data:e,row:e}))}deleteFn(e){const t=this.table.datasource;let i,n;if(t){if((this.table.onDemandLoad||this.table.infScroll)&&(this.table.isRowDeleted=!0),"wm.CrudVariable"===t.category&&(this.triggerWMEvent("resetEditMode"),t.pagination&&(i=t.pagination.last&&1===t.pagination.numberOfElements,n=i?t.pagination.number:t.pagination.number+1)),t.execute(u.DataSource.Operation.SUPPORTS_CRUD)||!t.execute(u.DataSource.Operation.IS_API_AWARE)||this.table._isDependent||"wm.CrudVariable"===t.category){if(!t.execute(u.DataSource.Operation.IS_API_AWARE)){const i=this.generatePath(this.table.binddataset);return t.execute(u.DataSource.Operation.REMOVE_ITEM,{item:e.row,path:i.path,parentIndex:i.index}),void this.deleteSuccessHandler(e.row,void 0,e.evt,e.callBack)}t.execute(u.DataSource.Operation.DELETE_RECORD,{row:e.row,skipNotification:!0,period:e.period}).then((i=>{this.deleteSuccessHandler(i,e.row,e.evt,e.callBack),"wm.CrudVariable"===t.category&&t.execute(u.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0,operation:"list",page:n})}),(t=>{this.table.isRowDeleted&&(this.table.isRowDeleted=!1),u.triggerFn(e.callBack,void 0,!0),this.table.invokeEventCallback("error",{$event:e.evt,$operation:de,$data:t}),this.table.onError||this.table.toggleMessage(!0,"error",this.table.errormessage||t)}))}else this.table.invokeEventCallback("rowdelete",{$event:e.evt,row:e.row});u.triggerFn(e.cancelRowDeleteCallback)}}deleteRecord(e){if(!this.table.confirmdelete)return this.deleteFn(e),void u.triggerFn(e.cancelRowDeleteCallback);this.dialogService.showAppConfirmDialog({title:this.app.appLocale.MESSAGE_DELETE_RECORD||"Delete Record",iconclass:"wi wi-delete fa-lg",message:this.table.confirmdelete,oktext:this.table.deleteoktext,canceltext:this.table.deletecanceltext,onOk:()=>{this.deleteFn(e),this.dialogService.closeAppConfirmDialog()},onCancel:()=>{u.triggerFn(e.cancelRowDeleteCallback),this.dialogService.closeAppConfirmDialog()},onOpen:()=>{$(".cancel-action").focus()},onEscape:()=>{u.triggerFn(e.cancelRowDeleteCallback)}})}editRow(e){let t;this.table._isDependent?this.triggerWMEvent("update"):(e&&e.target?this.table.callDataGridMethod("toggleEditRow",e,{selectRow:!0,action:"edit"}):"form"===this.table.editmode||"dialog"===this.table.editmode?(t=e||this.table.selectedItems[0],this.table.gridOptions.beforeRowUpdate(t)):setTimeout((()=>{t=this.table.datagridElement.find("tr.active"),t.length&&this.table.callDataGridMethod("toggleEditRow",void 0,{$row:t,action:"edit"})})),this.table._triggeredByUser=!0,this.table.gridOptions.setIsDataUpdatedByUser(!1))}addNewRow(){this.table.isGridEditMode||(this.table._triggeredByUser=!0,this.table.gridOptions.setIsDataUpdatedByUser(!1),this.table.callDataGridMethod("addNewRow"),this.table._liveTableParent?this.table._liveTableParent.addNewRow():this.table._isDependent&&this.triggerWMEvent("insert"))}triggerWMEvent(e,t){u.$invokeWatchers(!0),this.app.notify("wm-event",{eventName:e,widgetName:this.table.name,row:this.table.selecteditem,dataSource:t})}deleteRow(e){let t;e&&e.target?this.table.callDataGridMethod("deleteRowAndUpdateSelectAll",e):setTimeout((()=>{t=e||this.table.selectedItems[0],this.deleteRecord({row:t})})),this.table._triggeredByUser=!0,this.table.gridOptions.setIsDataUpdatedByUser(!1)}hideEditRow(){const e=this.table.datagridElement.find("tr.row-editing");e.length&&this.table.callDataGridMethod("hideRowEditMode",e)}saveRow(){this.table.callDataGridMethod("saveRow")}cancelRow(){const e=this.table.datagridElement.find("tr.row-editing");e.length&&this.table.callDataGridMethod("cancelEdit",e)}static{this.\u0275fac=function(e){return new(e||pe)(v.\u0275\u0275directiveInject(re,2),v.\u0275\u0275directiveInject(T.AbstractDialogService),v.\u0275\u0275directiveInject(T.App))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:pe,selectors:[["","wmTableCUD",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(pe,[{type:t.Directive,args:[{selector:"[wmTableCUD]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[re]}]},{type:T.AbstractDialogService},{type:T.App}]),null);const ue=["null","empty","nullorempty","isnotnull","isnotempty"],he=(e,t)=>{if(u.isDefined(e)&&""!==e)return u.isNumberType(t)?g.toNumber(e):t===u.DataType.DATETIME?moment(e).valueOf():g.toString(e).toLowerCase()},me=(e,t,i=[])=>{const n=he(t.value,t.type);let a;return!u.isDefined(n)&&!g.includes(ue,t.matchMode)||u.isNumberType(t.type)&&g.isNull(t.value)?e:e=e.filter((e=>{let s;switch(t.field?a=he(g.get(e,t.field),t.type):(a=[],g.forEach(e,((t,n)=>{if(g.includes(i,n))a.push(t);else{const t=g.filter(g.range(i.length),(e=>i[e].includes(n)));g.forEach(t,(t=>{const n=g.get(e,i[t]);a.indexOf(n)<0&&a.push(n)}))}})),a=a.join(" ").toLowerCase()),t.matchMode){case"start":s=g.startsWith(a,n);break;case"end":s=g.endsWith(a,n);break;case"exact":s=g.isEqual(a,n);break;case"notequals":s=!g.isEqual(a,n);break;case"null":s=g.isNull(a);break;case"isnotnull":s=!g.isNull(a);break;case"empty":s=g.isEmpty(a);break;case"isnotempty":s=!g.isEmpty(a);break;case"nullorempty":s=g.isNull(a)||g.isEmpty(a);break;case"lessthan":s=a<n;break;case"lessthanequal":s=a<=n;break;case"greaterthan":s=a>n;break;case"greaterthanequal":s=a>=n;break;default:s=u.isNumberType(t.type)?g.isEqual(a,n):g.includes(a,n)}return s}))},ge=(e,t,i=[])=>{const n=t&&t.field;n?(e[n]={value:t.value,logicalOp:"AND"},t.matchMode&&(e[n].matchMode=t.matchMode)):function(e,t,i){i.forEach((function(i){e[i]={value:t.value,type:t.value.type,logicalOp:"OR"},t.matchMode&&(e[i].matchMode=t.matchMode)}))}(e,t,i)},fe=(e,t)=>{t.field&&(e[t.field]={value:t.value,matchMode:t.matchMode,type:t.type})},ve=(e,t)=>{e.push({field:t.key?t.key:"",matchMode:t.matchMode,type:t.type,value:t.value})};class be{constructor(e){this.table=e,e._searchSortHandler=this.searchSortHandler.bind(this),e.getSearchResult=this.getSearchResult.bind(this),e.getSortResult=this.getSortResult.bind(this),e.checkFiltersApplied=this.checkFiltersApplied.bind(this),e.getFilterFields=this.getFilterFields.bind(this),e.onRowFilterChange=this.onRowFilterChange.bind(this),e.onFilterConditionSelect=this.onFilterConditionSelect.bind(this),e.showClearIcon=this.showClearIcon.bind(this),e.clearRowFilter=this.clearRowFilter.bind(this),e.matchModeTypesMap=o.getMatchModeTypesMap(),e.matchModeMsgs=o.getMatchModeMsgs(e.appLocale),e.emptyMatchModes=ue,e.getNavigationTargetBySortInfo=this.getNavigationTargetBySortInfo.bind(this),e.refreshData=this.refreshData.bind(this),e.clearFilter=this.clearFilter.bind(this),e.adjustContainer=this.adjustContainer.bind(this)}adjustContainer(e){setTimeout((()=>{u.adjustContainerRightEdges($("bs-dropdown-container"),this.table.rowFilterCompliedTl[e],this.table,$("bs-dropdown-container .dropdown-menu"))}))}getNavigationTargetBySortInfo(){return this.table.sortInfo&&"desc"===this.table.sortInfo.direction&&g.includes(this.table.primaryKey,this.table.sortInfo.field)?"first":"last"}getTableVisibleCols(){const e=[];return g.forEach(this.table.columns,((t,i)=>{"true"===g.toLower(g.toString(t.showinfilter))&&"rowOperations"!==i&&t.searchable&&e.push(i)})),e}invokeSetFilterfieldBasedOnFieldval(e,t){if(e.field)ge(t,e);else if(!g.isEmpty(e)){const i=this.getTableVisibleCols();ge(t,e,i)}}getFilterFields(e){e=e||{};const t={};return g.isArray(e)?g.forEach(e,(e=>{this.invokeSetFilterfieldBasedOnFieldval(e,t)})):this.invokeSetFilterfieldBasedOnFieldval(e,t),t}getLogicalOperator(e){let t="";for(const i in e){t=e[i].logicalOp||"";break}return t}resetSortStatus(e){let t;!g.isEmpty(this.table.sortInfo)&&this.table.datasource&&(t=this.table.sortInfo.field+" "+this.table.sortInfo.direction,(e=this.table.datasource.execute(u.DataSource.Operation.GET_OPTIONS).orderBy||e)&&(e=g.head(g.split(e,","))),t!==e&&(this.table.callDataGridMethod("resetSortIcons"),this.table.sortInfo={},this.table.setDataGridOption("sortInfo",{})))}clearFilter(e){let t;this.table.filterInfo={},"multicolumn"===this.table.filtermode?(this.table.fieldDefs.forEach((e=>{e.resetFilter&&e.resetFilter()})),e||this.table.onRowFilterChange()):"search"===this.table.filtermode&&(t=this.table.datagridElement,t.find('[data-element="dgSearchText"]').val(""),t.find('[data-element="dgFilterValue"]').val(""),e||t.find(".app-search-button").trigger("click"))}checkFiltersApplied(e){if(this.table.datasource)return this.table.datasource.execute(u.DataSource.Operation.SUPPORTS_SERVER_FILTER)?(g.isEmpty(this.table.datasource.execute(u.DataSource.Operation.GET_OPTIONS).filterFields)&&this.clearFilter(!0),void this.resetSortStatus(e)):void(this.table.datasource.execute(u.DataSource.Operation.IS_PAGEABLE)&&this.resetSortStatus(e))}getSearchResult(e,t){const i=this.getTableVisibleCols();return t?(g.isArray(t)?t.forEach((t=>{e=me(e,t,i)})):e=me(e,t,i),e):e}getSortResult(e,t){return t&&t.direction&&(e=g.orderBy(e,t.field,t.direction)),e}handleClientSideSortSearch(e,t,i){let n;this.table._isClientSearch=!0,n=this.table.isNavigationEnabled()?u.getClonedObject(this.table.__fullData):u.getClonedObject(this.table.dataset),"search"===i?this.table.filterInfo=e:this.table.sortInfo=e,g.isObject(n)&&!g.isArray(n)&&(n=[n]),n=this.getSearchResult(n,this.table.filterInfo),n=this.getSortResult(n,this.table.sortInfo),this.table.serverData=n,"sort"===i&&this.table.invokeEventCallback("sort",{$event:t,$data:{data:this.table.serverData,sortDirection:this.table.sortInfo.direction,colDef:this.table.columns[this.table.sortInfo.field]}}),this.table.isNavigationEnabled()?(this.table.dataNavigator.dn.currentPage=1,this.table.dataNavigator.setPagingValues(n)):this.table.setGridData(this.table.serverData)}handleSinglePageSearch(e){this.table._isPageSearch=!0;let t=u.getClonedObject(this.table.gridData);const i=this.table.datagridElement.find("tbody tr.app-datagrid-row");this.table.filterInfo=e,t=this.getSearchResult(t,e),g.forEach(this.table.gridData,((e,n)=>{const a=$(i[n]);g.find(t,(t=>g.isEqual(t,e)))?a.show():a.hide()})),t&&t.length?(this.table.callDataGridMethod("setStatus","ready"),this.table.gridfirstrowselect&&!this.table.multiselect&&this.table.callDataGridMethod("selectFirstRow",!0,!0)):(this.table.callDataGridMethod("setStatus","nodata",this.table.nodatamessage),this.table.selecteditem=void 0),this.table.callDataGridMethod("updateSelectAllCheckboxState")}handleServerSideSearch(e){if(this.table.filterInfo=e,!this.table.datasource)return;const t=this.table.sortInfo,i=t&&t.direction?t.field+" "+t.direction:"",n=this.getFilterFields(e),a=this.getLogicalOperator(n);o.refreshDataSource(this.table.datasource,{page:1,filterFields:n,orderBy:i,condition:a}).then((()=>{u.$appDigest()}),(()=>{this.table.toggleMessage(!0,"error",this.table.nodatamessage)}))}handleSeverSideSort(e,t,i){this.table.gridOptions.sortInfo.field=e.field,this.table.gridOptions.sortInfo.direction=e.direction,this.table.sortInfo=u.getClonedObject(e);const n=e&&e.direction?e.field+" "+e.direction:"",a=this.getFilterFields(this.table.filterInfo),s=this.getLogicalOperator(a);i||"none"===this.table.getConfiguredState()||this.table.statePersistence.removeWidgetState(this.table,"pagination"),o.refreshDataSource(this.table.datasource,{page:1,filterFields:a,orderBy:n,condition:s}).then((i=>{u.$appDigest();const n=i&&i.data?i.data:i;this.table.invokeEventCallback("sort",{$event:t,$data:{data:n,sortDirection:e.direction,colDef:this.table.columns[e.field]}})}))}searchHandler(e,t,i,n){let a;a=g.isArray(e)?e.filter((function(e){return void 0!==e.matchMode&&void 0!==e.value||void 0!==e.value&&""===e.field})):{field:e.field,value:e.value,type:e.type},"none"!==this.table.getConfiguredState()&&o.unsupportedStatePersistenceTypes.indexOf(this.table.navigation)<0?(g.isArray(e)&&a.length||e.value?(this.table.statePersistence.removeWidgetState(this.table,"search"),this.table.statePersistence.setWidgetState(this.table,{search:a})):this.table.statePersistence.removeWidgetState(this.table,"search"),n||(this.table.statePersistence.removeWidgetState(this.table,"pagination"),this.table.statePersistence.removeWidgetState(this.table,"selectedItem"))):console.warn("Retain State handling on Widget "+this.table.name+" is not supported for current pagination type.");let s=u.getClonedObject(e);const r=this.table.datasource;if(!r&&!this.table.dataset)return;let l;const c={};g.isArray(s)?s.forEach((e=>{fe(c,e)})):fe(c,s),l=this.table.invokeEventCallback("beforefilter",{$event:t,$data:c,columns:c}),!1!==l&&(s=[],g.isEmpty(c)&&!g.isEmpty(a)?g.isArray(a)?g.forEach(a,(e=>{ve(s,e)})):ve(s,a):g.forEach(c,((e,t)=>{s.push({field:t,matchMode:e.matchMode,type:e.type,value:e.value})})),r&&r.execute(u.DataSource.Operation.SUPPORTS_SERVER_FILTER)?this.handleServerSideSearch(s):r&&r.execute(u.DataSource.Operation.IS_API_AWARE)&&r.execute(u.DataSource.Operation.IS_PAGEABLE)?this.handleSinglePageSearch(s):this.handleClientSideSortSearch(s,t,i))}sortHandler(e,t,i,n){const a=this.table.datasource;if(a||this.table.dataset){if(!n&&"none"!==this.table.getConfiguredState()&&o.unsupportedStatePersistenceTypes.indexOf(this.table.navigation)<0){const t={direction:e.direction,field:e.field};e.direction?this.table.statePersistence.setWidgetState(this.table,{sort:t}):this.table.statePersistence.removeWidgetState(this.table,"sort"),this.table.statePersistence.removeWidgetState(this.table,"selectedItem")}else console.warn("Retain State handling on Widget "+this.table.name+" is not supported for current pagination type.");a&&a.execute(u.DataSource.Operation.IS_SORTABLE)?this.handleSeverSideSort(e,t,n):this.handleClientSideSortSearch(e,t,i)}}setLastActionPerformedToSearchSort(){this.table.gridOptions.setLastActionPerformed(this.table.gridOptions.ACTIONS.SEARCH_OR_SORT),this.table.gridOptions.setIsSearchTrigerred(!0)}searchSortHandler(e,t,i,n){"change"===(t?t.type:"")&&"multicolumn"!==this.table.filtermode?t.stopPropagation():(this.setLastActionPerformedToSearchSort(),"search"===i?this.searchHandler(e,t,i,n):this.sortHandler(e,t,i,n))}showClearIcon(e){const t=this.table.rowFilter[e]&&this.table.rowFilter[e].value;return u.isDefined(t)&&""!==t&&null!==t}clearRowFilter(e){this.table.rowFilter&&this.table.rowFilter[e]&&(this.table.columns[e].resetFilter(),this.onRowFilterChange(e))}onFilterConditionSelect(e,t){this.table.rowFilter[e]=this.table.rowFilter[e]||{},this.table.rowFilter[e].matchMode=t,g.includes(this.table.emptyMatchModes,t)?(this.table.columns[e].resetFilter(),this.table.onRowFilterChange()):u.isDefined(this.table.rowFilter[e].value)&&""!==this.table.rowFilter[e].value?this.table.onRowFilterChange():setTimeout((()=>{this.table.columns[e].filterInstance.focus()}))}getFilterOnFieldValues(e){if(!this.table.datasource||!this.table.datasource.execute(u.DataSource.Operation.SUPPORTS_DISTINCT_API))return;const t=e.field,i=this.table.fullFieldDefs,n=g.filter(i,{filteronfilter:t}),a=g.get(this.table.rowFilter,[t,"value"]);g.forEach(n,(e=>{const t=e.filteronfilter,i=e.field,n={},s=e.filterwidget;o.isDataSetWidget(s)&&t!==i&&!e.isFilterDataSetBound&&(n[t]=u.isDefined(a)&&""!==a&&null!==a?{value:a}:{},s===u.FormWidgetType.AUTOCOMPLETE&&e.filterInstance.dataoptions?e.filterInstance.dataoptions.filterFields=n:this.table.datasource.execute(u.DataSource.Operation.GET_DISTINCT_DATA_BY_FIELDS,{fields:i,filterFields:n}).then((t=>{e.filterdataset=t.data})))}))}onRowFilterChange(e){const t=[],i=g.find(this.table.fullFieldDefs,{field:e});g.forEach(this.table.rowFilter,((e,n)=>{(u.isDefined(e.value)&&""!==e.value||g.includes(this.table.emptyMatchModes,e.matchMode))&&(i&&n===i.field&&(e.type=e.type||i.type,e.matchMode=e.matchMode||g.get(this.table.matchModeTypesMap[e.type],0)),t.push({field:n,value:e.value,matchMode:e.matchMode,type:e.type}))})),this.table.gridOptions.searchHandler(t,void 0,"search"),i&&this.getFilterOnFieldValues(i)}refreshData(e){if(!this.table.datasource)return;const t=e?this.table.dataNavigator.dn.currentPage:1,i=this.table.sortInfo,n=i&&i.direction?i.field+" "+i.direction:"",a=this.getFilterFields(this.table.filterInfo),s=this.getLogicalOperator(a);o.refreshDataSource(this.table.datasource,{page:t,filterFields:a,orderBy:n,condition:s})}static{this.\u0275fac=function(e){return new(e||be)(v.\u0275\u0275directiveInject(re,2))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:be,selectors:[["","wmTableFilterSort",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(be,[{type:t.Directive,args:[{selector:"[wmTableFilterSort]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[re]}]}]),null);const ye={widgetType:"wm-table-action",hostClass:""};class we extends o.BaseComponent{static{this.initializeProps=void o.register("wm-table-action",new Map([["accessroles",o.PROP_STRING],["action",o.PROP_STRING],["caption",o.PROP_STRING],["class",o.PROP_STRING],["conditionalclass",o.PROP_ANY],["conditionalstyle",o.PROP_ANY],["disabled",{value:!1,...o.PROP_BOOLEAN}],["display-name",o.PROP_STRING],["hyperlink",o.PROP_STRING],["icon",o.PROP_STRING],["iconclass",o.PROP_STRING],["key",o.PROP_STRING],["position",{value:"footer",...o.PROP_STRING}],["shortcutkey",o.PROP_STRING],["show",{value:!0,...o.PROP_BOOLEAN}],["tabindex",{value:0,...o.PROP_NUMBER}],["title",o.PROP_STRING],["target",o.PROP_STRING],["widget-type",{value:"button",...o.PROP_STRING}]]))}constructor(e,t,i){super(e,ye,i),this.table=t}populateAction(){this.buttonDef={key:this.key,displayName:this["display-name"]||this.caption||"",show:this.show,class:this.class||"",iconclass:this.iconclass||"",title:g.isUndefined(this.title)?this["display-name"]||"":this.title,action:this.action,accessroles:this.accessroles,shortcutkey:this.shortcutkey,disabled:this.disabled,tabindex:this.tabindex,icon:this.icon,position:this.position,widgetType:this["widget-type"],hyperlink:this.hyperlink,target:this.target||"",conditionalclass:this.conditionalclass||"",conditionalstyle:this.conditionalstyle||{}},this._propsInitialized=!0}ngOnInit(){super.ngOnInit(),this.populateAction(),this.table.registerActions(this.buttonDef)}onPropertyChange(e,t){this._propsInitialized&&("display-name"===e?this.buttonDef.displayName=t:this.buttonDef[e]=t)}static{this.\u0275fac=function(e){return new(e||we)(v.\u0275\u0275directiveInject(v.Injector),v.\u0275\u0275directiveInject(re,8),v.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:we,selectors:[["","wmTableAction",""]],features:[v.\u0275\u0275ProvidersFeature([o.provideAsWidgetRef(we)]),v.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(we,[{type:t.Directive,args:[{selector:"[wmTableAction]",providers:[o.provideAsWidgetRef(we)]}]}],(()=>[{type:v.Injector},{type:re,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const Ce={widgetType:"wm-table-column-group",hostClass:""};class Pe extends o.BaseComponent{static{this.initializeProps=void o.register("wm-table-column-group",new Map([["backgroundcolor",o.PROP_STRING],["caption",o.PROP_STRING],["col-class",o.PROP_STRING],["name",o.PROP_STRING],["textalignment",{value:"center",...o.PROP_STRING}]]))}constructor(e,t,i,n){super(e,Ce,n),this.group=t,this.table=i,this.config={}}populateConfig(){this.config={field:this.name,displayName:this.caption||"",columns:[],isGroup:!0,accessroles:this.accessroles,textAlignment:this.textalignment||"center",backgroundColor:this.backgroundcolor,class:this["col-class"]}}onPropertyChange(e,t,i){"caption"===e?(this.config.displayName=t||"",this.table.callDataGridMethod("setColumnProp",this.config.field,"displayName",t,!0)):super.onPropertyChange(e,t,i)}ngOnInit(){super.ngOnInit(),this.populateConfig();const e=parseInt(this.getAttr("headerIndex"),10),t=parseInt(this.getAttr("index"),10),i=this.group&&this.group.name;o.setHeaderConfigForTable(this.table.headerConfig,this.config,i,i?t:e)}static{this.\u0275fac=function(e){return new(e||Pe)(v.\u0275\u0275directiveInject(v.Injector),v.\u0275\u0275directiveInject(Pe,12),v.\u0275\u0275directiveInject(re,8),v.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:Pe,selectors:[["","wmTableColumnGroup",""]],features:[v.\u0275\u0275ProvidersFeature([o.provideAsWidgetRef(Pe)]),v.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(Pe,[{type:t.Directive,args:[{selector:"[wmTableColumnGroup]",providers:[o.provideAsWidgetRef(Pe)]}]}],(()=>[{type:v.Injector},{type:Pe,decorators:[{type:t.SkipSelf},{type:t.Optional}]},{type:re,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const Ie=["customExprTmpl"],Ae=["inlineWidgetTmpl"],Ee=["filterTmpl"],Oe=["filterWidget"],Te=["inlineWidget"],xe=["inlineWidgetNew"],De={widgetType:"wm-table-column",hostClass:""};let Re=["datafield","displayfield","placeholder","searchkey","matchmode","displaylabel","groupby","match","dateformat","showcount","collapsible","checkedvalue","uncheckedvalue","showdropdownon","dataentrymode","autoclose","dataset","outputformat"];Re=[...Re,"maxchars","regexp","minvalue","maxvalue","step","required","mindate","maxdate","excludedates","excludedays","mintime","maxtime"];class Se{constructor(e){this.widget=e}focus(){this.widget.focus()}setProperty(e,t){e="value"===e?"datavalue":e,this.widget[e]=t}getProperty(e){return e="value"===e?"datavalue":e,this.widget[e]}}class _e extends o.BaseComponent{static{this.initializeProps=void o.register("wm-table-column",new Map([["accessroles",o.PROP_STRING],["autoclose",{value:"outsideClick",...o.PROP_STRING}],["backgroundcolor",o.PROP_STRING],["binding",o.PROP_STRING],["caption",o.PROP_STRING],["checkedvalue",o.PROP_STRING],["col-class",o.PROP_STRING],["collapsible",o.PROP_BOOLEAN],["col-ng-class",o.PROP_STRING],["currencypattern",o.PROP_STRING],["customExpression",o.PROP_BOOLEAN],["dataentrymode",{value:"default",...o.PROP_STRING}],["datafield",o.PROP_STRING],["dataoptions",o.PROP_ANY],["dataset",o.PROP_ANY],["datasource",o.PROP_STRING],["dateformat",o.PROP_STRING],["datepattern",o.PROP_STRING],["debouncetime",{value:250,...o.PROP_NUMBER}],["defaultvalue",o.PROP_STRING],["disabled",o.PROP_BOOLEAN],["displayfield",o.PROP_STRING],["displaylabel",o.PROP_STRING],["editdatepattern",o.PROP_STRING],["outputformat",o.PROP_STRING],["edit-widget-type",o.PROP_STRING],["showineditmode",o.PROP_BOOLEAN],["editinputtype",o.PROP_STRING],["exportexpression",o.PROP_STRING],["filterdataset",o.PROP_STRING],["filterdatafield",o.PROP_STRING],["filterdisplayfield",o.PROP_STRING],["filterdisplaylabel",o.PROP_STRING],["filterexpressions",{value:"{}",...o.PROP_STRING}],["filtersearchkey",o.PROP_STRING],["filter-on",o.PROP_STRING],["filteronfilter",o.PROP_STRING],["filterplaceholder",o.PROP_STRING],["filterwidget",o.PROP_STRING],["filterinputtype",o.PROP_STRING],["formatpattern",o.PROP_STRING],["custompipeformat",o.PROP_STRING],["fractionsize",o.PROP_STRING],["generator",o.PROP_STRING],["groupby",o.PROP_STRING],["limit",o.PROP_NUMBER],["match",o.PROP_STRING],["matchmode",o.PROP_STRING],["maxchars",o.PROP_NUMBER],["maxvalue",o.PROP_NUMBER],["step",o.PROP_NUMBER],["mobiledisplay",{value:!0,...o.PROP_BOOLEAN}],["minvalue",o.PROP_NUMBER],["maxdate",o.PROP_STRING],["mindate",o.PROP_STRING],["excludedays",o.PROP_STRING],["excludedates",o.PROP_STRING],["maxtime",o.PROP_STRING],["mintime",o.PROP_STRING],["pcdisplay",{value:!0,...o.PROP_BOOLEAN}],["period",o.PROP_BOOLEAN],["placeholder",o.PROP_STRING],["prefix",o.PROP_STRING],["primary-key",o.PROP_BOOLEAN],["readonly",o.PROP_BOOLEAN],["regexp",o.PROP_ANY],["related-entity-name",o.PROP_STRING],["required",o.PROP_BOOLEAN],["rowactionsposition",o.PROP_STRING],["searchkey",o.PROP_STRING],["searchable",{value:!0,...o.PROP_BOOLEAN}],["showinfilter",{value:!1,...o.PROP_BOOLEAN}],["suffix",o.PROP_STRING],["show",{value:!0,...o.PROP_BOOLEAN}],["showcount",o.PROP_BOOLEAN],["showdropdownon",{value:"default",...o.PROP_STRING}],["sortable",{value:!0,...o.PROP_BOOLEAN}],["tabletdisplay",{value:!0,...o.PROP_BOOLEAN}],["textalignment",{value:"left",...o.PROP_STRING}],["textcolor",o.PROP_STRING],["type",{value:"string",...o.PROP_STRING}],["uncheckedvalue",o.PROP_STRING],["validationmessage",o.PROP_STRING],["widget-type",o.PROP_STRING],["width",o.PROP_STRING]]))}constructor(e,t,i,n,a,s,o){super(e,De,o),this.appDefaults=t,this.table=i,this.group=n,this.bindfilterdataset=a,this.binddataset=s,this.syncValidators=[],this.asyncValidators=[],this.observeOnFields=[],this.aggregate={sum:()=>g.sum(this._getColumnData()),average:(e=2)=>g.round(g.mean(this._getColumnData()),e),count:()=>this._getColumnData().length,minimum:()=>g.min(this._getColumnData()),maximum:()=>g.max(this._getColumnData()),percent:(e,t=2)=>g.round(g.sum(this._getColumnData())/e*100,t)},this.notifyForFields=[]}get dataoptions(){return this._dataoptions}set dataoptions(e){this._dataoptions=e}get datasource(){return this._datasource}set datasource(e){this._datasource=e}ngOnInit(){super.ngOnInit(),this.populateFieldDef();const e=parseInt(this.getAttr("index"),10),t=parseInt(this.getAttr("headerIndex"),10),i=this.group&&this.group.name;if(o.setHeaderConfigForTable(this.table.headerConfig,{field:this.field,displayName:this.displayName},i,i?e:t),this.table.registerColumns(this.widget,e),this._isRowFilter="multicolumn"===this.table.filtermode&&this.searchable,this._isInlineEditable=!this.readonly&&this.table.editmode!==o.EDIT_MODE.DIALOG&&this.table.editmode!==o.EDIT_MODE.FORM,this._isNewEditableRow=this._isInlineEditable&&this.table.editmode===o.EDIT_MODE.QUICK_EDIT&&this.table.shownewrow,this.setUpControls(),this._propsInitialized=!0,this.getFormControl()){const e=this.getFormControl().statusChanges.pipe(m.debounceTime(100)).subscribe((e=>this.onStatusChange(e,"inlineInstance")));this.registerDestroyListener((()=>e.unsubscribe())),this.fieldValidations=new o.BaseFieldValidations(this,this.inlineInstance,this.editWidgetType,this.getFormControl(),this.table,"inlineInstance")}if(this._checkNewEditableRowControl()){const e=this.getFormControl("_new").statusChanges.pipe(m.debounceTime(100)).subscribe((e=>this.onStatusChange(e,"inlineInstanceNew")));this.registerDestroyListener((()=>e.unsubscribe())),this.fieldValidations_new=new o.BaseFieldValidations(this,this.inlineInstanceNew,this.editWidgetType,this.getFormControl("_new"),this.table,"inlineInstanceNew")}}ngAfterContentInit(){if(this._isRowFilter){const e=this._filterInstances.changes.subscribe((e=>{this.filterInstance=e.first&&e.first.widget,this.setUpFilterWidget()}));this.registerDestroyListener((()=>e.unsubscribe()))}if(this._isInlineEditable){const e=this._inlineInstances.changes.subscribe((e=>{this.inlineInstance=e.first&&e.first.widget,this.fieldValidations.formwidget=e.first,this.table.registerFormField(this.binding,new Se(this.inlineInstance)),this.setUpInlineWidget("inlineInstance")}));if(this.registerDestroyListener((()=>e.unsubscribe())),this._isNewEditableRow){const e=this._inlineInstancesNew.changes.subscribe((e=>{this.inlineInstanceNew=e.first&&e.first.widget,this.fieldValidations_new.formwidget=e.first,this.setUpInlineWidget("inlineInstanceNew")}));this.registerDestroyListener((()=>e.unsubscribe()))}}this.registerReadyStateListener((()=>{this.key=this.field||this.binding})),super.ngAfterContentInit(),this.table.isdynamictable&&this.table.inlineWidgetTmpl._results.push(this.inlineWidthTempRef)}ngAfterViewInit(){this.filterTemplateRef&&this.table.renderDynamicFilterColumn(this.filterTemplateRef)}applyValidations(){this.getFormControl()&&(this.syncValidators.length>0&&this.fieldValidations.setValidators(this.syncValidators),this.fieldValidations.setUpValidators(),this.asyncValidators.length>0&&this.fieldValidations.setAsyncValidators(this.asyncValidators),this.observeOnFields.length>0&&this.fieldValidations.observeOn(this.observeOnFields,"columns"))}removeValidations(){this.table.ngform.markAsUntouched();const e=this.getFormControl();e&&(e.clearValidators(),e.clearAsyncValidators(),e.updateValueAndValidity())}applyNewRowValidations(){this._checkNewEditableRowControl()&&(this.syncValidators.length>0&&this.fieldValidations_new.setValidators(this.syncValidators),this.fieldValidations_new.setUpValidators(),this.asyncValidators.length>0&&this.fieldValidations_new.setAsyncValidators(this.asyncValidators),this.observeOnFields.length>0&&this.fieldValidations_new.observeOn(this.observeOnFields,"columns"))}removeNewRowValidations(){if(this.table.ngform.markAsUntouched(),!this._checkNewEditableRowControl())return;const e=this.getFormControl("_new");e.clearValidators(),e.clearAsyncValidators(),e.updateValueAndValidity()}addFormControl(e){const t=e?this.binding+e:this.binding;this.table.ngform.addControl(t,this.table.fb.control(""))}getFormControl(e){const t=e?this.binding+e:this.binding;return this.table.ngform.controls[t]}_checkNewEditableRowControl(){return this._isNewEditableRow&&this.getFormControl("_new")}setUpControls(){if(this._isInlineEditable){if(this.editWidgetType===u.FormWidgetType.UPLOAD)return;this.addFormControl();const e=this.getFormControl();if(e){const t=e.valueChanges.pipe(m.debounceTime(200)).subscribe((e=>this.onValueChange(e,"inlineInstance")));this.registerDestroyListener((()=>t.unsubscribe()))}if(this._isNewEditableRow){this.addFormControl("_new");const e=this.getFormControl("_new");if(e){const t=e.valueChanges.pipe(m.debounceTime(200)).subscribe((e=>this.onValueChange(e,"inlineInstanceNew")));this.registerDestroyListener((()=>t.unsubscribe()))}}}if(this._isRowFilter&&(this.addFormControl("_filter"),this.filterControl=this.getFormControl("_filter"),this.filterControl)){const e=this.filterControl.valueChanges.subscribe(this.onFilterValueChange.bind(this));this.registerDestroyListener((()=>e.unsubscribe()))}}resetFilter(){this.filterControl&&this.filterControl.setValue(""),this.filterwidget===u.FormWidgetType.AUTOCOMPLETE&&(this.filterInstance.query="",this.filterInstance.queryModel="")}onFilterValueChange(e){this.table.rowFilter[this.field].value=e}get datavalue(){return this[this.activeControlType]&&this[this.activeControlType].datavalue}set datavalue(e){const t=this.getFormControl("inlineInstanceNew"===this.activeControlType?"_new":void 0);t&&t&&this.editWidgetType!==u.FormWidgetType.UPLOAD&&t.setValue(e)}get value(){return this.datavalue}set value(e){this.datavalue=e}onValueChange(e,t){null!==e&&o.applyFilterOnField(this.table.datasource,this.widget,this.table.fieldDefs,e,{widget:"edit-widget-type"}),this.table.ngform.touched&&(this.activeControlType=t,"inlineInstance"===t?(this.notifyChanges(),this.fieldValidations.setCustomValidationMessage()):this._isNewEditableRow&&(this.notifyChanges("_new"),this.fieldValidations_new.setCustomValidationMessage()))}loadFilterData(){this._isRowFilter&&o.isDataSetWidget(this.filterwidget)&&!this.bindfilterdataset&&(this.table.datasource.execute(u.DataSource.Operation.SUPPORTS_DISTINCT_API)?(this.relatedEntityName&&(this.widget["is-related"]=!0,this.widget["lookup-type"]=this.relatedEntityName,this.widget["lookup-field"]=g.last(g.split(this.field,"."))),this.filterwidget===u.FormWidgetType.AUTOCOMPLETE?(this.filterInstance.dataoptions=o.getDistinctFieldProperties(this.table.datasource,this),this.filterInstance.datasource=this.table.datasource):o.getDistinctValues(this.table.datasource,this.widget,"filterwidget").then((e=>{this._filterDataSet=e.data,this.setFilterWidgetDataSet()}))):this.registerDestroyListener(u.$watch(this.table.binddataset,this.viewParent,{},(e=>this.widget.filterdataset=e),o.getWatchIdentifier(this.widgetId,"filterdataset"))))}loadInlineWidgetData(){if(o.isDataSetWidget(this["edit-widget-type"])&&!this.binddataset&&!this.readonly){const e=this.table.datasource;if(this["related-entity-name"]&&this["primary-key"]){this.isDataSetBound=!0;const t=g.split(this.binding,".");this.showPendingSpinner=!0,o.fetchRelatedFieldData(e,this.widget,{relatedField:g.head(t),datafield:g.last(t),widget:"edit-widget-type"})}else e.execute(u.DataSource.Operation.SUPPORTS_DISTINCT_API)&&o.getDistinctValuesForField(e,this.widget,{widget:"edit-widget-type"})}}onDataSourceChange(){this.loadFilterData(),this.table.editmode===o.EDIT_MODE.QUICK_EDIT&&this.loadInlineWidgetData()}setFilterWidgetDataSet(){this.filterInstance&&(this.filterInstance.dataset=this._filterDataSet)}setUpFilterWidget(){this.filterInstance.registerReadyStateListener((()=>{if(o.isDataSetWidget(this.filterwidget)){const e=g.last(this.binding.split("."));this.filterInstance.dataset=this._filterDataSet,this.filterInstance.datafield=this.filterdatafield||e,this.filterInstance.displayfield=this.filterdisplayfield||e,this.filterwidget===u.FormWidgetType.AUTOCOMPLETE&&(this.filterInstance.displaylabel=this.filterdisplaylabel||e,this.filterInstance.searchkey=this.filtersearchkey||e)}this.filterwidget===u.FormWidgetType.TIME&&(this.filterInstance.timepattern=this.appDefaults.timeFormat||"hh:mm:ss a"),this.filterInstance.placeholder=this.filterplaceholder||""}))}notifyChanges(e){g.forEach(this.notifyForFields,(t=>{e&&this._isNewEditableRow?t.fieldValidations_new.validate():t.fieldValidations.validate()}))}observeOn(e){this.observeOnFields=g.cloneDeep(e)}setUpValidators(){this.fieldValidations.setUpValidators(),this._checkNewEditableRowControl()&&this.fieldValidations_new.setUpValidators()}setAsyncValidators(e){this.asyncValidators=g.cloneDeep(e)}setValidators(e){this.syncValidators=g.cloneDeep(e)}boundFn(e){return e()}onStatusChange(e,t){this["showPendingSpinner"+("inlineInstance"===t?"":"New")]="PENDING"===e}setSummaryRowData(e){const t=e instanceof Array?e:[e];this._invokeSummaryRowData(t)}_invokeSummaryRowData(e){g.forEach(e,((e,t)=>{const i=e;if(i instanceof Promise)i.then((e=>{this.table.callDataGridMethod("setSummaryRowDef",this.key,e,t,!0)}));else if(i.value&&i.value instanceof Promise){const e=i;i.value.then((i=>{e.value=i,this.table.callDataGridMethod("setSummaryRowDef",this.key,e,t,!0)}))}this.table.callDataGridMethod("setSummaryRowDef",this.key,i,t)}))}_getColumnData(){return g.map(this.table.dataset,this.binding)}setInlineWidgetProp(e,t,i){"datepattern"===t&&this.editWidgetType===u.FormWidgetType.TIME&&(t="timepattern"),this[e]&&u.isDefined(i)&&(this[e][t]=i)}setUpInlineWidget(e){this[e].registerReadyStateListener((()=>{o.isDataSetWidget(this["edit-widget-type"])&&(this[e].dataset=this.dataset),Re.forEach((t=>{this.setInlineWidgetProp(e,t,this[t])})),this[e].datasource=this._datasource,this[e].dataoptions=this._dataoptions,this.setInlineWidgetProp(e,"datepattern",this.editdatepattern)}))}getStyleDef(){return`width: ${this.width||""}; background-color: ${this.backgroundcolor||""}; color: ${this.textcolor||""};`}populateFieldDef(){if(this.width="px"===this.width?"":this.width||"",this.field=this.binding,this.displayName=this.caption||"",this.pcDisplay=this.pcdisplay,this.mobileDisplay=this.mobiledisplay,this.tabletDisplay=this.tabletdisplay,this.textAlignment=this.textalignment,this.backgroundColor=this.backgroundcolor,this.textColor=this.textcolor,this.primaryKey=this["primary-key"],this.relatedEntityName=this["related-entity-name"],this.style=this.getStyleDef(),this.class=this["col-class"],this.ngclass=this["col-ng-class"],this.formatpattern="toNumber"===this.formatpattern?"numberToString":this.formatpattern,this.searchable="blob"!==this.type&&"clob"!==this.type&&this.searchable,this.showinfilter=!this.nativeElement.hasAttribute("showinfilter")||this.table&&this.table.isdynamictable?this.show:this.nativeElement.getAttribute("showinfilter"),this.limit=this.limit?+this.limit:void 0,this.editWidgetType=this["edit-widget-type"]=this["edit-widget-type"]||o.getEditModeWidget(this),this.filterOn=this["filter-on"],this.readonly=u.isDefined(this.getAttr("readonly"))?"true"===this.getAttr("readonly"):this["related-entity-name"]?!this["primary-key"]:g.includes(["identity","uniqueid","sequence"],this.generator),this.filterwidget=this.filterwidget||o.getDataTableFilterWidget(this.type||"string"),this.isFilterDataSetBound=!!this.bindfilterdataset,this.defaultvalue=o.getDefaultValue(this.defaultvalue,this.type,this.editWidgetType),u.isDateTimeType(this.type)&&"toDate"===this.formatpattern&&!this.datepattern){const e=u.getDisplayDateTimeFormat(this.type);this.type===u.DataType.DATE?this.datepattern=this.appDefaults.dateFormat||e:this.type===u.DataType.TIME?this.datepattern=this.appDefaults.timeFormat||e:this.type!==u.DataType.TIMESTAMP&&this.type!==u.DataType.DATETIME||(this.datepattern=this.appDefaults.dateTimeFormat||e)}}onPropertyChange(e,t,i){if(this._propsInitialized){switch(e){case"caption":this.displayName=t||"",this.setProperty("displayName",this.displayName);const i=this.group&&this.group.name,n=i?parseInt(this.getAttr("index"),10):parseInt(this.getAttr("headerIndex"),10);o.setHeaderConfigForTable(this.table.headerConfig,{field:this.field,displayName:this.displayName},i,n);break;case"defaultvalue":this.defaultvalue=o.getDefaultValue(this.defaultvalue,this.type,this.editWidgetType);break;case"show":this.table.redraw(!0),this.showinfilter=this.nativeElement.hasAttribute("showinfilter")?this.nativeElement.getAttribute("showinfilter"):t;break;case"filterdataset":this._filterDataSet=t,this.setFilterWidgetDataSet();break;case"editdatepattern":this.setInlineWidgetProp("inlineInstance","datepattern",t),this.setInlineWidgetProp("inlineInstanceNew","datepattern",t);break;case"showinfilter":this.showinfilter=t;break;default:Re.includes(e)&&(this.setInlineWidgetProp("inlineInstance",e,t),this.setInlineWidgetProp("inlineInstanceNew",e,t))}super.onPropertyChange(e,t,i)}}setProperty(e,t){if(this[e]=t,"displayName"===e)this.table.callDataGridMethod("setColumnProp",this.field,e,t);else this.table.redraw(!0)}static{this.\u0275fac=function(e){return new(e||_e)(v.\u0275\u0275directiveInject(v.Injector),v.\u0275\u0275directiveInject(T.AppDefaults),v.\u0275\u0275directiveInject(re,8),v.\u0275\u0275directiveInject(Pe,8),v.\u0275\u0275injectAttribute("filterdataset.bind"),v.\u0275\u0275injectAttribute("dataset.bind"),v.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:_e,selectors:[["","wmTableColumn",""]],contentQueries:function(e,t,i){if(1&e&&(v.\u0275\u0275contentQuery(i,Ie,5),v.\u0275\u0275contentQuery(i,Ae,5),v.\u0275\u0275contentQuery(i,Ee,5),v.\u0275\u0275contentQuery(i,Oe,5),v.\u0275\u0275contentQuery(i,Te,5),v.\u0275\u0275contentQuery(i,xe,5)),2&e){let e;v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.customExprTmpl=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.inlineWidthTempRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t.filterTemplateRef=e.first),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t._filterInstances=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t._inlineInstances=e),v.\u0275\u0275queryRefresh(e=v.\u0275\u0275loadQuery())&&(t._inlineInstancesNew=e)}},features:[v.\u0275\u0275ProvidersFeature([o.provideAsWidgetRef(_e)]),v.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(_e,[{type:t.Directive,args:[{selector:"[wmTableColumn]",providers:[o.provideAsWidgetRef(_e)]}]}],(()=>[{type:v.Injector},{type:T.AppDefaults},{type:re,decorators:[{type:t.Optional}]},{type:Pe,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Attribute,args:["filterdataset.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{_filterInstances:[{type:t.ContentChildren,args:["filterWidget",{descendants:!0}]}],_inlineInstances:[{type:t.ContentChildren,args:["inlineWidget",{descendants:!0}]}],_inlineInstancesNew:[{type:t.ContentChildren,args:["inlineWidgetNew",{descendants:!0}]}],customExprTmpl:[{type:t.ContentChild,args:["customExprTmpl"]}],inlineWidthTempRef:[{type:t.ContentChild,args:["inlineWidgetTmpl"]}],filterTemplateRef:[{type:t.ContentChild,args:["filterTmpl"]}]});const Me={widgetType:"wm-table-row",hostClass:""};class Ne extends o.BaseComponent{static{this.initializeProps=void o.register("wm-table-row",new Map([["class",o.PROP_STRING],["closeothers",{value:!0,...o.PROP_BOOLEAN}],["content",o.PROP_STRING],["columnwidth",{value:"30px",...o.PROP_STRING}],["collapseicon",o.PROP_STRING],["expandicon",o.PROP_STRING],["height",o.PROP_STRING],["position",{value:"0",...o.PROP_STRING}]]))}constructor(e,t,i){super(e,Me,i),this.table=t}populateConfig(){this.config={closeothers:this.closeothers,content:this.content,columnwidth:this.columnwidth,expandicon:this.expandicon,collapseicon:this.collapseicon,height:this.height,position:this.position}}ngOnInit(){super.ngOnInit(),this.populateConfig(),this.table.registerRow(this.config,this)}onPropertyChange(e,t){"content"===e&&this.config&&(this.config.content=this.content)}static{this.\u0275fac=function(e){return new(e||Ne)(v.\u0275\u0275directiveInject(v.Injector),v.\u0275\u0275directiveInject(re,12),v.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:Ne,selectors:[["","wmTableRow",""]],features:[v.\u0275\u0275ProvidersFeature([o.provideAsWidgetRef(Ne)]),v.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(Ne,[{type:t.Directive,args:[{selector:"[wmTableRow]",providers:[o.provideAsWidgetRef(Ne)]}]}],(()=>[{type:v.Injector},{type:re,decorators:[{type:t.Optional},{type:t.SkipSelf}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const ke={widgetType:"wm-table-row-action",hostClass:""};class Le extends o.BaseComponent{static{this.initializeProps=void o.register("wm-table-row-action",new Map([["accessroles",o.PROP_STRING],["action",o.PROP_STRING],["caption",o.PROP_STRING],["class ",{value:"btn-secondary",...o.PROP_STRING}],["disabled",{value:!1,...o.PROP_BOOLEAN}],["display-name",o.PROP_STRING],["hyperlink",o.PROP_STRING],["iconclass",o.PROP_STRING],["key",o.PROP_STRING],["show",{value:!0,...o.PROP_BOOLEAN}],["tabindex",{value:0,...o.PROP_NUMBER}],["target",o.PROP_STRING],["title",o.PROP_STRING],["widget-type",{value:"button",...o.PROP_STRING}]]))}constructor(e,t,i,n){super(e,ke,n),this.table=t,i[0].editRow=e=>this.table.editRow(e),i[0].deleteRow=e=>this.table.deleteRow(e),i[0].addNewRow=e=>this.table.addNewRow(e)}getTitle(){return g.isUndefined(this.title)?this["display-name"]||"":this.title}populateAction(){this.buttonDef={key:this.key,displayName:this["display-name"]||this.caption||"",show:this.show,class:this.class||"",iconclass:this.iconclass||"",title:this.getTitle(),action:this.action,accessroles:this.accessroles,disabled:this.disabled,tabindex:this.tabindex?+this.tabindex:void 0,widgetType:this["widget-type"]||"button",hyperlink:this.hyperlink,target:this.target||"",conditionalclass:this.conditionalclass||"",conditionalstyle:this.conditionalstyle||{}}}ngOnInit(){super.ngOnInit(),this.populateAction(),this.table.registerRowActions(this.buttonDef)}static{this.\u0275fac=function(e){return new(e||Le)(v.\u0275\u0275directiveInject(v.Injector),v.\u0275\u0275directiveInject(re,8),v.\u0275\u0275directiveInject(o.Context,2),v.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=v.\u0275\u0275defineDirective({type:Le,selectors:[["","wmTableRowAction",""]],features:[v.\u0275\u0275ProvidersFeature([o.provideAsWidgetRef(Le),{provide:o.Context,useFactory:()=>({}),multi:!0}]),v.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(Le,[{type:t.Directive,args:[{selector:"[wmTableRowAction]",providers:[o.provideAsWidgetRef(Le),{provide:o.Context,useFactory:()=>({}),multi:!0}]}]}],(()=>[{type:v.Injector},{type:re,decorators:[{type:t.Optional}]},{type:Array,decorators:[{type:t.Self},{type:t.Inject,args:[o.Context]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const Fe=[re,pe,be,we,_e,Pe,Ne,Le];class je{static{this.\u0275fac=function(e){return new(e||je)}}static{this.\u0275mod=v.\u0275\u0275defineNgModule({type:je})}static{this.\u0275inj=v.\u0275\u0275defineInjector({imports:[r.BasicModule,s.BsDropdownModule,i.CommonModule,n.FormsModule,n.ReactiveFormsModule,l.InputModule,d.ListModule,c.MenuModule,p.PaginationModule,a.TooltipModule,o.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&v.\u0275setClassMetadata(je,[{type:t.NgModule,args:[{imports:[r.BasicModule,s.BsDropdownModule,i.CommonModule,n.FormsModule,n.ReactiveFormsModule,l.InputModule,d.ListModule,c.MenuModule,p.PaginationModule,a.TooltipModule,o.WmComponentsModule],declarations:[...Fe],exports:[...Fe]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&v.\u0275\u0275setNgModuleScope(je,{declarations:[re,pe,be,we,_e,Pe,Ne,Le],imports:[r.BasicModule,s.BsDropdownModule,i.CommonModule,n.FormsModule,n.ReactiveFormsModule,l.InputModule,d.ListModule,c.MenuModule,p.PaginationModule,a.TooltipModule,o.WmComponentsModule],exports:[re,pe,be,we,_e,Pe,Ne,Le]}),e.TableActionDirective=we,e.TableCUDDirective=pe,e.TableColumnDirective=_e,e.TableColumnGroupDirective=Pe,e.TableComponent=re,e.TableFilterSortDirective=be,e.TableModule=je,e.TableRowActionDirective=Le,e.TableRowDirective=Ne})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("rxjs/operators"),require("@wm/core"),require("@wm/components/data/table")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","rxjs/operators","@wm/core","@wm/components/data/table"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.data=e.wm.components.data||{},e.wm.components.data.livetable={}),e.ng.core,e.ng.common,e.wm.components.base,e.rxjs.operators,e.wm.core,e.wm.components.data.table)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(s);const d=["wmLiveTable",""],p=["*"],u={widgetType:"wm-livetable",hostClass:"app-livegrid"};class h extends n.StylableComponent{static{this.initializeProps=void n.register("wm-livetable",new Map([["class",n.PROP_STRING],["formlayout",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t,i,a,s,o,r,l){super(e,u,l),this.dialogService=a,this.app=s,this.$queue=[],this.tableOptions={multiselect:!1,setGridEditMode:""},n.styler(this.nativeElement,this),"dialog"===o&&(this.isLayoutDialog=!0,this.dialogId=r)}ngAfterContentInit(){super.ngAfterContentInit(),this.table&&(this.table._liveTableParent=this,this.table.datagridElement.datatable("option",this.tableOptions),this.table.selectedItemChange$.pipe(a.debounceTime(250)).subscribe(this.onSelectedItemChange.bind(this)),this.isLayoutDialog||this.form||this.table.datagridElement.datatable("option",{beforeRowUpdate:()=>{this.showErrorMessage()},beforeRowDelete:()=>{this.showErrorMessage()},beforeRowInsert:()=>{this.showErrorMessage()}}))}openDialog(){this.dialogService.open(this.dialogId,this.viewParent),s.$appDigest()}closeDialog(){this.dialogService.close(this.dialogId,this.viewParent)}focusFirstInput(){const e=$(this.form.$element).find('[role="textbox"]').first();e.focus(),e.select()}onDialogOpen(){this.focusFirstInput()}setFormData(e){this.form.isDestroyed||(this.form.getWidget().formdata=e)}_addNewRow(){this.form.isSelected=!0,this.setFormData(""),this.form.new(),this.isLayoutDialog&&this.onDialogOpen()}addNewRow(){if(this.isLayoutDialog)return this.openDialog(),void this.$queue.push(this._addNewRow.bind(this));this._addNewRow()}_updateRow(e,t){this.setFormData(e),this.form.isSelected=!0,this.form.edit(),this.isLayoutDialog&&(this.form.isUpdateMode="dblclick"!==t||this.form.updateMode,this.onDialogOpen())}updateRow(e,t){if(this.isLayoutDialog)return this.openDialog(),void this.$queue.push(this._updateRow.bind(this,e,t));this._updateRow(e,t)}onSelectedItemChange(e){let t;this.form&&this.table&&(e&&e.length>0&&!this.form.isSelected&&(this.form.isSelected=!0),e&&e.length>0?(t=this.table.multiselect?e[0]:e[e.length-1],this.setFormData(s.getClonedObject(t)),this.form.isUpdateMode&&this.form.edit()):(this.form.isSelected=!1,this.setFormData(""),this.form.clearData()))}onCancel(){this.form.isUpdateMode=!1,this.isLayoutDialog&&this.closeDialog()}onResult(e,t,i,n){switch(this.form.isUpdateMode=s.isDefined(n)?n:!!i,e){case"insert":this.table.gridOptions.isNavTypeScrollOrOndemand()&&(this.table.isNewRowInserted=!0),i?(this.table.gridfirstrowselect=!1,this.table.initiateSelectItem(this.table.getNavigationTargetBySortInfo(),t,!0)):this.table.initiateSelectItem(this.table.getNavigationTargetBySortInfo(),t);break;case"update":i?(this.table.gridfirstrowselect=!1,this.table.initiateSelectItem("current",t,!0)):this.table.initiateSelectItem("current",t);break;case"delete":this.table.onRecordDelete()}this.table.updateVariable(),this.isLayoutDialog&&(i?"insert"===e?this.form.new():"update"===e&&this.form.edit():this.closeDialog())}showErrorMessage(){this.app.notifyApp(this.appLocale.LABEL_ACCESS_DENIED,"error")}onFormReady(e){this.form=e,setTimeout((()=>{s.triggerFn(this.$queue.pop())}))}static{this.\u0275fac=function(e){return new(e||h)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(l.ElementRef),l.\u0275\u0275directiveInject(l.ChangeDetectorRef),l.\u0275\u0275directiveInject(c.AbstractDialogService),l.\u0275\u0275directiveInject(c.App),l.\u0275\u0275injectAttribute("formlayout"),l.\u0275\u0275injectAttribute("dialogid"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:h,selectors:[["","wmLiveTable",""]],contentQueries:function(e,t,i){if(1&e&&l.\u0275\u0275contentQuery(i,o.TableComponent,5),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.table=e.first)}},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(h)]),l.\u0275\u0275InheritDefinitionFeature],attrs:d,ngContentSelectors:p,decls:1,vars:0,template:function(e,t){1&e&&(l.\u0275\u0275projectionDef(),l.\u0275\u0275projection(0))},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(h,[{type:t.Component,args:[{selector:"[wmLiveTable]",providers:[n.provideAsWidgetRef(h)],template:"<ng-content></ng-content>"}]}],(()=>[{type:l.Injector},{type:l.ElementRef},{type:l.ChangeDetectorRef},{type:c.AbstractDialogService},{type:c.App},{type:void 0,decorators:[{type:t.Attribute,args:["formlayout"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dialogid"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{table:[{type:t.ContentChild,args:[o.TableComponent]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(h,{className:"LiveTableComponent",filePath:"live-table.component.ts",lineNumber:40});const m=[h];class g{static{this.\u0275fac=function(e){return new(e||g)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:g})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(g,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...m],exports:[...m]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(g,{declarations:[h],imports:[i.CommonModule,n.WmComponentsModule],exports:[h]}),e.LiveTableComponent=h,e.LiveTableModule=g})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/components/input"),require("@wm/components/dialogs/design-dialog"),require("@angular/forms"),require("@wm/core"),require("@wm/components/prefab"),require("@wm/components/data/list"),require("lodash-es"),require("@wm/components/data/table"),require("rxjs/operators"),require("@wm/components/data/live-table")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/basic","@wm/components/input","@wm/components/dialogs/design-dialog","@angular/forms","@wm/core","@wm/components/prefab","@wm/components/data/list","lodash-es","@wm/components/data/table","rxjs/operators","@wm/components/data/live-table"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.data=e.wm.components.data||{},e.wm.components.data.form={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.basic,e.wm.components.input,e.wm.components.dialogs.designdialog,e.ng.forms,e.wm.core,e.wm.components.prefab,e.wm.components.data.list,e._,e.wm.components.data.table,e.rxjs.operators,e.wm.components.data.livetable)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u,h,m){"use strict";function g(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var f=g(t),v=g(i),b=g(n),y=g(a),w=g(s),C=g(r),P=g(l),I=g(c),A=g(d),E=g(m);const O=new Map([["autocomplete",{value:!1,...n.PROP_BOOLEAN}],["captionalign",{value:"left",...n.PROP_STRING}],["captionposition",{value:"left",...n.PROP_STRING}],["captionsize",n.PROP_STRING],["captionwidth",{value:"xs-12 sm-3 md-3 lg-3",...n.PROP_STRING}],["class",n.PROP_STRING],["collapsible",n.PROP_BOOLEAN],["dataset",n.PROP_ANY],["datasource",n.PROP_STRING],["expanded",{value:!0,...n.PROP_BOOLEAN}],["formdatasource",n.PROP_STRING],["name",n.PROP_STRING],["numberOfFields",n.PROP_NUMBER],["show",{value:!0,...n.PROP_BOOLEAN}],["showindevice",{displayType:"inline-block",value:"all",...n.PROP_STRING}],["subheading",n.PROP_STRING],["tabindex",{value:0,...n.PROP_NUMBER}],["title",n.PROP_STRING]]),T=["dynamicForm"],x=["wmForm",""],D=["*"],R=(e,t)=>({"form-elements":e,"form-body":t}),S=(e,t)=>({"form-elements":e,"form-content":t}),_=e=>({"modal-footer":e}),M=e=>({btn:e});function N(e,t){1&e&&f.\u0275\u0275projection(0)}function k(e,t){1&e&&f.\u0275\u0275elementContainer(0)}function L(e,t){if(1&e&&f.\u0275\u0275element(0,"i",22),2&e){const e=f.\u0275\u0275nextContext(3);f.\u0275\u0275property("ngClass",e.iconclass)}}function F(e,t){if(1&e&&f.\u0275\u0275elementContainer(0,23),2&e){const e=t.$implicit,i=t.index,n=f.\u0275\u0275nextContext(3),a=f.\u0275\u0275reference(8),s=f.\u0275\u0275reference(10);f.\u0275\u0275property("ngTemplateOutlet","button"===e.widgetType?a:s)("ngTemplateOutletContext",f.\u0275\u0275pureFunction1(3,M,e))("ngTemplateOutletInjector",n.createCustomInjector("action_header_"+i,f.\u0275\u0275pureFunction1(5,M,e)))}}function j(e,t){if(1&e){const e=f.\u0275\u0275getCurrentView();f.\u0275\u0275elementStart(0,"button",24),f.\u0275\u0275listener("click",(function(){f.\u0275\u0275restoreView(e);const t=f.\u0275\u0275nextContext(3);return f.\u0275\u0275resetView(t.expandCollapsePanel())})),f.\u0275\u0275elementEnd()}if(2&e){const e=f.\u0275\u0275nextContext(3);f.\u0275\u0275property("ngClass",e.expanded?"wi-minus":"wi-plus")}}function B(e,t){if(1&e&&(f.\u0275\u0275elementStart(0,"div",14)(1,"h3",15)(2,"div",16),f.\u0275\u0275template(3,L,1,1,"i",17),f.\u0275\u0275elementEnd(),f.\u0275\u0275elementStart(4,"div",16),f.\u0275\u0275element(5,"div",18)(6,"div",19),f.\u0275\u0275elementEnd(),f.\u0275\u0275elementStart(7,"div",20),f.\u0275\u0275template(8,F,1,7,"ng-container",13),f.\u0275\u0275pipe(9,"filter"),f.\u0275\u0275template(10,j,1,1,"button",21),f.\u0275\u0275elementEnd()()()),2&e){const e=f.\u0275\u0275nextContext(2);f.\u0275\u0275advance(3),f.\u0275\u0275property("ngIf",e.iconclass),f.\u0275\u0275advance(2),f.\u0275\u0275property("innerHTML",e.title,f.\u0275\u0275sanitizeHtml),f.\u0275\u0275advance(),f.\u0275\u0275property("innerHTML",e.subheading,f.\u0275\u0275sanitizeHtml),f.\u0275\u0275advance(2),f.\u0275\u0275property("ngForOf",f.\u0275\u0275pipeBind3(9,5,e.buttonArray,"position","header")),f.\u0275\u0275advance(2),f.\u0275\u0275property("ngIf",e.collapsible)}}function V(e,t){if(1&e&&f.\u0275\u0275element(0,"p",25),2&e){const e=f.\u0275\u0275nextContext(2);f.\u0275\u0275attribute("aria-hidden",!e.statusMessage.caption)("aria-label",e.statusMessage.caption)}}function G(e,t){1&e&&f.\u0275\u0275elementContainer(0)}function W(e,t){if(1&e&&f.\u0275\u0275elementContainer(0,23),2&e){const e=t.$implicit,i=t.index,n=f.\u0275\u0275nextContext(2),a=f.\u0275\u0275reference(8),s=f.\u0275\u0275reference(10);f.\u0275\u0275property("ngTemplateOutlet","button"===e.widgetType?a:s)("ngTemplateOutletContext",f.\u0275\u0275pureFunction1(3,M,e))("ngTemplateOutletInjector",n.createCustomInjector("action_footer_"+i,f.\u0275\u0275pureFunction1(5,M,e)))}}function U(e,t){if(1&e&&(f.\u0275\u0275template(0,B,11,9,"div",7),f.\u0275\u0275elementStart(1,"div",8),f.\u0275\u0275template(2,V,1,2,"p",9),f.\u0275\u0275elementStart(3,"div",10),f.\u0275\u0275template(4,G,1,0,"ng-container",11),f.\u0275\u0275elementEnd(),f.\u0275\u0275elementStart(5,"div",12),f.\u0275\u0275template(6,W,1,7,"ng-container",13),f.\u0275\u0275pipe(7,"filter"),f.\u0275\u0275elementEnd()()),2&e){const e=f.\u0275\u0275nextContext(),t=f.\u0275\u0275reference(1);f.\u0275\u0275property("ngIf",!e.isLayoutDialog&&(e.title||e.subheading||e.iconclass||e.showButtons("header"))),f.\u0275\u0275advance(),f.\u0275\u0275classProp("hidden",!e.expanded),f.\u0275\u0275property("ngClass",f.\u0275\u0275pureFunction2(15,R,e.isLayoutDialog,!e.isLayoutDialog)),f.\u0275\u0275advance(),f.\u0275\u0275property("ngIf",!!e.statusMessage.caption),f.\u0275\u0275advance(),f.\u0275\u0275property("ngClass",f.\u0275\u0275pureFunction2(18,S,!e.isLayoutDialog,e.isLayoutDialog)),f.\u0275\u0275advance(),f.\u0275\u0275property("ngTemplateOutlet",t),f.\u0275\u0275advance(),f.\u0275\u0275classProp("hidden",!e.expanded||!e.showButtons("footer")),f.\u0275\u0275property("ngClass",f.\u0275\u0275pureFunction1(21,_,e.isLayoutDialog)),f.\u0275\u0275advance(),f.\u0275\u0275property("ngForOf",f.\u0275\u0275pipeBind3(7,11,e.buttonArray,"position","footer"))}}function q(e,t){1&e&&f.\u0275\u0275elementContainer(0)}function z(e,t){if(1&e&&f.\u0275\u0275template(0,q,1,0,"ng-container",11),2&e){f.\u0275\u0275nextContext();const e=f.\u0275\u0275reference(1);f.\u0275\u0275property("ngTemplateOutlet",e)}}function H(e,t){if(1&e){const e=f.\u0275\u0275getCurrentView();f.\u0275\u0275elementStart(0,"button",26),f.\u0275\u0275listener("click",(function(t){const i=f.\u0275\u0275restoreView(e).btn,n=f.\u0275\u0275nextContext();return f.\u0275\u0275resetView(n.invokeActionEvent(t,i.action))})),f.\u0275\u0275elementEnd()}if(2&e){const e=t.btn,i=f.\u0275\u0275nextContext();f.\u0275\u0275classProp("hidden",e.updateMode?!i.isUpdateMode:i.isUpdateMode),f.\u0275\u0275propertyInterpolate("name",e.key),f.\u0275\u0275attribute("aria-label",e.displayName)}}function Q(e,t){if(1&e){const e=f.\u0275\u0275getCurrentView();f.\u0275\u0275elementStart(0,"a",27),f.\u0275\u0275listener("click",(function(t){const i=f.\u0275\u0275restoreView(e).btn,n=f.\u0275\u0275nextContext();return f.\u0275\u0275resetView(n.invokeActionEvent(t,i.action))})),f.\u0275\u0275elementEnd()}if(2&e){const e=t.btn,i=f.\u0275\u0275nextContext();f.\u0275\u0275classProp("hidden",e.updateMode?!i.isUpdateMode:i.isUpdateMode),f.\u0275\u0275propertyInterpolate("name",e.key)}}const Y={widgetType:"wm-form",hostClass:"panel app-panel app-form"},X={widgetType:"wm-form",hostClass:"app-form app-login-form"},K={widgetType:"wm-liveform",hostClass:"panel app-panel app-liveform liveform-inline"},J={widgetType:"wm-livefilter",hostClass:"panel app-panel app-livefilter clearfix liveform-inline"},Z=(e,t)=>{let i="";return p.forEach(e,((e,t)=>{i=`${i} ${t}="${e}"`})),`<wm-gridcolumn columnwidth="${t}">\n <wm-form-field ${i}></wm-form-field>\n </wm-gridcolumn>`},ee=(e,t)=>{const i=e.find("form.ng-invalid:visible, [formControlName].ng-invalid:visible").first();let n=t;return i.is("form")&&(n=t&&t.controls[i.attr("formControlName")||i.attr("name")],n)?ee(i,n):{ngForm:n,$ele:i}},te=(e,t,i)=>{if(!t.valid)if(t.controls)p.forEach(t.controls,((t,i)=>{te(e,t,i)}));else{let n=e.$element.find(`[wmformfield][key="${i}"]`);n.length||(n=e.$element.find(`[wmformfield][name="${i}"]`)),n[0].setAttribute("__errormsg",n[0].getAttribute("__validationId"));let a=(e=>{switch(e.getAttribute("widgettype")){case"select":return e.querySelector("select");case"textarea":return e.querySelector("textarea");default:return e.querySelector("input")}})(n[0]);a?.setAttribute("aria-invalid",t.invalid),a?.setAttribute("aria-describedby",n[0].getAttribute("__validationId")),t.markAsTouched()}};class ie extends n.StylableComponent{static{this.initializeProps=(()=>{l.isMobileApp()&&O.set("captionwidth",{value:"xs-4 sm-4 md-4 lg-4",...n.PROP_STRING});const e=new Map(O);e.set("action",n.PROP_STRING),e.set("defaultmode",{value:"Edit",...n.PROP_STRING}),e.set("metadata",n.PROP_STRING),e.set("method",n.PROP_STRING),e.set("postmessage",{value:"Data posted successfully",...n.PROP_STRING}),e.set("target",n.PROP_STRING),e.set("enctype",n.PROP_STRING),e.set("errormessage",{value:"An error occured. Please try again!",...n.PROP_STRING}),e.set("messagelayout",{value:"Inline",...n.PROP_STRING}),e.set("formdata",n.PROP_STRING),e.set("novalidate",n.PROP_BOOLEAN),e.set("validationtype",{value:"default",...n.PROP_STRING}),e.set("iconclass",n.PROP_STRING),n.register("wm-form",e)})()}set isLayoutDialog(e){e&&l.removeClass(this.nativeElement,"panel app-panel liveform-inline"),this._isLayoutDialog=e}get isLayoutDialog(){return this._isLayoutDialog}set isUpdateMode(e){this._isUpdateMode=e,this.formFields.forEach((t=>{t.setReadOnlyState(e)}))}get isUpdateMode(){return this._isUpdateMode}submit(e){this._debouncedSubmitForm(e)}onReset(){this.reset()}onKeydownHandler(e){this._triggeredByUser=!0}get parentFormArray(){return this.parentForm&&this.isParentList&&this.parentForm.ngform.get(this.parentList.name)}get isParentList(){if(this.parentList&&this.parentForm&&!l.isDefined(this._formIsInList)){const e=this.$element.closest('.app-livelist[name="'+this.parentList.name+'"]');e.length&&(this._formIsInList=!e.find('form[widget-id="'+this.parentForm.widgetId+'"]').length)}return l.isDefined(this._formIsInList)?this._formIsInList:this.parentList}constructor(e,t,i,a,s,o,r,c,d,u,h,m,g,f,v,b,y,w,C,P,I){super(e,((e,t,i)=>{let n=Y;return null!==e?n=K:null!==t?n=J:"app-login"===i&&(n=X),n})(b,y,w),I),this.fb=t,this.app=i,this.dialogService=a,this.dynamicComponentProvider=s,this.ngZone=o,this.parentList=r,this.parentForm=c,this.parentPrefab=d,this.parentPartial=u,this.onBeforeSubmitEvt=h,this.onSubmitEvt=m,this.onBeforeRenderEvt=g,this.binddataset=f,this.bindformdata=v,this._widgetClass="",this._captionClass="",this.formFields=[],this.formfields={},this.formWidgets={},this.filterWidgets={},this.buttonArray=[],this.dataoutput={},this.formdata={},this.statusMessage={caption:"",type:""},this.primaryKey=[],this._debouncedUpdateFieldSource=p.debounce(this.updateFieldSource,350),this.validationMessages=[],this._debouncedSubmitForm=l.debounce((e=>{this.ngZone.run((()=>{this.submitForm(e)}))}),250),n.styler(this.nativeElement,this),l.removeAttr(this.nativeElement,"title"),this.isUpdateMode=!0,this.dialogId=this.nativeElement.getAttribute("dialogId"),this.ngform=t.group({}),this.bindingValue=C||P;const A=this.ngform.valueChanges.subscribe(this.updateDataOutput.bind(this));this.registerDestroyListener((()=>A.unsubscribe())),this.elScope=this,this.addEventsToContext(this.context)}ngAfterContentInit(){setTimeout((()=>{this.componentRefs.forEach((e=>{e.name&&(this.formWidgets[e.name]=e)}))}),250)}ngAfterViewInit(){this.parentForm&&this.parentForm.ngform&&this.isParentList&&(p.get(this.parentForm.ngform.controls,this.parentList.name)||this.parentForm.ngform.setControl(this.parentList.name,new r.FormArray([])),this.parentFormArray.push(this.ngform),this.formArrayIndex=this.parentFormArray.length-1),this.addInnerNgFormToForm(this.bindingValue)}findOperationType(){}addInnerNgFormToForm(e){if(this.parentForm&&this.parentForm.ngform){if(this.isParentList)return;const t=this.parentPrefab||this.parentPartial;if(t){let i;i=this.parentPrefab?t.$element.find("[wmprefabcontainer]"):t.$element;const n=i.find("form").first();p.get(n[0],"widget.widgetId")===this.widgetId&&(n.isParentList||n.siblings("form").length||(e=p.get(t,"name")))}let i=1,n=e;for(;this.parentForm.ngform.controls.hasOwnProperty(n);)n=`${e}_${i}`,i++;this.formGroupName=n,this.parentForm.ngform.addControl(n,this.ngform)}}addEventsToContext(e){e.cancel=()=>this.cancel(),e.reset=()=>this.reset(),e.save=e=>this.save(e),e.saveAndNew=()=>this.saveAndNew(),e.saveAndView=()=>this.saveAndView(),e.delete=()=>this.delete(),e.new=()=>this.new(),e.edit=()=>this.edit(),e.highlightInvalidFields=()=>this.highlightInvalidFields(),e.filter=()=>this.filter(),e.clearFilter=()=>this.clearFilter(),e.submit=e=>this.submit(e)}setValidationOnInnerForms(e){const t=this.getNativeElement().querySelectorAll(".app-form");p.forEach(t,(t=>{const i=t.widget;let n=p.get(i,"formGroupName")||i.name;l.isDefined(i.formArrayIndex)&&(n=n+"["+i.formArrayIndex+"]");let a=i;for(;p.get(a,"parentForm");){let e=a.parentForm.formGroupName||a.parentForm.name;a.parentForm.parentFormArray&&(e=e+"["+a.parentForm.formArrayIndex+"]"),n=e+"."+n,a=a.parentForm}this.setValidationOnFields(i,n,e)}))}setValidationOnFields(e,t,i){const n=e.ngform.controls,a=e.formFields;a&&p.forEach(n,((n,s)=>{const o=a.find((e=>e.key===s));!o||i&&!n.touched||(o.nativeElement.querySelector("input")?.setAttribute("aria-invalid",n.invalid),this.prepareValidationObj(n,s,o,t),this.prepareValidationObj.call(e,n,s,o,t))}))}prepareValidationObj(e,t,i,n){const a=this.validationMessages.findIndex((e=>e.field===t&&e.fullyQualifiedFormName===n));e.invalid?-1===a?this.validationMessages.push({field:t,value:i.value,errorType:p.keys(e.errors),message:i.validationmessage||"",getElement:()=>i.$element.find("[focus-target]"),formName:p.last(n.split(".")),fullyQualifiedFormName:n}):(this.validationMessages[a].value=i.value,this.validationMessages[a].errorType=p.keys(e.errors)):e.valid&&a>-1&&this.validationMessages.splice(a,1)}setValidationMsgs(e){!this.formFields.length&&p.isEmpty(this.ngform.controls)||(this.setValidationOnFields(this,this.name,e),this.setValidationOnInnerForms(e))}handleEvent(e,t,i,n){"submit"!==t&&super.handleEvent(this.nativeElement,t,i,n)}updateFieldSource(){this.formdatasource&&this.formdatasource.execute(l.DataSource.Operation.IS_API_AWARE)||this.formdatasource&&!this.formdatasource.twoWayBinding||this.formFields.forEach((e=>{e.setFormWidget("datavaluesource",this.formdatasource),e.setFormWidget("binddatavalue",`${this.bindformdata}.${e.key}`)}))}highlightInvalidFields(){te(this,this.ngform,"")}validateFieldsOnSubmit(){if(this.setValidationMsgs(),"delete"!==this.operationType&&("html"===this.validationtype||"default"===this.validationtype)&&this.ngform&&this.ngform.invalid){if(this.ngform.invalid){"default"===this.validationtype&&this.highlightInvalidFields();const e=ee(this.$element,this.ngform),t=e.ngForm;let i=e.$ele;if(i=i.parent().find("[focus-target]"),i.length){i.hasClass("app-search-input")||i.focus();const e=t&&t.controls[i.attr("formControlName")||i.attr("name")];return e&&e.markAsTouched&&e.markAsTouched(),l.$appDigest(),!0}return!0}return!1}return!1}onPropertyChange(e,t,i){switch(e){case"captionalign":this.captionAlignClass="align-"+t;break;case"captionposition":case"captionwidth":this.setLayoutConfig();break;case"captionsize":this.captionsize=t;break;case"novalidate":this.widget.validationtype=!0===t||"true"===t?"none":"default";break;case"formdata":if(p.isEqual(t,i))break;p.isArray(t)?this.setFormData(p.last(t)):this.setFormData(t),!this.isDataSourceUpdated&&this.datasource&&this.onDataSourceChange();break;case"defaultmode":this.isLayoutDialog||(this.updateMode=!(!t||"Edit"!==t),this.isUpdateMode=this.updateMode);break;case"datasource":this.onDataSourceChange();break;case"formdatasource":this.onFormDataSourceChange();break;case"metadata":this.generateFormFields();break;case"dataset":this.getFormFields().forEach((e=>{!e.isDataSetBound&&p.get(e.formWidget,"dataset$")&&e.formWidget.dataset$.next()}));break;default:super.onPropertyChange(e,t,i)}}onResultCb(e,t,i){const n={$event:i,$data:e,$operation:this.operationType};this.invokeEventCallback("result",n),t?this.invokeEventCallback("success",n):this.invokeEventCallback("error",n)}toggleMessage(e,t,i,n){let a;e&&t?(a="error"===i&&this.errormessage?this.errormessage:t,"Inline"===this.messagelayout?(a=this.checkAppServiceErrorMsg(i)||a,this.statusMessage={caption:a||"",type:i},this.messageRef&&this.messageRef.showMessage(this.statusMessage.caption,this.statusMessage.type),l.isElementInViewport(this.$element[0])||l.scrollToElement(this.$element[0])):this.app.notifyApp(a,i,n)):this.statusMessage.caption=""}checkAppServiceErrorMsg(e){const t=p.get(this.app,"Actions.appNotification");if(t&&"error"===e)return t.getMessage()}clearMessage(){this.toggleMessage(!1)}setLayoutConfig(){let e;e=n.getFieldLayoutConfig(this.captionwidth,this.captionposition,p.get(this.app.selectedViewPort,"os")),this._widgetClass=e.widgetCls,this._captionClass=e.captionCls,l.$appDigest()}registerFormWidget(e){const t=e.name||e.key;this.formWidgets[t]=e}registerFormFields(e){const t=this.formFields.push(e);this.formfields[e.key]=e,this.registerFormWidget(e),this._debouncedUpdateFieldSource(),this.parentForm&&(this.parentForm.formFields.push(e),this.parentForm.formfields[e.key]=e,this.parentForm.setFormData(this.parentForm.formdata,this.formFields,this.formdata||{})),t!==this.numberOfFields||p.isEmpty(this.formdata)||(this.onDataSourceChange(),p.isArray(this.formdata)?this.setFormData(p.last(this.formdata)):this.setFormData(this.formdata))}registerActions(e){this.buttonArray.push(e)}updateFormDataOutput(e){p.forEach(this.ngform.value,((t,i)=>{p.find(this.formFields,{key:i})||(e[i]=t)})),this.dataoutput=e}constructDataObject(){const e={};return this.getFormFields().forEach((t=>{let i,n;if(n=t.datavalue||t._control.value,n=null===n||""===n?void 0:n,"file"===t.type&&(n=l.getFiles(this.name,t.key+"_formWidget",t.multiple)),i=t.key||t.target||t.name,t.form.widgetId!==this.widgetId&&t.form.formGroupName){const a=p.get(e,t.form.formGroupName,{});a[i]=n,p.set(e,t.form.formGroupName,a)}else if("number"==typeof t.form.formArrayIndex&&t.form.isParentList&&!this.parentForm){const a=p.get(e,t.form.parentList.name,[]);a[t.form.formArrayIndex]=a[t.form.formArrayIndex]||{},a[t.form.formArrayIndex][i]=n,p.set(e,t.form.parentList.name,a)}else p.set(e,i,n)})),this.updateFormDataOutput(e),this.dataoutput}updateDataOutput(){this.constructDataObject(),this.ngform.touched&&this.setValidationMsgs(!0)}getFormFields(){return p.filter(this.formFields,(e=>e.form.name===this.name))}setFieldValue(e,t,i){const n=e.key||e.name,a=i||t;a&&((a.hasOwnProperty(n)||p.includes(n,".")&&a.hasOwnProperty(p.split(n,".")[0]))&&(e.value=p.get(a,n)),this.dirty&&!this._triggeredByUser&&this.markAsPristine());const s=e.form.formGroupName;s&&p.get(t,s)&&this.setFormData.call(e.form,t[s]),p.get(e.form,"parentFormArray")&&this.setFormDataFromParentFormData.call(e.form,t)}setFormData(e,t,i){(t||this.formFields).forEach((t=>{this.setFieldValue(t,e,i),t.fieldValidations&&t.fieldValidations.setCustomValidationMessage()})),this.constructDataObject()}resetFormState(){this.validationMessages.length&&(this.validationMessages=[]),this.ngform&&(this.ngform.markAsUntouched(),this.ngform.markAsPristine())}reset(){this.resetFormState(),this.formFields.forEach((e=>{e.value="","upload"!==e.widgettype&&e.type!==l.DataType.BLOB||this.resetFileUploadWidget(e,!0),e.nativeElement.querySelector("input")?.removeAttribute("aria-invalid")})),this.constructDataObject(),this.clearMessage()}savePrevformFields(){this.prevformFields=l.getClonedObject(this.formFields.map((e=>({key:e.key,type:e.type,widgettype:e.widgettype,outputformat:e.outputformat,value:e.value}))))}savePrevDataValues(){this.prevDataValues=this.formFields.map((e=>({key:e.key,value:e.value})))}setReadonlyFields(){this.formFields.forEach((e=>{e.setReadOnlyState()}))}resetFileUploadWidget(e,t){this.$element.find('[name="'+e.key+'_formWidget"]').val(""),e._control.reset(),t||(e.href="",e.value=null)}emptyDataModel(){this.formFields.forEach((e=>{l.isDefined(e)&&(e.type===l.DataType.BLOB?this.resetFileUploadWidget(e):e.datavalue="")}))}setDefaultValues(){this.formFields.forEach((e=>{this.onFieldDefaultValueChange(e,e.defaultvalue)}))}setOperationType(e){this.operationType=e||"insert"}new(){this.resetFormState(),this.operationType=n.Live_Operations.INSERT,this.clearMessage(),this.isSelected&&this.savePrevformFields(),this.emptyDataModel(),setTimeout((()=>{this.setDefaultValues(),this.savePrevDataValues(),this.constructDataObject()})),this.isUpdateMode=!0}edit(){this.resetFormState(),this.clearMessage(),this.operationType=n.Live_Operations.UPDATE,this.isSelected&&(this.savePrevformFields(),this.savePrevDataValues()),this.prevDataObject=l.getClonedObject(this.formdata||{}),this.setReadonlyFields(),this.isUpdateMode=!0,l.$appDigest()}triggerWMEvent(e){const t=this.nativeElement.getAttribute("dependsontable");t&&(l.$invokeWatchers(!0),this.app.notify("wm-event",{eventName:e,widgetName:t}))}submitForm(e){let t,i,a;const s=this.datasource;if(this.validateFieldsOnSubmit())return;i=l.getClonedObject(this.constructDataObject());const o=()=>({$event:e,$formData:i,$data:i});if(this.onBeforeSubmitEvt){if(!1===this.invokeEventCallback("beforesubmit",o()))return;this.resetFormState()}else this.resetFormState();if(this.onSubmitEvt||s)if(s){const r=s.pagination&&s.pagination.number+1,c=this.operationType?this.operationType:"insert";n.performDataOperation(s,i,{operationType:c}).then((e=>("wm.CrudVariable"===s.category&&(this.triggerWMEvent("resetEditMode"),this.datasource.execute(l.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0,operation:"list",page:r,preventMissingOpMsg:!0}),this.dialogId&&this.closeDialog()),l.isDefined(e.body)?(a=l.getValidJSON(e.body),a=l.isDefined(a)?a:e.body):a=e,{result:a,status:!0,message:this.postmessage,type:"success"})),(e=>(t=this.errormessage||e.error||e,l.$appDigest(),{result:p.get(e,"error")||e,status:!1,message:t,type:"error"}))).then((t=>{("error"===t.type&&!this.onError||"success"===t.type&&!this.onSuccess)&&this.toggleMessage(!0,t.message,t.type),this.invokeEventCallback("submit",o()),this.onResultCb(t.result,t.status,e)}))}else this.invokeEventCallback("submit",o()),this.onResultCb({},!0,e);else this.onResultCb({},!0,e)}closeDialog(){this.dialogService.close(this.dialogId)}showButtons(e){return p.some(this.buttonArray,(t=>p.includes(t.position,e)&&t.updateMode===this.isUpdateMode))}expandCollapsePanel(){this.collapsible&&(this.expanded=!this.expanded)}onDataSourceUpdate(e,t,i){t?this.new():(this.setFormData(e),this.closeDialog()),this.isUpdateMode=!l.isDefined(i)||i}getNearestParentFormData(e){return e.parentForm?e.bindformdata||!p.get(e.parentForm,"formdata")||p.isEmpty(e.parentForm.formdata)?this.getNearestParentFormData(e.parentForm):e.parentForm.formdata:{}}setFormDataFromParentFormData(e){if(p.isEmpty(this.formdata)&&this.parentForm&&e)if(this.parentFormArray){let t=p.get(e,this.parentList.name);if(t)p.isArray(t)||(t=[t]),this.parentFormArray.patchValue(t),this.bindformdata||(this.formdata=t[this.formArrayIndex]),this.setFormData(this.formdata);else if(this.isParentList&&this.parentForm.formGroupName){const t=p.get(e,this.parentForm.formGroupName);this.setFormDataFromParentFormData(t)}}else this.setFormData(e)}onDataSourceChange(){if(p.get(this.formFields,"length")&&!this.bindformdata){this.isDataSourceUpdated=!0;const e=this.getNearestParentFormData(this);this.setFormDataFromParentFormData(e)}}onFormDataSourceChange(){this.updateFieldSource()}onFieldDefaultValueChange(e,t){e.value=n.parseValueByType(t,void 0,e.widgettype,e.trailingzero),this.dirty&&!this._triggeredByUser&&this.markAsPristine()}onFieldValueChange(){}async generateFormFields(){let e,t;p.isUndefined(this._isGridLayoutPresent)&&(this._isGridLayoutPresent=this.$element.find(".panel-body [wmlayoutgrid]").length>0),this._isGridLayoutPresent?(t=this.$element.find(".form-elements [wmlayoutgrid]").first(),e=Number(t.attr("columns"))||1):(t=this.$element.find(".form-elements .dynamic-form-container"),t.length||(this.$element.find(".form-elements").prepend('<div class="dynamic-form-container"></div>'),t=this.$element.find(".form-elements .dynamic-form-container")),e=1);const i=12/e;let n,a,s="",o=0,r=this.metadata?this.metadata.data||this.metadata:[];if(this.formFields=[],p.isEmpty(r))return;if(this.onBeforeRenderEvt&&(a=this.invokeEventCallback("beforerender",{$metadata:r}),a&&(r=a)),!p.isArray(r))return;for(;r[o];){let t="";for(n=0;n<e;n++)r[o]&&(t+=Z(r[o],i)),o++;s+=`<wm-gridrow>${t}</wm-gridrow>`}this._isGridLayoutPresent||(s=`<wm-layoutgrid>${s}</wm-layoutgrid>`),this.dynamicFormRef.clear(),this._dynamicContext||(this._dynamicContext=Object.create(this.viewParent),this._dynamicContext.form=this);const c=await this.dynamicComponentProvider.getComponentFactoryRef("app-form-dynamic-"+this.widgetId,s,{noCache:!0,transpile:!0}),d=this.dynamicFormRef.createComponent(c,0,this.inj);l.extendProto(d.instance,this._dynamicContext),t[0].appendChild(d.location.nativeElement),this.setFormData(this.formdata)}get mode(){return this.operationType||this.findOperationType()}get dirty(){return this.ngform&&this.ngform.dirty}markAsPristine(e=!1){this.ngform.markAsPristine({onlySelf:e})}markAsDirty(e=!1){this.ngform.markAsDirty({onlySelf:e})}get invalid(){return this.ngform&&this.ngform.invalid}get touched(){return this.ngform&&this.ngform.touched}get valid(){return this.ngform&&this.ngform.valid}get pristine(){return this.ngform&&this.ngform.pristine}markAsTouched(e=!1){this.ngform.markAsTouched({onlySelf:e})}markAsUntouched(e=!1){this.ngform.markAsUntouched({onlySelf:e})}invokeActionEvent(e,t){l.$parseEvent(t)(this.viewParent,Object.assign(this.context,{$event:e}))}ngOnDestroy(){const e=this.parentForm&&p.get(this.parentForm,"ngform.controls");if(e){if(p.get(this.parentList,"name")&&e.hasOwnProperty(this.parentList.name)){const e=p.findIndex(this.parentList.getWidgets(this.name),{widgetId:this.widgetId});this.parentForm.ngform.controls[this.parentList.name].removeAt(e)}this.formGroupName&&e.hasOwnProperty(this.formGroupName)?this.parentForm.ngform.removeControl(this.formGroupName):this.parentForm.ngform.removeControl(this.name)}super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||ie)(f.\u0275\u0275directiveInject(f.Injector),f.\u0275\u0275directiveInject(C.FormBuilder),f.\u0275\u0275directiveInject(P.App),f.\u0275\u0275directiveInject(P.AbstractDialogService),f.\u0275\u0275directiveInject(P.DynamicComponentRefProvider),f.\u0275\u0275directiveInject(f.NgZone),f.\u0275\u0275directiveInject(A.ListComponent,8),f.\u0275\u0275directiveInject(ie,12),f.\u0275\u0275directiveInject(I.PrefabDirective,12),f.\u0275\u0275directiveInject(b.PartialDirective,12),f.\u0275\u0275injectAttribute("beforesubmit.event"),f.\u0275\u0275injectAttribute("submit.event"),f.\u0275\u0275injectAttribute("beforerender.event"),f.\u0275\u0275injectAttribute("dataset.bind"),f.\u0275\u0275injectAttribute("formdata.bind"),f.\u0275\u0275injectAttribute("wmLiveForm"),f.\u0275\u0275injectAttribute("wmLiveFilter"),f.\u0275\u0275injectAttribute("data-role"),f.\u0275\u0275injectAttribute("key"),f.\u0275\u0275injectAttribute("name"),f.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=f.\u0275\u0275defineComponent({type:ie,selectors:[["form","wmForm",""]],contentQueries:function(e,t,i){if(1&e&&f.\u0275\u0275contentQuery(i,n.WidgetRef,5),2&e){let e;f.\u0275\u0275queryRefresh(e=f.\u0275\u0275loadQuery())&&(t.componentRefs=e)}},viewQuery:function(e,i){if(1&e&&(f.\u0275\u0275viewQuery(T,7,t.ViewContainerRef),f.\u0275\u0275viewQuery(n.MessageComponent,5)),2&e){let e;f.\u0275\u0275queryRefresh(e=f.\u0275\u0275loadQuery())&&(i.dynamicFormRef=e.first),f.\u0275\u0275queryRefresh(e=f.\u0275\u0275loadQuery())&&(i.messageRef=e.first)}},hostVars:1,hostBindings:function(e,t){1&e&&f.\u0275\u0275listener("submit",(function(e){return t.submit(e)}))("reset",(function(){return t.onReset()}))("keydown",(function(e){return t.onKeydownHandler(e)})),2&e&&f.\u0275\u0275hostProperty("action",t.action,f.\u0275\u0275sanitizeUrl)},features:[f.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(ie)]),f.\u0275\u0275InheritDefinitionFeature],attrs:x,ngContentSelectors:D,decls:13,vars:3,consts:[["content",""],["defaultTemplate",""],["pageLayoutTemplate",""],["buttonRef",""],["anchorRef",""],["dynamicForm",""],[4,"ngIf","ngIfThen","ngIfElse"],["class","panel-heading",4,"ngIf"],[1,"panel-body",3,"ngClass"],["wmMessage","","caption.bind","statusMessage.caption","type.bind","statusMessage.type",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet"],[1,"basic-btn-grp","form-action","panel-footer","clearfix",3,"ngClass"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector",4,"ngFor","ngForOf"],[1,"panel-heading"],[1,"panel-title"],[1,"pull-left"],["class","app-icon panel-icon","aria-hidden","true",3,"ngClass",4,"ngIf"],[1,"heading",3,"innerHTML"],[1,"description",3,"innerHTML"],[1,"form-action","panel-actions","basic-btn-grp"],["type","button","class","app-icon wi panel-action","title","Collapse/Expand",3,"ngClass","click",4,"ngIf"],["aria-hidden","true",1,"app-icon","panel-icon",3,"ngClass"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"],["type","button","title","Collapse/Expand",1,"app-icon","wi","panel-action",3,"click","ngClass"],["wmMessage","","caption.bind","statusMessage.caption","type.bind","statusMessage.type"],["wmButton","","caption.bind","btn.displayName","class.bind","btn.class","iconclass.bind","btn.iconclass","show.bind","btn.show","type.bind","btn.type","hint.bind","btn.title","shortcutkey.bind","btn.shortcutkey","disabled.bind","ngform.status === 'PENDING' || btn.disabled","tabindex.bind","btn.tabindex",3,"click","name"],["wmAnchor","","caption.bind","btn.displayName","class.bind","btn.class","iconclass.bind","btn.iconclass","show.bind","btn.show","hint.bind","btn.title","shortcutkey.bind","btn.shortcutkey","hyperlink.bind","btn.hyperlink","target.bind","btn.target","tabindex.bind","btn.tabindex",3,"click","name"]],template:function(e,t){if(1&e&&(f.\u0275\u0275projectionDef(),f.\u0275\u0275template(0,N,1,0,"ng-template",null,0,f.\u0275\u0275templateRefExtractor)(2,k,1,0,"ng-container",6)(3,U,8,23,"ng-template",null,1,f.\u0275\u0275templateRefExtractor)(5,z,1,1,"ng-template",null,2,f.\u0275\u0275templateRefExtractor)(7,H,1,4,"ng-template",null,3,f.\u0275\u0275templateRefExtractor)(9,Q,1,3,"ng-template",null,4,f.\u0275\u0275templateRefExtractor),f.\u0275\u0275elementContainer(11,null,5)),2&e){const e=f.\u0275\u0275reference(4),i=f.\u0275\u0275reference(6);f.\u0275\u0275advance(2),f.\u0275\u0275property("ngIf","page"===t.formlayout)("ngIfThen",i)("ngIfElse",e)}},dependencies:[y.AnchorComponent,v.NgClass,v.NgForOf,v.NgIf,v.NgTemplateOutlet,w.ButtonComponent,b.MessageComponent,b.FilterPipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ie,[{type:t.Component,args:[{selector:"form[wmForm]",providers:[n.provideAsWidgetRef(ie)],template:'<ng-template #content><ng-content></ng-content></ng-template>\n\n<ng-container *ngIf="formlayout === \'page\'; then pageLayoutTemplate else defaultTemplate">\n</ng-container>\n\n<ng-template #defaultTemplate>\n <div class="panel-heading" *ngIf="!isLayoutDialog && (title || subheading || iconclass || showButtons(\'header\'))">\n <h3 class="panel-title">\n <div class="pull-left">\n <i class="app-icon panel-icon" aria-hidden="true" [ngClass]="iconclass" *ngIf="iconclass"></i>\n </div>\n <div class="pull-left">\n <div class="heading" [innerHTML]="title"></div>\n <div class="description" [innerHTML]="subheading"></div>\n </div>\n <div class="form-action panel-actions basic-btn-grp">\n <ng-container *ngFor="let btn of buttonArray | filter : \'position\' : \'header\'; let index = index"\n [ngTemplateOutlet]="btn.widgetType === \'button\' ? buttonRef : anchorRef"\n [ngTemplateOutletContext]="{btn:btn}"\n [ngTemplateOutletInjector]="createCustomInjector(\'action_header_\' + index, {btn:btn})">\n </ng-container>\n <button type="button" class="app-icon wi panel-action" *ngIf="collapsible" title="Collapse/Expand"\n [ngClass]="expanded ? \'wi-minus\': \'wi-plus\'" (click)="expandCollapsePanel();"></button>\n </div>\n </h3>\n </div>\n <div class="panel-body" [ngClass]="{\'form-elements\': isLayoutDialog, \'form-body\': !isLayoutDialog}" [class.hidden]="!expanded">\n <p wmMessage *ngIf="!!statusMessage.caption" [attr.aria-hidden]="!statusMessage.caption" [attr.aria-label]="statusMessage.caption" caption.bind="statusMessage.caption" type.bind="statusMessage.type"></p>\n <div [ngClass]="{\'form-elements\': !isLayoutDialog, \'form-content\': isLayoutDialog}">\n <ng-container *ngTemplateOutlet="content"></ng-container>\n </div>\n <div class="basic-btn-grp form-action panel-footer clearfix" [ngClass]="{\'modal-footer\': isLayoutDialog}" [class.hidden]="!expanded || !showButtons(\'footer\')">\n <ng-container *ngFor="let btn of buttonArray | filter : \'position\' : \'footer\'; let index = index"\n [ngTemplateOutlet]="btn.widgetType === \'button\' ? buttonRef : anchorRef"\n [ngTemplateOutletContext]="{btn:btn}"\n [ngTemplateOutletInjector]="createCustomInjector(\'action_footer_\' + index, {btn:btn})">\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #pageLayoutTemplate>\n <ng-container *ngTemplateOutlet="content"></ng-container>\n</ng-template>\n\n<ng-template #buttonRef let-btn="btn">\n <button wmButton name="{{btn.key}}" caption.bind="btn.displayName" class.bind="btn.class" iconclass.bind="btn.iconclass" show.bind="btn.show"\n (click)="invokeActionEvent($event, btn.action)" type.bind="btn.type" hint.bind="btn.title" shortcutkey.bind="btn.shortcutkey" disabled.bind="ngform.status === \'PENDING\' || btn.disabled"\n tabindex.bind="btn.tabindex" [attr.aria-label]="btn.displayName" [class.hidden]="btn.updateMode ? !isUpdateMode : isUpdateMode"></button>\n</ng-template>\n\n<ng-template #anchorRef let-btn="btn">\n <a wmAnchor name="{{btn.key}}" caption.bind="btn.displayName" class.bind="btn.class" iconclass.bind="btn.iconclass" show.bind="btn.show"\n (click)="invokeActionEvent($event, btn.action)" hint.bind="btn.title" shortcutkey.bind="btn.shortcutkey"\n hyperlink.bind="btn.hyperlink" target.bind="btn.target"\n tabindex.bind="btn.tabindex" [class.hidden]="btn.updateMode ? !isUpdateMode : isUpdateMode"></a>\n</ng-template>\n\n<ng-container #dynamicForm></ng-container>\n'}]}],(()=>[{type:f.Injector},{type:C.FormBuilder},{type:P.App},{type:P.AbstractDialogService},{type:P.DynamicComponentRefProvider},{type:f.NgZone},{type:A.ListComponent,decorators:[{type:t.Optional}]},{type:ie,decorators:[{type:t.SkipSelf},{type:t.Optional}]},{type:I.PrefabDirective,decorators:[{type:t.SkipSelf},{type:t.Optional}]},{type:b.PartialDirective,decorators:[{type:t.SkipSelf},{type:t.Optional}]},{type:void 0,decorators:[{type:t.Attribute,args:["beforesubmit.event"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["submit.event"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["beforerender.event"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["formdata.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["wmLiveForm"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["wmLiveFilter"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["data-role"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["key"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["name"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dynamicFormRef:[{type:t.ViewChild,args:["dynamicForm",{static:!0,read:t.ViewContainerRef}]}],messageRef:[{type:t.ViewChild,args:[n.MessageComponent]}],componentRefs:[{type:t.ContentChildren,args:[n.WidgetRef,{descendants:!0}]}],action:[{type:t.HostBinding,args:["action"]}],submit:[{type:t.HostListener,args:["submit",["$event"]]}],onReset:[{type:t.HostListener,args:["reset"]}],onKeydownHandler:[{type:t.HostListener,args:["keydown",["$event"]]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassDebugInfo(ie,{className:"FormComponent",filePath:"form.component.ts",lineNumber:159});class ne{constructor(e,t,i,n,a,s){this.componentInstance=i,this.name=a,this.key=s,this.fb=n,this.parent=e||t,this.ngform=this.parent.ngform,this.componentInstance.registerPropertyChangeListener(((e,t)=>{"datavalue"===e&&this._control?this._control.setValue(t):"name"!==e||this._control||this.addControl(this.key||t)}))}get _control(){const e=this.key||this.name;if(e)return this.ngform&&this.ngform.controls[e]}addControl(e){this.ngform.addControl(e,this.createControl())}createControl(){return this.fb.control(this.componentInstance.datavalue)}ngOnInit(){const e=this.key||this.name;e&&!this._control&&(this.addControl(e),this.parent.registerFormWidget(this.componentInstance))}static{this.\u0275fac=function(e){return new(e||ne)(f.\u0275\u0275directiveInject(ie,8),f.\u0275\u0275directiveInject(u.TableComponent,8),f.\u0275\u0275directiveInject(n.WidgetRef,2),f.\u0275\u0275directiveInject(C.FormBuilder),f.\u0275\u0275injectAttribute("name"),f.\u0275\u0275injectAttribute("key"))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:ne,selectors:[["","wmFormWidget",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ne,[{type:t.Directive,args:[{selector:"[wmFormWidget]"}]}],(()=>[{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[ie]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[u.TableComponent]}]},{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[n.WidgetRef]}]},{type:C.FormBuilder},{type:void 0,decorators:[{type:t.Attribute,args:["name"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["key"]}]}]),null);const ae={widgetType:"wm-form-action",hostClass:""};class se extends n.BaseComponent{static{this.initializeProps=void n.register("wm-form-action",new Map([["accessroles",n.PROP_STRING],["action",n.PROP_STRING],["class",n.PROP_STRING],["binding",n.PROP_STRING],["disabled",n.PROP_BOOLEAN],["display-name",n.PROP_STRING],["hyperlink",n.PROP_STRING],["iconclass",n.PROP_STRING],["iconname",n.PROP_STRING],["key",n.PROP_STRING],["position",{value:"footer",...n.PROP_STRING}],["shortcutkey",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}],["target",n.PROP_STRING],["title",n.PROP_STRING],["type",{value:"button",...n.PROP_STRING}],["update-mode",{value:!0,...n.PROP_BOOLEAN}],["widget-type",{value:"button",...n.PROP_STRING}]]))}constructor(e,t,i){super(e,ae,i),this.form=t}populateAction(){this.buttonDef={key:this.key||this.binding,displayName:this["display-name"],show:this.show,class:this.class?this.class:"button"===this["widget-type"]?"btn-secondary":"",iconclass:this.iconclass||"",title:p.isUndefined(this.title)?this["display-name"]||"":this.title,action:this.action,accessroles:this.accessroles,shortcutkey:this.shortcutkey,disabled:this.disabled,tabindex:this.tabindex,iconname:this.iconname,type:this.type,updateMode:this["update-mode"],position:this.position,widgetType:this["widget-type"],hyperlink:this.hyperlink,target:this.target},this._propsInitialized=!0}ngOnInit(){super.ngOnInit(),this.populateAction(),this.form.registerActions(this.buttonDef)}onPropertyChange(e,t,i){this._propsInitialized&&("display-name"===e&&(this.buttonDef.displayName=t),this.buttonDef[e]=t)}static{this.\u0275fac=function(e){return new(e||se)(f.\u0275\u0275directiveInject(f.Injector),f.\u0275\u0275directiveInject(ie,8),f.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:se,selectors:[["","wmFormAction",""]],features:[f.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(se)]),f.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(se,[{type:t.Directive,args:[{selector:"[wmFormAction]",providers:[n.provideAsWidgetRef(se)]}]}],(()=>[{type:f.Injector},{type:ie,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const oe=["formWidget"],re=["formWidgetMax"],le=()=>({custom:!0}),ce={image:"image/*",video:"video/*",audio:"audio/*"};class de extends n.StylableComponent{static{this.initializeProps=(()=>{const e=new Map([["dataentrymode",{value:"default",...n.PROP_STRING}],["debouncetime",{value:250,...n.PROP_NUMBER}],["defaultvalue",n.PROP_STRING],["displayname",n.PROP_STRING],["display-name",n.PROP_STRING],["field",n.PROP_STRING],["filterexpressions",n.PROP_STRING],["filter-on",n.PROP_STRING],["generator",n.PROP_STRING],["hint",n.PROP_STRING],["inputtype",n.PROP_STRING],["is-primary-key",n.PROP_BOOLEAN],["is-range",n.PROP_BOOLEAN],["is-related",n.PROP_BOOLEAN],["isformfield",{value:!0}],["key",n.PROP_STRING],["limit",n.PROP_NUMBER],["lookup-type",n.PROP_STRING],["lookup-field",n.PROP_STRING],["name",n.PROP_STRING],["matchmode",n.PROP_STRING],["maxdefaultvalue",n.PROP_STRING],["maxplaceholder",n.PROP_STRING],["mobile-display",{value:!0,...n.PROP_BOOLEAN}],["period",n.PROP_BOOLEAN],["pc-display",{value:!0,...n.PROP_BOOLEAN}],["placeholder",n.PROP_STRING],["primary-key",n.PROP_BOOLEAN],["related-entity-name",n.PROP_STRING],["required",n.PROP_BOOLEAN],["show",{value:!0,...n.PROP_BOOLEAN}],["tablet-display",{value:!0,...n.PROP_BOOLEAN}],["type",n.PROP_STRING],["validationmessage",n.PROP_STRING],["viewmodewidget",n.PROP_STRING],["widgettype",n.PROP_STRING]]);for(const t in l.FormWidgetType){const i="wm-form-field-"+l.FormWidgetType[t],a=n.getWidgetPropsByType(i);e.forEach(((e,t)=>{null==a.get(t)&&a.set(t,e)}))}})()}onKeydownHandler(e){this._triggeredByUser=!0}handleClick(e){this._clicktriggeredByUser=!0}constructor(e,t,i,n,a,s,o,r,c,d,p,u,h,m,g,f,v,b,y,w){const C={widgetType:"wm-form-field",hostClass:"",widgetSubType:"wm-form-field-"+(p||l.FormWidgetType.TEXT).trim()};let P=l.noop;super(e,C,w,new Promise((e=>P=e))),this._initPropsRes=P,this.app=a,this.fieldDefConfig={},this.class="",this.binddataset=r,this.binddisplayimagesrc=h,this.binddisplayexpression=c,this.bindChipclass=o,this.binddisplaylabel=d,this.form=t,this.fb=i,this.viewport=n,this._fieldName=m||u,this.isRange=g,this.excludeProps=new Set(["type","name"]),this.widgettype=p,this.parentList=s,this.notifyForFields=[],(this.binddataset||this.$element.attr("dataset"))&&(this.isDataSetBound=!0),y[0]._onFocusField=this._onFocusField.bind(this),y[0]._onBlurField=this._onBlurField.bind(this),this._debounceSetUpValidators=l.debounce((()=>this.setUpValidators()),500)}_onFocusField(e){this._activeField=!0,$(e.target).closest(".live-field").addClass("active")}getActiveElement(){switch(this.nativeElement.getAttribute("widgettype")){case"select":return this.nativeElement.querySelector("select");case"textarea":return this.nativeElement.querySelector("textarea");default:return this.nativeElement.querySelector("input")}}setAriaAttributes(){const e=this.getActiveElement();this.ngform.controls[this._fieldName].invalid&&this.ngform.controls[this._fieldName].touched&&this.form.isUpdateMode?(this.nativeElement.setAttribute("__errormsg",`${this.nativeElement.getAttribute("__validationId")}`),e?.setAttribute("aria-invalid",`${this.ngform.controls[this._fieldName].invalid}`),e?.setAttribute("aria-describedby",`${this.nativeElement.getAttribute("__validationId")}`)):(this.nativeElement.removeAttribute("__errormsg"),e?.removeAttribute("aria-invalid"),e?.removeAttribute("aria-describedby"))}_onBlurField(e){$(e.target).closest(".live-field").removeClass("active"),this.nativeElement.querySelector("p.text-danger"),this.setAriaAttributes(),this._activeField=!1,this._triggeredByUser=!1,this._clicktriggeredByUser=!1}evaluateExpr(e,t,i){if(i&&t||(t=Object.keys(e)[0]))return n.getEvaluatedData(e,{field:t,expression:i},this.viewParent)}getDisplayExpr(){const e=[],t=this.value,i=this.displayfield||this.displaylabel,n=this.displayexpression;return p.isObject(t)?(p.isArray(t)?p.forEach(t,(t=>{p.isObject(t)&&e.push(this.evaluateExpr(t,i,n))})):e.push(this.evaluateExpr(t,i,n)),p.join(e,",")):null==t?"":this.value}getCaption(){return void 0===this.value||null===this.value?p.get(this.form.dataoutput,this._fieldName)||"":this.value}notifyChanges(){p.forEach(this.notifyForFields,(e=>{e.fieldValidations.validate()}))}observeOn(e){this.fieldValidations.observeOn(e,"formfields")}setUpValidators(e){this.fieldValidations.setUpValidators(e)}setAsyncValidators(e){this.fieldValidations.setAsyncValidators(e)}setValidators(e){this.fieldValidations.setValidators(e)}setFormWidget(e,t){this.formWidget&&this.formWidget.widget&&(this.formWidget.widget[e]=t)}boundFn(e){return e()}setMaxFormWidget(e,t){this.formWidgetMax&&(this.formWidgetMax.widget[e]=t)}onPropertyChange(e,t,i){const n=this.form.dirty;if("tabindex"!==e&&super.onPropertyChange(e,t,i),!this.excludeProps.has(e)){if(this.widgettype===l.FormWidgetType.UPLOAD)return"required"===e&&this._debounceSetUpValidators(),void super.onPropertyChange(e,t,i);switch(this.setFormWidget(e,t),"placeholder"!==e&&this.setMaxFormWidget(e,t),e){case"defaultvalue":this.form.onFieldDefaultValueChange(this,t);break;case"maxdefaultvalue":this.maxValue=t,this.setMaxFormWidget("datavalue",t),this.form.onMaxDefaultValueChange();break;case"maxplaceholder":this.setMaxFormWidget("placeholder",t);break;case"required":n!==this.form.dirty&&this.form.markAsPristine();case"maxchars":case"minvalue":case"maxvalue":case"regexp":case"show":this._debounceSetUpValidators();break;case"primary-key":t&&this.form.setPrimaryKey(this._fieldName);break;case"display-name":this.displayname=t;break;case"readonly":this.setReadOnlyState()}}}onStyleChange(e,t,i){this.setFormWidget(e,t),this.setMaxFormWidget(e,t),super.onStyleChange(e,t,i)}get datavalue(){return this.formWidget&&this.formWidget.datavalue}set datavalue(e){this._control&&this.widgettype!==l.FormWidgetType.UPLOAD&&this._control.setValue(e)}get value(){return this.datavalue}set value(e){this.datavalue=e}get maxValue(){return this.formWidgetMax&&this.formWidgetMax.datavalue}set maxValue(e){this._maxControl&&this._maxControl.setValue(e)}get minValue(){return this.value}set minValue(e){this.value=e}get _control(){return this.ngform&&this.ngform.controls[this._fieldName]}get _maxControl(){return this.ngform&&this.ngform.controls[this._fieldName+"_max"]}get displayValue(){return this.formWidget&&this.formWidget.displayValue}get timestamp(){return this.formWidget&&this.formWidget.timestamp}get charlength(){return this.formWidget&&this.formWidget.charlength}createControl(){return this.fb.control(void 0,{validators:this._validators})}onValueChange(e){if(!this.isDestroyed){const t=$(this.nativeElement).find(".caption-floating");if(t.length>0){const i=l.isDefined(e)&&""!==e&&null!==e||t.find("input").val()||t.find("input:-webkit-autofill").length;this.app.notify("captionPositionAnimate",{displayVal:i,nativeEl:t,isSelectMultiple:this.formWidget&&this.formWidget.multiple,isFocused:this._activeField})}this.setAriaAttributes(),this.form.onFieldValueChange(this,e),this.notifyChanges(),(this.$element.find(".active").length>0||this.form.touched)&&((this._triggeredByUser||l.isMobile()&&this._clicktriggeredByUser&&l.isDateTimeType(this.widgettype))&&this.ngform.controls[this._fieldName].markAsTouched(),this.fieldValidations.setCustomValidationMessage())}}onStatusChange(e){this.isDestroyed||(this.showPendingSpinner="PENDING"===e,"PENDING"===e?this.formWidget.disabled=!0:this.formWidget.disabled!==this.disabled&&(this.formWidget.disabled=this.disabled))}setValidationMessage(e){setTimeout((()=>{this.validationmessage=e,this.setUpValidators(le)}))}setReadOnlyState(){let e;e=!this.form.isUpdateMode||(!this["primary-key"]||this["is-related"]||this.period?this.readonly:!("assigned"===this.generator&&"update"!==this.form.operationType)),this.setFormWidget("readonly",e)}resetDisplayInput(){l.isDefined(this.value)&&""!==this.value||this.formWidget&&this.formWidget.resetDisplayInput&&this.formWidget.resetDisplayInput()}triggerUploadEvent(e,t){const i={$event:e};"change"===t&&(i.newVal=e.target.files,i.oldVal=this._oldUploadVal,this._oldUploadVal=i.newVal),this.invokeEventCallback(t,i)}registerFormField(){const e=this._fieldName;if(this.parentList&&this.form.parentList!==this.parentList){let t=1,i=e;for(;this.ngform.controls.hasOwnProperty(i);)i=`${e}_${t}`,t++;this.ngform.addControl(i,this.createControl()),this._fieldName=i}else this.ngform.addControl(e,this.createControl());const t=this._control.valueChanges.pipe(h.debounceTime(200)).subscribe(this.onValueChange.bind(this));this.registerDestroyListener((()=>t.unsubscribe()));const i=this._control.statusChanges.pipe(h.debounceTime(100)).subscribe(this.onStatusChange.bind(this));if(this.registerDestroyListener((()=>i.unsubscribe())),"true"===this.isRange){this.ngform.addControl(e+"_max",this.createControl());const t=this._maxControl.valueChanges.pipe(h.debounceTime(200)).subscribe(this.onValueChange.bind(this));this.registerDestroyListener((()=>t.unsubscribe()))}this.value=p.get(this.form.formdata,this._fieldName)}ngOnInit(){this.ngform=this.form.ngform,this.registerFormField(),this.fieldValidations=new n.BaseFieldValidations(this,this.formWidget,this.widgettype,this._control,this.form),super.ngOnInit()}ngAfterContentInit(){super.ngAfterContentInit(),this.formWidget&&(this._initPropsRes(),this.setFormWidget("binddisplaylabel",this.binddisplaylabel),this.setFormWidget("binddisplayexpression",this.binddisplayexpression),this.setFormWidget("binddisplayimagesrc",this.binddisplayimagesrc),this.setFormWidget("bindChipclass",this.bindChipclass),this.setFormWidget("binddataset",this.binddataset)),this.registerReadyStateListener((()=>{if(this.key=this._fieldName||this.target||this.binding,this.viewmodewidget=this.viewmodewidget||n.getDefaultViewModeWidget(this.widgettype),this.widgettype===l.FormWidgetType.UPLOAD){let e;e=this.filetype?ce[this.filetype]:"",this.permitted=e+(this.extensions?(e?",":"")+this.extensions:"")}l.isMobile()&&this.viewport.isMobileType?this["mobile-display"]||(this.widget.show=!1):this.viewport.isTabletType?this["tablet-display"]||(this.widget.show=!1):this["pc-display"]||(this.widget.show=!1),this.fieldDefConfig.displaname=this.displayname,this.fieldDefConfig.show=this.show,this.fieldDefConfig.isRelated=this["is-related"],this.fieldDefConfig.inputtype=this.inputtype,this.fieldDefConfig.generator=this.generator,this.fieldDefConfig.placeholder=this.placeholder,this.fieldDefConfig.primaryKey=this["primary-key"],this.fieldDefConfig.required=this.required,this.fieldDefConfig._readonly=this.readonly,this.fieldDefConfig.regexp=this.regexp,this.fieldDefConfig.type=this.type,this.fieldDefConfig.key=this.key,this.fieldDefConfig.mobileDisplay=this["mobile-display"],this.fieldDefConfig.name=this.name,this.fieldDefConfig.pcDisplay=this["pc-display"],this.fieldDefConfig.tabletDisplay=this["tablet-display"],this.fieldDefConfig.validationmessage=this.validationmessage,this.fieldDefConfig.viewmodewidget=this.viewmodewidget,this.fieldDefConfig.widget=this.widgettype,this.form.registerFormFields(this.widget),l.addForIdAttributes(this.nativeElement),this.setReadOnlyState()}))}static{this.\u0275fac=function(e){return new(e||de)(f.\u0275\u0275directiveInject(f.Injector),f.\u0275\u0275directiveInject(ie),f.\u0275\u0275directiveInject(C.FormBuilder),f.\u0275\u0275directiveInject(P.Viewport),f.\u0275\u0275directiveInject(P.App),f.\u0275\u0275directiveInject(A.ListComponent,8),f.\u0275\u0275injectAttribute("chipclass.bind"),f.\u0275\u0275injectAttribute("dataset.bind"),f.\u0275\u0275injectAttribute("displayexpression.bind"),f.\u0275\u0275injectAttribute("displaylabel.bind"),f.\u0275\u0275injectAttribute("widgettype"),f.\u0275\u0275injectAttribute("name"),f.\u0275\u0275injectAttribute("displayimagesrc.bind"),f.\u0275\u0275injectAttribute("key"),f.\u0275\u0275injectAttribute("is-range"),f.\u0275\u0275injectAttribute("pc-display"),f.\u0275\u0275injectAttribute("mobile-display"),f.\u0275\u0275injectAttribute("tablet-display"),f.\u0275\u0275directiveInject(n.Context,2),f.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:de,selectors:[["","wmFormField",""]],contentQueries:function(e,t,i){if(1&e&&(f.\u0275\u0275contentQuery(i,oe,7),f.\u0275\u0275contentQuery(i,re,5)),2&e){let e;f.\u0275\u0275queryRefresh(e=f.\u0275\u0275loadQuery())&&(t.formWidget=e.first),f.\u0275\u0275queryRefresh(e=f.\u0275\u0275loadQuery())&&(t.formWidgetMax=e.first)}},hostBindings:function(e,t){1&e&&f.\u0275\u0275listener("keydown",(function(e){return t.onKeydownHandler(e)}))("click",(function(e){return t.handleClick(e)}))},exportAs:["wmFormField"],features:[f.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(de),n.provideAs(de,r.NG_VALUE_ACCESSOR,!0),{provide:n.Context,useFactory:()=>({}),multi:!0}]),f.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(de,[{type:t.Directive,args:[{selector:"[wmFormField]",exportAs:"wmFormField",providers:[n.provideAsWidgetRef(de),n.provideAs(de,r.NG_VALUE_ACCESSOR,!0),{provide:n.Context,useFactory:()=>({}),multi:!0}]}]}],(()=>[{type:f.Injector},{type:ie},{type:C.FormBuilder},{type:P.Viewport},{type:P.App},{type:A.ListComponent,decorators:[{type:t.Optional}]},{type:void 0,decorators:[{type:t.Attribute,args:["chipclass.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dataset.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["displayexpression.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["displaylabel.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["widgettype"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["name"]}]},{type:String,decorators:[{type:t.Attribute,args:["displayimagesrc.bind"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["key"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["is-range"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["pc-display"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["mobile-display"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["tablet-display"]}]},{type:Array,decorators:[{type:t.Self},{type:t.Inject,args:[n.Context]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{formWidget:[{type:t.ContentChild,args:["formWidget",{static:!0}]}],formWidgetMax:[{type:t.ContentChild,args:["formWidgetMax"]}],onKeydownHandler:[{type:t.HostListener,args:["keydown",["$event"]]}],handleClick:[{type:t.HostListener,args:["click",["$event"]]}]});class pe{constructor(e,t,i){this.subscribedWidget=e,this.app=t,this.dialogService=i,e.addRow=this.addRow.bind(this),e.updateRow=this.updateRow.bind(this),e.deleteRow=this.deleteRow.bind(this),e.call=this.call.bind(this)}addRow(){this.app.notify("wm-event",{eventName:n.Live_Operations.INSERT,widgetName:this.subscribedWidget.name,row:this.subscribedWidget.selecteditem})}updateRow(){this.app.notify("wm-event",{eventName:n.Live_Operations.UPDATE,widgetName:this.subscribedWidget.name,row:this.subscribedWidget.selecteditem})}deleteRow(){this.app.notify("wm-event",{eventName:n.Live_Operations.DELETE,widgetName:this.subscribedWidget.name,row:this.subscribedWidget.selecteditem})}successHandler(e,t){l.triggerFn(e.success,t)}errorHandler(e,t){this.app.notifyApp(t,"error","ERROR"),l.triggerFn(e.error,t)}getRecords(e,t){let i,a;"None"!==this.subscribedWidget.navigation&&this.subscribedWidget.dataNavigator?(a=this.subscribedWidget.dataNavigator,t===n.Live_Operations.DELETE?(a.dataSize-=1,a.calculatePagingValues(),i=a.pageCount<a.dn.currentPage?"prev":void 0):(i=t===n.Live_Operations.INSERT?"last":"current","last"===i&&(a.dataSize+=1),a.calculatePagingValues()),a.navigatePage(i,null,!0,(t=>{this.successHandler(e,t)}))):this.subscribedWidget.datasource.execute(l.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0}).then((t=>{this.successHandler(e,t)}),(t=>{this.errorHandler(e,t)}))}performCUDOperation(e,t,i){n.performDataOperation(this.subscribedWidget.datasource,e,{operationType:t}).then((e=>{e.error?this.errorHandler(i,e.error):("wm.CrudVariable"===this.subscribedWidget.datasource.category&&"delete"===t?this.subscribedWidget.datasource.execute(l.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0}).then((e=>{this.successHandler(i,e)}),(e=>{this.errorHandler(i,e)})):this.getRecords(i,t),"delete"===t&&this.app.notifyApp(this.app.appLocale.MESSAGE_DELETE_RECORD_SUCCESS,"success"))}),(e=>{this.errorHandler(i,e)}))}insertRecord(e,t,i){this.performCUDOperation(e,t,i)}updateRecord(e,t,i){this.performCUDOperation(e,t,i)}deleteRecord(e,t,i){this.dialogService.showAppConfirmDialog({title:this.app.appLocale.MESSAGE_DELETE_RECORD||"Delete Record",iconclass:"wi wi-delete fa-lg",message:this.subscribedWidget.confirmdelete||"Are you sure you want to delete this?",oktext:this.subscribedWidget.deleteoktext||"Ok",canceltext:this.subscribedWidget.deletecanceltext||"Cancel",onOk:()=>{this.performCUDOperation(e,t,i),this.dialogService.closeAppConfirmDialog()},onCancel:()=>{l.triggerFn(i.cancelDeleteCallback),this.dialogService.closeAppConfirmDialog()}})}performOperation(e,t){const i={row:t.row,prevData:{},rowData:{},transform:!0,skipNotification:!0};switch(e===n.Live_Operations.UPDATE&&(i.rowData=t.rowData,i.prevData=t.prevData),e){case n.Live_Operations.INSERT:this.insertRecord(i,e,t);break;case n.Live_Operations.UPDATE:this.updateRecord(i,e,t);break;case n.Live_Operations.DELETE:this.deleteRecord(i,e,t);break;case n.Live_Operations.READ:this.getRecords(t,e)}}call(e,t,i,n){t.success=i,t.error=n,this.performOperation(e,t)}static{this.\u0275fac=function(e){return new(e||pe)(f.\u0275\u0275directiveInject(d.ListComponent,2),f.\u0275\u0275directiveInject(P.App),f.\u0275\u0275directiveInject(P.AbstractDialogService))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:pe,selectors:[["","wmLiveActions",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(pe,[{type:t.Directive,args:[{selector:"[wmLiveActions]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[d.ListComponent]}]},{type:P.App},{type:P.AbstractDialogService}]),null);class ue{constructor(e,t,i,n){this.dialogService=i,this.app=n,e&&(this.isLayoutDialog=!0,this.dialogId=e),this.dependson=t,this.eventSubscription=this.app.subscribe("wm-event",this.handleEvent.bind(this))}openFormDialog(){this.dialogService.open(this.dialogId)}onUpdate(e,t,i){this.editMode=i||this.editMode,this.form.operationType=n.Live_Operations.UPDATE,this.form.isSelected=!0;let a=this.currentFormData;e&&t&&(a=t.multiselect?e[0]:e[e.length-1]),this.form.setFormData(a),this.form.edit(),this.editMode||(this.form.isUpdateMode=!1)}onInsert(){this.form.operationType=n.Live_Operations.INSERT,this.form.isSelected=!0,this.form.setFormData({}),this.form.new()}handleEvent(e){if(this.dependson===e.widgetName)switch(this.currentOp=e.eventName,e.eventName){case n.Live_Operations.UPDATE:this.currentFormData=e.row,this.isLayoutDialog?this.openFormDialog():this.onUpdate(void 0,void 0,!0);break;case n.Live_Operations.INSERT:this.isLayoutDialog?this.openFormDialog():this.onInsert();break;case n.Live_Operations.DELETE:this.app.Widgets[this.dependson].call("delete",{row:e.row});break;case n.Live_Operations.READ:this.isLayoutDialog||(this.form.isUpdateMode=!1);break;case"rerender":e.dataSource&&e.dataSource.execute(l.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0,operation:"list"});break;case"selectedItemChange":e.table&&this.onUpdate(e.row,e.table);break;case"resetEditMode":this.editMode=!1}}onFormRender(){this.form&&this.isLayoutDialog&&(this.form.isLayoutDialog=!0,setTimeout((()=>{this.currentOp===n.Live_Operations.UPDATE?this.onUpdate(void 0,void 0,!0):this.currentOp===n.Live_Operations.INSERT&&this.onInsert()}),250))}ngAfterContentInit(){this.formChildren.first?this.form=this.formChildren.first:this.formSubscription=this.formChildren.changes.subscribe((e=>{this.form=e.first,this.onFormRender()})),this.app.notify("setup-cud-listener",this.dependson)}ngOnDestroy(){this.formSubscription&&this.formSubscription.unsubscribe(),this.eventSubscription&&this.eventSubscription()}static{this.\u0275fac=function(e){return new(e||ue)(f.\u0275\u0275injectAttribute("dialogid"),f.\u0275\u0275injectAttribute("dependson"),f.\u0275\u0275directiveInject(P.AbstractDialogService),f.\u0275\u0275directiveInject(P.App))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:ue,selectors:[["","dependson",""]],contentQueries:function(e,t,i){if(1&e&&f.\u0275\u0275contentQuery(i,ie,5),2&e){let e;f.\u0275\u0275queryRefresh(e=f.\u0275\u0275loadQuery())&&(t.formChildren=e)}}})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ue,[{type:t.Directive,args:[{selector:"[dependson]"}]}],(()=>[{type:void 0,decorators:[{type:t.Attribute,args:["dialogid"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["dependson"]}]},{type:P.AbstractDialogService},{type:P.App}]),{formChildren:[{type:t.ContentChildren,args:[ie,{descendants:!0}]}]});const he="EMPTY_NULL_FILTER";class me{static{this.initializeProps=(()=>{l.isMobileApp()&&O.set("captionwidth",{value:"xs-4 sm-4 md-4 lg-4",...n.PROP_STRING});const e=new Map(O);e.set("autoupdate",n.PROP_BOOLEAN),e.set("enableemptyfilter",{value:" ",...n.PROP_STRING}),e.set("pagesize",{value:20,...n.PROP_NUMBER}),e.set("iconclass",{value:"wi wi-filter-list",...n.PROP_STRING}),n.register("wm-livefilter",e)})()}constructor(e){this.form=e,this._filter=l.debounce((e=>{this.filter(e)}),250),e.clearFilter=this.clearFilter.bind(this),e.applyFilter=this.applyFilter.bind(this),e.filter=this.filter.bind(this),e.filterOnDefault=this.filterOnDefault.bind(this),e.execute=this.execute.bind(this),e.onFieldDefaultValueChange=this.onFieldDefaultValueChange.bind(this),e.onMaxDefaultValueChange=this.onMaxDefaultValueChange.bind(this),e.onDataSourceChange=this.onDataSourceChange.bind(this),e.onFieldValueChange=this.onFieldValueChange.bind(this),e.submitForm=this.submitForm.bind(this),e.registerFormWidget=this.registerFormWidget.bind(this)}execute(e,t){return e===l.DataSource.Operation.LIST_RECORDS||e===l.DataSource.Operation.DOWNLOAD?this.applyFilter(t):e===l.DataSource.Operation.GET_OPTIONS?this._options||{}:e===l.DataSource.Operation.GET_PAGING_OPTIONS?this.form.pagination:this.form.datasource?e===l.DataSource.Operation.FETCH_DISTINCT_VALUES?n.fetchDistinctValues(this.form.datasource,this.form.formFields,{widget:"widgettype",enableemptyfilter:this.form.enableemptyfilter,EMPTY_VALUE:this.form.appLocale.LABEL_NO_VALUE}):this.form.datasource.execute(e,t):{}}onFieldDefaultValueChange(e,t){e.minValue=t,e.value=t,this.filterOnDefault()}onFieldValueChange(e,t){n.applyFilterOnField(this.form.datasource,e.widget,this.form.formFields,t,{EMPTY_VALUE:this.form.appLocale.LABEL_NO_VALUE}),this.form.autoupdate&&l.isDefined(t)&&this._filter()}onMaxDefaultValueChange(){setTimeout((()=>{this.filterOnDefault()}))}onDataSourceChange(){const e=this.form.datasource;e&&(this.form.formFields.forEach((t=>{n.isDataSetWidget(t.widgettype)&&(n.getDistinctValuesForField(e,t.widget,{widget:"widgettype",enableemptyfilter:this.form.enableemptyfilter,EMPTY_VALUE:this.form.appLocale.LABEL_NO_VALUE}),n.applyFilterOnField(e,t.widget,this.form.formFields,t.value,{isFirst:!0,EMPTY_VALUE:this.form.appLocale.LABEL_NO_VALUE}))})),this._filter(this._options))}clearFilter(){this.form.resetFormState(),this.form.formFields.forEach((e=>{!e.readonly&&e.show&&(e.widgettype!==l.FormWidgetType.AUTOCOMPLETE&&e.widgettype!==l.FormWidgetType.TYPEAHEAD||this.form.$element.find("div[name="+e.name+"] input").val(""),e["is-range"]?(e.minValue="",e.maxValue=""):(e.value="",e.resetDisplayInput()))})),setTimeout((()=>{this._filter()}))}submitForm(){this.filter()}applyFilter(e){return(e=e?e.data||e:{}).page=e.page||1,e.orderBy=l.isDefined(e.orderBy)?e.orderBy:this.orderBy,this.filter(e)}filter(e){if(!this.form.datasource)return;const t={},i={};let a,s,o=1;o=(e=e||{}).page||o,a=l.isDefined(e.orderBy)?e.orderBy:this.orderBy||"",this.orderBy=a,this.form.formFields.forEach((e=>{const t="div[name="+e.name+"] input",n=this.form.$element;let a;if((e.widgettype===l.FormWidgetType.AUTOCOMPLETE||e.widgettype===l.FormWidgetType.TYPEAHEAD)&&n)return a=n.find(t),void(e["is-range"]?i[e.field]={minValue:l.isDefined(e.minValue)?e.minValue:a.first().val(),maxValue:l.isDefined(e.maxValue)?e.maxValue:a.last().val()}:i[e.field]={value:l.isDefined(e.value)?e.value:a.val()});e["is-range"]?i[e.field]={minValue:e.minValue,maxValue:e.maxValue}:i[e.field]={value:e.value}}));try{if(s=this.form.invokeEventCallback("beforeservicecall",{$data:i}),!1===s)return;if(s&&s.error)return void this.form.toggleMessage(!0,s.error,"error","ERROR");this.form.formFields.forEach((e=>{e["is-range"]?(e._minValue=i[e.field].minValue,e._maxValue=i[e.field].maxValue):e._value=i[e.field].value}))}catch(e){if("Abort"===e.message)return}return this.form.formFields.forEach((e=>{let i,a,s=e.field;const o=e._minValue,r=e._maxValue;if(e["is-related"]&&(s+="."+e["lookup-field"]),e["is-range"])i=n.getRangeFieldValue(o,r),a=n.getRangeMatchMode(o,r),l.isDefined(i)&&(t[s]={value:i,matchMode:a,logicalOp:"AND"});else{switch(e.widgettype){case l.FormWidgetType.SELECT:case l.FormWidgetType.RADIOSET:n.getEnableEmptyFilter(this.form.enableemptyfilter)&&e._value===he?(a=n.getEmptyMatchMode(this.form.enableemptyfilter),i=e._value):e.type===l.DataType.BOOLEAN?l.isDefined(e._value)&&""!==e._value&&(i=JSON.parse(e._value)):i=e._value;break;case l.FormWidgetType.CHECKBOXSET:case l.FormWidgetType.CHIPS:e._value&&e._value.length&&(i=e._value);break;case l.FormWidgetType.CHECKBOX:case l.FormWidgetType.TOGGLE:l.isDefined(e._value)&&""!==e._value&&(i=e.type===l.DataType.BOOLEAN?JSON.parse(e._value):e._value);break;default:i=e._value}l.isDefined(i)&&""!==i&&null!==i&&(t[s]={},a?(t[s].matchMode=a,i=void 0):(e.type===l.DataType.STRING||e.isRelated)&&(t[s].matchMode=a||e.matchmode||this.form.datasource.execute(l.DataSource.Operation.GET_MATCH_MODE)),t[s].value=i,t[s].logicalOp="AND",t[s].type=e.type)}})),e.exportType?this.form.datasource.execute(l.DataSource.Operation.DOWNLOAD,{data:{matchMode:"anywhereignorecase",filterFields:t,orderBy:a,exportType:e.exportType,logicalOp:"AND",exportSize:e.exportSize,fields:e.fields,fileName:e.fileName}}):this.form.datasource.execute(l.DataSource.Operation.LIST_RECORDS,{filterFields:t,orderBy:a,page:o,pagesize:this.form.pagesize||20,skipDataSetUpdate:!0,inFlightBehavior:"executeAll"}).then((e=>{const t=e.data;return this.form.pagination=e.pagination,t.error?(this.form.toggleMessage(!0,t.error,"error","ERROR"),this.form.onResultCb(t,!1)):(this._options={page:o,orderBy:a},this.form.result=l.getClonedObject(t),this.form.onResultCb(t,!0)),l.$appDigest(),this.form.result}),(e=>(this.form.toggleMessage(!0,e,"error","ERROR"),this.form.onResultCb(e,!1),e)))}filterOnDefault(){p.find(this.form.formFields,(e=>l.isDefined(e.value)||l.isDefined(e.minValue)||l.isDefined(e.maxValue)))&&this._filter(this._options)}registerFormWidget(e){const t=e.key||e.name;this.form.filterWidgets[t]=e}static{this.\u0275fac=function(e){return new(e||me)(f.\u0275\u0275directiveInject(ie,2))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:me,selectors:[["","wmLiveFilter",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(me,[{type:t.Directive,args:[{selector:"[wmLiveFilter]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[ie]}]}]),null);class ge{static{this.initializeProps=(()=>{l.isMobileApp()&&O.set("captionwidth",{value:"xs-4 sm-4 md-4 lg-4",...n.PROP_STRING});const e=new Map(O);e.set("defaultmode",{value:"View",...n.PROP_STRING}),e.set("formlayout",{value:"inline",...n.PROP_STRING}),e.set("insertmessage",{value:"Record added successfully",...n.PROP_STRING}),e.set("updatemessage",{value:"Record updated successfully",...n.PROP_STRING}),e.set("deletemessage",{value:"Record deleted successfully",...n.PROP_STRING}),e.set("errormessage",{value:"An error occured. Please try again!",...n.PROP_STRING}),e.set("messagelayout",{value:"Toaster",...n.PROP_STRING}),e.set("formdata",n.PROP_STRING),e.set("novalidate",n.PROP_BOOLEAN),e.set("validationtype",{value:"default",...n.PROP_STRING}),e.set("iconclass",n.PROP_STRING),n.register("wm-liveform",e)})()}onKeydownHandler(e){this._triggeredByUser=!0}constructor(e,t,i,n,a){this.form=e,this.datePipe=i,this.dialogService=n,this._debouncedSavePrevDataValues=l.debounce((()=>{this.savePrevDataValues()}),250),t?(this.form.parentForm||(this.form._liveTableParent=t),this.form.isLayoutDialog=t.isLayoutDialog,t.onFormReady(this.form)):this.form.isLayoutDialog="dialog"===a,e.cancel=this.cancel.bind(this),e.reset=this.reset.bind(this),e.delete=this.delete.bind(this),e.save=this.save.bind(this),e.saveAndNew=this.saveAndNew.bind(this),e.saveAndView=this.saveAndView.bind(this),e.setPrimaryKey=this.setPrimaryKey.bind(this),e.constructDataObject=this.constructDataObject.bind(this),e.changeDataObject=this.setFormData.bind(this),e.setFormData=this.setFormData.bind(this),e.findOperationType=this.findOperationType.bind(this),e.clearData=this.clearData.bind(this),e.onFieldDefaultValueChange=this.onFieldDefaultValueChange.bind(this),e.onDataSourceChange=this.onDataSourceChange.bind(this),e.onFieldValueChange=this.onFieldValueChange.bind(this),e.submitForm=this.submitForm.bind(this),e.form_registerFormFields=e.registerFormFields,e.registerFormFields=this.registerFormFields.bind(this)}registerFormFields(e){const t=this.form.getFormFields();this.form.form_registerFormFields(e),this.form.isDataSourceUpdated&&this._updateFieldOnDataSourceChange(e,t)}_updateFieldOnDataSourceChange(e,t){!e.isDataSetBound&&n.isDataSetWidget(e.widgettype)&&(e["is-related"]?(e.isDataSetBound=!0,n.fetchRelatedFieldData(this.form.datasource,e.widget,{relatedField:e.key,datafield:n.ALLFIELDS,widget:"widgettype"})):(n.getDistinctValuesForField(this.form.datasource,e.widget,{widget:"widgettype",enableemptyfilter:this.form.enableemptyfilter}),n.applyFilterOnField(this.form.datasource,e.widget,t,e.value,{isFirst:!0})))}onDataSourceChange(){p.get(this.form.formFields,"length")&&(this.form.isDataSourceUpdated=!0);const e=this.form.getFormFields();e.forEach((t=>{this._updateFieldOnDataSourceChange(t,e)}))}onFieldDefaultValueChange(e,t){"update"!==this.form.operationType&&(l.isDefined(t)&&null!==t&&""!==t&&"null"!==t?e.value=n.parseValueByType(t,e.type,e.widgettype,e.trailingzero):e.value=void 0,this.form.dirty&&!this._triggeredByUser&&this.form.markAsPristine(),this._debouncedSavePrevDataValues())}onFieldValueChange(e,t){n.applyFilterOnField(this.form.datasource,e.widget,this.form.formFields,t)}getBlobURL(e,t,i){let n,a,s="";return null!=i&&this.form.datasource?(n=this.form.datasource.execute(l.DataSource.Operation.GET_PRIMARY_KEY)||[],a=e[n[0]],s+=this.form.datasource.execute(l.DataSource.Operation.GET_BLOB_URL,{primaryValue:a,columnName:t}),s+="?"+Math.random(),s):s}setFormData(e,t){e&&((t=t||this.form.formFields).forEach((t=>{const i=p.get(e,t.key||t.name);(e=>e.widgettype===l.DataType.TIME||e.type===l.DataType.TIME&&!e.widgettype)(t)?t.value=(e=>{if(e){const t=(new Date).toDateString();return new Date(`${t} ${e}`).getTime()}})(i):t.type===l.DataType.BLOB?(this.form.resetFileUploadWidget(t,!0),t.href=this.getBlobURL(e,t.key,i),t.value=p.isString(i)?"":i):this.form.setFieldValue(t,e)})),this.savePrevDataValues(),this.form.constructDataObject())}onDataSourceUpdate(e,t,i){t?this.form.new():(this.form.setFormData(e),this.closeDialog()),this.form.isUpdateMode=!l.isDefined(i)||i}savePrevformFields(){this.form.prevformFields=l.getClonedObject(this.form.formFields.map((e=>({key:e.key,type:e.type,widgettype:e.widgettype,outputformat:e.outputformat,value:e.value}))))}getPrevformFields(){this.form.formFields.map((e=>{const t=this.form.prevformFields.find((t=>t.key===e.key));e.value=t.value}))}getDataObject(){return this.form.operationType===n.Live_Operations.INSERT?{}:l.isDefined(this.form.prevDataObject)&&!l.isEmptyObject(this.form.prevDataObject)?l.getClonedObject(this.form.prevDataObject):l.getClonedObject(this.form.formdata||{})}constructDataObject(e){const t=this.getDataObject(),i=this.form.name;let n;return n=e?this.form.prevformFields:this.form.getFormFields(),n.forEach((e=>{let n,a;const s=p.split(e.key,"."),o=s[0]||e.key;e.widgettype&&l.isDateTimeType(e.widgettype)||l.isDateTimeType(e.type)?e.value?(n=l.getValidDateObject(e.value),a=e.outputformat===l.DataType.TIMESTAMP||e.type===l.DataType.TIMESTAMP?e.value?n:null:e.outputformat?this.datePipe.transform(n,e.outputformat):e.value):a=void 0:a=e.type===l.DataType.BLOB?l.getFiles(i,o+"_formWidget",e.multiple):e.type===l.DataType.LIST?e.value||void 0:null===e.value||""===e.value?void 0:e.value,1===s.length?t[o]=a:(t[o]=t[o]||{},t[o][s[1]]=a)})),e?t:(this.form.updateFormDataOutput(t),this.form.dataoutput)}setPrimaryKey(e){this.form.primaryKey=this.form.primaryKey||[],-1===this.form.primaryKey.indexOf(e)&&this.form.primaryKey.push(e)}findOperationType(){let e,t=!1;const i=this.form.datasource&&this.form.datasource.execute(l.DataSource.Operation.GET_OPERATION_TYPE);return i&&"read"!==i?i:(this.form.primaryKey&&!p.isEmpty(this.form.formdata)&&(1===this.form.primaryKey.length?this.form.formdata[this.form.primaryKey[0]]&&(e=n.Live_Operations.UPDATE):0===this.form.primaryKey.length?(p.forEach(this.form.formdata,(e=>{e&&(t=!0)})),t&&(e=n.Live_Operations.UPDATE)):(t=p.some(this.form.primaryKey,(e=>{if(this.form.formdata[e])return!0})),t&&(e=n.Live_Operations.UPDATE))),e||n.Live_Operations.INSERT)}getPrevDataValues(){const e=p.fromPairs(p.map(this.form.prevDataValues,(e=>[e.key,e.value])));return this.form.formFields.forEach((t=>{t.value=e[t.key]||"",t.resetDisplayInput()})),e}savePrevDataValues(){this.form.prevDataValues=this.form.formFields.map((e=>({key:e.key,value:e.value})))}clearData(){this.form.toggleMessage(!1),this.form.emptyDataModel()}setReadonlyFields(){this.form.formFields.forEach((e=>{e.setReadOnlyState()}))}reset(){let e;this.form.resetFormState(),e=this.getPrevDataValues(),this.form.formFields.forEach((t=>{t.type!==l.DataType.BLOB&&"upload"!==t.widgettype||(this.form.resetFileUploadWidget(t,!0),t.href=this.getBlobURL(e,t.key,t.value)),t.nativeElement.querySelector("input")?.removeAttribute("aria-invalid")})),this.form.constructDataObject()}closeDialog(){this.form.isLayoutDialog&&this.dialogService.close(this.form.dialogId)}cancel(){this.form.clearMessage(),this.form.isUpdateMode=!1,this.form.reset(),this.form.isSelected&&this.getPrevformFields(),this.form.isUpdateMode=!1,this.form._liveTableParent?this.form._liveTableParent.onCancel():this.closeDialog(),l.$appDigest()}delete(e){this.form.resetFormState(),this.form.operationType=n.Live_Operations.DELETE,this.form.prevDataObject=l.getClonedObject(this.form.formdata||{}),this.form.save(void 0,void 0,void 0,e)}saveAndNew(){this.save(void 0,!0,!0)}saveAndView(){this.save(void 0,!1)}submitForm(e){this.save(e)}save(e,t,i){if(!this.form.datasource)return;let a,s,o,r;const c={};if(o=this.form.operationType=this.form.operationType||this.findOperationType(),!this.form.validateFieldsOnSubmit()){a=l.getClonedObject(this.form.constructDataObject()),s=this.form.prevformFields?this.form.constructDataObject(!0):a;try{if(r=this.form.invokeEventCallback("beforeservicecall",{$event:e,$operation:this.form.operationType,$data:a,options:c}),!1===r)return;if(r&&r.error)return void this.form.toggleMessage(!0,r.error,"error")}catch(e){if("Abort"===e.message)return}if(this.form.operationType===n.Live_Operations.UPDATE&&this.form.ngform&&this.form.ngform.pristine&&this.form.isSelected&&p.isEqual(a,s))return this.form.toggleMessage(!0,this.form.appLocale.MESSAGE_NO_CHANGES,"info",""),void l.$appDigest();c.row=a,c.transform=!0,c.skipNotification=!0,o===n.Live_Operations.UPDATE&&(c.rowData=this.form.formdata,c.prevData=s),n.performDataOperation(this.form.datasource,c,{operationType:o}).then((e=>{const a=o===n.Live_Operations.INSERT?this.form.insertmessage:o===n.Live_Operations.UPDATE?this.form.updatemessage:this.form.deletemessage;let s;return o===n.Live_Operations.DELETE?(s=c.row,this.form.emptyDataModel(),this.form.prevDataValues=[],this.form.isSelected=!1):s=e,this.form.onSuccess||this.form.toggleMessage(!0,a,"success"),this.form._liveTableParent?this.form._liveTableParent.onResult(o,e,i,t):(this.form.datasource.execute(l.DataSource.Operation.LIST_RECORDS,{skipToggleState:!0}),this.onDataSourceUpdate(e,i,t)),{result:s,status:!0}}),(e=>(this.form.onError||this.form.toggleMessage(!0,e,"error"),l.$appDigest(),{result:e,status:!1}))).then((t=>{this.form.resetFormState(),this.form.onResultCb(t.result,t.status,e)}))}}static{this.\u0275fac=function(e){return new(e||ge)(f.\u0275\u0275directiveInject(ie,2),f.\u0275\u0275directiveInject(E.LiveTableComponent,8),f.\u0275\u0275directiveInject(b.ToDatePipe),f.\u0275\u0275directiveInject(P.AbstractDialogService),f.\u0275\u0275injectAttribute("formlayout"))}}static{this.\u0275dir=f.\u0275\u0275defineDirective({type:ge,selectors:[["","wmLiveForm",""]],hostBindings:function(e,t){1&e&&f.\u0275\u0275listener("keydown",(function(e){return t.onKeydownHandler(e)}))}})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ge,[{type:t.Directive,args:[{selector:"[wmLiveForm]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[ie]}]},{type:E.LiveTableComponent,decorators:[{type:t.Optional}]},{type:b.ToDatePipe},{type:P.AbstractDialogService},{type:void 0,decorators:[{type:t.Attribute,args:["formlayout"]}]}]),{onKeydownHandler:[{type:t.HostListener,args:["keydown",["$event"]]}]});const fe=[ie,ne,se,de,pe,ue,me,ge];class ve{static{this.\u0275fac=function(e){return new(e||ve)}}static{this.\u0275mod=f.\u0275\u0275defineNgModule({type:ve})}static{this.\u0275inj=f.\u0275\u0275defineInjector({imports:[a.BasicModule,i.CommonModule,o.DesignDialogModule,s.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ve,[{type:t.NgModule,args:[{imports:[a.BasicModule,i.CommonModule,o.DesignDialogModule,s.InputModule,n.WmComponentsModule],declarations:[...fe],exports:[...fe]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&f.\u0275\u0275setNgModuleScope(ve,{declarations:[ie,ne,se,de,pe,ue,me,ge],imports:[a.BasicModule,i.CommonModule,o.DesignDialogModule,s.InputModule,n.WmComponentsModule],exports:[ie,ne,se,de,pe,ue,me,ge]}),e.DependsonDirective=ue,e.FormActionDirective=se,e.FormComponent=ie,e.FormFieldDirective=de,e.FormModule=ve,e.FormWidgetDirective=ne,e.LiveActionsDirective=pe,e.LiveFilterDirective=me,e.LiveFormDirective=ge})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/basic"),require("@wm/components/dialogs"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/basic","@wm/components/dialogs","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs=e.wm.components.dialogs||{},e.wm.components.dialogs.iframedialog={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.basic,e.wm.components.dialogs,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(a),u=l(s),h=l(o);const m=["dialogTemplate"],g=["wmIframeDialog",""];function f(e,t){if(1&e&&c.\u0275\u0275element(0,"div",5),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("closable",e.closable)("iconclass",e.iconclass)("iconurl",e.iconurl)("iconwidth",e.iconwidth)("iconheight",e.iconheight)("iconmargin",e.iconmargin)("heading",e.title)("headinglevel",e.headinglevel)("titleid",e.titleId)}}function v(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"div",6)(1,"button",7),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(i.onOk(t))})),c.\u0275\u0275elementEnd()()}}function b(e,t){if(1&e&&(c.\u0275\u0275template(0,f,1,9,"div",1),c.\u0275\u0275elementStart(1,"div",2),c.\u0275\u0275element(2,"div",3),c.\u0275\u0275elementEnd(),c.\u0275\u0275template(3,v,2,0,"div",4)),2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275property("ngIf",e.showheader),c.\u0275\u0275advance(3),c.\u0275\u0275property("ngIf",e.showactions)}}const y={widgetType:"wm-iframedialog"};class w extends s.BaseDialog{static{this.initializeProps=void n.register("wm-iframedialog",new Map([["animation",n.PROP_STRING],["class",n.PROP_STRING],["closable",{value:!0,PROP_BOOLEAN:n.PROP_BOOLEAN}],["encodeurl",{value:!1,...n.PROP_BOOLEAN}],["height",{value:"400px",...n.PROP_STRING}],["iconclass",{value:"wi wi-globe",PROP_STRING:n.PROP_STRING}],["iconheight",n.PROP_STRING],["iconmargin",n.PROP_STRING],["iconurl",n.PROP_STRING],["iconwidth",n.PROP_STRING],["modal",{value:!1,...n.PROP_BOOLEAN}],["name",n.PROP_STRING],["oktext",{value:"OK",...n.PROP_STRING}],["showactions",{value:!0,...n.PROP_BOOLEAN}],["showheader",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}],["headinglevel",{value:"h4",...n.PROP_STRING}],["title",{value:"External Content",...n.PROP_STRING}],["url",{value:"//www.wavemaker.com",...n.PROP_STRING}]]))}constructor(e,t,i,n,a){null==i&&(i=!1);const s=!r.toBoolean(i)||"static";super(e,y,{class:`app-dialog modal-dialog app-iframe-dialog ${t||""}`,backdrop:s,keyboard:!r.toBoolean(i)},a)}getTemplateRef(){return this.dialogTemplate}onOk(e){this.invokeEventCallback("ok",{$event:e})}ngOnInit(){super.ngOnInit(),this.register(this.viewParent)}static{this.\u0275fac=function(e){return new(e||w)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275injectAttribute("class"),c.\u0275\u0275injectAttribute("modal"),c.\u0275\u0275injectAttribute("closable"),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:w,selectors:[["div","wmIframeDialog",""]],viewQuery:function(e,t){if(1&e&&c.\u0275\u0275viewQuery(m,7),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.dialogTemplate=e.first)}},features:[c.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(w),n.provideAsDialogRef(w)]),c.\u0275\u0275InheritDefinitionFeature],attrs:g,decls:2,vars:0,consts:[["dialogTemplate",""],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid",4,"ngIf"],["wmDialogBody",""],["wmIframe","","encodeurl.bind","encodeurl","iframesrc.bind","url","height.bind","height","width.bind","width","hint.bind","hint"],["wmDialogFooter","",4,"ngIf"],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid"],["wmDialogFooter",""],["wmButton","","caption.bind","oktext","aria-label","Submit button",1,"btn-primary","ok-action",3,"click"]],template:function(e,t){1&e&&c.\u0275\u0275template(0,b,4,2,"ng-template",null,0,c.\u0275\u0275templateRefExtractor)},dependencies:[p.IframeComponent,d.NgIf,u.DialogBodyDirective,u.DialogFooterDirective,u.DialogHeaderComponent,h.ButtonComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(w,[{type:t.Component,args:[{selector:"div[wmIframeDialog]",providers:[n.provideAsWidgetRef(w),n.provideAsDialogRef(w)],template:'<ng-template #dialogTemplate>\n <div wmDialogHeader [closable]="closable"\n [iconclass]="iconclass"\n [iconurl]="iconurl"\n [iconwidth]="iconwidth"\n [iconheight]="iconheight"\n [iconmargin]="iconmargin"\n [heading]="title"\n [headinglevel]="headinglevel"\n *ngIf="showheader"\n [titleid]="titleId"\n ></div>\n <div wmDialogBody>\n <div wmIframe encodeurl.bind="encodeurl" iframesrc.bind="url" height.bind="height" width.bind="width" hint.bind="hint"></div>\n </div>\n <div wmDialogFooter *ngIf="showactions">\n <button wmButton class="btn-primary ok-action" caption.bind="oktext" aria-label="Submit button" (click)="onOk($event)"></button>\n </div>\n</ng-template>\n'}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["class"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["modal"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["closable"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dialogTemplate:[{type:t.ViewChild,args:["dialogTemplate",{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(w,{className:"IframeDialogComponent",filePath:"iframe-dialog.component.ts",lineNumber:30});const C=[w];class P{static{this.\u0275fac=function(e){return new(e||P)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:P})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[a.BasicModule,i.CommonModule,s.DialogModule,o.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(P,[{type:t.NgModule,args:[{imports:[a.BasicModule,i.CommonModule,s.DialogModule,o.InputModule,n.WmComponentsModule],declarations:[...C],exports:[...C]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(P,{declarations:[w],imports:[a.BasicModule,i.CommonModule,s.DialogModule,o.InputModule,n.WmComponentsModule],exports:[w]}),e.IframeDialogComponent=w,e.IframeDialogModule=P})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/dialogs"),require("@wm/components/dialogs/design-dialog"),require("@wm/components/input"),require("@wm/core"),require("@wm/components/data/form")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/dialogs","@wm/components/dialogs/design-dialog","@wm/components/input","@wm/core","@wm/components/data/form"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs=e.wm.components.dialogs||{},e.wm.components.dialogs.logindialog={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.dialogs,e.wm.components.dialogs.designdialog,e.wm.components.input,e.wm.core,e.wm.components.data.form)}(this,(function(e,t,i,n,a,s,o,r,l){"use strict";function c(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var d=c(t),p=c(n);class u{constructor(e,t){this.contexts=e,this.dialogRef=t,this.contexts[0].doLogin=()=>this.doLogin()}hideMsg(){this.msgCmp&&this.msgCmp.hideMessage()}showError(e){this.msgCmp&&this.msgCmp.showMessage(e,"error")}showLoading(){this.msgCmp&&this.msgCmp.showMessage("Loading...","loading")}onSuccess(){this.hideMsg()}onError(e){this.showError(e)}getLoginDetails(){return this.formCmp.first.dataoutput}doLogin(){const e=this.getLoginDetails(),t=this.dialogRef.eventsource;t&&e.j_username&&e.j_password&&(this.showLoading(),t.invoke({loginInfo:e},this.onSuccess.bind(this),this.onError.bind(this)))}ngAfterViewInit(){this.dialogOpenSubscription=this.dialogRef.bsModal.onShown.subscribe((()=>{setTimeout((()=>{this.dialogRef.$element.find(".app-textbox").keypress((e=>{13===e.which&&(e.stopPropagation(),r.$appDigest(),this.doLogin())}))}))}))}ngOnDestroy(){this.dialogOpenSubscription.unsubscribe()}static{this.\u0275fac=function(e){return new(e||u)(d.\u0275\u0275directiveInject(n.Context,2),d.\u0275\u0275directiveInject(p.DialogRef,2))}}static{this.\u0275dir=d.\u0275\u0275defineDirective({type:u,selectors:[["","wmDialog","","wmLoginDialog",""]],contentQueries:function(e,t,i){if(1&e&&(d.\u0275\u0275contentQuery(i,n.MessageComponent,5),d.\u0275\u0275contentQuery(i,l.FormComponent,4)),2&e){let e;d.\u0275\u0275queryRefresh(e=d.\u0275\u0275loadQuery())&&(t.msgCmp=e.first),d.\u0275\u0275queryRefresh(e=d.\u0275\u0275loadQuery())&&(t.formCmp=e)}}})}}("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassMetadata(u,[{type:t.Directive,args:[{selector:"[wmDialog][wmLoginDialog]"}]}],(()=>[{type:Array,decorators:[{type:t.Self},{type:t.Inject,args:[n.Context]}]},{type:p.DialogRef,decorators:[{type:t.Self}]}]),{formCmp:[{type:t.ContentChildren,args:[l.FormComponent]}],msgCmp:[{type:t.ContentChild,args:[n.MessageComponent]}]});const h=[u];class m{static{this.\u0275fac=function(e){return new(e||m)}}static{this.\u0275mod=d.\u0275\u0275defineNgModule({type:m})}static{this.\u0275inj=d.\u0275\u0275defineInjector({imports:[i.CommonModule,s.DesignDialogModule,a.DialogModule,o.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&d.\u0275setClassMetadata(m,[{type:t.NgModule,args:[{imports:[i.CommonModule,s.DesignDialogModule,a.DialogModule,o.InputModule,n.WmComponentsModule],declarations:[...h],exports:[...h]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&d.\u0275\u0275setNgModuleScope(m,{declarations:[u],imports:[i.CommonModule,s.DesignDialogModule,a.DialogModule,o.InputModule,n.WmComponentsModule],exports:[u]}),e.LoginDialogDirective=u,e.LoginDialogModule=m})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/dialogs"),require("@wm/components/input"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/dialogs","@wm/components/input","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.dialogs=e.wm.components.dialogs||{},e.wm.components.dialogs.partialdialog={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.dialogs,e.wm.components.input,e.wm.core)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(a),p=r(s),u=r(o);const h=["partial"],m=["dialogTemplate"],g=["wmPartialDialog",""];function f(e,t){1&e&&l.\u0275\u0275elementContainer(0)}function v(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"div",5)(1,"button",6),l.\u0275\u0275listener("click",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext(2);return l.\u0275\u0275resetView(i.onOk(t))})),l.\u0275\u0275elementEnd()()}}function b(e,t){if(1&e&&(l.\u0275\u0275element(0,"div",1),l.\u0275\u0275elementStart(1,"div",2),l.\u0275\u0275template(2,f,1,0,"ng-container",3),l.\u0275\u0275elementEnd(),l.\u0275\u0275template(3,v,2,0,"div",4)),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("closable",e.closable)("iconclass",e.iconclass)("iconurl",e.iconurl)("iconwidth",e.iconwidth)("iconheight",e.iconheight)("iconmargin",e.iconmargin)("heading",e.title)("headinglevel",e.headinglevel)("titleid",e.titleId),l.\u0275\u0275advance(2),l.\u0275\u0275property("ngTemplateOutlet",e.dialogContent),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.showactions)}}const y={widgetType:"wm-partialdialog"};class w extends a.BaseDialog{static{this.initializeProps=void n.register("wm-partialdialog",new Map([["animation",n.PROP_STRING],["class",n.PROP_STRING],["closable",{value:!0,PROP_BOOLEAN:n.PROP_BOOLEAN}],["content",n.PROP_STRING],["iconclass",{value:"wi wi-file",PROP_STRING:n.PROP_STRING}],["iconheight",n.PROP_STRING],["iconmargin",n.PROP_STRING],["iconurl",n.PROP_STRING],["iconwidth",n.PROP_STRING],["modal",{value:!1,...n.PROP_BOOLEAN}],["name",n.PROP_STRING],["oktext",{value:"OK",...n.PROP_STRING}],["showactions",{value:!0,...n.PROP_BOOLEAN}],["tabindex",{value:0,...n.PROP_NUMBER}],["headinglevel",{value:"h4",...n.PROP_STRING}],["title",{value:"Page Content",...n.PROP_STRING}]]))}constructor(e,t,i,n,a,s){null==n&&(n=!1);const r=!o.toBoolean(n)||"static";super(e,y,{class:`app-dialog modal-dialog app-page-dialog ${i||""}`,backdrop:r,keyboard:!o.toBoolean(n)},s),this.app=t}getTemplateRef(){return this.dialogTemplate}onOk(e){this.invokeEventCallback("ok",{$event:e})}ngOnInit(){super.ngOnInit(),this.register(this.viewParent)}setPartialLoadListener(){const e=this.app.subscribe("partialLoaded",(()=>{const t=this.partialRef.nativeElement;let i;t&&(i=t.widget,this.Widgets=i.Widgets,this.Variables=i.Variables,this.Actions=i.Actions),e()}))}open(e){super.open(e),this.setPartialLoadListener()}static{this.\u0275fac=function(e){return new(e||w)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(u.App),l.\u0275\u0275injectAttribute("class"),l.\u0275\u0275injectAttribute("modal"),l.\u0275\u0275injectAttribute("closable"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:w,selectors:[["div","wmPartialDialog",""]],contentQueries:function(e,i,n){if(1&e&&(l.\u0275\u0275contentQuery(n,t.TemplateRef,5),l.\u0275\u0275contentQuery(n,h,5)),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.dialogContent=e.first),l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(i.partialRef=e.first)}},viewQuery:function(e,t){if(1&e&&l.\u0275\u0275viewQuery(m,7),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.dialogTemplate=e.first)}},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(w),n.provideAsDialogRef(w)]),l.\u0275\u0275InheritDefinitionFeature],attrs:g,decls:2,vars:0,consts:[["dialogTemplate",""],["wmDialogHeader","",3,"closable","iconclass","iconurl","iconwidth","iconheight","iconmargin","heading","headinglevel","titleid"],["wmDialogBody",""],[4,"ngTemplateOutlet"],["wmDialogFooter","",4,"ngIf"],["wmDialogFooter",""],["wmButton","","caption.bind","oktext","aria-label","Submit button",1,"btn-primary","ok-action",3,"click"]],template:function(e,t){1&e&&l.\u0275\u0275template(0,b,4,11,"ng-template",null,0,l.\u0275\u0275templateRefExtractor)},dependencies:[c.NgIf,c.NgTemplateOutlet,d.DialogBodyDirective,d.DialogFooterDirective,d.DialogHeaderComponent,p.ButtonComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(w,[{type:t.Component,args:[{selector:"div[wmPartialDialog]",providers:[n.provideAsWidgetRef(w),n.provideAsDialogRef(w)],template:'<ng-template #dialogTemplate>\n <div wmDialogHeader [closable]="closable"\n [iconclass]="iconclass"\n [iconurl]="iconurl"\n [iconwidth]="iconwidth"\n [iconheight]="iconheight"\n [iconmargin]="iconmargin"\n [heading]="title"\n [headinglevel]="headinglevel"\n [titleid]="titleId"\n ></div>\n <div wmDialogBody>\n <ng-container *ngTemplateOutlet="dialogContent"></ng-container>\n </div>\n <div wmDialogFooter *ngIf="showactions">\n <button wmButton class="btn-primary ok-action" caption.bind="oktext" aria-label="Submit button" (click)="onOk($event)"></button>\n </div>\n</ng-template>\n'}]}],(()=>[{type:l.Injector},{type:u.App},{type:void 0,decorators:[{type:t.Attribute,args:["class"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["modal"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["closable"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{dialogTemplate:[{type:t.ViewChild,args:["dialogTemplate",{static:!0}]}],dialogContent:[{type:t.ContentChild,args:[t.TemplateRef]}],partialRef:[{type:t.ContentChild,args:["partial"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(w,{className:"PartialDialogComponent",filePath:"partial-dialog.component.ts",lineNumber:31});const C=[w];class P{static{this.\u0275fac=function(e){return new(e||P)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:P})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(P,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],declarations:[...C],exports:[...C]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(P,{declarations:[w],imports:[i.CommonModule,a.DialogModule,s.InputModule,n.WmComponentsModule],exports:[w]}),e.PartialDialogComponent=w,e.PartialDialogModule=P})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.accordion={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.core,e._)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r=o(t),l=o(i),c=o(n),d=o(a);const p=["wmAccordionPane",""],u=["*"],h=e=>({active:e}),m={widgetType:"wm-accordionpane",hostClass:"app-accordion-panel panel"};class g extends n.StylableComponent{static{this.initializeProps=void n.register("wm-accordionpane",new Map([["active",n.PROP_BOOLEAN],["badgetype",{value:"default",...n.PROP_STRING}],["badgevalue",n.PROP_STRING],["class",n.PROP_STRING],["content",n.PROP_STRING],["dynamicPaneIndex",n.PROP_NUMBER],["iconclass",n.PROP_STRING],["isdefaultpane",n.PROP_BOOLEAN],["isdynamic",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["smoothscroll",{value:!1,...n.PROP_BOOLEAN}],["subheading",n.PROP_STRING],["tabindex",{value:0,...n.PROP_NUMBER}],["title",{value:"Title",...n.PROP_STRING}]]))}constructor(e,t,i){super(e,m,i),this.accordionRef=t,this.isActive=!1,this.$lazyLoad=a.noop,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.SHELL),a.removeAttr(this.nativeElement,"title")}expand(e){this.isActive||(this.isActive=!0,this.$lazyLoad(),this.redrawChildren(),this.invokeEventCallback("expand",{$event:e}),this.notifyParent(!0,e))}collapse(e){this.isActive&&(this.isActive=!1,this.invokeEventCallback("collapse",{$event:e}),this.notifyParent(!1,e))}remove(){const e=this.accordionRef.getPaneIndexByRef(this);this.isActive&&this.accordionRef.panes.length>1&&(this===this.accordionRef.panes.last?this.accordionRef.panes.toArray()[e-1].expand():this.accordionRef.panes.toArray()[e+1].expand());const t=this.accordionRef.panes.toArray();t.splice(this.accordionRef.getPaneIndexByRef(this),1),this.accordionRef.panes.reset([...t]),this.nativeElement.remove()}toggle(e){this.isActive?this.collapse(e):this.expand(e)}redrawChildren(){setTimeout((()=>{this.reDrawableComponents&&this.reDrawableComponents.forEach((e=>e.redraw()))}),100)}notifyParent(e,t){this.accordionRef.notifyChange(this,e,t)}onPropertyChange(e,t,i){"content"===e?this.isActive&&setTimeout((()=>this.$lazyLoad()),100):super.onPropertyChange(e,t,i)}ngAfterViewInit(){super.ngAfterViewInit(),n.styler(this.nativeElement.querySelector(".panel-body"),this,n.APPLY_STYLES_TYPE.INNER_SHELL),this.isdynamic&&this.accordionRef.registerDynamicPane(this)}static{this.\u0275fac=function(e){return new(e||g)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(v),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:g,selectors:[["div","wmAccordionPane",""]],contentQueries:function(e,t,i){if(1&e&&r.\u0275\u0275contentQuery(i,n.RedrawableDirective,5),2&e){let e;r.\u0275\u0275queryRefresh(e=r.\u0275\u0275loadQuery())&&(t.reDrawableComponents=e)}},exportAs:["wmAccordionPane"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(g)]),r.\u0275\u0275InheritDefinitionFeature],attrs:p,ngContentSelectors:u,decls:16,vars:22,consts:[[1,"panel-heading","clearfix",3,"click","ngClass"],[1,"panel-title"],["href","javascript:void(0);","role","button",1,"accordion-toggle"],[1,"pull-left"],[3,"hidden"],[1,"heading",3,"innerHTML"],[1,"description",3,"innerHTML"],[1,"panel-actions"],["type","button","aria-label","Collapse/Expand",1,"app-icon","panel-action","wi",3,"title"],[3,"ngClass"],["role","tabpanel","aria-labelledby","panel description",1,"panel-collapse","collapse",3,"ngClass"],["partial-container-target","",1,"panel-body",3,"wmSmoothscroll"]],template:function(e,t){1&e&&(r.\u0275\u0275projectionDef(),r.\u0275\u0275elementStart(0,"div",0),r.\u0275\u0275listener("click",(function(e){return t.toggle(e)})),r.\u0275\u0275elementStart(1,"h3",1)(2,"a",2)(3,"div",3),r.\u0275\u0275element(4,"i",4),r.\u0275\u0275elementEnd(),r.\u0275\u0275elementStart(5,"div",3),r.\u0275\u0275element(6,"div",5)(7,"div",6),r.\u0275\u0275elementEnd()()(),r.\u0275\u0275elementStart(8,"div",7)(9,"span"),r.\u0275\u0275text(10),r.\u0275\u0275elementEnd(),r.\u0275\u0275elementStart(11,"button",8),r.\u0275\u0275element(12,"i",9),r.\u0275\u0275elementEnd()()(),r.\u0275\u0275elementStart(13,"div",10)(14,"div",11),r.\u0275\u0275projection(15),r.\u0275\u0275elementEnd()()),2&e&&(r.\u0275\u0275property("ngClass",r.\u0275\u0275pureFunction1(20,h,t.isActive)),r.\u0275\u0275advance(2),r.\u0275\u0275attribute("aria-label",t.title)("aria-expanded",t.isActive),r.\u0275\u0275advance(2),r.\u0275\u0275classMapInterpolate1("app-icon panel-icon ",t.iconclass,""),r.\u0275\u0275property("hidden",!t.iconclass),r.\u0275\u0275advance(2),r.\u0275\u0275property("innerHTML",t.title,r.\u0275\u0275sanitizeHtml),r.\u0275\u0275advance(),r.\u0275\u0275property("innerHTML",t.subheading,r.\u0275\u0275sanitizeHtml),r.\u0275\u0275advance(2),r.\u0275\u0275classMapInterpolate1("label label-",t.badgetype,""),r.\u0275\u0275advance(),r.\u0275\u0275textInterpolate(t.badgevalue),r.\u0275\u0275advance(),r.\u0275\u0275propertyInterpolate2("title","",t.appLocale.LABEL_COLLAPSE,"/",t.appLocale.LABEL_EXPAND,""),r.\u0275\u0275attribute("aria-expanded",t.isActive),r.\u0275\u0275advance(),r.\u0275\u0275property("ngClass",t.isActive?"wi-minus":"wi-plus"),r.\u0275\u0275advance(),r.\u0275\u0275property("ngClass",t.isActive?"collapse in":"collapse"),r.\u0275\u0275advance(),r.\u0275\u0275property("wmSmoothscroll",t.smoothscroll))},dependencies:[l.NgClass,c.SmoothScrollDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(g,[{type:t.Component,args:[{selector:"div[wmAccordionPane]",providers:[n.provideAsWidgetRef(g)],exportAs:"wmAccordionPane",template:'<div class="panel-heading clearfix" (click)="toggle($event)" [ngClass]="{active: isActive}">\n <h3 class="panel-title">\n <a href="javascript:void(0);" role="button" class="accordion-toggle" [attr.aria-label]="title" [attr.aria-expanded]="isActive">\n <div class="pull-left">\n <i class="app-icon panel-icon {{iconclass}}" [hidden]="!iconclass"></i>\n </div>\n <div class="pull-left">\n <div class="heading" [innerHTML]="title"></div>\n <div class="description" [innerHTML]="subheading"></div>\n </div>\n </a>\n </h3>\n <div class="panel-actions">\n <span class="label label-{{badgetype}}">{{badgevalue}}</span>\n <button type="button" aria-label="Collapse/Expand" [attr.aria-expanded]="isActive"\n class="app-icon panel-action wi"\n title="{{appLocale.LABEL_COLLAPSE}}/{{appLocale.LABEL_EXPAND}}">\n <i [ngClass]="isActive ? \'wi-minus\' : \'wi-plus\'"></i>\n </button>\n </div>\n</div>\n<div class="panel-collapse collapse" role="tabpanel" aria-labelledby="panel description" [ngClass]="isActive ? \'collapse in\' : \'collapse\'">\n <div class="panel-body" [wmSmoothscroll]="smoothscroll" partial-container-target>\n <ng-content></ng-content>\n </div>\n</div>\n'}]}],(()=>[{type:r.Injector},{type:v},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{reDrawableComponents:[{type:t.ContentChildren,args:[n.RedrawableDirective,{descendants:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(g,{className:"AccordionPaneComponent",filePath:"accordion-pane/accordion-pane.component.ts",lineNumber:20});const f={widgetType:"wm-accordion",hostClass:"app-accordion panel-group"};class v extends n.StylableComponent{static{this.initializeProps=void n.register("wm-accordion",new Map([["class",n.PROP_STRING],["closeothers",{value:!0,...n.PROP_BOOLEAN}],["dataset",n.PROP_ANY],["defaultpaneindex",{value:0,...n.PROP_NUMBER}],["name",n.PROP_STRING],["nodatamessage",{value:"No Data Found",...n.PROP_STRING}],["show",{value:!0,...n.PROP_BOOLEAN}],["statehandler",{value:"none",...n.PROP_STRING}],["tabindex",{value:0,...n.PROP_NUMBER}],["type",n.PROP_STRING]]))}constructor(e,t,i,s){let o=a.noop;super(e,f,s,new Promise((e=>o=e))),this.promiseResolverFn=o,this.statePersistence=t,this.dynamicComponentProvider=i,this.dynamicPanes=[],this.dynamicPaneIndex=0,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.SCROLLABLE_CONTAINER)}notifyChange(e,t,i){if(t){this.closePanesExcept(e);const t=this.getPaneIndexByRef(e);this.activePane=e.getWidget(),i&&this.invokeEventCallback("change",{$event:i,newPaneIndex:t,oldPaneIndex:this.activePaneIndex}),this.activePaneIndex=t}const n=this.statePersistence.computeMode(this.statehandler);if(i&&n&&"none"!==n.toLowerCase()){const e=[];this.panes.forEach((function(t){t.isActive&&e.push(t.name)})),e.length?this.statePersistence.setWidgetState(this,e):this.statePersistence.removeWidgetState(this)}}registerDynamicPane(e){this.dynamicPanes.push(e);if(this.dynamicPanes.length===this.dynamicPaneIndex)for(let e=0;e<this.dynamicPanes.length;e++){const t=s.find(this.dynamicPanes,(t=>t.dynamicPaneIndex===e));s.find(this.panes.toArray(),t)||(this.panes.reset([...this.panes.toArray(),t]),t.active&&t.expand())}}addPane(e){s.isArray(e)||(e=[e]);const t=[];return s.forEach(e,((e,i)=>{const n=s.find(this.panes.toArray(),{name:e.name}),a=s.indexOf(t,e.name);if(n||a>0)return void console.warn(`The tab pane with name ${e.name} already exists`);let o="",r="";this.dynamicPaneIndex++;const l=e.name?e.name:`accordionpane${this.panes.toArray().length+(i+1)}`;t.push(l);const c=s.get(e,"params");s.forEach(e,((e,t)=>{"params"!==t&&(r=`${r} ${t}="${e}"`)})),s.forEach(c,((e,t)=>{o=`${o} <wm-param name="${t}" value="${e}"></wm-param>`}));const d=`<wm-accordionpane dynamicPaneIndex="${this.dynamicPaneIndex-1}" isdynamic="true" name="${l}" ${r}>\n ${o}\n </wm-accordionpane>`;this._dynamicContext||(this._dynamicContext=Object.create(this.viewParent),this._dynamicContext[this.getAttr("wmAccordian")]=this),this.dynamicComponentProvider.addComponent(this.getNativeElement(),d,this._dynamicContext,{inj:this.inj})})),t}removePane(e){const t=this.getPaneRefByName(e);t&&t.remove()}isValidPaneIndex(e){return e>=0&&e<this.panes.length}getPaneRefByName(e){return s.find(this.panes.toArray(),{name:e})}getPaneIndexByRef(e){return this.panes.toArray().indexOf(e)}getPaneRefByIndex(e){return this.panes.toArray()[e]}closePanesExcept(e){s.isNumber(e)&&(e=this.getPaneRefByIndex(e)),this.closeothers&&this.panes.forEach((t=>{t!==e&&t.collapse()}))}expandPane(e){this.closePanesExcept(e),this.panes.toArray()[e].expand()}onDataChange(e){this.fieldDefs=n.createArrayFrom(e)}onPropertyChange(e,t,i){if("defaultpaneindex"===e)this.defaultpaneindex=t;else if("dataset"===e)this.onDataChange(t);else if("statehandler"===e){const e=this.statePersistence.getWidgetState(this);let i=[];"none"!==t&&s.isArray(e)?e.forEach((e=>{i=this.panes.filter((function(t){return e===t.name})),i.length?this.expandPane(this.getPaneIndexByRef(i[0])):console.warn("Accordion pane name "+e+" in State is incorrect.")})):this.isValidPaneIndex(this.defaultpaneindex)&&this.expandPane(this.defaultpaneindex)}else super.onPropertyChange(e,t,i)}ngAfterContentInit(){super.ngAfterContentInit(),this.promiseResolverFn(),this.panes.changes.subscribe((e=>{this.panes.length&&this.expandPane(this.defaultpaneindex)}))}static{this.\u0275fac=function(e){return new(e||v)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(d.StatePersistence),r.\u0275\u0275directiveInject(d.DynamicComponentRefProvider),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:v,selectors:[["div","wmAccordion",""]],contentQueries:function(e,t,i){if(1&e&&r.\u0275\u0275contentQuery(i,g,4),2&e){let e;r.\u0275\u0275queryRefresh(e=r.\u0275\u0275loadQuery())&&(t.panes=e)}},exportAs:["wmAccordion"],features:[r.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(v)]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(v,[{type:t.Directive,args:[{selector:"div[wmAccordion]",exportAs:"wmAccordion",providers:[n.provideAsWidgetRef(v)]}]}],(()=>[{type:r.Injector},{type:d.StatePersistence},{type:d.DynamicComponentRefProvider},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{panes:[{type:t.ContentChildren,args:[g]}]});const b=[g,v];class y{static{this.\u0275fac=function(e){return new(e||y)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:y})}static{this.\u0275inj=r.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(y,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...b],exports:[...b]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&r.\u0275\u0275setNgModuleScope(y,{declarations:[g,v],imports:[i.CommonModule,n.WmComponentsModule],exports:[g,v]}),e.AccordionDirective=v,e.AccordionModule=y,e.AccordionPaneComponent=g})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.layoutgrid={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.core)}(this,(function(e,t,i,n,a){"use strict";function s(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var o=s(t),r=s(a);const l={widgetType:"wm-layoutgrid",hostClass:"app-grid-layout clearfix"};class c extends n.BaseContainerComponent{static{this.initializeProps=void n.register("wm-layoutgrid",new Map([["class",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t){super(e,l,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||c)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:c,selectors:[["","wmLayoutGrid",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(c)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(c,[{type:t.Directive,args:[{selector:"[wmLayoutGrid]",providers:[n.provideAsWidgetRef(c)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const d={widgetType:"wm-layout-grid-row",hostClass:"app-grid-row clearfix"};class p extends n.StylableComponent{static{this.initializeProps=void n.register("wm-layout-grid-row",new Map([["class",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t){super(e,d,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||p)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:p,selectors:[["","wmLayoutGridRow",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(p)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(p,[{type:t.Directive,args:[{selector:"[wmLayoutGridRow]",providers:[n.provideAsWidgetRef(p)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const u={widgetType:"wm-gridcolumn",hostClass:"app-grid-column"};class h extends n.StylableComponent{static{this.initializeProps=void n.register("wm-gridcolumn",new Map([["class",n.PROP_STRING],["name",n.PROP_STRING],["columnwidth",n.PROP_NUMBER],["show",{value:!0,...n.PROP_BOOLEAN}],["xscolumnwidth",n.PROP_NUMBER]]))}constructor(e,t,i,s){super(e,u,s),this.viewport=i,t&&a.setCSS(this.nativeElement,"overflow","auto"),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}onPropertyChange(e,t,i){const n=a.isMobileApp()?"xs":"sm";"xscolumnwidth"===e&&this.viewport.isMobileType&&a.isMobileApp()?a.switchClass(this.nativeElement,`col-${n}-${t}`,i?`col-${n}-${i}`:""):"columnwidth"===e?a.isMobileApp()&&(!this.viewport.isMobileType||this.getAttr("xscolumnwidth"))&&this.viewport.isMobileType||a.switchClass(this.nativeElement,`col-${n}-${t}`,i?`col-${n}-${i}`:""):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||h)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275injectAttribute("height"),o.\u0275\u0275directiveInject(r.Viewport),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:h,selectors:[["","wmLayoutGridColumn",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(h)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(h,[{type:t.Directive,args:[{selector:"[wmLayoutGridColumn]",providers:[n.provideAsWidgetRef(h)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Attribute,args:["height"]}]},{type:r.Viewport},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const m=[c,p,h];class g{static{this.\u0275fac=function(e){return new(e||g)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:g})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(g,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...m],exports:[...m]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(g,{declarations:[c,p,h],imports:[i.CommonModule,n.WmComponentsModule],exports:[c,p,h]}),e.LayoutGridColumnDirective=h,e.LayoutGridModule=g,e.LayoutGridRowDirective=p,e.LayoutgridDirective=c})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.linearlayout={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";var a,s,o=(a=t,s=Object.create(null),a&&Object.keys(a).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}})),s.default=a,Object.freeze(s));const r={widgetType:"wm-linearlayout",hostClass:"app-linear-layout clearfix"},l={left:"flex-start",right:"flex-end",center:"center"},c={top:"flex-start",bottom:"flex-end",center:"center"};class d extends n.BaseContainerComponent{static{this.initializeProps=void n.register("wm-linearlayout",new Map([["class",n.PROP_STRING],["direction",n.PROP_STRING],["horizontalalign",n.PROP_STRING],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["spacing",n.PROP_STRING],["verticalalign",n.PROP_STRING]]))}constructor(e,t){super(e,r,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}removeClass(e,t){e.removeClass(((e,i)=>i.split(" ").filter((e=>e.startsWith(t))).join(" ")))}changeDirection(e,t){this.removeClass(e,"app-linear-layout-direction"),e.addClass("app-linear-layout-direction-"+t),"row"===t||"row-reverse"===t?e.css("justify-content",l[this.horizontalalign]):"column"!==t&&"column-reverse"!==t||e.css("justify-content",c[this.verticalalign]),e.css("flex-direction",t)}onStyleChange(e,t,i){"horizontalalign"===e?"row"===this.direction||"row-reverse"===this.direction?this.$element.css("justify-content",l[t]):this.$element.css("align-items",l[t]):"verticalalign"===e&&("column"===this.direction||"column-reverse"===this.direction?this.$element.css("justify-content",c[t]):this.$element.css("align-items",c[t])),super.onStyleChange(e,t,i)}onPropertyChange(e,t,i){switch(e){case"direction":this.changeDirection(this.$element,t);break;case"horizontalalign":this.$element.css("justify-content",l[t]);break;case"verticalalign":this.$element.css("justify-content",c[t]);break;case"spacing":this.removeClass(this.$element,"app-linear-layout-spacing"),this.$element.addClass("app-linear-layout-spacing-"+t)}super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||d)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:d,selectors:[["","wmLinearLayout",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(d)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(d,[{type:t.Directive,args:[{selector:"[wmLinearLayout]",providers:[n.provideAsWidgetRef(d)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const p={widgetType:"wm-linearlayoutitem",hostClass:"app-linear-layout-item clearfix"};class u extends n.StylableComponent{static{this.initializeProps=void n.register("wm-linearlayoutitem",new Map([["class",n.PROP_STRING],["flexgrow",n.PROP_NUMBER],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t){super(e,p,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}onPropertyChange(e,t,i){if("flexgrow"===e)this.$element.css("flex-grow",t);super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||u)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:u,selectors:[["","wmLinearLayoutItem",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(u)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(u,[{type:t.Directive,args:[{selector:"[wmLinearLayoutItem]",providers:[n.provideAsWidgetRef(u)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const h=[d,u];class m{static{this.\u0275fac=function(e){return new(e||m)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:m})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(m,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...h],exports:[...h]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(m,{declarations:[d,u],imports:[i.CommonModule,n.WmComponentsModule],exports:[d,u]}),e.LinearLayoutDirective=d,e.LinearLayoutItemDirective=u,e.LinearLayoutModule=m})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("ngx-bootstrap/dropdown"),require("@wm/components/base"),require("@wm/components/navigation/menu"),require("@wm/core"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","ngx-bootstrap/dropdown","@wm/components/base","@wm/components/navigation/menu","@wm/core","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.panel={}),e.ng.core,e.ng.common,e.dropdown,e.wm.components.base,e.wm.components.navigation.menu,e.wm.core,e._)}(this,(function(e,t,i,n,a,s,o,r){"use strict";function l(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var c=l(t),d=l(i),p=l(n),u=l(a),h=l(s);const m=["panelHeading"],g=["panelContent"],f=["panelBody"],v=["wmPanel",""],b=["*",[["","wmPanelFooter",""]]],y=["*","[wmPanelFooter]"],w=e=>["panel-body",e],C=(e,t,i)=>({width:e,height:t,margin:i});function P(e,t){if(1&e&&c.\u0275\u0275element(0,"i"),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275classMapInterpolate1("app-icon panel-icon ",e.iconclass,"")}}function I(e,t){if(1&e&&(c.\u0275\u0275element(0,"img",23),c.\u0275\u0275pipe(1,"image")),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("src",c.\u0275\u0275pipeBind1(1,2,e.iconurl),c.\u0275\u0275sanitizeUrl)("ngStyle",c.\u0275\u0275pureFunction3(4,C,e.iconwidth,e.iconheight,e.iconmargin))}}function A(e,t){if(1&e&&(c.\u0275\u0275elementStart(0,"span",24),c.\u0275\u0275text(1),c.\u0275\u0275elementEnd()),2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275classMapInterpolate1("app-badge label label-",e.badgetype,""),c.\u0275\u0275advance(),c.\u0275\u0275textInterpolate(e.badgevalue)}}function E(e,t){1&e&&c.\u0275\u0275element(0,"div",25)}function O(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"button",26),c.\u0275\u0275listener("click",(function(){c.\u0275\u0275restoreView(e);const t=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(t.toggleHelp())})),c.\u0275\u0275element(1,"i",27),c.\u0275\u0275elementEnd()}if(2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("title",e.appLocale.LABEL_HELP)}}function T(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"button",28),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(i.toggle(t))})),c.\u0275\u0275element(1,"i",29),c.\u0275\u0275elementEnd()}if(2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("title",e.expandCollapseTitle),c.\u0275\u0275attribute("aria-expanded",!!e.expanded),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",e.expanded?"wi-minus":"wi-plus")}}function x(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"button",30),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(i.toggleFullScreen(t))})),c.\u0275\u0275element(1,"i",29),c.\u0275\u0275elementEnd()}if(2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275property("title",e.fullScreenTitle),c.\u0275\u0275advance(),c.\u0275\u0275property("ngClass",e.fullscreen?"wi-fullscreen-exit":"wi-fullscreen")}}function D(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"button",31),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext(2);return c.\u0275\u0275resetView(i.close(t))})),c.\u0275\u0275element(1,"i",32),c.\u0275\u0275elementEnd()}if(2&e){const e=c.\u0275\u0275nextContext(2);c.\u0275\u0275propertyInterpolate("title",e.appLocale.LABEL_CLOSE)}}function R(e,t){if(1&e){const e=c.\u0275\u0275getCurrentView();c.\u0275\u0275elementStart(0,"div",null,2)(2,"div",10)(3,"a",11),c.\u0275\u0275listener("click",(function(t){c.\u0275\u0275restoreView(e);const i=c.\u0275\u0275nextContext();return c.\u0275\u0275resetView(i.toggle(t))})),c.\u0275\u0275elementStart(4,"div",12),c.\u0275\u0275template(5,P,1,3,"i",3)(6,I,2,8,"img",13),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(7,"div",12),c.\u0275\u0275element(8,"div",14)(9,"div",15),c.\u0275\u0275elementEnd()(),c.\u0275\u0275elementStart(10,"div",16),c.\u0275\u0275template(11,A,2,4,"span",17)(12,E,1,0,"div",18)(13,O,2,1,"button",19)(14,T,2,3,"button",20)(15,x,2,2,"button",21)(16,D,2,1,"button",22),c.\u0275\u0275elementEnd()()()}if(2&e){const e=c.\u0275\u0275nextContext();c.\u0275\u0275classMapInterpolate1("panel-heading ",e.helpClass,""),c.\u0275\u0275advance(3),c.\u0275\u0275attribute("aria-expanded",!!e.expanded),c.\u0275\u0275advance(2),c.\u0275\u0275property("ngIf",e.iconclass&&!e.iconurl),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.iconurl),c.\u0275\u0275advance(2),c.\u0275\u0275property("innerHTML",e.title,c.\u0275\u0275sanitizeHtml)("title",e.title),c.\u0275\u0275advance(),c.\u0275\u0275property("innerHTML",e.subheading,c.\u0275\u0275sanitizeHtml),c.\u0275\u0275advance(2),c.\u0275\u0275property("ngIf",e.badgevalue),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.actions),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.helptext),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.collapsible),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.enablefullscreen),c.\u0275\u0275advance(),c.\u0275\u0275property("ngIf",e.closable)}}const S={widgetType:"wm-panel",hostClass:"app-panel panel"};class _ extends s.MenuAdapterComponent{static{this.initializeProps=void a.register("wm-panel",new Map([["actions",{}],["animation",a.PROP_STRING],["autoclose",a.PROP_STRING],["badgetype",{value:"default",...a.PROP_STRING}],["badgevalue",a.PROP_STRING],["class",a.PROP_STRING],["closable",a.PROP_BOOLEAN],["collapsible",a.PROP_BOOLEAN],["conditionalclass",a.PROP_ANY],["conditionalstyle",a.PROP_ANY],["content",a.PROP_STRING],["datafield",a.PROP_STRING],["enablefullscreen",a.PROP_BOOLEAN],["expanded",{value:!0,...a.PROP_BOOLEAN}],["fullscreen",a.PROP_BOOLEAN],["helptext",a.PROP_STRING],["iconclass",a.PROP_STRING],["iconheight",a.PROP_STRING],["iconmargin",a.PROP_STRING],["iconurl",a.PROP_STRING],["iconwidth",a.PROP_STRING],["itemaction",a.PROP_STRING],["itemchildren",a.PROP_STRING],["itemicon",a.PROP_STRING],["itemlabel",a.PROP_STRING],["itemlink",a.PROP_STRING],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["subheading",a.PROP_STRING],["title",a.PROP_STRING],["userrole",a.PROP_STRING],["hint",a.PROP_STRING]]))}get hideFooter(){return!this.hasFooter||!this.expanded}get showHeader(){return this.iconurl||this.iconclass||this.collapsible||this.actions||this.title||this.subheading||this.enablefullscreen}constructor(e,t){super(e,S,t),this.$lazyLoad=o.noop,this.expanded=!0,this.helpClass="",this.helptext="",a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.SHELL),this.fullScreenTitle=`${this.appLocale.LABEL_FULLSCREEN}/${this.appLocale.LABEL_EXITFULLSCREEN}`,this.expandCollapseTitle=`${this.appLocale.LABEL_COLLAPSE}/${this.appLocale.LABEL_EXPAND}`,o.removeAttr(this.nativeElement,"title")}toggle(e){this.collapsible&&(this.invokeEventCallback(this.expanded?"collapse":"expand",{$event:e}),this.expanded=!this.expanded,this.expanded&&(this.$lazyLoad(),this.reDrawChildren()))}expand(e){this.expanded||this.toggle(e)}collapse(e){this.expanded&&this.toggle(e)}toggleFullScreen(e){this.enablefullscreen&&(this.invokeEventCallback(this.fullscreen?"exitfullscreen":"fullscreen",{$event:e}),this.fullscreen=!this.fullscreen,o.toggleClass(this.nativeElement,"fullscreen",this.fullscreen),this.reDrawChildren()),this.computeDimensions()}toggleHelp(){this.helpClass=this.helpClass?"":"show-help",o.toggleClass(this.nativeElement,"show-help",!!this.helpClass),o.$appDigest()}menuActionItemClick(e,t){this.selectedAction=r.omit(t,["children","value"]),this.invokeEventCallback("actionsclick",{$event:e,$item:this.selectedAction})}close(e){this.getWidget().show=!1,this.invokeEventCallback("close",{$event:e})}computeDimensions(){const e=this.panelHeader.nativeElement.offsetHeight,t=this.nativeElement.querySelector(".panel-footer"),i=this.panelContent.nativeElement,n=window.innerHeight;let a;a=this.fullscreen?this.hideFooter?n-e:n-(t.offsetHeight+e):this.height||"",o.setCSS(i,"height",a)}reDrawChildren(){setTimeout((()=>{this.reDrawableComponents&&this.reDrawableComponents.forEach((e=>e.redraw()))}),100)}onPropertyChange(e,t,i){"expanded"===e?this.expanded=t:"content"===e?setTimeout((()=>{!this.expanded&&this.collapsible||this.$lazyLoad()}),20):super.onPropertyChange(e,t,i)}ngAfterContentInit(){super.ngAfterContentInit(),this.hasFooter=!!this.nativeElement.querySelector("[wmPanelFooter]"),a.styler(this.panelBody.nativeElement,this,a.APPLY_STYLES_TYPE.INNER_SHELL)}static{this.\u0275fac=function(e){return new(e||_)(c.\u0275\u0275directiveInject(c.Injector),c.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=c.\u0275\u0275defineComponent({type:_,selectors:[["","wmPanel",""]],contentQueries:function(e,t,i){if(1&e&&c.\u0275\u0275contentQuery(i,a.RedrawableDirective,5),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.reDrawableComponents=e)}},viewQuery:function(e,t){if(1&e&&(c.\u0275\u0275viewQuery(m,5),c.\u0275\u0275viewQuery(g,7),c.\u0275\u0275viewQuery(f,7)),2&e){let e;c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.panelHeader=e.first),c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.panelContent=e.first),c.\u0275\u0275queryRefresh(e=c.\u0275\u0275loadQuery())&&(t.panelBody=e.first)}},exportAs:["wmPanel"],features:[c.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(_)]),c.\u0275\u0275InheritDefinitionFeature],attrs:v,ngContentSelectors:y,decls:12,vars:12,consts:[["panelContent",""],["panelBody",""],["panelHeading",""],[3,"class",4,"ngIf"],[1,"panel-content",3,"hidden"],["partial-container-target","",3,"ngClass"],[1,"panel-help-message",3,"ngClass"],[1,"panel-help-header",3,"textContent"],[1,"panel-help-content",3,"innerHTML"],[1,"app-panel-footer","panel-footer","clearfix",3,"hidden"],[1,"panel-title"],["href","javascript:void(0)",1,"panel-toggle",3,"click"],[1,"pull-left"],["data-identifier","img","title","iconurl","alt","Panel icon","class","panel-image-icon",3,"src","ngStyle",4,"ngIf"],[1,"heading",3,"innerHTML","title"],[1,"description",3,"innerHTML"],[1,"panel-actions"],["aria-label","badge",3,"class",4,"ngIf"],["wmMenu","","aria-label","dropdown","dropdown","","type","anchor","class","panel-action","dataset.bind","actions","caption","","menuposition","down,left","iconclass","wi wi-more-vert","autoclose.bind","autoclose","datafield.bind","datafield","select.event","menuActionItemClick($event,$item)",4,"ngIf"],["type","button","aria-label","Help","class","app-icon panel-action wi",3,"title","click",4,"ngIf"],["type","button","aria-label","Collapse/Expand","class","app-icon wi panel-action",3,"title","click",4,"ngIf"],["type","button","aria-label","Fullscreen/Exit","class","app-icon panel-action wi",3,"title","click",4,"ngIf"],["type","button","aria-label","Close button","class","app-icon panel-action",3,"title","click",4,"ngIf"],["data-identifier","img","title","iconurl","alt","Panel icon",1,"panel-image-icon",3,"src","ngStyle"],["aria-label","badge"],["wmMenu","","aria-label","dropdown","dropdown","","type","anchor","dataset.bind","actions","caption","","menuposition","down,left","iconclass","wi wi-more-vert","autoclose.bind","autoclose","datafield.bind","datafield","select.event","menuActionItemClick($event,$item)",1,"panel-action"],["type","button","aria-label","Help",1,"app-icon","panel-action","wi",3,"click","title"],[1,"wi-question"],["type","button","aria-label","Collapse/Expand",1,"app-icon","wi","panel-action",3,"click","title"],[3,"ngClass"],["type","button","aria-label","Fullscreen/Exit",1,"app-icon","panel-action","wi",3,"click","title"],["type","button","aria-label","Close button",1,"app-icon","panel-action",3,"click","title"],[1,"wi","wi-close"]],template:function(e,t){1&e&&(c.\u0275\u0275projectionDef(b),c.\u0275\u0275template(0,R,17,15,"div",3),c.\u0275\u0275elementStart(1,"div",4,0)(3,"div",5,1),c.\u0275\u0275projection(5),c.\u0275\u0275elementEnd(),c.\u0275\u0275elementStart(6,"aside",6),c.\u0275\u0275element(7,"h5",7)(8,"div",8),c.\u0275\u0275pipe(9,"trustAs"),c.\u0275\u0275elementEnd()(),c.\u0275\u0275elementStart(10,"div",9),c.\u0275\u0275projection(11,1),c.\u0275\u0275elementEnd()),2&e&&(c.\u0275\u0275property("ngIf",t.showHeader),c.\u0275\u0275advance(),c.\u0275\u0275property("hidden",!t.expanded),c.\u0275\u0275advance(2),c.\u0275\u0275property("ngClass",c.\u0275\u0275pureFunction1(10,w,t.helpClass)),c.\u0275\u0275advance(3),c.\u0275\u0275property("ngClass",t.helpClass),c.\u0275\u0275advance(),c.\u0275\u0275property("textContent",t.appLocale.LABEL_HELP),c.\u0275\u0275advance(),c.\u0275\u0275property("innerHTML",c.\u0275\u0275pipeBind2(9,7,t.helptext,"html"),c.\u0275\u0275sanitizeHtml),c.\u0275\u0275advance(2),c.\u0275\u0275property("hidden",t.hideFooter))},dependencies:[p.BsDropdownDirective,d.NgClass,d.NgIf,d.NgStyle,h.MenuComponent,u.TextContentDirective,u.TrustAsPipe,u.ImagePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(_,[{type:t.Component,args:[{selector:"[wmPanel]",providers:[a.provideAsWidgetRef(_)],exportAs:"wmPanel",template:'<div class="panel-heading {{helpClass}}" *ngIf="showHeader" #panelHeading>\n <div class="panel-title">\n <a href="javascript:void(0)" class="panel-toggle" (click)="toggle($event)" [attr.aria-expanded]="!!expanded">\n <div class="pull-left">\n <i class="app-icon panel-icon {{iconclass}}" *ngIf="iconclass && !iconurl"></i>\n <img data-identifier="img" title="iconurl" alt="Panel icon" class="panel-image-icon"\n [src]="iconurl | image" *ngIf="iconurl"\n [ngStyle]="{width: iconwidth ,height: iconheight, margin: iconmargin}" />\n </div>\n <div class="pull-left">\n <div class="heading" [innerHTML]="title" [title]="title"></div>\n <div class="description" [innerHTML]="subheading"></div>\n </div>\n </a>\n <div class="panel-actions">\n <span *ngIf="badgevalue" aria-label="badge"\n class="app-badge label label-{{badgetype}}">{{badgevalue}}</span>\n <div wmMenu aria-label="dropdown" dropdown type="anchor" class="panel-action" dataset.bind="actions"\n *ngIf="actions" caption="" menuposition="down,left" iconclass="wi wi-more-vert"\n autoclose.bind="autoclose" datafield.bind="datafield" select.event="menuActionItemClick($event,$item)">\n </div>\n <button type="button" aria-label="Help" class="app-icon panel-action wi" [title]="appLocale.LABEL_HELP"\n *ngIf="helptext" (click)="toggleHelp()"><i class="wi-question"></i></button>\n <button type="button" aria-label="Collapse/Expand" class="app-icon wi panel-action" *ngIf="collapsible"\n [title]="expandCollapseTitle" (click)="toggle($event);" [attr.aria-expanded]="!!expanded"><i\n [ngClass]="expanded ? \'wi-minus\' : \'wi-plus\'"></i></button>\n <button type="button" aria-label="Fullscreen/Exit" class="app-icon panel-action wi" *ngIf="enablefullscreen"\n [title]="fullScreenTitle" (click)="toggleFullScreen($event);"><i\n [ngClass]="fullscreen ? \'wi-fullscreen-exit\' : \'wi-fullscreen\'"></i></button>\n <button type="button" aria-label="Close button" class="app-icon panel-action"\n title="{{appLocale.LABEL_CLOSE}}" *ngIf="closable" (click)="close($event)"><i\n class="wi wi-close"></i></button>\n </div>\n </div>\n</div>\n<div class="panel-content" [hidden]="!expanded" #panelContent>\n \x3c!-- Todo Bandhavya - implement smooth scroll --\x3e\n <div partial-container-target #panelBody [ngClass]="[\'panel-body\', helpClass]">\n <ng-content></ng-content>\n </div>\n <aside class="panel-help-message" [ngClass]="helpClass">\n <h5 class="panel-help-header" [textContent]="appLocale.LABEL_HELP"></h5>\n <div class="panel-help-content" [innerHTML]="helptext | trustAs : \'html\'"></div>\n </aside>\n</div>\n<div class="app-panel-footer panel-footer clearfix" [hidden]="hideFooter">\n <ng-content select="[wmPanelFooter]"></ng-content>\n</div>\n'}]}],(()=>[{type:c.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{panelHeader:[{type:t.ViewChild,args:["panelHeading",{static:!1}]}],panelContent:[{type:t.ViewChild,args:["panelContent",{static:!0}]}],panelBody:[{type:t.ViewChild,args:["panelBody",{static:!0}]}],reDrawableComponents:[{type:t.ContentChildren,args:[a.RedrawableDirective,{descendants:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassDebugInfo(_,{className:"PanelComponent",filePath:"panel.component.ts",lineNumber:31});const M=[_];class N{static{this.\u0275fac=function(e){return new(e||N)}}static{this.\u0275mod=c.\u0275\u0275defineNgModule({type:N})}static{this.\u0275inj=c.\u0275\u0275defineInjector({imports:[n.BsDropdownModule,i.CommonModule,s.MenuModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&c.\u0275setClassMetadata(N,[{type:t.NgModule,args:[{imports:[n.BsDropdownModule,i.CommonModule,s.MenuModule,a.WmComponentsModule],declarations:[...M],exports:[...M]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&c.\u0275\u0275setNgModuleScope(N,{declarations:[_],imports:[n.BsDropdownModule,i.CommonModule,s.MenuModule,a.WmComponentsModule],exports:[_]}),e.PanelComponent=_,e.PanelModule=N})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/core"),require("@swipey"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/core","@swipey","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.tabs={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.core,e.swipey,e._)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(i),d=r(n),p=r(a);class u extends s.SwipeAnimation{constructor(e){super(),this.tabs=e,this._$el=$(this.tabs.getNativeElement()).find(">.tab-content"),this.init(this._$el)}calibrate(){const e=this.tabs.getActiveTabIndex(),t=this._$el.find(">.tab-pane");let i=0,n=0,a=[];return t.each(((t,s)=>($(s).prop("hidden")||(n++,t===e&&(i=n-1),a.push(s)),!0))),{activeTabIndex:i,noOfTabs:n,panes:a}}bounds(){const{activeTabIndex:e,noOfTabs:t,panes:i}=this.calibrate(),n=$(i[0]).width(),a=-1*e*n;return this.clearContentFocus(),{strict:!1,lower:e===t-1?0:-n,center:a,upper:0===e?a:n}}context(){return{w:this._$el.width()}}animation(){return{transform:"translate3d(${{ ($D + $d)/w * 100 + '%'}}, 0, 0)","-webkit-transform":"translate3d(${{ ($D + $d)/w * 100 + '%'}}, 0, 0)"}}clearContentFocus(){let e=this._$el.find(">.tab-pane.active");e.length&&e.find(document.activeElement).length&&document.activeElement.blur()}transitionTabIntoView(){const{activeTabIndex:e,noOfTabs:t,panes:i}=this.calibrate(),n=100*t+"%";a.setCSSFromObj(this._$el[0],{maxWidth:n,width:n}),a.addClass(this.tabs.getNativeElement(),"has-transition");const s=100/t+"%";i.forEach((e=>{a.setCSS(e,"width",s)})),a.setCSS(this._$el[0],"transform",`translate3d(${-1*e/t*100}%, 0, 0)`)}onUpper(e){this.tabs.prev(e),a.$appDigest()}onLower(e){this.tabs.next(e),a.$appDigest()}threshold(){return 5}}const h=["wmTabPane",""],m=["*"],g={widgetType:"wm-tabpane",hostClass:"tab-pane"};class f extends n.StylableComponent{static{this.initializeProps=void n.register("wm-tabpane",new Map([["active",n.PROP_BOOLEAN],["badgevalue",n.PROP_STRING],["badgetype",{value:"default",...n.PROP_STRING}],["class",n.PROP_STRING],["content",n.PROP_STRING],["disabled",n.PROP_BOOLEAN],["dynamicPaneIndex",n.PROP_NUMBER],["heading",n.PROP_STRING],["isdefaulttab",n.PROP_STRING],["isdynamic",n.PROP_BOOLEAN],["name",n.PROP_STRING],["paneicon",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}],["smoothscroll",{value:!1,...n.PROP_BOOLEAN}],["title",{value:"Tab Title",...n.PROP_STRING}]]))}constructor(e,t,i,n,s){super(e,g,s),this.tabsRef=t,this.heading=i,this.title=n,this._isFirstLoad=!0,this._isOnLoadTriggered=!1,this.$lazyLoad=a.noop,this.isActive=!1,this.disabled=!1,a.removeAttr(this.nativeElement,"title")}invokeOnSelectCallback(e){this.invokeEventCallback("select",{$event:e})}select(e,t){this.isActive||this.disabled||(this.isActive=!0,this.$lazyLoad(),this.redrawChildren(),this.notifyParent(e,t))}tabpaneHeaderClick(e,t){this.invokeEventCallback("headerclick",{$event:e,paneIndex:t})}deselect(){this.isActive&&(this.isActive=!1,this.invokeEventCallback("deselect"))}remove(){this.isActive&&(this===this.tabsRef.panes.last?this.tabsRef.prev():this.tabsRef.next());const e=this.tabsRef.panes.toArray();e.splice(this.tabsRef.getPaneIndexByRef(this),1),this.tabsRef.panes.reset([...e]),this.nativeElement.remove(),this.tabsRef.$element.find(`.tab-header[data-paneid='${this.$element.attr("widget-id")}'] a`).remove()}redrawChildren(){setTimeout((()=>{this.reDrawableComponents&&this.reDrawableComponents.forEach((e=>e.redraw())),this._isOnLoadTriggered||this.content||(this.invokeEventCallback("load"),this._isOnLoadTriggered=!0)}),100)}notifyParent(e,t){this.tabsRef.notifyChange(this,e,t)}handleSwipeLeft(){this.tabsRef.next()}handleSwipeRight(){this.tabsRef.prev()}handleEvent(e,t,i,n){"select"!==t&&super.handleEvent(this.nativeElement,t,i,n)}onPropertyChange(e,t,i){"content"===e?this.isActive&&setTimeout((()=>this.$lazyLoad()),100):"show"===e?(this.nativeElement.hidden=!t,this._isFirstLoad?this.tabsRef.selectDefaultPaneByIndex(this.tabsRef.defaultpaneindex):!t&&this.isActive?this.tabsRef.next():!t&&this.isActive||this.tabsRef.tabsAnimator?.transitionTabIntoView(),this._isFirstLoad=!1):super.onPropertyChange(e,t,i)}ngOnInit(){super.ngOnInit(),this.title=this.title||this.heading}ngAfterViewInit(){n.styler(this.nativeElement.querySelector(".tab-body"),this,n.APPLY_STYLES_TYPE.CONTAINER),super.ngAfterViewInit(),this.isdynamic&&this.tabsRef.registerDynamicTab(this)}static{this.\u0275fac=function(e){return new(e||f)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(S),l.\u0275\u0275injectAttribute("heading"),l.\u0275\u0275injectAttribute("title"),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:f,selectors:[["div","wmTabPane",""]],contentQueries:function(e,t,i){if(1&e&&l.\u0275\u0275contentQuery(i,n.RedrawableDirective,5),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.reDrawableComponents=e)}},hostVars:4,hostBindings:function(e,t){2&e&&l.\u0275\u0275classProp("active",t.isActive)("disabled",t.disabled)},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(f)]),l.\u0275\u0275InheritDefinitionFeature],attrs:h,ngContentSelectors:m,decls:2,vars:1,consts:[["partial-container-target","",1,"tab-body",3,"wmSmoothscroll"]],template:function(e,t){1&e&&(l.\u0275\u0275projectionDef(),l.\u0275\u0275elementStart(0,"div",0),l.\u0275\u0275projection(1),l.\u0275\u0275elementEnd()),2&e&&l.\u0275\u0275property("wmSmoothscroll",t.smoothscroll)},dependencies:[d.SmoothScrollDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(f,[{type:t.Component,args:[{selector:"div[wmTabPane]",providers:[n.provideAsWidgetRef(f)],template:'<div class="tab-body" partial-container-target [wmSmoothscroll]="smoothscroll">\n <ng-content></ng-content>\n</div>'}]}],(()=>[{type:l.Injector},{type:S},{type:void 0,decorators:[{type:t.Attribute,args:["heading"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["title"]}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{isActive:[{type:t.HostBinding,args:["class.active"]}],disabled:[{type:t.HostBinding,args:["class.disabled"]}],reDrawableComponents:[{type:t.ContentChildren,args:[n.RedrawableDirective,{descendants:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(f,{className:"TabPaneComponent",filePath:"tab-pane/tab-pane.component.ts",lineNumber:31});const v=["wmTabs",""],b=["*",[["div","wmRepeatTemplate",""]]],y=["*","div[wmRepeatTemplate]"],w=(e,t)=>({"nav-stacked":e,"nav-justified":t}),C=(e,t)=>({active:e,disabled:t}),P=e=>["app-icon",e],I=(e,t)=>({"tab-stacked":e,"tab-justified":t});function A(e,t){if(1&e&&l.\u0275\u0275element(0,"i",8),2&e){const e=l.\u0275\u0275nextContext().$implicit;l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction1(1,P,e.paneicon))}}function E(e,t){if(1&e&&l.\u0275\u0275element(0,"span",6),2&e){const e=l.\u0275\u0275nextContext().$implicit;l.\u0275\u0275classMapInterpolate1("label label-",e.badgetype,""),l.\u0275\u0275property("textContent",e.badgevalue)}}function O(e,t){if(1&e){const e=l.\u0275\u0275getCurrentView();l.\u0275\u0275elementStart(0,"li",3)(1,"a",4),l.\u0275\u0275listener("click",(function(t){const i=l.\u0275\u0275restoreView(e),n=i.$implicit,a=i.index;return n.select(t),l.\u0275\u0275resetView(n.tabpaneHeaderClick(t,a))}))("keydown",(function(t){l.\u0275\u0275restoreView(e);const i=l.\u0275\u0275nextContext();return l.\u0275\u0275resetView(i.onkeydown(t))})),l.\u0275\u0275template(2,A,1,3,"i",5),l.\u0275\u0275element(3,"span",6),l.\u0275\u0275template(4,E,1,4,"span",7),l.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit;l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction2(10,C,e.isActive,e.disabled))("hidden",!e.show),l.\u0275\u0275attribute("data-paneid",e.widgetId),l.\u0275\u0275advance(),l.\u0275\u0275property("tabindex",e.isActive?"0":"-1"),l.\u0275\u0275attribute("aria-label",e.title)("title",e.title)("aria-selected",e.isActive),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.paneicon),l.\u0275\u0275advance(),l.\u0275\u0275property("textContent",e.title),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.badgevalue)}}function T(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",9),l.\u0275\u0275projection(1,0,["ngProjectAs","div[wmTabPane]",5,["div","wmTabPane",""]]),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction2(1,I,e.vertical,e.justified))}}function x(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div"),l.\u0275\u0275text(1),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext(2);l.\u0275\u0275advance(),l.\u0275\u0275textInterpolate(e.nodatamessage)}}function D(e,t){if(1&e&&(l.\u0275\u0275elementStart(0,"div",9),l.\u0275\u0275template(1,x,2,1,"div",10),l.\u0275\u0275projection(2,1),l.\u0275\u0275elementEnd()),2&e){const e=l.\u0275\u0275nextContext();l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction2(2,I,e.vertical,e.justified)),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf",e.fieldDefs&&!e.fieldDefs.length)}}const R={widgetType:"wm-tabs",hostClass:"app-tabs clearfix"};class S extends n.StylableComponent{static{this.initializeProps=(()=>{const e=new Map([["class",n.PROP_STRING],["dataset",n.PROP_ANY],["defaultpaneindex",{value:0,...n.PROP_NUMBER}],["justified",n.PROP_BOOLEAN],["tabsposition",{value:"top",...n.PROP_STRING}],["name",n.PROP_STRING],["nodatamessage",{value:"No Data Found",...n.PROP_STRING}],["show",{value:!0,...n.PROP_BOOLEAN}],["statehandler",{value:"none",...n.PROP_STRING}],["transition",n.PROP_STRING],["type",n.PROP_STRING]]);a.isMobileApp()&&e.set("transition",{value:"slide",...n.PROP_STRING}),n.register("wm-tabs",e)})()}constructor(e,t,i,s,o,r){let l=a.noop;super(e,R,r,new Promise((e=>l=e))),this.transition=i,this.tabsposition=s,this.statePersistence=o,this.dynamicComponentProvider=t,this.dynamicTabs=[],this.dynamicPaneIndex=0,this.promiseResolverFn=l,n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}animateIn(e){const t=$(e);t.siblings(".active").removeClass("active"),t.addClass("active");const i=this.nativeElement.querySelector("ul.nav.nav-tabs"),n=t.prev();n.length?i.scrollLeft=n[0].offsetLeft:i.scrollLeft=0}registerDynamicTab(e){this.dynamicTabs.push(e);if(this.dynamicTabs.length===this.dynamicPaneIndex)for(let e=0;e<this.dynamicTabs.length;e++){const t=o.find(this.dynamicTabs,(t=>t.dynamicPaneIndex===e));o.find(this.panes.toArray(),t)||(this.panes.reset([...this.panes.toArray(),t]),t.active&&setTimeout((()=>{t.select()}),20))}}addPane(e){o.isArray(e)||(e=[e]);const t=[];return o.forEach(e,((e,i)=>{const n=o.find(this.panes.toArray(),{name:e.name}),a=o.indexOf(t,e.name);if(n||a>0)return void console.warn(`The tab pane with name ${e.name} already exists`);let s="",r="";this.dynamicPaneIndex++;const l=e.name?e.name:`tabpane${this.panes.toArray().length+(i+1)}`;t.push(l);const c=o.get(e,"params");o.forEach(e,((e,t)=>{"params"!==t&&(r=`${r} ${t}="${e}"`)})),o.forEach(c,((e,t)=>{s=`${s} <wm-param name="${t}" value="${e}"></wm-param>`}));const d=`<wm-tabpane dynamicPaneIndex="${this.dynamicPaneIndex-1}" isdynamic="true" name="${l}" ${r}>\n ${s}\n </wm-tabpane>`;this._dynamicContext||(this._dynamicContext=Object.create(this.viewParent),this._dynamicContext[this.getAttr("wmTab")]=this),this.dynamicComponentProvider.addComponent(this.getNativeElement().querySelector(".tab-content"),d,this._dynamicContext,{inj:this.inj})})),t}removePane(e){const t=this.getPaneRefByName(e);t&&t.remove()}notifyChange(e,t,i){if(!this.isSelectableTab(e))return;let n;o.isEmpty(this.activeTab)||this.activeTab.deselect(),this.activeTab=e.getWidget();const a=this.getPaneIndexByRef(e),s=this.statePersistence.computeMode(this.statehandler);if(!this.isPageLoadCall&&s&&"none"!==s.toLowerCase()?this.statePersistence.setWidgetState(this,this.activeTab.name):(this.defaultpaneindex=this.getPaneIndexByRef(e),this.isPageLoadCall=!1),e.invokeOnSelectCallback(t),t&&this.invokeEventCallback("change",{$event:t,newPaneIndex:a,oldPaneIndex:this._oldPaneIndex||0}),this._oldPaneIndex=a,t&&(n=$(t.target).closest("li.tab-header")),!t||!n||!n.length){n=this.nativeElement.querySelector(`li[data-paneid=${e.widgetId}]`);!!!$(n).closest(".app-tabs").parent().closest(".app-tabs").length&&i&&$(n).children().focus()}this.animateIn(n),this.canSlide()&&(this.tabsAnimator||(this.tabsAnimator=new u(this),this.tabsAnimator.setGesturesEnabled(this.canSlide())),this.tabsAnimator.transitionTabIntoView())}goToTab(e){if(this.isValidPaneIndex(e-1)){this.getPaneRefByIndex(e-1).select()}}getPaneIndexByRef(e){return this.panes.toArray().indexOf(e)}getActiveTabIndex(){return o.findIndex(this.panes.toArray(),{isActive:!0})}isValidPaneIndex(e){return e>=0&&e<this.panes.length}getPaneRefByIndex(e){return this.panes.toArray()[e]}getPaneRefByName(e){return o.find(this.panes.toArray(),{name:e})}isSelectableTab(e){return e.show&&!e.disabled}canSlide(){return"slide"===this.transition&&!this.vertical}getSelectableTabAfterIndex(e){for(let t=e+1;t<this.panes.length;t++){const e=this.getPaneRefByIndex(t);if(this.isSelectableTab(e))return e}if(e===this.panes.length-1){const e=this.getPaneRefByIndex(0);if(this.isSelectableTab(e))return e}}getSelectableTabBeforeIndex(e){for(let t=e-1;t>=0;t--){const e=this.getPaneRefByIndex(t);if(this.isSelectableTab(e))return e}if(0===e){const e=this.getPaneRefByIndex(this.panes.length-1);if(this.isSelectableTab(e))return e}}next(e,t){const i=this.getSelectableTabAfterIndex(this.getActiveTabIndex());i&&i.select(e,t)}prev(e,t){const i=this.getSelectableTabBeforeIndex(this.getActiveTabIndex());i&&i.select(e,t)}selectDefaultPaneByIndex(e){if(!this.isValidPaneIndex(e))return;let t=this.getPaneRefByIndex(e);this.isSelectableTab(t)||(t=this.getSelectableTabAfterIndex(0)),t&&t.select()}setTabsPosition(){const e=this.nativeElement.children[0];this.vertical="left"===this.tabsposition||"right"===this.tabsposition,a.removeClass(this.nativeElement,"inverted"),"bottom"!==this.tabsposition&&"right"!==this.tabsposition||(a.appendNode(e,this.nativeElement),a.addClass(this.nativeElement,"inverted"))}onDataChange(e){this.fieldDefs=n.createArrayFrom(e),setTimeout((()=>this.selectDefaultPaneByIndex(this.defaultpaneindex||0)))}onPropertyChange(e,t,i){if("defaultpaneindex"===e)this.defaultpaneindex=t;else if("dataset"===e)this.onDataChange(t);else if("statehandler"===e){this.isPageLoadCall=!0;const e=this.statePersistence.getWidgetState(this);if("none"!==t&&e){const t=this.panes.filter((function(t){return e===t.name}));if(t.length){const e=this.getPaneIndexByRef(t[0]);setTimeout((()=>this.selectDefaultPaneByIndex(e)),20)}else console.warn("Tab pane name "+e+" in State is incorrect. Falling back to the default pane"),setTimeout((()=>this.selectDefaultPaneByIndex(this.defaultpaneindex||0)),20)}else setTimeout((()=>this.selectDefaultPaneByIndex(this.defaultpaneindex||0)),20)}else super.onPropertyChange(e,t,i)}registerTabsScroll(){setTimeout((()=>{const e=this.$element.find("> ul");let t;t=e.children().last().position(),t&&t.left>e.width()&&e.on("mousewheel",(t=>{const i=e[0].scrollLeft,n=-1*t.originalEvent.wheelDelta;t.stopPropagation(),t.preventDefault(),e.animate({scrollLeft:i+n},{duration:10})}))}))}onkeydown(e){switch(e.key){case"ArrowLeft":case"ArrowUp":this.prev(null,!0),e.preventDefault();break;case"ArrowRight":case"ArrowDown":this.next(null,!0),e.preventDefault()}}ngAfterContentInit(){this.promiseResolverFn(),super.ngAfterContentInit(),this.setTabsPosition(),this.panes.changes.subscribe((e=>{this.panes.length&&this.selectDefaultPaneByIndex(this.defaultpaneindex||0)}))}ngAfterViewInit(){super.ngAfterViewInit(),this.registerTabsScroll()}static{this.\u0275fac=function(e){return new(e||S)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(p.DynamicComponentRefProvider),l.\u0275\u0275injectAttribute("transition"),l.\u0275\u0275injectAttribute("tabsposition"),l.\u0275\u0275directiveInject(p.StatePersistence),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:S,selectors:[["div","wmTabs",""]],contentQueries:function(e,t,i){if(1&e&&l.\u0275\u0275contentQuery(i,f,4),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.panes=e)}},exportAs:["wmTabs"],features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(S)]),l.\u0275\u0275InheritDefinitionFeature],attrs:v,ngContentSelectors:y,decls:4,vars:7,consts:[["role","tablist",1,"nav","nav-tabs",3,"ngClass"],["class","tab-header","role","presentation",3,"ngClass","hidden",4,"ngFor","ngForOf"],["class","tab-content",3,"ngClass",4,"ngIf"],["role","presentation",1,"tab-header",3,"ngClass","hidden"],["href","javascript:void(0);","role","tab",1,"tab-heading",3,"click","keydown","tabindex"],[3,"ngClass",4,"ngIf"],[3,"textContent"],[3,"class","textContent",4,"ngIf"],[3,"ngClass"],[1,"tab-content",3,"ngClass"],[4,"ngIf"]],template:function(e,t){1&e&&(l.\u0275\u0275projectionDef(b),l.\u0275\u0275elementStart(0,"ul",0),l.\u0275\u0275template(1,O,5,13,"li",1),l.\u0275\u0275elementEnd(),l.\u0275\u0275template(2,T,2,4,"div",2)(3,D,3,5,"div",2)),2&e&&(l.\u0275\u0275property("ngClass",l.\u0275\u0275pureFunction2(4,w,t.vertical,t.justified)),l.\u0275\u0275advance(),l.\u0275\u0275property("ngForOf",t.panes),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","dynamic"!==t.type),l.\u0275\u0275advance(),l.\u0275\u0275property("ngIf","dynamic"===t.type))},dependencies:[c.NgClass,c.NgForOf,c.NgIf,d.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(S,[{type:t.Component,args:[{selector:"div[wmTabs]",exportAs:"wmTabs",providers:[n.provideAsWidgetRef(S)],template:'<ul class="nav nav-tabs" [ngClass]="{\'nav-stacked\': vertical, \'nav-justified\': justified}" role="tablist">\n <li class="tab-header" *ngFor="let pane of panes; let i=index;" [attr.data-paneid]="pane.widgetId" [ngClass]="{\'active\': pane.isActive, \'disabled\': pane.disabled}"\n [hidden]="!pane.show" role="presentation">\n <a class="tab-heading" href="javascript:void(0);" [attr.aria-label]="pane.title" [attr.title]="pane.title" [tabindex]="pane.isActive ? \'0\' : \'-1\'"\n [attr.aria-selected]="pane.isActive" role="tab" (click)="pane.select($event); pane.tabpaneHeaderClick($event, i);" (keydown)="onkeydown($event)">\n <i [ngClass]="[\'app-icon\', pane.paneicon]" *ngIf="pane.paneicon"></i>\n <span [textContent]="pane.title"></span>\n <span *ngIf="pane.badgevalue" class="label label-{{pane.badgetype}}" [textContent]="pane.badgevalue"></span>\n </a>\n </li>\n</ul>\n<div class="tab-content" *ngIf="type !== \'dynamic\'" [ngClass]="{\'tab-stacked\': vertical, \'tab-justified\': justified}">\n <ng-content ngProjectAs="div[wmTabPane]"></ng-content>\n</div>\n<div class="tab-content" *ngIf="type === \'dynamic\'" [ngClass]="{\'tab-stacked\': vertical, \'tab-justified\': justified}">\n <div *ngIf="fieldDefs && !fieldDefs.length">{{nodatamessage}}</div>\n <ng-content select="div[wmRepeatTemplate]"></ng-content>\n</div>\n'}]}],(()=>[{type:l.Injector},{type:p.DynamicComponentRefProvider},{type:void 0,decorators:[{type:t.Attribute,args:["transition"]}]},{type:void 0,decorators:[{type:t.Attribute,args:["tabsposition"]}]},{type:p.StatePersistence},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{panes:[{type:t.ContentChildren,args:[f]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(S,{className:"TabsComponent",filePath:"tabs.component.ts",lineNumber:51});const _=[f,S];class M{static{this.\u0275fac=function(e){return new(e||M)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:M})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(M,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[..._],exports:[..._]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(M,{declarations:[f,S],imports:[i.CommonModule,n.WmComponentsModule],exports:[f,S]}),e.TabPaneComponent=f,e.TabsComponent=S,e.TabsModule=M})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.tile={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";var a,s,o=(a=t,s=Object.create(null),a&&Object.keys(a).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}})),s.default=a,Object.freeze(s));const r={widgetType:"wm-tile",hostClass:"app-tile"};class l extends n.StylableComponent{static{this.initializeProps=void n.register("wm-tile",new Map([["animation",n.PROP_STRING],["class",n.PROP_STRING],["conditionalclass",n.PROP_ANY],["conditionalstyle",n.PROP_ANY],["name",n.PROP_STRING],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t){super(e,r,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}static{this.\u0275fac=function(e){return new(e||l)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:l,selectors:[["","wmTile",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(l)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(l,[{type:t.Directive,args:[{selector:"[wmTile]",providers:[n.provideAsWidgetRef(l)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const c=[l];class d{static{this.\u0275fac=function(e){return new(e||d)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:d})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(d,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...c],exports:[...c]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(d,{declarations:[l],imports:[i.CommonModule,n.WmComponentsModule],exports:[l]}),e.TileDirective=l,e.TileModule=d})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@wm/components/base"),require("@wm/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms","@wm/components/base","@wm/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.containers=e.wm.components.containers||{},e.wm.components.containers.wizard={}),e.ng.core,e.ng.common,e.ng.forms,e.wm.components.base,e.wm.core)}(this,(function(e,t,i,n,a,s){"use strict";function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var r=o(t),l=o(i),c=o(n),d=o(a);const p={widgetType:"wm-wizardstep",hostClass:"app-wizard-step-content"};class u extends a.BaseComponent{static{this.initializeProps=void a.register("wm-wizardstep",new Map([["class",a.PROP_STRING],["enableskip",{value:!1,...a.PROP_BOOLEAN}],["iconclass",{value:"wi wi-person",...a.PROP_STRING}],["doneiconclass",{value:"wi wi-done",...a.PROP_STRING}],["name",a.PROP_STRING],["show",{value:!0,...a.PROP_BOOLEAN}],["title",{value:"Step Title",...a.PROP_STRING}],["subtitle",a.PROP_STRING]]))}get isCurrent(){return this.active}get isValid(){return(this.ngForm.valid||this.ngForm.disabled)&&this.areEmbeddedFormsValid()}areEmbeddedFormsValid(){let e=this.getAllEmbeddedForms();for(let t of e)if(t.widget&&!t.widget.ngform.valid)return!1;return!0}getAllEmbeddedForms(){return this.$element.find("form")}get enableNext(){return!this.disablenext}get enableDone(){return!this.disabledone}get enablePrev(){return!this.disableprevious}set active(e){const t=this.active;this.status=1,e&&!t&&this.redrawChildren()}get active(){return 1===this.status}set done(e){e&&(this.status=3)}get done(){return 3===this.status}set disabled(e){e&&(this.status=2)}get disabled(){return 2===this.status}constructor(e,t,i){super(e,p,i),this.ngForm=t,this.isDone=!1,this.status=2,this.wizardComponent=this.inj.get(M)}invokeNextCB(e){return this.invokeEventCallback("next",{currentStep:this,stepIndex:e})}invokePrevCB(e){return this.invokeEventCallback("prev",{currentStep:this,stepIndex:e})}invokeSkipCB(e){return this.invokeEventCallback("skip",{currentStep:this,stepIndex:e})}redrawChildren(){setTimeout((()=>{this.reDrawableComponents&&this.reDrawableComponents.forEach((e=>e.redraw()));const e=this.wizardComponent.getCurrentStepIndex();this.invokeEventCallback("load",{stepIndex:e})}),100)}static{this.\u0275fac=function(e){return new(e||u)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject(c.NgForm,2),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=r.\u0275\u0275defineDirective({type:u,selectors:[["form","wmWizardStep",""]],contentQueries:function(e,t,i){if(1&e&&r.\u0275\u0275contentQuery(i,a.RedrawableDirective,5),2&e){let e;r.\u0275\u0275queryRefresh(e=r.\u0275\u0275loadQuery())&&(t.reDrawableComponents=e)}},hostVars:2,hostBindings:function(e,t){2&e&&r.\u0275\u0275classProp("current",t.isCurrent)},exportAs:["wmWizardStep"],features:[r.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(u),n.NgForm]),r.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(u,[{type:t.Directive,args:[{selector:"form[wmWizardStep]",providers:[a.provideAsWidgetRef(u),n.NgForm],exportAs:"wmWizardStep"}]}],(()=>[{type:r.Injector},{type:c.NgForm,decorators:[{type:t.Self}]},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{reDrawableComponents:[{type:t.ContentChildren,args:[a.RedrawableDirective,{descendants:!0}]}],isCurrent:[{type:t.HostBinding,args:["class.current"]}]});const h=["wmWizard",""],m=["*"],g=(e,t,i)=>({active:e,current:t,disabled:i}),f=e=>({"title-center-align":e});function v(e,t){1&e&&r.\u0275\u0275element(0,"span",22)}function b(e,t){if(1&e&&(r.\u0275\u0275elementStart(0,"span",23),r.\u0275\u0275text(1),r.\u0275\u0275elementEnd()),2&e){const e=r.\u0275\u0275nextContext().index;r.\u0275\u0275advance(),r.\u0275\u0275textInterpolate(e+1)}}function y(e,t){1&e&&r.\u0275\u0275element(0,"i",24)}function w(e,t){1&e&&r.\u0275\u0275element(0,"i",25)}function C(e,t){if(1&e&&r.\u0275\u0275element(0,"i"),2&e){const e=r.\u0275\u0275nextContext().$implicit;r.\u0275\u0275classMapInterpolate1("app-icon ",e.iconclass,"")}}function P(e,t){if(1&e&&r.\u0275\u0275element(0,"i"),2&e){const e=r.\u0275\u0275nextContext().$implicit;r.\u0275\u0275classMapInterpolate1("app-icon ",e.doneiconclass,"")}}function I(e,t){if(1&e&&(r.\u0275\u0275elementStart(0,"span"),r.\u0275\u0275text(1),r.\u0275\u0275elementEnd()),2&e){const e=r.\u0275\u0275nextContext().index;r.\u0275\u0275advance(),r.\u0275\u0275textInterpolate("0"+(e+1))}}function A(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"span",26),r.\u0275\u0275element(1,"span",20),r.\u0275\u0275elementStart(2,"a",27),r.\u0275\u0275listener("click",(function(){r.\u0275\u0275restoreView(e);const t=r.\u0275\u0275nextContext(2);return r.\u0275\u0275resetView(t.readMoreSubtitle())})),r.\u0275\u0275text(3,"more"),r.\u0275\u0275elementEnd()()}if(2&e){const e=r.\u0275\u0275nextContext().$implicit;r.\u0275\u0275attribute("title",e.subtitle),r.\u0275\u0275advance(),r.\u0275\u0275property("textContent",e.subtitle)}}function E(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"li",10),r.\u0275\u0275listener("click",(function(t){const i=r.\u0275\u0275restoreView(e).$implicit,n=r.\u0275\u0275nextContext();return r.\u0275\u0275resetView(n.onWizardHeaderClick(t,i))})),r.\u0275\u0275elementStart(1,"a",11),r.\u0275\u0275template(2,v,1,0,"span",12),r.\u0275\u0275elementStart(3,"span",13),r.\u0275\u0275template(4,b,2,1,"span",14)(5,y,1,0,"i",15)(6,w,1,0,"i",16)(7,C,1,3,"i",17)(8,P,1,3,"i",17),r.\u0275\u0275elementEnd(),r.\u0275\u0275elementStart(9,"span",18),r.\u0275\u0275template(10,I,2,1,"span",19),r.\u0275\u0275element(11,"span",20),r.\u0275\u0275elementEnd(),r.\u0275\u0275template(12,A,4,2,"span",21),r.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit,i=r.\u0275\u0275nextContext();r.\u0275\u0275property("hidden",!e.show)("ngClass",r.\u0275\u0275pureFunction3(14,g,e.done,e.active,e.disabled)),r.\u0275\u0275advance(),r.\u0275\u0275property("ngClass",r.\u0275\u0275pureFunction1(18,f,i.class&&i.class.includes("classic")&&!e.subtitle)),r.\u0275\u0275attribute("aria-label",e.title)("title",e.title),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",i.class&&i.class.includes("classic")),r.\u0275\u0275advance(2),r.\u0275\u0275property("ngIf",i.class&&i.class.includes("number")&&!e.isDone),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",i.class&&(i.class.includes("dottedstepper")||i.class.includes("text-inline")&&!i.class.includes("iconstepper"))&&!e.isDone),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",i.class&&(i.class.includes("dottedstepper")||i.class.includes("number"))&&e.isDone),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",i.class&&i.class.includes("iconstepper")&&(e.iconclass&&!e.isDone||e.iconclass&&e.isDone&&""===e.doneiconclass)),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",e.doneiconclass&&e.isDone&&i.class&&i.class.includes("iconstepper")),r.\u0275\u0275advance(2),r.\u0275\u0275property("ngIf",i.class&&i.class.includes("text-inline")),r.\u0275\u0275advance(),r.\u0275\u0275property("textContent",e.title),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",e.subtitle)}}function O(e,t){1&e&&r.\u0275\u0275element(0,"p",28)}function T(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"a",29),r.\u0275\u0275listener("click",(function(){r.\u0275\u0275restoreView(e);const t=r.\u0275\u0275nextContext();return r.\u0275\u0275resetView(t.skip())})),r.\u0275\u0275text(1,"Skip \xbb"),r.\u0275\u0275elementEnd()}if(2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275propertyInterpolate1("name","skipStep_",e.name,"")}}function x(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"button",30),r.\u0275\u0275listener("click",(function(){r.\u0275\u0275restoreView(e);const t=r.\u0275\u0275nextContext();return r.\u0275\u0275resetView(t.cancel())})),r.\u0275\u0275elementEnd()}if(2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275propertyInterpolate1("name","cancelBtn_",e.name,""),r.\u0275\u0275property("title",e.cancelbtnlabel)("textContent",e.cancelbtnlabel)}}function D(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"button",31),r.\u0275\u0275listener("click",(function(){r.\u0275\u0275restoreView(e);const t=r.\u0275\u0275nextContext();return r.\u0275\u0275resetView(t.prev())})),r.\u0275\u0275element(1,"i",32)(2,"span",33),r.\u0275\u0275elementEnd()}if(2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275propertyInterpolate1("name","previousBtn_",e.name,""),r.\u0275\u0275property("disabled",!e.enablePrev),r.\u0275\u0275advance(2),r.\u0275\u0275property("textContent",e.previousbtnlabel)}}function R(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"button",34),r.\u0275\u0275listener("click",(function(){r.\u0275\u0275restoreView(e);const t=r.\u0275\u0275nextContext();return r.\u0275\u0275resetView(t.next())})),r.\u0275\u0275element(1,"span",33)(2,"i",35),r.\u0275\u0275elementEnd()}if(2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275propertyInterpolate1("name","nextBtn_",e.name,""),r.\u0275\u0275property("disabled",!e.enableNext),r.\u0275\u0275advance(),r.\u0275\u0275property("textContent",e.nextbtnlabel)}}function S(e,t){if(1&e){const e=r.\u0275\u0275getCurrentView();r.\u0275\u0275elementStart(0,"button",36),r.\u0275\u0275listener("click",(function(){r.\u0275\u0275restoreView(e);const t=r.\u0275\u0275nextContext();return r.\u0275\u0275resetView(t.done())})),r.\u0275\u0275element(1,"i",37)(2,"span",33),r.\u0275\u0275elementEnd()}if(2&e){const e=r.\u0275\u0275nextContext();r.\u0275\u0275propertyInterpolate1("name","doneBtn_",e.name,""),r.\u0275\u0275property("disabled",!e.enableDone),r.\u0275\u0275advance(2),r.\u0275\u0275property("textContent",e.donebtnlabel)}}const _={widgetType:"wm-wizard",hostClass:"app-wizard panel clearfix"};class M extends a.StylableComponent{static{this.initializeProps=void a.register("wm-wizard",new Map([["actionsalignment",{value:"right",...a.PROP_STRING}],["cancelable",{value:!0,...a.PROP_BOOLEAN}],["enablenext",{value:!1,...a.PROP_BOOLEAN}],["cancelbtnlabel",{value:"Cancel",...a.PROP_STRING}],["class",{value:"classic",...a.PROP_STRING}],["defaultstep",{value:"none",...a.PROP_STRING}],["donebtnlabel",{value:"Done",...a.PROP_STRING}],["name",a.PROP_STRING],["nextbtnlabel",{value:"Next",...a.PROP_STRING}],["previousbtnlabel",{value:"Previous",...a.PROP_STRING}],["show",{value:!0,...a.PROP_BOOLEAN}],["stepstyle",{value:"auto",...a.PROP_STRING}]]))}get hasPrevStep(){return!this.isFirstStep(this.currentStep)}get hasNextStep(){return!this.isLastStep(this.currentStep)}get showDoneBtn(){if(this.currentStep)return!this.hasNextStep&&this.currentStep.enableDone}get enablePrev(){if(this.currentStep)return this.currentStep.enablePrev}get enableNext(){if(this.currentStep)return!!this.enablenext||this.currentStep.enableNext&&this.currentStep.isValid}get enableDone(){if(this.currentStep)return this.currentStep.enableDone&&this.currentStep.isValid}constructor(e,t){let i=s.noop;super(e,_,t,new Promise((e=>i=e))),a.styler(this.nativeElement,this,a.APPLY_STYLES_TYPE.SHELL),this.promiseResolverFn=i,this.message={caption:"",type:""}}getNextValidStepFormIndex(e){for(let t=e;t<this.steps.length;t++){const e=this.getStepRefByIndex(t);if(e.show)return e}}getPreviousValidStepFormIndex(e){for(let t=e;t>=0;t--){const e=this.getStepRefByIndex(t);if(e.show)return e}}getCurrentStepIndex(){return this.getStepIndexByRef(this.currentStep)}getStepRefByIndex(e){return this.steps.toArray()[e]}getStepIndexByRef(e){return this.steps.toArray().indexOf(e)}getStepRefByName(e){return this.steps.find((t=>t.name===e))}setDefaultStep(e){if(e&&e.show){this.currentStep=e,e.active=!0,e.isInitialized=!0;let t=this.getStepIndexByRef(e)-1;for(;t>=0;){const e=this.getStepRefByIndex(t);e.done=!0,e.isInitialized=!0,t--}}else(e=this.getNextValidStepFormIndex(0))&&this.setDefaultStep(e);this.addMoreText()}onWizardHeaderClick(e,t){t.done&&(this.steps.forEach(((e,i)=>{i<this.getStepIndexByRef(t)?(e.done=!0,e.isDone=!0):(e.disabled=!0,e.isDone=!1)})),this.currentStep=t,this.currentStep.active=!0,this.addMoreText())}next(e="next"){const t=this.currentStep,i=this.getCurrentStepIndex();if("skip"===e){if(!1===t.invokeSkipCB(i))return;this.extendNextFn(t,i)}else if(this.currentStep.isValid&&"next"===e){if(!1===t.invokeNextCB(i))return;this.extendNextFn(t,i)}else this.enablenext&&!this.currentStep.isValid&&Array.from(this.currentStep.getAllEmbeddedForms())?.forEach((e=>{e.widget.highlightInvalidFields()}))}extendNextFn(e,t){let i;i=this.getNextValidStepFormIndex(t+1),i.isInitialized=!0,i&&(e.isDone=!0,e.done=!0,i.active=!0,this.currentStep=i),this.addMoreText()}prev(){const e=this.currentStep,t=this.getCurrentStepIndex();let i;!1!==e.invokePrevCB(t)&&(i=this.getPreviousValidStepFormIndex(t-1),i&&(e.isDone=!1,e.disabled=!0,i.active=!0,this.currentStep=i),this.addMoreText())}skip(){this.next("skip")}done(){this.currentStep.isDone=!0,this.invokeEventCallback("done",{steps:this.steps.toArray()})}cancel(){this.invokeEventCallback("cancel",{steps:this.steps.toArray()})}addMoreText(){setTimeout((()=>{if($(window).width()<768){$(".app-wizard-step.current .subtitle-wrapper .step-title").css({height:"auto",display:"block"});var e=$(".app-wizard-step.current .subtitle-wrapper .step-title").height();$(".read_more").css("display","none"),$(".current .subtitle-wrapper").removeClass("readmore_subtitle"),e>44&&($(".app-wizard-step.current .subtitle-wrapper .step-title").css({height:"44px",display:"-webkit-box"}),$(".current .read_more").css("display","block"),$(".active .read_more").css("display","none"),$(".disable .read_more").css("display","none"),$(".app-wizard-step>a").css("height","100px"))}}))}readMoreSubtitle(){$(".current .subtitle-wrapper").addClass("readmore_subtitle"),$(".current .read_more").css("display","none"),$(document).on("mouseup",(function(e){var t=$(".subtitle-wrapper");t.is(e.target)||0!==t.has(e.target).length||($(".current .subtitle-wrapper").removeClass("readmore_subtitle"),$(".current .read_more").css("display","block"),$(document).off("mouseup"))}))}isFirstStep(e){return this.steps.first===e}isLastStep(e){return this.steps.last===e}onPropertyChange(e,t,i){"stepstyle"===e?this.stepClass="justified"===t?"nav-justified":"":"defaultstep"===e?this.setDefaultStep(this.getStepRefByName(t)):super.onPropertyChange(e,t,i)}ngAfterContentInit(){super.ngAfterContentInit(),this.promiseResolverFn()}ngAfterViewInit(){super.ngAfterViewInit(),a.styler(this.nativeElement.querySelector(".panel-body"),this,a.APPLY_STYLES_TYPE.INNER_SHELL),setTimeout((()=>{$(window).width()<768&&$(".app-wizard").removeClass("vertical")}))}static{this.\u0275fac=function(e){return new(e||M)(r.\u0275\u0275directiveInject(r.Injector),r.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=r.\u0275\u0275defineComponent({type:M,selectors:[["div","wmWizard",""]],contentQueries:function(e,t,i){if(1&e&&r.\u0275\u0275contentQuery(i,u,4),2&e){let e;r.\u0275\u0275queryRefresh(e=r.\u0275\u0275loadQuery())&&(t.steps=e)}},features:[r.\u0275\u0275ProvidersFeature([a.provideAsWidgetRef(M)]),r.\u0275\u0275InheritDefinitionFeature],attrs:h,ngContentSelectors:m,decls:13,vars:13,consts:[["role","tab",1,"app-wizard-heading"],["class","app-wizard-step",3,"hidden","ngClass","click",4,"ngFor","ngForOf"],["role","tabpanel",1,"app-wizard-body","panel-body"],["wmMessage","","caption.bind","message.caption","type.bind","message.type",4,"ngIf"],["class","app-wizard-skip","title","Skip step",3,"name","click",4,"ngIf"],[1,"app-wizard-actions-right"],["type","button","class","btn app-button btn-default",3,"name","title","textContent","click",4,"ngIf"],["type","button","class","btn app-button btn-default",3,"name","disabled","click",4,"ngIf"],["type","button","class","btn app-button btn-primary",3,"name","disabled","click",4,"ngIf"],["type","button","class","btn app-button btn-success",3,"name","disabled","click",4,"ngIf"],[1,"app-wizard-step",3,"click","hidden","ngClass"],["href","javascript:void(0)",3,"ngClass"],["class","arrow",4,"ngIf"],[1,"wizard-step-number"],["class","count",4,"ngIf"],["class","dottedstepper",4,"ngIf"],["class","app-icon wi wi-done",4,"ngIf"],[3,"class",4,"ngIf"],[1,"title-wrapper"],[4,"ngIf"],[1,"step-title",3,"textContent"],["class","subtitle-wrapper",4,"ngIf"],[1,"arrow"],[1,"count"],[1,"dottedstepper"],[1,"app-icon","wi","wi-done"],[1,"subtitle-wrapper"],[1,"read_more",2,"display","none",3,"click"],["wmMessage","","caption.bind","message.caption","type.bind","message.type"],["title","Skip step",1,"app-wizard-skip",3,"click","name"],["type","button",1,"btn","app-button","btn-default",3,"click","name","title","textContent"],["type","button",1,"btn","app-button","btn-default",3,"click","name","disabled"],[1,"app-icon","wi","wi-chevron-left"],[1,"btn-caption",3,"textContent"],["type","button",1,"btn","app-button","btn-primary",3,"click","name","disabled"],[1,"app-icon","wi","wi-chevron-right"],["type","button",1,"btn","app-button","btn-success",3,"click","name","disabled"],[1,"app-icon","wm-sl-l","sl-check"]],template:function(e,t){1&e&&(r.\u0275\u0275projectionDef(),r.\u0275\u0275elementStart(0,"div",0)(1,"ul"),r.\u0275\u0275template(2,E,13,20,"li",1),r.\u0275\u0275elementEnd()(),r.\u0275\u0275elementStart(3,"div",2),r.\u0275\u0275template(4,O,1,0,"p",3),r.\u0275\u0275projection(5,0,["ngProjectAs","form[wmWizardStep]",5,["form","wmWizardStep",""]]),r.\u0275\u0275elementEnd(),r.\u0275\u0275elementStart(6,"div"),r.\u0275\u0275template(7,T,2,2,"a",4),r.\u0275\u0275elementStart(8,"div",5),r.\u0275\u0275template(9,x,1,4,"button",6)(10,D,3,4,"button",7)(11,R,3,4,"button",8)(12,S,3,4,"button",9),r.\u0275\u0275elementEnd()()),2&e&&(r.\u0275\u0275advance(),r.\u0275\u0275classMapInterpolate1("app-wizard-steps nav nav-pills ",t.stepClass,""),r.\u0275\u0275advance(),r.\u0275\u0275property("ngForOf",t.steps),r.\u0275\u0275advance(2),r.\u0275\u0275property("ngIf",t.message.caption),r.\u0275\u0275advance(2),r.\u0275\u0275classMapInterpolate1("app-wizard-actions panel-footer ",t.actionsalignment,""),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",null==t.currentStep?null:t.currentStep.enableskip),r.\u0275\u0275advance(2),r.\u0275\u0275property("ngIf",t.cancelable),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.hasPrevStep),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.hasNextStep),r.\u0275\u0275advance(),r.\u0275\u0275property("ngIf",t.showDoneBtn))},dependencies:[l.NgClass,l.NgForOf,l.NgIf,d.MessageComponent,d.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(M,[{type:t.Component,args:[{selector:"div[wmWizard]",providers:[a.provideAsWidgetRef(M)],template:'<div class="app-wizard-heading" role="tab">\n <ul class="app-wizard-steps nav nav-pills {{stepClass}}">\n <li class="app-wizard-step" *ngFor="let step of steps; let i = index" [hidden]="!step.show"\n [ngClass]="{active: step.done, current: step.active, disabled: step.disabled}"\n (click)="onWizardHeaderClick($event, step)">\n <a href="javascript:void(0)" [attr.aria-label]="step.title" [attr.title]="step.title" [ngClass]="{\'title-center-align\':class && class.includes(\'classic\') && !step.subtitle}">\n <span class="arrow" *ngIf="class && class.includes(\'classic\')"></span>\n <span class="wizard-step-number">\n <span class="count" *ngIf="class && class.includes(\'number\') && !step.isDone">{{i+1}}</span>\n <i class="dottedstepper" *ngIf="class && (class.includes(\'dottedstepper\') || class.includes(\'text-inline\') && !class.includes(\'iconstepper\')) && !step.isDone"></i>\n <i class="app-icon wi wi-done" *ngIf="class && (class.includes(\'dottedstepper\') || class.includes(\'number\')) && step.isDone"></i>\n <i class="app-icon {{step.iconclass}}" *ngIf="(class && class.includes(\'iconstepper\')) && ((step.iconclass && !step.isDone) || (step.iconclass && step.isDone && step.doneiconclass ===\'\'))"></i>\n <i class="app-icon {{step.doneiconclass}}" *ngIf="step.doneiconclass && step.isDone && (class && class.includes(\'iconstepper\'))"></i>\n </span>\n <span class="title-wrapper">\n <span *ngIf="class && class.includes(\'text-inline\')">{{\'0\' + (i+1)}}</span>\n <span class="step-title" [textContent]="step.title"></span>\n </span>\n <span class="subtitle-wrapper" [attr.title]="step.subtitle" *ngIf="step.subtitle">\n <span class="step-title" [textContent]="step.subtitle"></span>\n <a class="read_more" (click)="readMoreSubtitle()" style="display:none">more</a>\n </span>\n </a> \n </li>\n </ul>\n</div>\n<div class="app-wizard-body panel-body" role="tabpanel">\n <p wmMessage *ngIf="message.caption" caption.bind="message.caption" type.bind="message.type"></p>\n <ng-content ngProjectAs="form[wmWizardStep]"></ng-content>\n</div>\n<div class="app-wizard-actions panel-footer {{actionsalignment}}">\n <a class="app-wizard-skip" name="skipStep_{{name}}" *ngIf="currentStep?.enableskip" title="Skip step" (click)="skip()">Skip &raquo;</a>\n <div class="app-wizard-actions-right">\n <button type="button" name="cancelBtn_{{name}}" class="btn app-button btn-default" *ngIf="cancelable"\n (click)="cancel()" [title]="cancelbtnlabel" [textContent]="cancelbtnlabel"></button>\n <button type="button" name="previousBtn_{{name}}" class="btn app-button btn-default"\n *ngIf="hasPrevStep" (click)="prev()" [disabled]="!enablePrev">\n <i class="app-icon wi wi-chevron-left"></i>\n <span class="btn-caption" [textContent]="previousbtnlabel"></span>\n </button>\n <button type="button" name="nextBtn_{{name}}" class="btn app-button btn-primary"\n *ngIf="hasNextStep" (click)="next()" [disabled]="!enableNext">\n <span class="btn-caption" [textContent]="nextbtnlabel"></span>\n <i class="app-icon wi wi-chevron-right"></i>\n </button>\n <button type="button" name="doneBtn_{{name}}" class="btn app-button btn-success"\n *ngIf="showDoneBtn" (click)="done()"\n [disabled]="!enableDone">\n <i class="app-icon wm-sl-l sl-check"></i>\n <span class="btn-caption" [textContent]="donebtnlabel"></span>\n </button>\n </div>\n</div>\n'}]}],(()=>[{type:r.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{steps:[{type:t.ContentChildren,args:[u]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassDebugInfo(M,{className:"WizardComponent",filePath:"wizard.component.ts",lineNumber:32});const N=[u,M];class k{static{this.\u0275fac=function(e){return new(e||k)}}static{this.\u0275mod=r.\u0275\u0275defineNgModule({type:k})}static{this.\u0275inj=r.\u0275\u0275defineInjector({imports:[i.CommonModule,a.WmComponentsModule,n.FormsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&r.\u0275setClassMetadata(k,[{type:t.NgModule,args:[{imports:[i.CommonModule,a.WmComponentsModule,n.FormsModule],declarations:[...N],exports:[...N]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&r.\u0275\u0275setNgModuleScope(k,{declarations:[u,M],imports:[i.CommonModule,a.WmComponentsModule,n.FormsModule],exports:[u,M]}),e.WizardComponent=M,e.WizardModule=k,e.WizardStepDirective=u})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("ngx-bootstrap/carousel"),require("@wm/components/base"),require("@swipey"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","ngx-bootstrap/carousel","@wm/components/base","@swipey","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.advanced=e.wm.components.advanced||{},e.wm.components.advanced.carousel={}),e.ng.core,e.ng.common,e.carousel,e.wm.components.base,e.swipey,e._)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(n);class d extends s.SwipeAnimation{constructor(e,t,i){super(),this.carousel=e,this.interval=t,this.ngZone=i,this._activeIndex=0,this._animationPaused=!1,this._pauseCaroselTill=0,this._oldIndex=0;const n=this;this._$el=$(this.carousel.getNativeElement()).find(">.carousel"),this.init(this._$el.find(">.carousel-inner")),this._items=this._$el.find(">.carousel-inner >.carousel-item"),this._indicators=this._$el.find(">.carousel-indicators"),this._indicators.find("li").each((function(e){$(this).on("click",(()=>{n._activeIndex=e,n.setActiveItem(),n.carousel.onChangeCB(n._activeIndex,n._oldIndex),n._oldIndex=n._activeIndex}))})),this._$el.find(">.left.carousel-control").on("click",(()=>{this._swiping||(this._pauseCaroselTill=Date.now()+this.interval,this.goToUpper())})),this._$el.find(">.right.carousel-control").on("click",(()=>{this._swiping||(this._pauseCaroselTill=Date.now()+this.interval,this.goToLower())})),this.setActiveItem(),this.interval&&this.start(),this._$el.find(">.left.carousel-control").append('<span class="sr-only">Previous</span>')}bounds(){return this._width=this._items.width(),this._swiping=!0,{lower:-this._width,center:0,upper:this._width}}context(){return{w:this._width}}animation(){return[{target:this.getTarget.bind(this),css:{transform:"translate3d(${{ (($D + $d) / w) * 100 + '%'}}, 0, 0)","-webkit-transform":"translate3d(${{ (($D + $d) / w) * 100 + '%'}}, 0, 0)"}}]}onUpper(){this.resetTransition(),this._activeIndex-=1,this.setActiveItem(),this._swiping=!1}onLower(){this.resetTransition(),this._activeIndex+=1,this.setActiveItem(),this._swiping=!1}onAnimation(){const e=(this._items.length+this._activeIndex)%this._items.length;this.carousel.onChangeCB(e,this._oldIndex),this._oldIndex=e;const t=o.findIndex(this._items,this._$el.find(">.carousel-inner >.carousel-item.active")[0]);this._$el.find(">.left.carousel-control").attr("aria-label",(0===t?this._items.length:t)+" of "+this._items.length),this._$el.find(">.right.carousel-control").attr("aria-label",(t===this._items.length-1?1:t+2)+" of "+this._items.length)}start(){this.ngZone.runOutsideAngular((()=>{this._intervalId=setInterval((()=>{!this._swiping&&this._pauseCaroselTill<Date.now()&&this.goToLower(600)}),this.interval)}))}pause(){this._animationPaused=!0,this._intervalId||this.start()}resume(){this._animationPaused=!1}stop(){this._intervalId&&(clearInterval(this._intervalId),this._intervalId=0)}threshold(){return 5}getTarget(){const e=this._items.length,t=this._items.eq((e+this._activeIndex)%e),i=this._items.eq((e+this._activeIndex-1)%e),n=this._items.eq((e+this._activeIndex+1)%e);return t.add(n).add(i)}resetTransition(){this.getTarget().css({"-webkit-transition":"none","-webkit-transform":"",transition:"none",transform:""})}setActiveItem(){const e=this._items,t=this._activeIndex-1,i=this._activeIndex+1;1!==e.length?(this._indicators.find(">.active").removeClass("active"),this._indicators.find("> li").eq((e.length+this._activeIndex)%e.length).addClass("active"),e.filter(".active").removeClass("active"),e.addClass("left-item"),e.eq((e.length+t)%e.length).addClass("left-item").removeClass("right-item"),e.eq((e.length+this._activeIndex)%e.length).removeClass("left-item right-item").addClass("active"),e.eq((e.length+i)%e.length).addClass("right-item").removeClass("left-item")):e.eq(0).removeClass("left-item right-item")}}const p={widgetType:"wm-carousel"},u={indicators:"hide-navs",navs:"hide-indicators",none:"hide-both"};class h extends a.StylableComponent{static{this.initializeProps=void a.register("wm-carousel",new Map([["animation",{value:"auto",...a.PROP_STRING}],["animationinterval",{value:3,...a.PROP_NUMBER}],["controls",{value:"both",...a.PROP_STRING}],["dataset",a.PROP_ANY],["name",a.PROP_STRING],["nodatamessage",{value:"No Data Found",...a.PROP_STRING}],["show",a.PROP_BOOLEAN]]))}constructor(e,t,i,n){super(t,p,n),this.component=e,this.ngZone=i,a.styler(this.nativeElement,this)}onDataChange(e){this.fieldDefs=a.createArrayFrom(e)}stopAnimation(){this.animator&&this.animator.stop()}startAnimation(){this.animator&&(this.animator.interval=1e3*this.animationinterval,this.animator.start())}onSlidesRender(e){this.fieldDefs&&this.fieldDefs.length&&(this.currentslide=this.fieldDefs[0]),e.length&&setTimeout((()=>{this.animator=new d(this,this.interval,this.ngZone)}),50)}setupHandlers(){this.slides.changes.subscribe((e=>{this.triggerAnimation(e)})),this.slides.setDirty()}onChangeCB(e,t){this.currentslide=this.fieldDefs&&this.fieldDefs[e],this.previousslide=this.fieldDefs&&this.fieldDefs[t],this.invokeEventCallback("change",{newIndex:e,oldIndex:t})}ngAfterContentInit(){this.triggerAnimation(this.slides),this.setupHandlers()}ngOnDestroy(){this.stopAnimation(),super.ngOnDestroy()}setanimationinterval(){this.interval="auto"===this.animation?1e3*this.animationinterval:0}triggerAnimation(e){this.stopAnimation(),this.onSlidesRender(e)}ngOnInit(){super.ngOnInit(),this.setanimationinterval()}onPropertyChange(e,t,i){"dataset"===e?this.onDataChange(t):"controls"===e?this.navigationClass=u[this.controls]:"animation"===e||"animationinterval"===e?("animationinterval"===e&&(this.stopAnimation(),this.setanimationinterval()),"none"===this.animation?this.stopAnimation():this.startAnimation()):super.onPropertyChange(e,t,i)}static{this.\u0275fac=function(e){return new(e||h)(l.\u0275\u0275directiveInject(c.CarouselComponent),l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject(l.NgZone),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=l.\u0275\u0275defineDirective({type:h,selectors:[["","wmCarousel",""]],contentQueries:function(e,t,i){if(1&e&&l.\u0275\u0275contentQuery(i,n.SlideComponent,4),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.slides=e)}},exportAs:["wmCarousel"],features:[l.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(h,[{type:t.Directive,args:[{selector:"[wmCarousel]",exportAs:"wmCarousel"}]}],(()=>[{type:c.CarouselComponent},{type:l.Injector},{type:l.NgZone},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{slides:[{type:t.ContentChildren,args:[n.SlideComponent]}]});const m={widgetType:"wm-carousel-template",hostClass:"app-carousel-item"};class g extends a.StylableComponent{static{this.initializeProps=void a.register("wm-carousel-template",new Map([["show",a.PROP_BOOLEAN]]))}constructor(e,t){super(e,m,t),a.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||g)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=l.\u0275\u0275defineDirective({type:g,selectors:[["","wmCarouselTemplate",""]],exportAs:["carouselTemplateRef"],features:[l.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(g,[{type:t.Directive,args:[{selector:"[wmCarouselTemplate]",exportAs:"carouselTemplateRef"}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const f=[h,g];class v{static{this.\u0275fac=function(e){return new(e||v)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:v})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.CarouselModule,a.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(v,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.CarouselModule,a.WmComponentsModule],declarations:[...f],exports:[...f]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(v,{declarations:[h,g],imports:[i.CommonModule,n.CarouselModule,a.WmComponentsModule],exports:[h,g]}),e.CarouselAnimator=d,e.CarouselDirective=h,e.CarouselModule=v,e.CarouselTemplateDirective=g})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.advanced=e.wm.components.advanced||{},e.wm.components.advanced.marquee={}),e.ng.core,e.ng.common,e.wm.components.base)}(this,(function(e,t,i,n){"use strict";var a,s,o=(a=t,s=Object.create(null),a&&Object.keys(a).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}})),s.default=a,Object.freeze(s));const r={widgetType:"wm-marquee",hostClass:"app-marquee app-container"};class l extends n.StylableComponent{static{this.initializeProps=void n.register("wm-marquee",new Map([["class",n.PROP_STRING],["direction",n.PROP_STRING],["name",n.PROP_STRING],["scrollamount",n.PROP_NUMBER],["scrolldelay",n.PROP_NUMBER],["show",{value:!0,...n.PROP_BOOLEAN}]]))}constructor(e,t){super(e,r,t),n.styler(this.nativeElement,this)}static{this.\u0275fac=function(e){return new(e||l)(o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=o.\u0275\u0275defineDirective({type:l,selectors:[["","wmMarquee",""]],features:[o.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(l)]),o.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(l,[{type:t.Directive,args:[{selector:"[wmMarquee]",providers:[n.provideAsWidgetRef(l)]}]}],(()=>[{type:o.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),null);const c=[l];class d{static{this.\u0275fac=function(e){return new(e||d)}}static{this.\u0275mod=o.\u0275\u0275defineNgModule({type:d})}static{this.\u0275inj=o.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&o.\u0275setClassMetadata(d,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...c],exports:[...c]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&o.\u0275\u0275setNgModuleScope(d,{declarations:[l],imports:[i.CommonModule,n.WmComponentsModule],exports:[l]}),e.MarqueeDirective=l,e.MarqueeModule=d})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@wm/components/base"),require("@wm/components/data/form"),require("@wm/components/input"),require("lodash-es")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@wm/components/base","@wm/components/data/form","@wm/components/input","lodash-es"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.components=e.wm.components||{},e.wm.components.advanced=e.wm.components.advanced||{},e.wm.components.advanced.login={}),e.ng.core,e.ng.common,e.wm.components.base,e.wm.components.data.form,e.wm.components.input,e._)}(this,(function(e,t,i,n,a,s,o){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var l=r(t),c=r(n);const d=["wmLogin",""],p=["*"],u={widgetType:"wm-login",hostClass:"app-login"};class h extends n.StylableComponent{static{this.initializeProps=void n.register("wm-login",new Map([["errormessage",n.PROP_STRING],["eventsource",n.PROP_ANY]]))}constructor(e,t){super(e,u,t),n.styler(this.nativeElement,this,n.APPLY_STYLES_TYPE.CONTAINER)}onSuccessCB(){this.invokeEventCallback("success")}onErrorCB(e){this.loginMessage={type:"error",caption:this.errormessage||e||this.appLocale.LABEL_INVALID_USERNAME_OR_PASSWORD,show:!0},this.messageCmp.showMessage(this.loginMessage.caption,this.loginMessage.type),this.invokeEventCallback("error")}getLoginDetails(){return this.formCmp.dataoutput}doLogin(){this.eventsource?this.formCmp.ngform.valid&&this.eventsource.invoke({loginInfo:this.getLoginDetails()},this.onSuccessCB.bind(this),this.onErrorCB.bind(this)):console.warn('Default action "loginAction" does not exist. Either create the Action or assign an event to onSubmit of the login widget')}initLoginButtonActions(){this.loginBtnCmp.getNativeElement().addEventListener("click",(e=>{this.nativeElement.hasAttribute("submit.event")||this.loginBtnCmp.getNativeElement().hasAttribute("click.event")||this.loginBtnCmp.getNativeElement().hasAttribute("tap.event")||this.doLogin()}))}ngAfterViewInit(){super.ngAfterViewInit(),this.formCmp.getNativeElement().addEventListener("submit",(e=>e.preventDefault())),this.buttonComponents.forEach((e=>{if("loginButton"===e.getNativeElement().getAttribute("name")||o.includes(e.getNativeElement().classList,"app-login-button")){if(this.loginBtnCmp)return;this.loginBtnCmp=e,this.initLoginButtonActions()}}))}static{this.\u0275fac=function(e){return new(e||h)(l.\u0275\u0275directiveInject(l.Injector),l.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275cmp=l.\u0275\u0275defineComponent({type:h,selectors:[["div","wmLogin",""]],contentQueries:function(e,t,i){if(1&e&&(l.\u0275\u0275contentQuery(i,a.FormComponent,5),l.\u0275\u0275contentQuery(i,s.ButtonComponent,5)),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.formCmp=e.first),l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.buttonComponents=e)}},viewQuery:function(e,t){if(1&e&&l.\u0275\u0275viewQuery(n.MessageComponent,7),2&e){let e;l.\u0275\u0275queryRefresh(e=l.\u0275\u0275loadQuery())&&(t.messageCmp=e.first)}},features:[l.\u0275\u0275ProvidersFeature([n.provideAsWidgetRef(h)]),l.\u0275\u0275InheritDefinitionFeature],attrs:d,ngContentSelectors:p,decls:3,vars:0,consts:[["message",""],["wmMessage","","show.bind","loginMessage.show","caption.bind","loginMessage.caption","type.bind","loginMessage.type",1,"app-login-message"]],template:function(e,t){1&e&&(l.\u0275\u0275projectionDef(),l.\u0275\u0275element(0,"p",1,0),l.\u0275\u0275projection(2))},dependencies:[c.MessageComponent],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(h,[{type:t.Component,args:[{selector:"div[wmLogin]",providers:[n.provideAsWidgetRef(h)],template:'<p wmMessage class="app-login-message" #message show.bind="loginMessage.show" caption.bind="loginMessage.caption" type.bind="loginMessage.type"></p>\n<ng-content></ng-content>\n'}]}],(()=>[{type:l.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{formCmp:[{type:t.ContentChild,args:[a.FormComponent]}],buttonComponents:[{type:t.ContentChildren,args:[s.ButtonComponent,{descendants:!0}]}],messageCmp:[{type:t.ViewChild,args:[n.MessageComponent,{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassDebugInfo(h,{className:"LoginComponent",filePath:"login.component.ts",lineNumber:29});const m=[h];class g{static{this.\u0275fac=function(e){return new(e||g)}}static{this.\u0275mod=l.\u0275\u0275defineNgModule({type:g})}static{this.\u0275inj=l.\u0275\u0275defineInjector({imports:[i.CommonModule,n.WmComponentsModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&l.\u0275setClassMetadata(g,[{type:t.NgModule,args:[{imports:[i.CommonModule,n.WmComponentsModule],declarations:[...m],exports:[...m]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&l.\u0275\u0275setNgModuleScope(g,{declarations:[h],imports:[i.CommonModule,n.WmComponentsModule],exports:[h]}),e.LoginComponent=h,e.LoginModule=g})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@wavemaker/variables"),require("@wm/core"),require("lodash-es"),require("angular2-websocket/angular2-websocket"),require("@metrichor/jmespath"),require("@angular/core"),require("@angular/router"),require("@wm/oAuth"),require("@wm/security"),require("@angular/common"),require("@angular/common/http"),require("ngx-toastr"),require("@wm/http")):"function"==typeof define&&define.amd?define(["exports","@wavemaker/variables","@wm/core","lodash-es","angular2-websocket/angular2-websocket","@metrichor/jmespath","@angular/core","@angular/router","@wm/oAuth","@wm/security","@angular/common","@angular/common/http","ngx-toastr","@wm/http"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.variables={}),e.wm_common_variables,e.wm.core,e._,e.angularWebSocket,e.jmespath,e.ng.core,e.ng.router,e.wm.oAuth,e.wm.security,e.ng.common,e.ng.common.http,e.ngxToastr,e.wm.http)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u,h){"use strict";function m(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var g=m(i),f=m(o),v=m(r),b=m(l),y=m(c),w=m(u);const C={hasCordova:void 0!==window.cordova,isStudioMode:!1,isRunMode:!0,XSRF_COOKIE_NAME:"wm_xsrf_token",DEFAULT_TIMER_DELAY:500,WIDGET_DOESNT_EXIST:"The widget you're trying to navigate to doesn't exist on this page"},P={CATEGORY:{MODEL:"wm.Variable",LIVE:"wm.LiveVariable",CRUD:"wm.CrudVariable",SERVICE:"wm.ServiceVariable",WEBSOCKET:"wm.WebSocketVariable",NAVIGATION:"wm.NavigationVariable",NOTIFICATION:"wm.NotificationVariable",TIMER:"wm.TimerVariable",LOGIN:"wm.LoginVariable",LOGOUT:"wm.LogoutVariable",DEVICE:"wm.DeviceVariable"},EVENTS:["onBefore","onBeforeUpdate","onResult","onBeforeOpen","onOpen","onBeforeMessageSend","onMessageReceive","onProgress","onError","onBeforeDatasetReady","onCanUpdate","onClick","onHide","onOk","onCancel","onBeforeClose","onClose","onTimerFire","onSuccess","onOnline","onOffline"],EVENT:{CAN_UPDATE:"onCanUpdate",BEFORE:"onBefore",BEFORE_UPDATE:"onBeforeUpdate",PREPARE_SETDATA:"onBeforeDatasetReady",RESULT:"onResult",ERROR:"onError",ABORT:"onAbort",PROGRESS:"onProgress",CLICK:"onClick",HIDE:"onHide",OK:"onOk",CANCEL:"onCancel",CLOSE:"onClose",TIMER_FIRE:"onTimerFire",SUCCESS:"onSuccess",BEFORE_OPEN:"onBeforeOpen",OPEN:"onOpen",BEFORE_SEND:"onBeforeMessageSend",MESSAGE_RECEIVE:"onMessageReceive",BEFORE_CLOSE:"onBeforeClose"},OWNER:{APP:"App",PAGE:"Page"},REST_SUPPORTED_SERVICES:["JavaService","SoapService","FeedService","RestService","SecurityServiceType","DataService","WebSocketService","OpenAPIService"],PAGINATION_PARAMS:["page","size","sort"],REST_SERVICE:{BASE_PATH_KEY:"x-WM-BASE_PATH",RELATIVE_PATH_KEY:"x-WM-RELATIVE_PATH",OAUTH_PROVIDER_KEY:"x-WM-PROVIDER_ID",AUTH_HDR_KEY:"Authorization",SECURITY_DEFN:{BASIC:"basic",OAUTH2:"oauth2"},AUTH_TYPE:{BASIC:"BASIC",OAUTH:"OAUTH2",NONE:"NONE"},CONTENT_TYPE_KEY:"x-WM-CONTENT_TYPE",ACCESSTOKEN_PLACEHOLDER:{LEFT:"",RIGHT:".access_token"},ERR_TYPE:{NO_ACCESSTOKEN:"missing_accesstoken",NO_CREDENTIALS:"no_credentials",METADATA_MISSING:"metadata_missing",CRUD_OPERATION_MISSING:"crud_operation_missing",USER_UNAUTHORISED:"user_unauthorised",REQUIRED_FIELD_MISSING:"required_field_missing"},ERR_MSG:{NO_ACCESSTOKEN:"Access token missing",NO_CREDENTIALS:"No credentials present",METADATA_MISSING:'Metadata missing for "$variable"',USER_UNAUTHORISED:"Unauthorized User",CRUD_OPERATION_MISSING:'Operation "$operation" not allowed for "$variable"',REQUIRED_FIELD_MISSING:'Required field(s) missing: "${0}"'},UNCLOAKED_HEADERS:["CONTENT-TYPE","ACCEPT","CONTENT-LENGTH","ACCEPT-ENCODING","ACCEPT-LANGUAGE"],PREFIX:{AUTH_HDR_VAL:{BASIC:"Basic",OAUTH:"Bearer"},CLOAK_HEADER_KEY:"X-WM-"}},SERVICE_TYPE:{JAVA:"JavaService",REST:"RestService",SOAP:"SoapService",FEED:"FeedService",DATA:"DataService",SECURITY:"SecurityServiceType",WEBSOCKET:"WebSocketService",OPENAPI:"OpenAPIService"},CONTROLLER_TYPE:{QUERY:"QueryExecution",PROCEDURE:"ProcedureExecution"},HTTP_STATUS_CODE:{CORS_FAILURE:-1,UNAUTHORIZED:401,FORBIDDEN:403},EXPORT_TYPES_MAP:{EXCEL:".xlsx",CSV:".csv"},DEFAULT_VAR:{NOTIFICATION:"appNotification"}},I={NON_BODY_HTTP_METHODS:["GET","HEAD"],CONTENT_TYPES:{FORM_URL_ENCODED:"application/x-www-form-urlencoded",MULTIPART_FORMDATA:"multipart/form-data",OCTET_STREAM:"application/octet-stream"}},A={WM_DATA_JSON:"wm_data_json",WM_HTTP_JSON:"wm_httpRequestDetails"},E=t.$rootScope,O={EXCEL:".xlsx",CSV:".csv"};e.appManager=void 0,e.httpService=void 0,e.metadataService=void 0,e.navigationService=void 0,e.routerService=void 0,e.toasterService=void 0,e.oauthService=void 0,e.securityService=void 0,e.dialogService=void 0;const T=/^\[("|')[\w\W]*(\1)\]$/,x=new Map,D=new Map,R=(e,t)=>{let i,a,s=n.noop;D.has(e)&&(s=D.get(e).cancel),s(),i=n.debounce((function(){a=e[t](),a instanceof Promise&&a.catch(n.noop)}),100),D.set(e,i),i()},S=(t,i)=>{switch(t){case"appManager":e.appManager=i;break;case"http":e.httpService=i;break;case"metadata":e.metadataService=i;break;case"navigationService":e.navigationService=i;break;case"router":e.routerService=i;break;case"toaster":e.toasterService=i;break;case"oAuth":e.oauthService=i;break;case"security":e.securityService=i;break;case"dialog":e.dialogService=i}},_=(e,t,a,s,o)=>{const r=t[e],l=t._context;let c;e!==P.EVENT.ERROR||o||r||(c=l.Actions[P.DEFAULT_VAR.NOTIFICATION],c&&(a=c.getMessage()||a,a=n.isString(a)?a:"An error has occured. Please check the app logs.",c.invoke({message:a},void 0,void 0)));const d=i.$parseEvent(t[e]);return e===P.EVENT.BEFORE_UPDATE?"wm.LiveVariable"===t.category&&"read"===t.operation?d(t._context,{variable:t,dataFilter:a,options:s}):d(t._context,{variable:t,inputData:a,options:s}):d(t._context,{variable:t,data:a,options:s})},M=e=>{setTimeout((()=>{i.triggerFn(e)}),500)},N=(e,t)=>{e=n.split(e,"&"),n.forEach(e,(function(e){e=n.split(e,"="),t[e[0]]=decodeURIComponent(n.join(n.slice(e,1),"="))}))},k=(t,n,a)=>{const s=t.url,o=t.method,r=t.dataParams||t.data,l=t.headers;l["Content-Type"]=l["Content-Type"]||"application/x-www-form-urlencoded",e.httpService.send({target:"WebService",action:"invokeRuntimeRestCall",method:o,url:s,headers:l,data:r,responseType:"arraybuffer"}).then((function(e){setTimeout((()=>{((e,t,n,a)=>{let s,o,r,l,c,d,p,u="";const h=t.get("Content-Disposition");if(h&&-1!==h.indexOf("attachment")&&(s=/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/,o=s.exec(h),null!==o&&o[1]&&(u=o[1].replace(/['"]/g,""))),r=t.get("Content-Type"),l=new Blob([e],{type:r}),void 0!==window.navigator.msSaveBlob)window.navigator.msSaveBlob(l,u)?M(n):i.triggerFn(a);else{if(c=window.URL||window.webkitURL,d=c.createObjectURL(l),u){const e=document.createElement("a");let t;void 0===e.download?(t=new FileReader,t.onloadend=function(){const e=t.result.replace(/^data:[^;]*;/,"data:attachment/file;");p=window.open(e,"_blank"),p||(window.location.href=e)},t.onload=M.bind(void 0,n),t.onerror=a,t.readAsDataURL(l)):(e.href=d,e.download=u,document.body.appendChild(e),e.click(),M(n))}else p=window.open(d,"_blank"),p||(window.location.href=d),M(n);setTimeout((()=>{c.revokeObjectURL(d)}),100)}})(e.body,e.headers,n,a)}),900)}),(function(e){i.triggerFn(a,e)}))},L=(e,t,n)=>{let a,s=e.target;const o=n[t];return T.test(s)?a=o:(s=s.substr(0,s.lastIndexOf(".")),a=e.target===t?n:s?i.findValueOf(o,s,!0):o),a},F=e=>{let t;return t=T.test(e)?e.replace(/^(\[["'])|(["']\])$/g,""):e.split(".").pop(),t},j=(e,t,i,a,s,o)=>{const r=F(e),l=L(t,i,a);s=n.isUndefined(s)?t.value:s,l&&(l[r]=s),((e,t,i,a,s)=>{switch(a.category){case P.CATEGORY.LIVE:"read"===a.operation?("dataBinding"===e?n.forEach(t,(function(e,t){a.filterFields[t]={value:e}})):a.filterFields[e]={value:t,type:i},a.autoUpdate&&!n.isUndefined(t)&&n.isFunction(a.listRecords)&&!s&&R(a,"listRecords")):("dataBinding"===e?a.inputFields=t:a.inputFields[e]=t,a.autoUpdate&&!n.isUndefined(t)&&n.isFunction(a[a.operation+"Record"])&&!s&&R(a,a.operation+"Record"));break;case P.CATEGORY.CRUD:"list"===a.operationType&&a.autoUpdate&&!n.isUndefined(t)&&n.isFunction(a.invoke)&&!s&&R(a,"invoke");break;case P.CATEGORY.SERVICE:case P.CATEGORY.LOGIN:a.autoUpdate&&!n.isUndefined(t)&&n.isFunction(a.invoke)&&!s&&R(a,"invoke");break;case P.CATEGORY.DEVICE:a[e]=t,a.autoUpdate&&!n.isUndefined(t)&&n.isFunction(a.invoke)&&!s&&R(a,"invoke")}})(r,s,t.type,a,o)},B=(e,t,a,s)=>{const o=e.target,r=L(e,a,s),l=F(o),c=t.registerDestroyListener?t.registerDestroyListener.bind(t):n.noop;if(i.stringStartsWith(e.value,"bind:")){const d=(t,c)=>{t===c&&n.isUndefined(t)||!(!n.isUndefined(t)||n.isUndefined(c)&&n.isUndefined(r[l]))||(n.includes(["blob","file"],e.type)||(t=i.getClonedObject(t)),j(o,e,a,s,t),x.has(s)||x.set(s,{}),n.set(x.get(s),[s.name,a,o],t),n.isObject(t)&&((e,t,i)=>{const a=n.keys(n.get(x.get(i),[i.name,t])),s=F(e);let o;o=n.filter(a,(function(e){return e!==s&&n.includes(e,s)||(s===t||"dataBinding"===s)&&e!==s})),o.length&&n.forEach(o,(function(e){j(e,{target:e},t,i,n.get(x.get(i),[i.name,t,e]))}))})(o,a,s))};c(i.$watch(e.value.replace("bind:",""),t,{},d,void 0,void 0,void 0,(()=>s.isMuted)))}else n.isUndefined(e.value)||(j(o,e,a,s,e.value,!0),a!==l&&(x.has(s)||x.set(s,{}),n.set(x.get(s),[s.name,a,o],e.value)))},V=(e,t,i,a)=>{a=a||"dataBinding";const s=e[i=i||"dataBinding"];e[i]={},e["_bind"+i]=s,s&&n.isArray(s)&&s.forEach((function(i){"wm.Variable"===e.category&&"dataBinding"===i.target&&(i.target="dataSet"),B(i,t,a,e)}))},G=(t,a,s,o,r,l)=>{if(C.hasCordova){let i;s&&(i=O[s]),e.appManager.notify("device-file-download",{url:t.url,name:a,extension:i,headers:t.headers,successCb:o,errorCb:r})}else!n.isEmpty(t.headers)||C.hasCordova&&localStorage.getItem(C.XSRF_COOKIE_NAME)?k(t,o,r):((e,t,a)=>{"/"===e.url[1]&&"/"===e.url[2]&&(e.url=e.url.slice(0,1)+e.url.slice(2));let s,o,r,l,c="";const d="fileDownloadIFrame",p="fileDownloadForm",u="Content-Type",h=e.url,m=n.get(e.headers,u),g=n.pickBy(e.headers,(function(e,t){return t!==u}));s=$("#"+d),s.length&&s.first().remove(),s=$('<iframe id="'+d+'" name="'+d+'" class="ng-hide"></iframe>'),o=$('<form id="'+p+'" name="'+p+'"></form>'),c+=-1!==h.indexOf("?")?h.substring(h.indexOf("?")+1):"",c+=m===I.CONTENT_TYPES.FORM_URL_ENCODED?(c?"&":"")+e.dataParams:"",o.attr({target:s.attr("name"),action:h,method:e.method,enctype:n.isEmpty(e.data)&&n.isEmpty(c)?I.CONTENT_TYPES.MULTIPART_FORMDATA:m}),n.includes(I.NON_BODY_HTTP_METHODS,n.toUpper(e.method))&&N(c,g),n.isEmpty(e.data)?l=n.isEmpty(a)?g:a:(N(e.data,g),l=g),n.forEach(l,(function(e,t){r=$('<input type="hidden">'),r.attr({name:t,value:e}),o.append(r)})),$("body").append(s),setTimeout((function(){s.contents().find("body").append(o),o.submit(),i.triggerFn(t)}),100)})(t,o,l)},W=()=>window.File&&window.FileReader&&window.FileList&&window.Blob,U=R,q=(t,a)=>{let s;return n.isDate(t)?s=t.getTime():(isNaN(t)||(t=parseInt(t,10)),s=t&&moment(t).valueOf()),isNaN(s)&&a!==i.DataType.TIME||a===i.DataType.TIMESTAMP?s:(a!==i.DataType.TIME||s||(s=moment((new Date).toDateString()+" "+t).valueOf()),t&&e.appManager.getPipe("date").transform(s,(e=>i.DEFAULT_FORMATS[n.toUpper(e)])(a)))},z=(e,t)=>(n.includes(t,".")&&(t=n.toLower(i.extractType(t))),n.isArray(e)?n.map(e,(function(e){return q(e,t)})):q(e,t));class H{initBinding(e,t,i){V(e,e._context,t,i)}notifyInflight(t,i,n){e.appManager.notify("toggle-variable-state",{variable:t,active:i,data:n})}}class Q{initBinding(e,t,i){V(e,e._context,t,i)}notifyInflight(t,i,n,a){e.appManager.notify("toggle-variable-state",{variable:t,active:i,data:n,options:a})}setRequestTrackId(e,t){const i=e?.headers?.get("x-wm-request-track-id");i&&(t._requestTrackId=i)}httpCall(t,i,n){return new Promise(((a,s)=>{i._observable=e.httpService.sendCallAsObservable(t,n).subscribe((e=>{e&&e.type&&(this.setRequestTrackId(e,i),a(e))}),(t=>{this.setRequestTrackId(t,i),e.httpService.isPlatformSessionTimeout(t)?(this.notifyInflight(i,!1,t),t._401Subscriber.asObservable().subscribe((e=>a(e)),(e=>s(e)))):s(t)}))}))}prepareCallbackOptions(e,t){let i={};return i.xhrObj=e,t&&n.extend(i,t),i}}class Y extends Q{constructor(){super(...arguments),this.serviceRegistry=new Map}invoke(e,t){const i=this.serviceRegistry.get(e.service);return null==i?(_("onError",e,null),Promise.reject(`Could not find service '${i}'`)):(this.notifyInflight(e,!0),i.invoke(e,t).then((t=>(this.notifyInflight(e,!1,t),t)),(t=>(this.notifyInflight(e,!1,t),Promise.reject(t)))))}registerService(e){this.serviceRegistry.set(e.name,e)}}class X{static setPaginationQueryParams(e,t,i){t.parameters.forEach((t=>{let n;n="offset"===i.type||i.input.offset?"offset":"page",t.name===i.input[n].split(".")[0]?t.sampleValue=e.pagination.page:t.name===i.input.size.split(".")[0]&&(t.sampleValue=e.pagination.size)}))}static setVariablePagination(e,t,i){e.pagination||(e.pagination={empty:!1}),e.pagination.size=t.size,e.pagination.page=t.page||0,e.pagination.totalElements=t.totalElements,e.pagination.numberOfElements=e.pagination.size,e.pagination.number=i.page?i.page-1:0,e.pagination.totalPages=e.pagination.totalElements/e.pagination.size,e.pagination.totalElements%e.pagination.size==0?e.pagination.totalPages=parseInt(e.pagination.totalPages):e.pagination.totalPages=parseInt(e.pagination.totalPages)+1,t.next?(e.pagination.next=t.next,e.pagination.prev=t.prev,e.pagination.last=!t.next,e.pagination.first=!t.prev):(e.pagination.first=e.pagination.page<=1,e.pagination.last=""===t.hasMoreItems?!(e.pagination.page<e.pagination.totalPages):!t.hasMoreItems)}static setPaginationItems(e,t,i,a,o){if(n.startsWith(e,"$body")){const n=e.replace("$body.","");try{i[a]=s.jmespath.search(t,n)}catch{console.warn(`${e} expression needs to be corrected as per JMES guidelines`)}}else if(n.startsWith(e,"$header")){const t=e.replace("$header.",""),n=Object.fromEntries(o.headers),r=t.split(".");try{i[a]=s.jmespath.search(n,r[0].toLowerCase())}catch{console.warn(`${e} expression needs to be corrected as per JMES guidelines`)}if(i[a]?.length){let t=i[a].join();if(1===r.length)i[a]=t;else{let n=r.slice(1).join(".");const o=JSON.parse(t);/[!@#$%^&*()+\=\[\]{};':"\\|,<>\/?]+/.test(n)&&(n="headerResp."+n);try{i[a]=s.jmespath.search(o,n)}catch{console.warn(`${e} expression needs to be corrected as per JMES guidelines`)}}}}}static getPaginationInfo(e,t){return e?.paginationInfo?e.paginationInfo:t._paginationConfig}static checkPaginationAtQuery(e,t,i){const a=this.getPaginationInfo(e,t);if(!(i&&i.page&&a?.input.size&&t.pagination))return;let s;s="offset"===a.type||a.input.offset?"offset":"page";const o=a.input[s].split(".")[0],r=n.find(e.parameters,(function(e){return e.name===o}));!n.isEmpty(t.dataBinding)&&r&&"query"===r.parameterType&&(a.output?.page||"offset"===a.type?t.pagination.page=this.getOffsetInfo(t,i):t.pagination.page=i.page,this.setPaginationQueryParams(t,e,a))}static getOffsetInfo(e,t){return e.pagination.size*(t.page?t.page-1:1)}static setPaginationAtReq(e,t,i,a,s,o,r){let l,c={},d={};l="offset"===e.type||e.input.offset?"offset":"page";const p=e.input[l].split(".")[0],u=n.find(t.parameters,(function(e){return e.name===p}));if("header"===u?.parameterType)n.set(c,e.input[l],i.pagination.page),n.set(c,e.input.size,i.pagination.size),a[p]=JSON.stringify(c[p]),d.headers=a;else if("body"===u?.parameterType){const t=JSON.parse(u.sampleValue),a=e.input[l].split(".")[1];if(t&&t[a]){const o=e.input[l].split(".").splice(1).join(".");"offset"!==l?n.set(c,o,i.pagination.page):n.set(c,o,this.getOffsetInfo(i,r)),n.set(c,e.input.size.split(".").splice(1).join("."),i.pagination.size),t[a]=c[a],s=JSON.stringify(t),d.requestBody=s}}else if(i.pagination.next&&u)if("path"===u.parameterType){const e=t.relativePath.split("/"),n="{"+u.name+"}",a=e.indexOf(n);let s,r,l;s=i.pagination.isNext?i.pagination.next.split("/"):i.pagination.prev.split("/"),t.directPath?(l=new URL(o),r=l.pathname.split("/"),r[a]=s[a],l.pathname=r.join("/"),o=l.href,d.url=o):(r=o.split("/"),r[a+1]=s[a],o=r.join("/"),d.url=o)}else if("query"===u.parameterType){const e=o.split("?");let t;t=i.pagination.isNext?i.pagination.next.split("?"):i.pagination.prev.split("?"),e[1]=t[1],o=e.join("?"),d.url=o}return d}static setParameterVal(e,t,i,a){const s=this.getPaginationInfo(i,a).input[e].split(".")[0],o=n.find(i.parameters,(function(e){return e.name===s}));t[e]=n.result(o,"sampleValue")}static generatePaginationRes(e,t,i,a,s,o){let r={};const l=t.output;if(l?.next)l&&(this.setPaginationItems(l.next,i,r,"next",a),this.setPaginationItems(l.prev,i,r,"prev",a));else{if(l?.size?this.setPaginationItems(l.size,i,r,"size",a):this.setParameterVal("size",r,e,o),l?.page?this.setPaginationItems(l.page,i,r,"page",a):"offset"!==t.type&&this.setParameterVal("page",r,e,o),n.startsWith(l?.totalElements,"$minValue")){const e=l.totalElements.replace("$minValue=",""),t=r.page?r.page:s.page,i=r.size*t;!o.pagination||o.pagination.totalElements>i?r.totalElements=parseInt(e):r.totalElements=i+1}else l?.totalElements?this.setPaginationItems(l.totalElements,i,r,"totalElements",a):"offset"===t.type||t.input.offset?r.totalElements=r.size*(s.page?s.page:1)+1:r.totalElements=r.size*r.page+1;l?.hasMoreItems?this.setPaginationItems(l.hasMoreItems,i,r,"hasMoreItems",a):r.hasMoreItems=""}return r}}const K=(e,t,a)=>{const s=n.toLower(i.extractType(n.get(t,"items.type")||t.type)),o=C.isStudioMode?t["x-WM-CONTENT_TYPE"]:t.contentType;if(W())return"file"===s||"string"!==o&&o?n.isArray(a)&&"file"===s?n.forEach(a,(function(n){e.append(t.name,n&&n.content||i.getBlob(n),n.name)})):e.append(t.name,i.getBlob(a,o),a&&a.name):(n.isObject(a)&&(a=JSON.stringify(a)),e.append(t.name,a)),e},J=(e,t)=>{const a={},s=[];let o;return n.forEach(t,(function(t){o=n.get(e,t.name),n.isUndefined(o)||""===o||null===o||t.readOnly?t.required&&s.push(t.name||t.id):(o=i.isDateTimeType(t.type)?z(o,t.type):o,n.isArray(o)&&"string"===n.toLower(i.extractType(t.type))&&(o=n.join(o,",")),a[t.name]=o)})),{requestBody:a,missingParams:s}};class Z{static constructRequestParams(t,a,s,o){if(t=t||{},null===a)return{error:{type:P.REST_SERVICE.ERR_TYPE.USER_UNAUTHORISED,message:P.REST_SERVICE.ERR_MSG.USER_UNAUTHORISED,field:"_wmServiceOperationInfo"}};if(n.isEmpty(a))return{error:{type:P.REST_SERVICE.ERR_TYPE.METADATA_MISSING,message:P.REST_SERVICE.ERR_MSG.METADATA_MISSING,field:"_wmServiceOperationInfo"}};if(a&&a.invalid)return{error:{type:P.REST_SERVICE.ERR_TYPE.CRUD_OPERATION_MISSING,message:P.REST_SERVICE.ERR_MSG.CRUD_OPERATION_MISSING,field:"_wmServiceOperationInfo"}};const r=a.directPath||"",l=a.basePath?a.basePath+a.relativePath:a.relativePath,c=(e=>n.includes(["QueryExecution","ProcedureExecution"],e.controller)&&n.includes(["put","post"],e.operationType))(t);let d,p,u,h,m,g,f,v,b,y,w,O,T,x,D,R,S="",_={},M=[],N=null;function k(){return y||(y=new FormData,y)}if(x=n.get(a.securityDefinitions,"0"),x)switch(x.type){case P.REST_SERVICE.SECURITY_DEFN.OAUTH2:if(L=x[P.REST_SERVICE.OAUTH_PROVIDER_KEY],F=null,D=e.oauthService.getAccessToken(L,F),!D)return{error:{type:P.REST_SERVICE.ERR_TYPE.NO_ACCESSTOKEN,message:P.REST_SERVICE.ERR_MSG.NO_ACCESSTOKEN},securityDefnObj:x};_[P.REST_SERVICE.AUTH_HDR_KEY]=P.REST_SERVICE.PREFIX.AUTH_HDR_VAL.OAUTH+" "+D;break;case P.REST_SERVICE.SECURITY_DEFN.BASIC:if(f=s.wm_auth_username,v=s.wm_auth_password,!f||!v)return{error:{type:P.REST_SERVICE.ERR_TYPE.NO_CREDENTIALS,message:P.REST_SERVICE.ERR_MSG.NO_CREDENTIALS},securityDefnObj:x};_[P.REST_SERVICE.AUTH_HDR_KEY]=P.REST_SERVICE.PREFIX.AUTH_HDR_VAL.BASIC+" "+btoa(f+":"+v),N={type:P.REST_SERVICE.AUTH_TYPE.BASIC}}var L,F;if(X.checkPaginationAtQuery(a,t,o),a.proxySettings=a.proxySettings||{web:!0,mobile:!1},b=a.httpMethod||a.methodType,w=C.hasCordova?a.proxySettings.mobile:a.proxySettings.web,R=a.proxySettings.withCredentials,u=w?l:r,n.forEach(a.parameters,(function(e){function o(){s?(O=s[e.name]&&n.isObject(s[e.name])?s[e.name]:s,T=n.get(a,["definitions",e.type])):(O=r||{},T=e.children)}let r=e.sampleValue;if(i.isDefined(r)&&null!==r&&""!==r||c&&"file"!==e.type)switch(t.serviceType===P.SERVICE_TYPE.DATA&&i.isDateTimeType(e.type)&&(r=z(r,e.type)),n.isArray(r)&&"string"===n.toLower(i.extractType(e.type))&&t.serviceType===P.SERVICE_TYPE.DATA&&(r=n.join(r,",")),e.parameterType.toUpperCase()){case"QUERY":if(n.isNull(r)&&(l=t.controller,h=t.serviceType,l===P.CONTROLLER_TYPE.QUERY&&h===P.SERVICE_TYPE.DATA))break;S?S+="&"+e.name+"="+encodeURIComponent(r):S="?"+e.name+"="+encodeURIComponent(r);break;case"PATH":m=new RegExp("\\s*\\{\\s*"+e.name+"(:\\.\\+)?\\s*\\}\\s*"),u=u.replace(m,r);break;case"HEADER":_[e.name]=r;break;case"BODY":c?(o(),d=J(O,T),p=d.requestBody,M=n.concat(M,d.missingParams)):p=r;break;case"FORMDATA":c&&e.name===A.WM_DATA_JSON?(o(),d=J(O,T),p=K(k(),e,d.requestBody),M=n.concat(M,d.missingParams)):p=K(k(),e,r)}else e.required&&M.push(e.name||e.id);var l,h})),M.length)return{error:{type:P.REST_SERVICE.ERR_TYPE.REQUIRED_FIELD_MISSING,field:M.join(","),message:i.replace(P.REST_SERVICE.ERR_MSG.REQUIRED_FIELD_MISSING,[M.join(",")]),skipDefaultNotification:!0}};n.includes(I.NON_BODY_HTTP_METHODS,n.toUpper(b))||a.consumes&&a.consumes[0]===I.CONTENT_TYPES.MULTIPART_FORMDATA||(_["Content-Type"]=a.consumes&&a.consumes[0]||"application/json"),n.includes(a.consumes,I.CONTENT_TYPES.FORM_URL_ENCODED)&&!n.includes(I.NON_BODY_HTTP_METHODS,(b||"").toUpperCase())?(S&&(p=(p?p+"&":"")+S.substring(1)),_["Content-Type"]=I.CONTENT_TYPES.FORM_URL_ENCODED):u+=S,w&&(_=t.serviceType!==P.SERVICE_TYPE.REST&&t.serviceType!==P.SERVICE_TYPE.OPENAPI||a.skipCloakHeaders?_:(e=>{const t={},i=P.REST_SERVICE.UNCLOAKED_HEADERS,a=P.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY;return n.forEach(e,(function(e,s){n.includes(i,s.toUpperCase())?t[s]=e:t[a+s]=e})),t})(_),t.getPrefabName()&&-1!==P.REST_SUPPORTED_SERVICES.indexOf(t.serviceType)?(u="prefabs/"+t.getPrefabName()+u,h="invokePrefabRestService"):t.getPrefabName()||(u="services"+u),u=E.project.deployedUrl+u);const j=X.getPaginationInfo(a,t);if(j&&t.pagination){const e=X.setPaginationAtReq(j,a,t,_,p,u,o);e&&(e.headers?_=e.headers:e.requestBody?p=e.requestBody:e.url&&(u=e.url))}return g={projectID:E.project.id,url:u,target:h,method:b,headers:_,data:p,authDetails:N,isDirectCall:!w,isExtURL:t.serviceType===P.SERVICE_TYPE.REST,withCredentials:R},g}static isFileUploadRequest(e){return"FileService"===e.service&&"uploadFile"===e.operation}static excludePaginationParams(e){return n.map(n.reject(e,(e=>n.includes(P.PAGINATION_PARAMS,e.name))),(function(e){return e.name}))}}const ee=new Map,te={Variable:Q,Action:H,"wm.NavigationVariable":class extends H{invoke(t,i){((t,i)=>{let a;t.dataSet=i&&i.data||t.dataSet;const s=t.dataBinding.pageName||t.pageName,o=t.operation,r=n.clone(t.dataSet),l=n.isNil(i?.cacheable)?t.cacheable:i.cacheable;switch(i=i||{},n.isNil(l)||n.isString(l)&&""===l.trim()||(r._cache_page=l),o){case"goToPreviousPage":e.navigationService.goToPrevious();break;case"gotoPage":e.navigationService.goToPage(s,{transition:t.pageTransitions,$event:i.$event,urlParams:r,cacheable:t.cacheable});break;case"gotoView":a=t.dataBinding&&t.dataBinding.viewName||t.viewName;break;case"gotoTab":a=t.dataBinding&&t.dataBinding.tabName||t.tabName;break;case"gotoAccordion":a=t.dataBinding&&t.dataBinding.accordionName||t.accordionName;break;case"gotoSegment":a=t.dataBinding&&t.dataBinding.segmentName||t.segmentName}a&&e.navigationService.goToView(a,{pageName:s,transition:t.pageTransitions,$event:i.$event,urlParams:r},t)})(t,i)}},"wm.NotificationVariable":class extends H{onToasterClick(e){_("onClick",e,"")}onToasterHide(e){_("onHide",e,"")}notifyViaToaster(t,i){const n=(i.class||t.dataBinding.class||"info").toLowerCase(),a=i.message||t.dataBinding.text,s=i.title,o="toast-"+(i.position||t.dataBinding.toasterPosition||"bottom right").replace(" ","-"),r=t.dataBinding.page;let l,c=parseInt(i.duration||t.dataBinding.duration,null);c||(c=0!==c&&"success"===n?3e3:0),l=t.dataBinding.content&&"page"===t.dataBinding.content&&r?e.toasterService.showCustom(r,{positionClass:o,timeOut:c,partialParams:t._binddataSet,context:t._context}):e.toasterService.show(n,s,a||null,{positionClass:o,timeOut:c,enableHtml:!0}),t.onClick&&l.onTap.subscribe(this.onToasterClick.bind(this,t)),t.onHide&&l.onHidden.subscribe(this.onToasterHide.bind(this,t))}getDialogConfig(t,i,n,a){return{title:i.title||t.dataBinding.title,text:i.message||t.dataBinding.text,okButtonText:i.okButtonText||t.dataBinding.okButtonText||"OK",cancelButtonText:i.cancelButtonText||t.dataBinding.cancelButtonText||"CANCEL",alerttype:i.alerttype||t.dataBinding.alerttype||"information",onOk:()=>{e.dialogService.close(n,void 0,a)},onCancel:()=>{_("onCancel",t,i.data),e.dialogService.close(n,void 0)},onClose:()=>{_("onClose",t,i.data)}}}notifyViaDialog(t,a){const s="PREFAB"===i.getWmProjectProperties().type,o=(s?"Prefab":"Common")+n.capitalize(t.operation)+"Dialog";let r=this.getDialogConfig(t,a,o,(()=>_("onOk",t,a.data)));r=s?r:{notification:r},e.dialogService.open(o,void 0,r)}notify(e,t,i,n){t=t||{},"toast"===e.operation?this.notifyViaToaster(e,t):this.notifyViaDialog(e,t)}getMessage(e){return e.dataBinding.text}setMessage(e,t){return n.isString(t)&&(e.dataBinding.text=t),e.dataBinding.text}getOkButtonText(e){return e.dataBinding.okButtonText}setOkButtonText(e,t){return n.isString(t)&&(e.dataBinding.okButtonText=t),e.dataBinding.okButtonText}getToasterDuration(e){return e.dataBinding.duration}setToasterDuration(e,t){return e.dataBinding.duration=t,e.dataBinding.duration}getToasterClass(e){return e.dataBinding.class}setToasterClass(e,t){return n.isString(t)&&(e.dataBinding.class=t),e.dataBinding.class}getToasterPosition(e){return e.dataBinding.class}setToasterPosition(e,t){return n.isString(t)&&(e.dataBinding.position=t),e.dataBinding.position}getAlertType(e){return e.dataBinding.alerttype}setAlertType(e,t){return n.isString(t)&&(e.dataBinding.alerttype=t),e.dataBinding.alerttype}getCancelButtonText(e){return e.dataBinding.cancelButtonText}setCancelButtonText(e,t){return n.isString(t)&&(e.dataBinding.cancelButtonText=t),e.dataBinding.cancelButtonText}},"wm.LoginVariable":class extends H{validate(e){let t,i,a;for(i in["rememberme","remembermecheck"].forEach((t=>{n.isBoolean(e[t])&&(a=t)})),a=a||"j_rememberme",e[a]=!!n.isBoolean(e[a])&&e[a],e)if(e.hasOwnProperty(i)&&(""===e[i]||void 0===e[i])){t="Please provide required credentials";break}return t}migrateOldParams(e){const t={},i={usernametext:"j_username",username:"j_username",passwordtext:"j_password",password:"j_password",remembermecheck:"j_rememberme",rememberme:"j_rememberme"};return n.each(e,(function(e,n){i[n]?t[i[n]]=e:t[n]=e})),t}redirectToAppBasePath(){e.routerService.navigate(["/"]).then((e=>{e&&window.location.reload()}))}login(t,a,s,o){let r;const l=(a=a||{}).loginInfo||a.input||t.dataBinding,c=this.validate(l);if(c)return i.triggerFn(o,c),void _("onError",t,c);let d=i.getClonedObject(l);const p=_(P.EVENT.BEFORE_UPDATE,t,d);if(n.isObject(p))d=p;else if(!1===p)return void i.triggerFn(o);d=this.migrateOldParams(d);const u=n.get(e.securityService.get(),"userInfo.userName");this.notifyInflight(t,!0),t.promise=e.securityService.appLogin(d,(a=>{e.dialogService.close("CommonLoginDialog"),e.appManager.reloadAppData().then((o=>{_(P.EVENT.RESULT,t,n.get(o,"userInfo")),r=_(P.EVENT.PREPARE_SETDATA,t,n.get(o,"userInfo")),r&&n.set(o,"userInfo",r),this.notifyInflight(t,!1,a),i.triggerFn(s),setTimeout((()=>{if(_(P.EVENT.SUCCESS,t,n.get(o,"userInfo")),t.useDefaultSuccessHandler){const t=u===d.j_username;u&&!t||e.appManager.executeSessionFailureRequests();const i=e.securityService.getCurrentRouteQueryParam("redirectTo"),a=e.appManager.noRedirect(),s=e.securityService.getRedirectedRouteQueryParams();if(s.redirectTo&&delete s.redirectTo,e.appManager.noRedirect(!1),u)if(n.isEmpty(i)){const i=e.securityService.get(),a=n.get(i,"loginConfig.sessionTimeout.type")||"PAGE";t&&"DIALOG"===a||this.redirectToAppBasePath()}else u===d.j_username?e.routerService.navigate([`/${i}`],{queryParams:s}):this.redirectToAppBasePath();else n.isEmpty(i)?a||e.routerService.navigate(["/"]):e.routerService.navigate([`/${i}`],{queryParams:s})}_(P.EVENT.CAN_UPDATE,t,n.get(o,"userInfo"))}))}))}),(e=>{_(P.EVENT.RESULT,t,e),this.notifyInflight(t,!1,e);const n=e.error||"Invalid credentials.",a=e.details;C.isRunMode&&_("onError",t,n,a,!0),i.triggerFn(o,n,a),_(P.EVENT.CAN_UPDATE,t,e)}))}},"wm.LogoutVariable":class extends H{logout(t,n,a,s){let o,r,l,c;o=function(e,n,a){C.isStudioMode||_("onError",t,e,a),i.triggerFn(s,e,a)},l=_(P.EVENT.BEFORE_UPDATE,t,null),!1!==l?e.securityService.isAuthenticated((n=>{n?(this.notifyInflight(t,!0),t.promise=e.securityService.appLogout((n=>{let s=n.body;s=i.getValidJSON(s),e.appManager.reloadAppData().then((()=>{this.notifyInflight(t,!1,s),_(P.EVENT.RESULT,t,s),c=_(P.EVENT.PREPARE_SETDATA,t,s),c&&(s=c),setTimeout((()=>{_(P.EVENT.SUCCESS,t,s),_(P.EVENT.CAN_UPDATE,t,s)}))})),s&&s.result?window.location.href=s.result:t.useDefaultSuccessHandler&&(r=t.redirectTo,r&&"login.html"!==r&&"index.html"!==r||(r=""),e.routerService.navigate([`/${r}`]),window.cordova||setTimeout((()=>{window.location.reload()}))),i.triggerFn(a)}),o)):o("No authenticated user to logout.")}),(e=>{this.notifyInflight(t,!1,e),o(e)})):i.triggerFn(s)}},"wm.DeviceVariable":Y,"wm.WebSocketVariable":class extends Q{constructor(){super(...arguments),this.scope_var_socket_map=new Map,this.PROPERTY={SERVICE:"service",DATA_UPDATE_STRATEGY:"dataUpdateStrategy",DATA_LIMIT:"dataLimit"},this.DATA_UPDATE_STRATEGY={REFRESH:"refresh",PREPEND:"prepend",APPEND:"append"}}shouldAppendData(e){return(e=e||this)[this.PROPERTY.DATA_UPDATE_STRATEGY]!==this.DATA_UPDATE_STRATEGY.REFRESH}shouldAppendLast(e){return e[this.PROPERTY.DATA_UPDATE_STRATEGY]===this.DATA_UPDATE_STRATEGY.APPEND}getDataLimit(e){return e.dataLimit}getURL(t){const i=t.getPrefabName(),a=i?n.get(e.metadataService.getByOperationId(t.operationId,i),"wmServiceOperationInfo"):n.get(e.metadataService.getByOperationId(t.operationId),"wmServiceOperationInfo"),s=t.dataBinding;let o;if(n.forEach(a.parameters,(function(e){e.sampleValue=s[e.name]})),$.extend(a,{skipCloakHeaders:!0}),o=Z.constructRequestParams(t,a,s),!o.error||!o.error.message)return o.url;this._onSocketError(t,{data:o.error.message})}_onSocketMessage(e,t){let a,s,o,r,l,c=n.get(t,"data");c=i.getValidJSON(c)||i.xmlToJson(c)||c,a=_(P.EVENT.MESSAGE_RECEIVE,e,c,t),c=i.isDefined(a)?a:c,this.shouldAppendData(e)?(e.dataSet=e.dataSet||[],s=e.dataSet.length,o=this.getDataLimit(e),r=this.shouldAppendLast(e),o&&s>=o&&(r?e.dataSet.shift():e.dataSet.pop()),l=r?s:0,e.dataSet.splice(l,0,c)):e.dataSet=i.isDefined(a)?a:c}_onBeforeSend(e,t){return _(P.EVENT.BEFORE_SEND,e,t)}_onBeforeSocketClose(e,t){return _(P.EVENT.BEFORE_CLOSE,e,n.get(t,"data"),t)}_onBeforeSocketOpen(e,t){return _(P.EVENT.BEFORE_OPEN,e,n.get(t,"data"),t)}_onSocketOpen(e,t){e._socketConnected=!0,_(P.EVENT.OPEN,e,n.get(t,"data"),t)}freeSocket(e){this.scope_var_socket_map.set(e,void 0)}_onSocketClose(e,t){e._socketConnected=!1,this.freeSocket(e),_(P.EVENT.CLOSE,e,n.get(t,"data"),t)}_onSocketError(e,t){e._socketConnected=!1,this.freeSocket(e),_(P.EVENT.ERROR,e,n.get(t,"data")||"Error while connecting with "+e.service,t)}getSocket(e){const t=this.getURL(e);let n=this.scope_var_socket_map.get(e);return n||(C.hasCordova||!i.isInsecureContentRequest(t)?(n=new a.$WebSocket(t),n.onOpen(this._onSocketOpen.bind(this,e)),n.onError(this._onSocketError.bind(this,e)),n.onMessage(this._onSocketMessage.bind(this,e)),n.onClose(this._onSocketClose.bind(this,e)),this.scope_var_socket_map.set(e,n),e._socket=n,n):void i.triggerFn(this._onSocketError.bind(this,e)))}open(e,t,n){let a;if(!1!==this._onBeforeSocketOpen(e))return a=this.getSocket(e),i.triggerFn(t),a;i.triggerFn(n)}close(e){const t=this._onBeforeSocketClose(e),i=this.getSocket(e);!1!==t&&i.close()}send(e,t){const a=this.getSocket(e);let s;t=t||n.get(e,"dataBinding.RequestBody"),s=this._onBeforeSend(e,t),!1!==s&&(t=i.isDefined(s)?s:t,t=i.isObject(t)?JSON.stringify(t):t,a.send(t,0))}}};class ie{static get(e){return ee.has(e)?ee.get(e):ee.set(e,new te[e]).get(e)}}const ne=()=>ie.get(P.CATEGORY.DEVICE);class ae extends t.ApiAwareVariable{constructor(e){super(),Object.assign(this,e)}init(){ne().initBinding(this)}invoke(e,t,i){ne().invoke(this,e).then(t,i)}}const se=()=>ie.get(P.CATEGORY.NAVIGATION);class oe extends t.BaseAction{constructor(e){super(),Object.assign(this,e)}invoke(e){se().invoke(this,e)}navigate(e){this.invoke(e)}init(){se().initBinding(this,"dataBinding","dataBinding"),se().initBinding(this,"dataSet","dataSet")}}const re=()=>ie.get(P.CATEGORY.NOTIFICATION);class le extends t.BaseAction{constructor(e){super(),Object.assign(this,e)}execute(e,t){const n=super.execute(e,t);return i.isDefined(n)?n:new Promise(((n,a)=>{switch(e){case i.DataSource.Operation.INVOKE:this.invoke(t,n,a);break;case i.DataSource.Operation.NOTIFY:this.notify(t,n,a);break;default:a(`${e} operation is not supported on this data source`)}}))}notify(e,t,i){re().notify(this,e,t,i)}invoke(e,t,i){this.notify(e,t,i)}getMessage(){return re().getMessage(this)}setMessage(e){return re().setMessage(this,e)}clearMessage(){return re().setMessage(this,"")}getOkButtonText(){return re().getOkButtonText(this)}setOkButtonText(e){return re().setOkButtonText(this,e)}getToasterDuration(){return re().getToasterDuration(this)}setToasterDuration(e){return re().setToasterDuration(this,e)}getToasterClass(){return re().getToasterClass(this)}setToasterClass(e){return re().setToasterClass(this,e)}getToasterPosition(){return re().getToasterPosition(this)}setToasterPosition(e){return re().setToasterPosition(this,e)}getAlertType(){return re().getAlertType(this)}setAlertType(e){return re().setAlertType(this,e)}getCancelButtonText(){return re().getCancelButtonText(this)}setCancelButtonText(e){return re().setCancelButtonText(this,e)}init(){re().initBinding(this,"dataBinding","dataBinding"),re().initBinding(this,"dataSet","dataSet")}}const ce=()=>ie.get(P.CATEGORY.LOGIN);class de extends t.BaseAction{constructor(e){super(),Object.assign(this,e)}login(e,t,i){return ce().login(this,e,t,i)}invoke(e,t,i){return this.login(e,t,i)}cancel(){}init(){ce().initBinding(this,"dataBinding","dataBinding")}}class pe extends t.BaseAction{constructor(e){super(),Object.assign(this,e)}logout(e,t,i){ie.get(P.CATEGORY.LOGOUT).logout(this,e,t,i)}invoke(e,t,i){this.logout(e,t,i)}cancel(){}}const ue=()=>ie.get(P.CATEGORY.WEBSOCKET);class he extends t.ApiAwareVariable{constructor(e){super(),Object.assign(this,e)}open(e,t){return ue().open(this,e,t)}close(){return ue().close(this)}update(){return ue().update(this)}send(e){return ue().send(this,e)}cancel(){return this.close()}invoke(e,t,i){this.open(t,i)}init(){ue().initBinding(this)}}class me{static create(e,i){let n;switch(e.category){case t.VARIABLE_CONSTANTS.CATEGORY.MODEL:n=new t.ModelVariable(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.SERVICE:n=new t.ServiceVariable(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.LIVE:n=new t.LiveVariable(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.CRUD:n=new t.CrudVariable(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.DEVICE:n=new ae(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.NAVIGATION:n=new oe(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.NOTIFICATION:n=new le(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.LOGIN:n=new de(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.LOGOUT:n=new pe(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.TIMER:n=new t.TimerAction(e);break;case t.VARIABLE_CONSTANTS.CATEGORY.WEBSOCKET:n=new he(e)}return n._context=i,n.__cloneable__=!1,n}}class ge{constructor(e){this.$http=e,this.CONTEXT_APP="app"}isLoaded(){return!!this.metadataMap&&this.metadataMap.has(this.CONTEXT_APP)}load(e){let t;return t=i.hasCordova()?"metadata/"+(e?`prefabs/${e}/`:"app/")+"service-definitions.json":"./services/"+(e?`prefabs/${e}/`:"")+"servicedefs",new Promise(((i,n)=>{this.$http.send({url:t,method:"GET"}).then((t=>{this.metadataMap=this.metadataMap||new Map,this.providerMap=this.providerMap||new Map,t.body=t.body||{},this.metadataMap.set(e||this.CONTEXT_APP,t.body.serviceDefs),t.body.securityDefinitions&&this.providerMap.set(e||this.CONTEXT_APP,t.body.securityDefinitions.oauthProvider),i(t.body.serviceDefs)}),n)}))}getByOperationId(e,t){t=t||this.CONTEXT_APP;const i=this.metadataMap.get(t);return i&&i[e]}getByProviderId(e,t){t=t||this.CONTEXT_APP;const i=this.providerMap.get(t);return i&&i[e]}getByCrudId(e,t){t=t||this.CONTEXT_APP;const i=this.metadataMap.get(t);let n=[];for(let t in i)i[t]&&i[t].crudOperationId===e&&n.push(i[t]);return n}static{this.\u0275fac=function(e){return new(e||ge)(f.\u0275\u0275inject(g.AbstractHttpService))}}static{this.\u0275prov=f.\u0275\u0275defineInjectable({token:ge,factory:ge.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ge,[{type:o.Injectable}],(()=>[{type:g.AbstractHttpService}]),null);class fe{format(t,i){return e.appManager.getPipe("date").transform(t,i)}}class ve{constructor(e,i,n,a,s,o,r,l){this.httpService=e,this.metadataService=i,this.navigationService=n,this.routerService=a,this.toasterService=s,this.oAuthService=o,this.securityService=r,this.dialogService=l,S("http",this.httpService),S("metadata",this.metadataService),S("navigationService",this.navigationService),S("router",this.routerService),S("toaster",this.toasterService),S("oAuth",this.oAuthService),S("security",this.securityService),S("dialog",this.dialogService),t.wmSetDependency("oAuth",this.oAuthService),t.wmSetDependency("security",this.securityService),t.wmSetDependency("metadata",this.metadataService),t.wmSetDependency("http",this.httpService)}bulkCancel(e){Object.keys(e).forEach((t=>{const i=e[t];n.isFunction(i.cancel)&&i.cancel()}))}triggerStartUpdate(e){return Promise.all(Object.keys(e).map((t=>e[t])).filter((e=>e?.startUpdate&&e.invoke)).map((e=>e.invoke())))}processBindExp(e,a,s){const o=t.getTarget(s),r=t.getTargetNodeKey(e.target);let l=n.isArray(e.value)?e.value[0]:e.value;if(l)if(l.startsWith&&l.startsWith("bind:")){const t=i.$watch(l.replace("bind:",""),a,{},s.invokeOnParamChange.bind(s,e),void 0,void 0,e,(()=>s.isMuted));l=a.registerDestroyListener?a.registerDestroyListener(t):t}else n.isUndefined(e.value)||(t.setValueToNode(e.target,e,o,s,e.value,!0),o!==r&&(t.internalBoundNodeMap.has(s)||t.internalBoundNodeMap.set(s,{}),n.set(t.internalBoundNodeMap.get(s),[s.name,o,e.target],e.value)));return{name:e.target,value:l}}processBinding(e,t,i,a){const s=e[i=i||"dataBinding"];e[i]={},e["_bind"+i]=s,s&&n.isArray(s)&&s.forEach((i=>{"wm.Variable"===e.category&&"dataBinding"===i.target&&(i.target="dataSet"),this.processBindExp(i,t,e)}))}isVariableSeperated(e,t){return"wm.Variable"===e[t].category||"wm.ServiceVariable"===e[t].category||"wm.LiveVariable"===e[t].category||"wm.CrudVariable"===e[t].category}getBindSourceTarget(e){return"wm.LiveVariable"===e.category?"read"===e.operation?"filterFields":"inputFields":"wm.ModelVariable"===e.category?"dataSet":"dataBinding"}register(e,n,a){const s={Variables:{},Actions:{},callback:this.triggerStartUpdate};let o;for(const e in n){if(o=me.create(n[e],a),o.init(),this.isVariableSeperated(n,e)&&(this.processBinding(o,a,"dataBinding",this.getBindSourceTarget(o)),o.httpService=this.httpService,o.dateFormatter=new fe,o.subscribe("afterInvoke",(()=>i.$invokeWatchers(!0))),"wm.LiveVariable"===o.category&&"read"===o.operation&&i.processFilterExpBindNode(o._context,o.filterExpressions,o),"wm.CrudVariable"!==o.category&&"wm.ServiceVariable"!==o.category||(o.simulateFileDownload=G)),this.isVariableSeperated(n,e)||"wm.TimerVariable"===n[e].category)for(const e in P.EVENT)o[P.EVENT[e]]&&(o[P.EVENT[e]]=i.$parseEvent(o[P.EVENT[e]]));o instanceof t.BaseAction?s.Actions[e]=o:s.Variables[e]=o}return a.registerDestroyListener&&a.registerDestroyListener((()=>{this.bulkCancel(s.Variables),this.bulkCancel(s.Actions)})),s}destroy(){}registerDependency(e,i){S(e,i),t.wmSetDependency(e,i)}static{this.\u0275fac=function(e){return new(e||ve)(f.\u0275\u0275inject(g.AbstractHttpService),f.\u0275\u0275inject(ge),f.\u0275\u0275inject(g.AbstractNavigationService),f.\u0275\u0275inject(v.Router),f.\u0275\u0275inject(g.AbstractToasterService),f.\u0275\u0275inject(b.OAuthService),f.\u0275\u0275inject(y.SecurityService),f.\u0275\u0275inject(g.AbstractDialogService))}}static{this.\u0275prov=f.\u0275\u0275defineInjectable({token:ve,factory:ve.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ve,[{type:o.Injectable}],(()=>[{type:g.AbstractHttpService},{type:ge},{type:g.AbstractNavigationService},{type:v.Router},{type:g.AbstractToasterService},{type:b.OAuthService},{type:y.SecurityService},{type:g.AbstractDialogService}]),null);const be=u.ToastrModule.forRoot({maxOpened:1,autoDismiss:!0});class ye{static forRoot(){return{ngModule:ye,providers:[ve,ge,d.Location,{provide:d.LocationStrategy,useClass:d.HashLocationStrategy}]}}static{this.\u0275fac=function(e){return new(e||ye)}}static{this.\u0275mod=f.\u0275\u0275defineNgModule({type:ye})}static{this.\u0275inj=f.\u0275\u0275defineInjector({imports:[d.CommonModule,be,p.HttpClientModule,h.HttpServiceModule,l.OAuthModule,c.SecurityModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&f.\u0275setClassMetadata(ye,[{type:o.NgModule,args:[{imports:[d.CommonModule,be,p.HttpClientModule,h.HttpServiceModule,l.OAuthModule,c.SecurityModule],declarations:[]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&f.\u0275\u0275setNgModuleScope(ye,{imports:[d.CommonModule,w.ToastrModule,p.HttpClientModule,h.HttpServiceModule,l.OAuthModule,c.SecurityModule]}),e.$rootScope=E,e.CONSTANTS=C,e.DB_CONSTANTS={DATABASE_MATCH_MODES:{like:"LIKE",start:"STARTING_WITH",startignorecase:"STARTING_WITH_IGNORECASE",end:"ENDING_WITH",endignorecase:"ENDING_WITH_IGNORECASE",anywhere:"CONTAINING",anywhereignorecase:"CONTAINING_IGNORECASE",nowhere:"DOES_NOT_CONTAIN",nowhereignorecase:"DOES_NOT_CONTAIN_IGNORECASE",exact:"EQUALS",exactignorecase:"EQUALS_IGNORECASE",notequals:"NOT_EQUALS",notequalsignorecase:"NOT_EQUALS_IGNORECASE",between:"BETWEEN",in:"IN",notin:"NOTIN",lessthan:"LESS_THAN",lessthanequal:"LESS_THAN_OR_EQUALS",greaterthan:"GREATER_THAN",greaterthanequal:"GREATER_THAN_OR_EQUALS",null:"NULL",isnotnull:"IS_NOT_NULL",empty:"EMPTY",isnotempty:"IS_NOT_EMPTY",nullorempty:"NULL_OR_EMPTY"},DATABASE_EMPTY_MATCH_MODES:["NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"],DATABASE_RANGE_MATCH_MODES:["IN","NOTIN","BETWEEN","LESS_THAN","LESS_THAN_OR_EQUALS","GREATER_THAN","GREATER_THAN_OR_EQUALS","NOT_EQUALS"],DATABASE_NULL_EMPTY_MATCH:{NULL:"NULL",IS_NOT_NULL:"IS_NOT_NULL",EMPTY:"NULL",IS_NOT_EMPTY:"IS_NOT_NULL",NULL_OR_EMPTY:"NULL"},DATABASE_MATCH_MODES_WITH_QUERY:{LIKE:"${0} like ${1}",STARTING_WITH:"${0} like ${1}",STARTING_WITH_IGNORECASE:"${0} like ${1}",ENDING_WITH:"${0} like ${1}",ENDING_WITH_IGNORECASE:"${0} like ${1}",CONTAINING:"${0} like ${1}",CONTAINING_IGNORECASE:"${0} like ${1}",DOES_NOT_CONTAIN:"${0} not like ${1}",DOES_NOT_CONTAIN_IGNORECASE:"${0} not like ${1}",EQUALS:"${0}=${1}",EQUALS_IGNORECASE:"${0}=${1}",NOT_EQUALS:"${0}!=${1}",NOT_EQUALS_IGNORECASE:"${0}!=${1}",BETWEEN:"${0} between ${1}",IN:"${0} in ${1}",NOTIN:"${0} not in ${1}",LESS_THAN:"${0}<${1}",LESS_THAN_OR_EQUALS:"${0}<=${1}",GREATER_THAN:"${0}>${1}",GREATER_THAN_OR_EQUALS:"${0}>=${1}",NULL:"${0} is null",IS_NOT_NULL:"${0} is not null",EMPTY:"${0}=''",IS_NOT_EMPTY:"${0}<>''",NULL_OR_EMPTY:"${0} is null or ${0}=''"},DATABASE_STRING_MODES:["LIKE","STARTING_WITH","STARTING_WITH_IGNORECASE","ENDING_WITH","ENDING_WITH_IGNORECASE","CONTAINING","CONTAINING_IGNORECASE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_IGNORECASE","EQUALS","EQUALS_IGNORECASE","NOT_EQUALS","NOT_EQUALS_IGNORECASE"]},e.DeviceVariableManager=Y,e.DeviceVariableService=class{invoke(e,t){const n=this.operations.find((t=>t.name===e.operation));if(null==n)return _(P.EVENT.ERROR,e,null),Promise.reject(`Could not find operation '${e.operation}' in service '${this.name}'`);if(i.hasCordova()){const a=new Map;return void 0!==e.dataBinding&&(Object.entries(e).forEach((e=>{a.set(e[0],e[1])})),Object.entries(e.dataBinding).forEach((e=>{a.set(e[0],e[1])}))),n.invoke(e,t,a).then((function(t){return e.dataSet=t,i.$invokeWatchers(!0),_(P.EVENT.SUCCESS,e,t),t}),(function(t){return e.dataSet={},i.$invokeWatchers(!0),_(P.EVENT.ERROR,e,null),t}))}return Promise.resolve().then((()=>(_(P.EVENT.SUCCESS,e,n.model),n.model)))}},e.Formatter=fe,e.MetadataService=ge,e.SWAGGER_CONSTANTS=A,e.VARIABLE_CONSTANTS=P,e.VARIABLE_URLS={DATABASE:{searchTableData:{url:"/:service/:dataModelName/:entityName/search?page=:page&size=:size&:sort",method:"POST"},searchTableDataWithQuery:{url:"/:service/:dataModelName/:entityName/filter?page=:page&size=:size&:sort",method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"}},readTableData:{url:"/:service/:dataModelName/:entityName?page=:page&size=:size&:sort",method:"GET"},insertTableData:{url:"/:service/:dataModelName/:entityName",method:"POST"},insertMultiPartTableData:{url:"/:service/:dataModelName/:entityName",method:"POST",headers:{}},updateTableData:{url:"/:service/:dataModelName/:entityName/:id",method:"PUT"},updateMultiPartTableData:{url:"/:service/:dataModelName/:entityName/:id",method:"POST",headers:{}},deleteTableData:{url:"/:service/:dataModelName/:entityName/:id",method:"DELETE"},updateCompositeTableData:{url:"/:service/:dataModelName/:entityName/composite-id?:id",method:"PUT"},periodUpdateCompositeTableData:{url:"/:service/:dataModelName/:entityName/composite-id/periods?:id",method:"PUT"},updateMultiPartCompositeTableData:{url:"/:service/:dataModelName/:entityName/composite-id?:id",method:"POST",headers:{}},deleteCompositeTableData:{url:"/:service/:dataModelName/:entityName/composite-id?:id",method:"DELETE"},periodDeleteCompositeTableData:{url:"/:service/:dataModelName/:entityName/composite-id/periods?:id",method:"DELETE"},getDistinctDataByFields:{url:"/:service/:dataModelName/:entityName/aggregations?page=:page&size=:size&:sort",method:"POST"},exportTableData:{url:"/services/:dataModelName/:entityName/export?:sort",method:"POST"},readTableRelatedData:{url:"/:service/:dataModelName/:entityName/:id/:relatedFieldName?page=:page&size=:size&:sort",method:"GET"},executeNamedQuery:{url:"/:service/:dataModelName/queryExecutor/queries/:queryName?page=:page&size=:size&:queryParams",method:"GET"},executeCustomQuery:{url:"/:service/:dataModelName/queries/execute?page=:page&size=:size",method:"POST"},executeAggregateQuery:{url:"/services/:dataModelName/:entityName/aggregations?page=:page&size=:size&sort=:sort",method:"POST"},executeNamedProcedure:{url:"/:service/:dataModelName/procedureExecutor/procedure/execute/:procedureName?page=:page&size=:size&:procedureParams",method:"GET"},countTableDataWithQuery:{url:"/:service/:dataModelName/:entityName/count?:queryParams",method:"GET"}},oauthConfiguration:{getAuthorizationUrl:{url:"services/oauth2/:providerId/authorizationUrl",method:"GET"}}},e.VariableManagerFactory=ie,e.VariablesModule=ye,e.VariablesService=ve,e.WS_CONSTANTS=I,e.debounceVariableCall=U,e.formatDate=z,e.formatExportExpression=e=>(n.forEach(e,(function(e){e.expression&&(e.expression="${"+e.expression+"}")})),e),e.getEvaluatedOrderBy=(e,t)=>{let i,a;return!t||n.isEmpty(t)?e:e?(e=n.split(e,","),t=n.split(t,","),i=n.map(t,(function(e){return n.split(n.trim(e)," ")[0]})),n.remove(e,(function(e){return n.includes(i,n.split(n.trim(e)," ")[0])})),a=e.length?","+n.join(e,","):"",n.join(t,",")+a):t},e.initiateCallback=_,e.isFileUploadSupported=W,e.processBinding=V,e.setDependency=S,e.setInput=(e,t,a,s)=>{e=e||{};let o,r,l={};if(n.isObject(s))switch(s.type){case"file":a=i.getBlob(a,s.contentType);break;case"number":a=n.isNumber(a)?a:parseInt(a,10)}return n.isObject(t)?l=t:t.indexOf(".")>-1?(o=t.split("."),r=o.pop(),e=i.findValueOf(e,o.join("."),!0),l[t=r]=a):l[t]=a,n.forEach(l,(function(t,i){e[i]=t})),e},e.simulateFileDownload=G,e.toastrModule=be})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.mobile=e.wm.mobile||{},e.wm.mobile.runtime={}),e.ng.core)}(this,(function(e,t){"use strict";var i,n,a=(i=t,n=Object.create(null),i&&Object.keys(i).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(i,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return i[e]}})}})),n.default=i,Object.freeze(n));const s=["wmAppExt",""];class o{static{this.\u0275fac=function(e){return new(e||o)}}static{this.\u0275cmp=a.\u0275\u0275defineComponent({type:o,selectors:[["","wmAppExt",""]],attrs:s,decls:1,vars:0,template:function(e,t){1&e&&a.\u0275\u0275elementContainer(0)},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&a.\u0275setClassMetadata(o,[{type:t.Component,args:[{selector:"[wmAppExt]",template:"<ng-container></ng-container>"}]}],null,null),("undefined"==typeof ngDevMode||ngDevMode)&&a.\u0275setClassDebugInfo(o,{className:"AppExtComponent",filePath:"components/app-ext.component.ts",lineNumber:8});class r{static forRoot(){return{ngModule:r,providers:[]}}static{this.\u0275fac=function(e){return new(e||r)}}static{this.\u0275mod=a.\u0275\u0275defineNgModule({type:r})}static{this.\u0275inj=a.\u0275\u0275defineInjector({})}}("undefined"==typeof ngDevMode||ngDevMode)&&a.\u0275setClassMetadata(r,[{type:t.NgModule,args:[{declarations:[o],exports:[o]}]}],null,null),("undefined"==typeof ngJitMode||ngJitMode)&&a.\u0275\u0275setNgModuleScope(r,{declarations:[o],exports:[o]}),e.AppExtComponent=o,e.MobileRuntimeModule=r})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.mobile=e.wm.mobile||{},e.wm.mobile.runtime=e.wm.mobile.runtime||{},e.wm.mobile.runtime.dynamic={}),e.ng.core)}(this,(function(e,t){"use strict";var i,n,a=(i=t,n=Object.create(null),i&&Object.keys(i).forEach((function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(i,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return i[e]}})}})),n.default=i,Object.freeze(n));class s{static{this.\u0275fac=function(e){return new(e||s)}}static{this.\u0275mod=a.\u0275\u0275defineNgModule({type:s})}static{this.\u0275inj=a.\u0275\u0275defineInjector({})}}("undefined"==typeof ngDevMode||ngDevMode)&&a.\u0275setClassMetadata(s,[{type:t.NgModule,args:[{}]}],null,null),e.MOBILE_COMPONENT_MODULES_FOR_ROOT=[],e.MobileRuntimeDynamicModule=s})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/router"),require("@angular/common"),require("@wm/core"),require("@wm/security"),require("@wm/variables"),require("lodash-es"),require("@wm/components/page"),require("rxjs"),require("@wm/components/base"),require("tslib"),require("@wm/components/prefab"),require("@angular/common/http"),require("@angular/platform-browser"),require("@angular/forms"),require("ngx-toastr"),require("@wm/components/dialogs"),require("@wm/components/dialogs/confirm-dialog"),require("@wm/components/dialogs/design-dialog"),require("@wm/mobile/runtime"),require("@wm/http"),require("@wm/oAuth"),require("ngx-bootstrap/chronos"),require("ngx-bootstrap/datepicker"),require("ngx-bootstrap/utils"),require("@wm/components/dialogs/alert-dialog"),require("rxjs/operators"),require("@wm/transpiler"),require("@wm/build-task"),require("@wm/components/page/footer"),require("@wm/components/page/header"),require("@wm/components/page/left-panel"),require("@wm/components/page/right-panel"),require("@wm/components/page/top-nav"),require("@wm/components/basic"),require("@wm/components/basic/progress"),require("@wm/components/basic/rich-text-editor"),require("@wm/components/basic/search"),require("@wm/components/basic/tree"),require("@wm/components/input/calendar"),require("@wm/components/input/chips"),require("@wm/components/input/color-picker"),require("@wm/components/input/currency"),require("@wm/components/input/epoch"),require("@wm/components/input/file-upload"),require("@wm/components/input"),require("@wm/components/input/rating"),require("@wm/components/input/slider"),require("@wm/components/data/card"),require("@wm/components/data/form"),require("@wm/components/data/list"),require("@wm/components/data/live-table"),require("@wm/components/data/pagination"),require("@wm/components/data/table"),require("@wm/components/chart"),require("@wm/components/containers/accordion"),require("@wm/components/containers/linear-layout"),require("@wm/components/containers/layout-grid"),require("@wm/components/containers/panel"),require("@wm/components/containers/tabs"),require("@wm/components/containers/tile"),require("@wm/components/containers/wizard"),require("@wm/components/dialogs/iframe-dialog"),require("@wm/components/dialogs/login-dialog"),require("@wm/components/dialogs/partial-dialog"),require("@wm/components/navigation/breadcrumb"),require("@wm/components/navigation/menu"),require("@wm/components/navigation/navbar"),require("@wm/components/navigation/popover"),require("@wm/components/advanced/carousel"),require("@wm/components/advanced/login"),require("@wm/components/advanced/marquee"),require("ngx-bootstrap/timepicker"),require("ngx-bootstrap/dropdown"),require("ngx-bootstrap/pagination"),require("ngx-bootstrap/typeahead"),require("ngx-bootstrap/progressbar"),require("ngx-bootstrap/carousel"),require("ngx-bootstrap/popover"),require("ng-circle-progress"),require("ngx-bootstrap/tooltip")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/router","@angular/common","@wm/core","@wm/security","@wm/variables","lodash-es","@wm/components/page","rxjs","@wm/components/base","tslib","@wm/components/prefab","@angular/common/http","@angular/platform-browser","@angular/forms","ngx-toastr","@wm/components/dialogs","@wm/components/dialogs/confirm-dialog","@wm/components/dialogs/design-dialog","@wm/mobile/runtime","@wm/http","@wm/oAuth","ngx-bootstrap/chronos","ngx-bootstrap/datepicker","ngx-bootstrap/utils","@wm/components/dialogs/alert-dialog","rxjs/operators","@wm/transpiler","@wm/build-task","@wm/components/page/footer","@wm/components/page/header","@wm/components/page/left-panel","@wm/components/page/right-panel","@wm/components/page/top-nav","@wm/components/basic","@wm/components/basic/progress","@wm/components/basic/rich-text-editor","@wm/components/basic/search","@wm/components/basic/tree","@wm/components/input/calendar","@wm/components/input/chips","@wm/components/input/color-picker","@wm/components/input/currency","@wm/components/input/epoch","@wm/components/input/file-upload","@wm/components/input","@wm/components/input/rating","@wm/components/input/slider","@wm/components/data/card","@wm/components/data/form","@wm/components/data/list","@wm/components/data/live-table","@wm/components/data/pagination","@wm/components/data/table","@wm/components/chart","@wm/components/containers/accordion","@wm/components/containers/linear-layout","@wm/components/containers/layout-grid","@wm/components/containers/panel","@wm/components/containers/tabs","@wm/components/containers/tile","@wm/components/containers/wizard","@wm/components/dialogs/iframe-dialog","@wm/components/dialogs/login-dialog","@wm/components/dialogs/partial-dialog","@wm/components/navigation/breadcrumb","@wm/components/navigation/menu","@wm/components/navigation/navbar","@wm/components/navigation/popover","@wm/components/advanced/carousel","@wm/components/advanced/login","@wm/components/advanced/marquee","ngx-bootstrap/timepicker","ngx-bootstrap/dropdown","ngx-bootstrap/pagination","ngx-bootstrap/typeahead","ngx-bootstrap/progressbar","ngx-bootstrap/carousel","ngx-bootstrap/popover","ng-circle-progress","ngx-bootstrap/tooltip"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.runtime=e.wm.runtime||{},e.wm.runtime.base={}),e.ng.core,e.ng.router,e.ng.common,e.wm.core,e.wm.security,e.wm.variables,e._,e.wm.components.page,e.rxjs,e.wm.components.base,e.tslib,e.wm.components.prefab,e.ng.common.http,e.ng.platformBrowser,e.ng.forms,e.ngxToastr,e.wm.components.dialogs,e.wm.components.dialogs.confirmdialog,e.wm.components.dialogs.designdialog,e.wm.mobile.runtime,e.wm.http,e.wm.oAuth,e.chronos,e.datepicker,e.utils,e.wm.components.dialogs.alertdialog,e.rxjs.operators,e.wm.transpiler,e.wm.buildTask,e.wm.components.page.footer,e.wm.components.page.header,e.wm.components.page.leftpanel,e.wm.components.page.rightpanel,e.wm.components.page.topnav,e.wm.components.basic,e.wm.components.basic.progress,e.wm.components.basic.richtexteditor,e.wm.components.basic.search,e.wm.components.basic.tree,e.wm.components.input.calendar,e.wm.components.input.chips,e.wm.components.input.colorpicker,e.wm.components.input.currency,e.wm.components.input.epoch,e.wm.components.input.fileupload,e.wm.components.input,e.wm.components.input.rating,e.wm.components.input.slider,e.wm.components.data.card,e.wm.components.data.form,e.wm.components.data.list,e.wm.components.data.livetable,e.wm.components.data.pagination,e.wm.components.data.table,e.wm.components.chart,e.wm.components.containers.accordion,e.wm.components.containers.linearlayout,e.wm.components.containers.layoutgrid,e.wm.components.containers.panel,e.wm.components.containers.tabs,e.wm.components.containers.tile,e.wm.components.containers.wizard,e.wm.components.dialogs.iframedialog,e.wm.components.dialogs.logindialog,e.wm.components.dialogs.partialdialog,e.wm.components.navigation.breadcrumb,e.wm.components.navigation.menu,e.wm.components.navigation.navbar,e.wm.components.navigation.popover,e.wm.components.advanced.carousel,e.wm.components.advanced.login,e.wm.components.advanced.marquee,e.timepicker,e.dropdown,e.pagination,e.typeahead,e.progressbar,e.carousel,e.popover,e.ngCircleProgress,e.tooltip)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u,h,m,g,f,v,b,y,w,C,P,I,A,E,O,T,x,D,R,S,_,M,N,k,L,F,j,B,V,G,W,U,q,z,H,Q,Y,X,K,J,Z,ee,te,ie,ne,ae,se,oe,re,le,ce,de,pe,ue,he,me,ge,fe,ve,be,ye,we,Ce,Pe,Ie,Ae,Ee,Oe,Te,xe){"use strict";function De(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var Re,Se,_e=De(t),Me=De(i),Ne=De(n),ke=De(a),Le=De(s),Fe=De(o),je=De(d),$e=De(u),Be=De(h),Ve=De(m),Ge=De(f),We=De(b),Ue=De(y),qe=De(w),ze=De(P),He=De(A),Qe=De(O);e.ComponentType=void 0,(Re=e.ComponentType||(e.ComponentType={}))[Re.PAGE=0]="PAGE",Re[Re.PREFAB=1]="PREFAB",Re[Re.PARTIAL=2]="PARTIAL";class Ye{clearComponentFactoryRefCache(){}}class Xe{}class Ke{}class Je{}class Ze{}!function(e){e.HIDE_TEMPLATES_SHOW_CASE="hide-templates-show-case",e.SHOW_TEMPLATES_SHOW_CASE="show-templates-show-case",e.UPDATE_LOCATION="update-location-path",e.SELECT_TEMPLATE="select-template",e.TEMPLATEBUNDLE_CONFIG="template-bundle-config",e.ON_LOAD="on-load"}(Se||(Se={}));class et{static{this.SERVICE_NAME="AppManagerService"}constructor(e,t,i,n,a,s,o,l,c,d){this.$http=e,this.$security=t,this.$dialog=i,this.$router=n,this.$app=a,this.$variables=s,this.$metadata=o,this.$spinner=l,this.$i18n=c,this.$datePipe=d,this.appVariablesLoaded=!1,this.appVariablesFired=!1,this._noRedirect=!1,this.$http.registerOnSessionTimeout(this.handle401.bind(this)),this.$variables.registerDependency("appManager",this),this.$app.subscribe("toggle-variable-state",(e=>{const t=e.variable,i=e.active;if(!r.isEmpty(r.trim(t.spinnerContext)))if(i){let e;if(t._spinnerId&&t._spinnerId.length&&r.forEach(t._spinnerId,(i=>{i.slice(0,i.lastIndexOf("_"))!==t._id||!this.$spinner.messagesByContext||!this.$spinner.messagesByContext[t.spinnerContext]||t.spinnerMessage!==this.$spinner.messagesByContext[t.spinnerContext].finalMessage&&t.spinnerMessage!==this.$spinner.messagesByContext[t.spinnerContext][i]||(e=!0)})),!e){t._spinnerId=t._spinnerId||[];const e=this.$spinner.show(t.spinnerMessage,t._id+"_"+Date.now(),t.spinnerclass,t.spinnerContext);t._spinnerId.push(e)}}else this.$spinner.hide(t._spinnerId.shift())})),this.$app.subscribe("userLoggedIn",(()=>{this.setLandingPage(),this.lastLoggedUserId&&this.$security.getConfig((e=>{e&&e.userInfo.userId!==this.lastLoggedUserId&&this.$app.clearPageCache()}),null)})),this.$app.subscribe("userLoggedOut",(()=>this.setLandingPage().then((()=>{this.$app.clearPageCache()})))),this.$app.subscribe("http401",((e={})=>this.handle401(e.page,e.options)))}showLoginDialog(){this.$spinner.hide("globalSpinner"),this.$dialog.open("CommonLoginDialog"),a.$appDigest()}loadAppJS(){}loadCommonPage(){}loadSecurityConfig(e){return this.$security.load(e).then((e=>(this.$app.landingPageName||this.setLandingPage(),e)))}loadMetadata(){return this.$metadata.load()}loadAppVariables(e){if(this.appVariablesLoaded)return Promise.resolve();const t=e=>{const t=this.$variables.register("app",e,this.$app);r.extend(this.$app.Variables,t.Variables),r.extend(this.$app.Actions,t.Actions),this.updateLoggedInUserVariable(),this.updateSupportedLocaleVariable(),this.appVariablesLoaded=!0,this.appVariablesFired=!1};return a.isDefined(e)?(t(e),Promise.resolve()):this.$http.get("./app.variables.json").then((e=>t(e)))}isAppVariablesFired(e){return a.isDefined(e)&&(this.appVariablesFired=e),this.appVariablesFired}clearLoggedInUserVariable(e){e.isAuthenticated=!1,e.roles=[],e.name=void 0,e.id=void 0,e.tenantId=void 0}updateLoggedInUserVariable(){const e=r.get(this.$app,"Variables.loggedInUser.dataSet");if(e)return this.$security.load().then((()=>{const t=this.$security.get();if(!(t&&t.securityEnabled&&t.authenticated))throw this.clearLoggedInUserVariable(e),e.isSecurityEnabled=t&&t.securityEnabled,null;return e.isAuthenticated=t.authenticated,e.roles=t.userInfo.userRoles,e.name=t.userInfo.userName,e.id=t.userInfo.userId,e.tenantId=t.userInfo.tenantId,e.userAttributes=t.userInfo.userAttributes,t})).catch((t=>{e.isAuthenticated=!1,e.roles=[],e.name=void 0,e.id=void 0,e.tenantId=void 0,e.userAttributes={}}))}updateSupportedLocaleVariable(){r.get(this.$app,"Variables.supportedLocale")}handleSSOLogin(e){let t,i;if(t=this.$security.getRedirectPage(e),o.CONSTANTS.hasCordova){const e=r.get(this.$security.get(),"userInfo.userName");this.$security.authInBrowser().then((()=>this.reloadAppData())).then((()=>{const i=r.get(this.$security.get(),"userInfo.userName");i&&i===e?o.routerService.navigate([t]):o.routerService.navigate(["/"])}))}else{t=t?"?redirectPage="+encodeURIComponent(t):"",i=this.$security.getQueryString(this.$security.getRedirectedRouteQueryParams()),i=i?"?"+i:"",document.body.textContent=r.get(this.getAppLocale(),["MESSAGE_LOGIN_REDIRECTION"])||"Redirecting to sso login...";const e=this.getDeployedURL()+"services/security/ssologin"+t+i;if(window.self!==window.top)try{window.parent&&window.location.origin===window.parent.origin?"WM_PREVIEW_WINDOW"===window.parent.name&&(window.parent.location.href=window.self.location.href,window.parent.name=""):window.location.href=e}catch(t){window.location.href=e}else window.location.href=e}}handle401(e,t){let i,n,a,s;const o="DIALOG",l="PAGE",c="SSO",d=this.$security.get();let p={};if(a=d.loginConfig,this.lastLoggedUserId=d.userInfo&&d.userInfo.userId,d.userInfo&&d.userInfo.userName){switch(d.authenticated=!1,i=a.sessionTimeout||{type:o},n=i.type.toUpperCase(),n){case o:this.showLoginDialog();break;case l:e||(e=this.$security.getCurrentRoutePage()),p.redirectTo=e,p=r.merge(p,this.$security.getRedirectedRouteQueryParams()),e!==i.pageName&&this.$router.navigate([i.pageName],{queryParams:p});break;case c:this.handleSSOLogin(d)}this.setLandingPage()}else switch(s=a.type.toUpperCase(),s){case o:this.noRedirect(!0),this.showLoginDialog();break;case l:e=this.$security.getRedirectPage(d,e),p.redirectTo=e;const i=t&&t.queryParams||this.$security.getRedirectedRouteQueryParams();p=r.merge(p,i),this.$router.navigate([a.pageName],{queryParams:p}),this.$app.landingPageName=a.pageName;break;case c:this.handleSSOLogin(d)}}reloadAppData(){return this.loadSecurityConfig(!0).then((()=>this.loadMetadata().then((()=>this.updateLoggedInUserVariable()))))}noRedirect(e){return r.isUndefined(e)||(this._noRedirect=e),this._noRedirect}executeSessionFailureRequests(){this.$http.executeSessionFailureRequests()}pushToSessionFailureRequests(e){this.$http.pushToSessionFailureQueue(e)}getDeployedURL(){return this.$app.deployedUrl?this.$app.deployedUrl:o.$rootScope.project.deployedUrl}getCustomUrlScheme(){return this.$app.customUrlScheme}notify(e,t){this.$app.notify(e,t)}subscribe(e,t){return this.$app.subscribe(e,t)}getActivePage(){return this.$app.activePage}getAppLocale(){return this.$app.appLocale}getSelectedLocale(){return this.$i18n.getSelectedLocale()}notifyApp(e,t,i){this.$app.notifyApp(e,t,i)}appOnBeforeServiceCall(e){return a.triggerFn(this.$app.onBeforeServiceCall,e)}appOnServiceSuccess(e,t){return a.triggerFn(this.$app.onServiceSuccess,e,t)}appOnServiceError(e,t){return a.triggerFn(this.$app.onServiceError,e,t)}appVariablesReady(){a.triggerFn(this.$app.onAppVariablesReady)}beforeAppReady(){a.triggerFn(this.$app.onBeforeAppReady)}getPipe(e){if("date"===e)return this.$datePipe}setLandingPage(){return this.$security.getPageByLoggedInUser().then((e=>this.$app.landingPageName=e))}isPrefabType(){return this.$app.isPrefabType}isTemplateBundleType(){return this.$app.isTemplateBundleType}postMessage(e){window.top.postMessage(e,"*")}showTemplate(e){const t=this.templates[e];this.$router.navigate([t.id])}postTemplateBundleInfo(){return window.onmessage=e=>{const t=e.data;if(!r.isObject(t))return;switch(t.key){case Se.HIDE_TEMPLATES_SHOW_CASE:break;case Se.SELECT_TEMPLATE:this.showTemplate(t.templateIndex)}},setTimeout((()=>{this.postMessage({key:Se.ON_LOAD})})),a.fetchContent("json","./config.json",!0,(e=>{this.templates=[],e.error||(this.templates=e.templates,this.postMessage({key:Se.TEMPLATEBUNDLE_CONFIG,config:e}))}))}postAppTypeInfo(){if(this.isTemplateBundleType())return this.postTemplateBundleInfo()}static{this.\u0275fac=function(e){return new(e||et)(_e.\u0275\u0275inject(ke.AbstractHttpService),_e.\u0275\u0275inject(Le.SecurityService),_e.\u0275\u0275inject(ke.AbstractDialogService),_e.\u0275\u0275inject(Me.Router),_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(Fe.VariablesService),_e.\u0275\u0275inject(Fe.MetadataService),_e.\u0275\u0275inject(ke.AbstractSpinnerService),_e.\u0275\u0275inject(ke.AbstractI18nService),_e.\u0275\u0275inject(Ne.DatePipe))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:et,factory:et.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(et,[{type:t.Injectable}],(()=>[{type:ke.AbstractHttpService},{type:Le.SecurityService},{type:ke.AbstractDialogService},{type:Me.Router},{type:ke.App},{type:Fe.VariablesService},{type:Fe.MetadataService},{type:ke.AbstractSpinnerService},{type:ke.AbstractI18nService},{type:Ne.DatePipe}]),null);const tt=e=>"__self__"===e,it=e=>tt(e)?".":`app/prefabs/${e}`,nt=new Set,at=new Map,st=new Set,ot=(e,t)=>{let i=e;return a.stringStartsWith(e,"http://|https://|//")||(i=(t+i).replace("//","/")),i};class rt{constructor(e,t){this.$metadata=e,this.prefabConfigProvider=t}getConfig(e){return this.prefabConfigProvider.getConfig(e)}loadServiceDefs(e){return tt(e)?Promise.resolve():this.$metadata.load(e)}loadStyles(e,{resources:{styles:t}}={resources:{styles:[]}}){const i=it(e),n=t.map((e=>{if(!r.endsWith(e,"/pages/Main/Main.css"))return ot(e,i)})).filter((e=>!!e));return a.loadStyleSheets(n),Promise.resolve()}loadScripts(e,{resources:{scripts:t}}={resources:{scripts:[]}}){const i=it(e),n=(t=t.filter((e=>!e.startsWith("npm://")))).map((e=>ot(e,i)));return a.loadScripts(n,!0)}setInProgress(e){let t,i;const n=new Promise(((e,n)=>{t=e,i=n}));n.resolve=t,n.reject=i,at.set(e,n)}resolveInProgress(e){at.get(e)&&(at.get(e).resolve(),at.delete(e))}loadDependencies(e){return st.has(e)?Promise.resolve():nt.has(e)?Promise.reject(""):at.get(e)?at.get(e):(this.setInProgress(e),this.getConfig(e).then((t=>Promise.all([this.loadStyles(e,t),this.loadScripts(e,t),this.loadServiceDefs(e)]).then((()=>{this.resolveInProgress(e),st.add(e)})))))}static{this.\u0275fac=function(e){return new(e||rt)(_e.\u0275\u0275inject(Fe.MetadataService),_e.\u0275\u0275inject(Xe))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:rt,factory:rt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(rt,[{type:t.Injectable}],(()=>[{type:Fe.MetadataService},{type:Xe}]),null);class lt{constructor(){this.fragments=0,this.isPageComponent=!0,this.fragmentsLoaded$=new c.Subject}init(){this.viewInit$.subscribe(a.noop,a.noop,(()=>{this.isViewInitialized=!0,this.isReady()}))}registerFragment(){this.fragments++}resolveFragment(){this.fragments--,this.isReady()}isReady(){this.isViewInitialized&&!this.fragments&&(this.registerFragment=a.noop,this.resolveFragment=a.noop,this.fragmentsLoaded$.complete())}static{this.\u0275fac=function(e){return new(e||lt)}}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:lt})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(lt,[{type:t.Directive}],(()=>[]),null);const ct={};class dt extends lt{constructor(){super(...arguments),this.compileContent=!1,this.destroy$=new c.Subject,this.viewInit$=new c.Subject}getContainerWidgetInjector(){return this.containerWidget.inj||this.containerWidget.injector}init(){this.App=this.injector?this.injector.get(a.App):t.inject(a.App),this.containerWidget=this.injector?this.injector.get(d.WidgetRef):t.inject(d.WidgetRef),this.i18nService=this.injector?this.injector.get(a.AbstractI18nService):t.inject(a.AbstractI18nService),this.scriptLoaderService=this.injector?this.injector.get(a.ScriptLoaderService):t.inject(a.ScriptLoaderService),this.Viewport=this.injector?this.injector.get(a.Viewport):t.inject(a.Viewport),this.viewParent=this.containerWidget.viewParent,this.viewParent.registerFragment&&this.viewParent.registerFragment(),this.registerExpressions(),this.initUserScript(),this.registerWidgets(),this.initVariables(),this.activePageName=this.App.activePageName,this.registerPageParams(),this.defineI18nProps(),this.viewInit$.subscribe(a.noop,a.noop,(()=>{this.pageParams=this.containerWidget.partialParams})),this.spa?this.pageDirective=this.injector?this.injector.get(l.SpaPageDirective):t.inject(l.SpaPageDirective):this.pageDirective=this.injector?this.injector.get(l.PageDirective):t.inject(l.PageDirective),this.pageDirective&&(this.registerDestroyListener(this.pageDirective.subscribe("attach",(e=>this.ngOnAttach(e.refreshData)))),this.registerDestroyListener(this.pageDirective.subscribe("detach",(()=>this.ngOnDetach())))),super.init()}registerWidgets(){"Common"===this.partialName?this.Widgets=ct:this.Widgets=Object.create(ct),this.containerWidget.Widgets=this.Widgets}registerDestroyListener(e){this.destroy$.subscribe(a.noop,a.noop,(()=>e()))}initUserScript(){try{this.viewParent.prefabName&&(this.viewParent.Prefab?this.Prefab=this.viewParent.Prefab:this.Prefab=this.viewParent),this.evalUserScript(this,this.App,this.injector?this.injector.get(a.UtilsService):t.inject(a.UtilsService))}catch(e){console.error(`Error in evaluating partial (${this.partialName}) script\n`,e)}}initVariables(){const e=(this.injector?this.injector.get(o.VariablesService):t.inject(o.VariablesService)).register(this.partialName,this.getVariables(),this);this.Variables=Object.create(this.App.Variables),this.Actions=Object.create(this.App.Actions),this.containerWidget.Variables=this.Variables,this.containerWidget.Actions=this.Actions,Object.entries(e.Variables).forEach((([e,t])=>this.Variables[e]=t)),Object.entries(e.Actions).forEach((([e,t])=>this.Actions[e]=t)),this.viewInit$.subscribe(a.noop,a.noop,(()=>{a.$invokeWatchers(!0,!0),e.callback(e.Variables).catch(a.noop),e.callback(e.Actions)}))}registerExpressions(){const e=this.getExpressions();r.each(e,((e,t)=>{a.registerFnByExpr(t,e[0],e[1])}))}registerPageParams(){this.pageParams=this.containerWidget.partialParams}defineI18nProps(){this.appLocale=this.i18nService.getAppLocale()}invokeOnReady(){let e;this.containerWidget.userComponentParams&&(e=this.containerWidget.userComponentParams),this.onReady(e),this.viewParent.resolveFragment&&this.viewParent.resolveFragment()}loadScripts(){return new Promise((e=>{const t=this.partialDirective.$element.attr("scripts-to-load");t?this.scriptLoaderService.load(...t.split(",")).then(e):e()}))}mute(){const e=e=>{e&&e.mute&&e.mute()};r.each(this.Widgets,e),r.each(this.Variables,e),r.each(this.Actions,e)}unmute(){const e=e=>{e&&e.unmute&&e.unmute()};r.each(this.Widgets,e),r.each(this.Variables,e),r.each(this.Actions,e)}ngAfterViewInit(){this.loadScripts().then((()=>{this.compileContent=!0,setTimeout((()=>{this.viewInit$.complete(),this.fragmentsLoaded$.subscribe(a.noop,a.noop,(()=>this.invokeOnReady()))}),100)}))}ngOnDestroy(){this.destroy$.complete()}ngOnAttach(e){if(this.unmute(),e){const e=e=>{e&&e.startUpdate&&e.invoke&&e.invoke()};r.each(this.Variables,e),r.each(this.Actions,e)}r.each(this.Widgets,(e=>e&&e.ngOnAttach&&e.ngOnAttach()))}ngOnDetach(){this.mute(),r.each(this.Widgets,(e=>e&&e.ngOnDetach&&e.ngOnDetach()))}onReady(e){}static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=_e.\u0275\u0275getInheritedFactory(dt)))(t||dt)}})()}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:dt,viewQuery:function(e,t){if(1&e&&_e.\u0275\u0275viewQuery(d.PartialDirective,5),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.partialDirective=e.first)}},features:[_e.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(dt,[{type:t.Directive}],null,{partialDirective:[{type:t.ViewChild,args:[d.PartialDirective]}]});const pt="_cache_page",ut="REUSE_ROUTE_STRATEGY.MAX_CACHE_SIZE",ht="REUSE_ROUTE_STRATEGY.MAX_CACHE_AGE";e.WmDefaultRouteReuseStrategy=class{constructor(e,t){this.paramsToIgnore=["wm_state",pt],this.getSize=e=>e?Object.keys(e).length:0,this.cache=new a.LRUCache(e,t,((e,t)=>{this.currentRouteKey===e?this.cache.set(e,t):t.componentRef.destroy()}))}getKey(e){const t=Object.keys(e.queryParams).filter((e=>!this.paramsToIgnore.includes(e))).map((t=>t+"="+e.queryParams[t])).sort().join("&");let i=e.params.pageName;return e.data.pageName&&""===e.routeConfig.path&&(i=e.data.pageName),i&&i+(t?`?${t}`:"")}isSameQueryParams(e,t){try{const i=e.queryParams,n=t.queryParams,a=i?this.getSize(i):0,s=n?this.getSize(n):0;return 0===a&&0===s||a===s&&JSON.stringify(i)===JSON.stringify(n)}catch(e){return!1}}isCacheEnabled(e,t){const i=e.queryParams[pt];return r.isNil(i)?t:"true"===i||!0===i}shouldDetach(e){const t=this.getKey(e);return!!this.isCacheEnabled(e,!!e.data[pt])||(this.cache.delete(t),!1)}shouldAttach(e){const t=this.getKey(e);this.currentRouteKey=t;const i=this.cache.get(t);return!(!i||!this.isCacheEnabled(e,!!i[pt]))||(this.cache.delete(t),!1)}store(e,t){if(t){const i=this.getKey(e);t[pt]=!!e.data[pt],this.cache.set(i,t)}}retrieve(e){const t=this.getKey(e);return this.cache.get(t)}reset(e){if(!e)return this.cache.clear();{this.cache.delete(e);const t=e+="?",i=[];for(let e of this.cache.keys())e.startsWith(t)&&i.push(e);i.forEach((e=>this.cache.delete(e)))}}},e.WmDefaultRouteReuseStrategy=p.__decorate([p.__param(0,t.Inject(ut)),p.__param(1,t.Inject(ht)),p.__metadata("design:paramtypes",[Number,Number])],e.WmDefaultRouteReuseStrategy);class mt extends e.WmDefaultRouteReuseStrategy{constructor(){super()}isSameRoute(e,t){if(e.routeConfig&&"prefab-preview"===e.routeConfig.path)return!1;const i=e.params,n=t.params,a=this.getSize(i),s=this.getSize(n);return 0===a&&0===s||a===s&&(i.pageName===n.pageName&&this.isSameQueryParams(e,t))}shouldReuseRoute(e,t){return this.isSameRoute(e,t)}}class gt extends e.WmDefaultRouteReuseStrategy{constructor(){super()}isSameRoute(e,t){return!e.routeConfig&&!t.routeConfig||e.routeConfig===t.routeConfig&&(e.routeConfig!==t.routeConfig||(!(!e.data.layoutName||!t.data.layoutName)||this.isSameQueryParams(e,t)))}shouldReuseRoute(e,t){return this.isSameRoute(e,t)}}class ft extends lt{constructor(){super(...arguments),this.startupVariablesLoaded=!1,this.pageTransitionCompleted=!1,this.destroy$=new c.Subject,this.viewInit$=new c.Subject,this.formatsByLocale={timezone:""}}static{this.lastPageSnapShot=null}init(){a.muteWatchers(),this.App=this.injector?this.injector.get(a.App):t.inject(a.App),this.route=this.injector?this.injector.get(i.ActivatedRoute):t.inject(i.ActivatedRoute),this.appManager=this.injector?this.injector.get(et):t.inject(et),this.navigationService=this.injector?this.injector.get(a.AbstractNavigationService):t.inject(a.AbstractNavigationService),this.scriptLoaderService=this.injector?this.injector.get(a.ScriptLoaderService):t.inject(a.ScriptLoaderService),this.i18nService=this.injector?this.injector.get(a.AbstractI18nService):t.inject(a.AbstractI18nService),this.router=this.injector?this.injector.get(i.Router):t.inject(i.Router),this.Viewport=this.injector?this.injector.get(a.Viewport):t.inject(a.Viewport),this.registerExpressions(),this.initUserScript(),this.registerWidgets(),this.initVariables(),this.App.lastActivePageName=this.App.activePageName,this.App.activePageName=this.pageName,this.App.activePage=this,this.activePageName=this.pageName,this.registerPageParams(),this.defineI18nProps(),super.init()}registerWidgets(){this.Widgets=Object.create(ct),this.App.Widgets=Object.create(this.Widgets)}initUserScript(){try{this.evalUserScript(this,this.App,this.injector?this.injector.get(a.UtilsService):t.inject(a.UtilsService))}catch(e){console.error(`Error in evaluating page (${this.pageName}) script\n`,e)}}registerPageParams(){const e=this.route.queryParams.subscribe((e=>this.pageParams=this.App.pageParams=r.extend({},e)));this.registerDestroyListener((()=>e.unsubscribe()))}registerDestroyListener(e){this.destroy$.subscribe(a.noop,a.noop,(()=>e()))}defineI18nProps(){this.appLocale=this.i18nService.getAppLocale()}initVariables(){const e=(this.injector?this.injector.get(o.VariablesService):t.inject(o.VariablesService)).register(this.pageName,this.getVariables(),this);this.Variables=Object.create(this.App.Variables),this.Actions=Object.create(this.App.Actions),Object.entries(e.Variables).forEach((([e,t])=>this.Variables[e]=t)),Object.entries(e.Actions).forEach((([e,t])=>this.Actions[e]=t));const i=this.viewInit$.subscribe(a.noop,a.noop,(()=>{this.appManager.isAppVariablesFired()||(e.callback(this.App.Variables).catch(a.noop).then((()=>{this.appManager.notify("app-variables-data-loaded",{pageName:this.pageName})})),e.callback(this.App.Actions),this.appManager.appVariablesReady(),this.appManager.isAppVariablesFired(!0)),e.callback(e.Variables).catch(a.noop).then((()=>{this.appManager.notify("page-variables-data-loaded",{pageName:this.pageName}),this.startupVariablesLoaded=!0,setTimeout((()=>{this.showPageContent=!0}),100)})),e.callback(e.Actions),i.unsubscribe()}))}setTimezone(e){this.i18nService.setTimezone(e,this)}registerExpressions(){const e=this.getExpressions();r.each(e,((e,t)=>{a.registerFnByExpr(t,e[0],e[1])}))}runPageTransition(e){e=e||this.navigationService.getPageTransition();const t=ft.lastPageSnapShot;return new Promise((i=>{if(e&&!e.startsWith("none")&&t){const n=t.parent(),a=t=>{!i||t&&t.pseudoElement||(n.off("animationend",a),n.removeClass(e),n.children().first().remove(),i(),i=null)};e="page-transition page-transition-"+e,t.addClass("page-exit"),this.$page.addClass("page-entry"),n.addClass(e),n.on("animationend",a),setTimeout(a,1e3)}else i()})).then((()=>{this.$page&&this.$page.removeClass("page-entry"),t&&(t.remove(),ft.lastPageSnapShot=null),this.pageTransitionCompleted=!0}))}invokeOnReady(){this.onReady(),this.appManager.notify("pageReady",{name:this.pageName,instance:this}),(this.App.onPageReady||a.noop)(this.pageName,this);const e=a.getWmProjectProperties()?.homePage;window.top.name!==window.name&&e===this.pageName&&window.top.postMessage({key:"onHomepageLoad"},"*")}loadScripts(){return new Promise((e=>{const t=this.pageDirective&&this.pageDirective.$element.attr("scripts-to-load");t?this.scriptLoaderService.load(...t.split(",")).then(e):e()}))}restoreLastPageSnapshot(){a.isMobileApp()&&ft.lastPageSnapShot&&this.$page&&this.$page.parent().prepend(ft.lastPageSnapShot)}savePageSnapShot(){ft.lastPageSnapShot&&ft.lastPageSnapShot.remove(),a.isMobileApp()&&this.$page&&(ft.lastPageSnapShot=this.$page.clone(),this.$page.parents("app-root").prepend(ft.lastPageSnapShot))}saveScrollPosition(){const e=(t,i,n=!0,a=t)=>{n&&t.children().each(((t,n)=>e($(n),i)));const s=a.scrollLeft(),o=a.scrollTop();(s>0||o>0)&&t.attr(i,s+","+o)};e(this.$page,"data-scroll-position"),this.$page.attr("data-window-scroll-position",window.scrollX+","+window.scrollY)}restoreScrollPosition(){const e=(t,i,n=!0,a=t)=>{const s=(t.attr(i)||"").split(",");s.length>1&&(a.scrollLeft(s[0]),a.scrollTop(s[1])),t.removeAttr(i),n&&t.children().each(((t,n)=>e($(n),i)))};e(this.$page,"data-scroll-position"),e(this.$page,"data-window-scroll-position",!1,$(window))}canDeactivate(){let e;return e=this.onBeforePageLeave(),!1!==e&&(e=(this.App.onBeforePageLeave||a.noop)(this.App.activePageName,this.App.activePage)),void 0===e||e}ngAfterViewInit(){this.route.snapshot.data[pt]=this.canReuse(),this.pageDirective&&(this.$page=this.pageDirective.$element.parent(),a.isIos()&&this.$page.addClass("ios-page"),a.isAndroid()&&this.$page.addClass("android-page")),this.restoreLastPageSnapshot(),this.loadScripts().then((()=>{this.runPageTransition().then((()=>{this.compilePageContent=!0,setTimeout((()=>{this.onPageContentReady=()=>{this.fragmentsLoaded$.subscribe(a.noop,a.noop,(()=>{this.invokeOnReady()})),a.unMuteWatchers(),this.viewInit$.complete(),this.onPageContentReady=a.noop}}),0)}))}))}ngOnDestroy(){this.savePageSnapShot(),this.destroy$.complete()}captureApplicationThumbnail(){const e=this;"true"===localStorage.getItem("captureApplicationThumbnail")&&this.App.landingPageName===this.pageName&&!this.App.isApplicationThumbnailCaptured&&html2canvas(document.body).then((t=>{try{e.App.isApplicationThumbnailCaptured=!0;const i=t.toDataURL("image/png");console.log(i);const n=document.createElement("a");n.href=i,n.download="screenshot.jpg",n.click()}catch(e){console.error("Error in html2canvas then block:",e)}})).catch((e=>{console.error("Error in html2canvas promise:",e)}))}onReady(){}onBeforePageReady(){}onBeforePageLeave(){}onPageContentReady(){}canReuse(){return!(!this.pageDirective||!this.pageDirective.cache)}mute(){const e=e=>{e&&e.mute&&e.mute()};r.each(this.Widgets,e),r.each(this.Variables,e),r.each(this.Actions,e)}unmute(e=this){const t=e=>{e&&e.unmute&&e.unmute()};r.each(this.Widgets,t),r.each(this.Variables,t),r.each(this.Actions,t)}ngOnAttach(){if(this.route.snapshot.data[pt]=this.canReuse(),this.registerPageParams(),this.App.lastActivePageName=this.App.activePageName,this.App.activePageName=this.pageName,this.App.activePage=this,this.activePageName=this.pageName,this.restoreLastPageSnapshot(),this.unmute(),this.App.Widgets=Object.create(this.Widgets),this.pageDirective&&this.pageDirective.refreshdataonattach){const e=e=>{e&&e.startUpdate&&e.invoke&&e.invoke()};r.each(this.Variables,e),r.each(this.Actions,e)}this.runPageTransition().then((()=>{setTimeout((()=>this.restoreScrollPosition()),100),r.each(this.Widgets,(e=>e&&e.ngOnAttach&&e.ngOnAttach())),this.appManager.notify("pageAttach",{name:this.pageName,instance:this})}))}ngOnDetach(){this.saveScrollPosition(),this.savePageSnapShot(),this.mute(),r.each(this.Widgets,(e=>e&&e.ngOnDetach&&e.ngOnDetach())),this.appManager.notify("pageDetach",{name:this.pageName,instance:this})}ngAfterContentInit(){this.onBeforePageReady()}static clear(){ft.lastPageSnapShot&&(ft.lastPageSnapShot.remove(),ft.lastPageSnapShot=null)}static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=_e.\u0275\u0275getInheritedFactory(ft)))(t||ft)}})()}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:ft,viewQuery:function(e,t){if(1&e&&_e.\u0275\u0275viewQuery(l.PageDirective,5),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.pageDirective=e.first)}},hostBindings:function(e,t){1&e&&_e.\u0275\u0275listener("beforeunload",(function(){return t.canDeactivate()}),!1,_e.\u0275\u0275resolveWindow)},features:[_e.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(ft,[{type:t.Directive}],null,{pageDirective:[{type:t.ViewChild,args:[l.PageDirective]}],canDeactivate:[{type:t.HostListener,args:["window:beforeunload"]}]});class vt extends lt{constructor(){super(...arguments),this.compileContent=!1,this.destroy$=new c.Subject,this.viewInit$=new c.Subject}getContainerWidgetInjector(){return this.containerWidget.inj||this.containerWidget.injector}init(){this.App=this.injector.get(a.App),this.containerWidget=this.injector?this.injector.get(d.WidgetRef):t.inject(d.WidgetRef),this.prefabMngr=this.injector?this.injector.get(rt):t.inject(rt),this.i18nService=this.injector?this.injector.get(a.AbstractI18nService):t.inject(a.AbstractI18nService),this.scriptLoaderService=this.injector?this.injector.get(a.ScriptLoaderService):t.inject(a.ScriptLoaderService),this.Viewport=this.injector?this.injector.get(a.Viewport):t.inject(a.Viewport),this.viewParent=this.containerWidget.viewParent,this.viewParent.registerFragment&&this.viewParent.registerFragment(),this.spa?this.pageDirective=this.injector?this.injector.get(l.SpaPageDirective):t.inject(l.SpaPageDirective):this.pageDirective=this.injector?this.injector.get(l.PageDirective):t.inject(l.PageDirective),this.pageDirective&&(this.registerDestroyListener(this.pageDirective.subscribe("attach",(e=>this.ngOnAttach(e.refreshData)))),this.registerDestroyListener(this.pageDirective.subscribe("detach",(()=>this.ngOnDetach())))),this.registerExpressions(),this.initUserScript(),this.registerWidgets(),this.initVariables(),this.registerProps(),this.defineI18nProps(),super.init()}registerWidgets(){this.Widgets={},this.Widgets={},this.containerWidget.Widgets=this.Widgets}initUserScript(){try{this.evalUserScript(this,this.App,this.injector.get(a.UtilsService))}catch(e){console.error(`Error in evaluating prefab (${this.prefabName}) script\n`,e)}}registerChangeListeners(){this.containerWidget.registerPropertyChangeListener(this.onPropertyChange),this.containerWidget.registerStyleChangeListener(this.onPropertyChange)}registerDestroyListener(e){this.destroy$.subscribe(a.noop,a.noop,(()=>e()))}defineI18nProps(){this.appLocale=this.i18nService.getPrefabLocaleBundle(this.prefabName)}registerProps(){this.prefabMngr.getConfig(this.prefabName).then((e=>{e&&(this.displayName=e.displayName,Object.entries(e.properties||{}).forEach((([e,t])=>{let i;const n=r.trim(t.value);r.startsWith(n,"bind:")&&(i=n.replace("bind:","")),Object.defineProperty(this,e,{get:()=>this.containerWidget[e],set:t=>this.containerWidget.widget[e]=t}),i&&this.registerDestroyListener(a.$watch(i,this,{},(t=>this.containerWidget.widget[e]=t)))})),Object.entries(e.events||{}).forEach((([e,t])=>{this[e]=(...t)=>{const i=e.substr(2).toLowerCase();this.containerWidget.invokeEventCallback(i,{$event:t[0],$data:t[1]})}})),Object.entries(e.methods||{}).forEach((([e,t])=>{this.containerWidget[e]=(...t)=>{try{if(this[e])return this[e].apply(this,t)}catch(t){console.warn(`error in executing prefab-${this.prefabName} method-${e}`)}}}))),this.containerWidget.setProps(e),a.isIE()&&(this.containerWidget.widget=this.containerWidget.createProxy())}))}initVariables(){const e=this.injector.get(o.VariablesService).register(this.prefabName,this.getVariables(),this);this.Variables={},this.Actions={},this.containerWidget.Variables=this.Variables,this.containerWidget.Actions=this.Actions,Object.entries(e.Variables).forEach((([e,t])=>this.Variables[e]=t)),Object.entries(e.Actions).forEach((([e,t])=>this.Actions[e]=t)),this.viewInit$.subscribe(a.noop,a.noop,(()=>{e.callback(e.Variables).catch(a.noop),e.callback(e.Actions)}))}registerExpressions(){const e=this.getExpressions();r.each(e,((e,t)=>{a.registerFnByExpr(t,e[0],e[1])}))}invokeOnReady(){a.$invokeWatchers(!0,!0),this.onReady(),this.viewParent.resolveFragment&&this.viewParent.resolveFragment(),this.containerWidget.invokeEventCallback("load")}loadScripts(){return new Promise((e=>{const t=this.prefabContainerDirective.$element.attr("scripts-to-load");t?this.scriptLoaderService.load(...t.split(",")).then(e):e()}))}mute(){const e=e=>{e&&e.mute&&e.mute()};r.each(this.Widgets,e),r.each(this.Variables,e),r.each(this.Actions,e)}unmute(){const e=e=>{e&&e.unmute&&e.unmute()};r.each(this.Widgets,e),r.each(this.Variables,e),r.each(this.Actions,e)}ngOnAttach(e){if(this.unmute(),e){const e=e=>{e&&e.startUpdate&&e.invoke&&e.invoke()};r.each(this.Variables,e),r.each(this.Actions,e)}r.each(this.Widgets,(e=>e&&e.ngOnAttach&&e.ngOnAttach()))}ngOnDetach(){this.mute(),r.each(this.Widgets,(e=>e&&e.ngOnDetach&&e.ngOnDetach()))}ngAfterViewInit(){this.loadScripts().then((()=>{this.compileContent=!0,this.registerChangeListeners(),setTimeout((()=>{this.viewInit$.complete(),this.fragmentsLoaded$.subscribe(a.noop,a.noop,(()=>this.invokeOnReady()))}),100)}))}ngOnDestroy(){this.destroy$.complete()}onPropertyChange(){}onReady(){}static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=_e.\u0275\u0275getInheritedFactory(vt)))(t||vt)}})()}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:vt,viewQuery:function(e,t){if(1&e&&_e.\u0275\u0275viewQuery(u.PrefabContainerDirective,5),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.prefabContainerDirective=e.first)}},features:[_e.\u0275\u0275InheritDefinitionFeature]})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(vt,[{type:t.Directive}],null,{prefabContainerDirective:[{type:t.ViewChild,args:[u.PrefabContainerDirective]}]});class bt{registerExpressions(){const e=this.getExpressions();r.each(e,((e,t)=>{a.registerFnByExpr(t,e[0],e[1])}))}overrideRouterOutlet(){const e=this.routerOutlet.attach,t=this.routerOutlet.detach;this.routerOutlet.attach=t=>{e.call(this.routerOutlet,t),t.instance.ngOnAttach()},this.routerOutlet.detach=()=>t.call(this.routerOutlet)}ngAfterViewInit(){setTimeout((()=>{this.overrideRouterOutlet()}),10)}init(){this.App=this.injector.get(a.App),this.App.activeLayoutName=this.layoutName,this.App.layoutPages=this.layoutPages,this.registerExpressions()}ngOnDestroy(){}canReuse(){}ngOnAttach(){}ngOnDetach(){}onActivate(e){r.extend(this,e)}static{this.\u0275fac=function(e){return new(e||bt)}}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:bt,viewQuery:function(e,t){if(1&e&&(_e.\u0275\u0275viewQuery(i.RouterOutlet,5),_e.\u0275\u0275viewQuery(l.PageDirective,5)),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.routerOutlet=e.first),_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.pageDirective=e.first)}}})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(bt,[{type:t.Directive}],null,{routerOutlet:[{type:t.ViewChild,args:[i.RouterOutlet]}],pageDirective:[{type:t.ViewChild,args:[l.PageDirective]}]});class yt extends lt{constructor(){super(...arguments),this.startupVariablesLoaded=!1,this.pageTransitionCompleted=!1,this.destroy$=new c.Subject,this.viewInit$=new c.Subject,this.formatsByLocale={timezone:""}}static{this.lastPageSnapShot=null}init(){a.muteWatchers(),this.App=this.injector?this.injector.get(a.App):t.inject(a.App),this.route=this.injector?this.injector.get(i.ActivatedRoute):t.inject(i.ActivatedRoute),this.appManager=this.injector?this.injector.get(et):t.inject(et),this.navigationService=this.injector?this.injector.get(a.AbstractNavigationService):t.inject(a.AbstractNavigationService),this.scriptLoaderService=this.injector?this.injector.get(a.ScriptLoaderService):t.inject(a.ScriptLoaderService),this.i18nService=this.injector?this.injector.get(a.AbstractI18nService):t.inject(a.AbstractI18nService),this.router=this.injector?this.injector.get(i.Router):t.inject(i.Router),this.Viewport=this.injector?this.injector.get(a.Viewport):t.inject(a.Viewport),this.layoutDirective=this.injector?this.injector.get(l.LayoutDirective):t.inject(l.LayoutDirective),this.registerExpressions(),this.initUserScript(),this.registerWidgets(),this.initVariables(),this.App.lastActivePageName=this.App.activePageName,this.App.activePageName=this.pageName,this.App.activePage=this,this.activePageName=this.pageName,this.registerPageParams(),this.defineI18nProps(),super.init()}registerWidgets(){this.Widgets=Object.create(ct),this.App.Widgets=Object.create(this.Widgets)}initUserScript(){try{this.evalUserScript(this,this.App,this.injector?this.injector.get(a.UtilsService):t.inject(a.UtilsService))}catch(e){console.error(`Error in evaluating page (${this.pageName}) script\n`,e)}}registerPageParams(){const e=this.route.queryParams.subscribe((e=>this.pageParams=this.App.pageParams=r.extend({},e)));this.registerDestroyListener((()=>e.unsubscribe()))}registerDestroyListener(e){this.destroy$.subscribe(a.noop,a.noop,(()=>e()))}defineI18nProps(){this.appLocale=this.i18nService.getAppLocale()}initVariables(){const e=(this.injector?this.injector.get(o.VariablesService):t.inject(o.VariablesService)).register(this.pageName,this.getVariables(),this);this.Variables=Object.create(this.App.Variables),this.Actions=Object.create(this.App.Actions),Object.entries(e.Variables).forEach((([e,t])=>this.Variables[e]=t)),Object.entries(e.Actions).forEach((([e,t])=>this.Actions[e]=t));const i=this.viewInit$.subscribe(a.noop,a.noop,(()=>{this.appManager.isAppVariablesFired()||(e.callback(this.App.Variables).catch(a.noop).then((()=>{this.appManager.notify("app-variables-data-loaded",{pageName:this.pageName})})),e.callback(this.App.Actions),this.appManager.appVariablesReady(),this.appManager.isAppVariablesFired(!0)),e.callback(e.Variables).catch(a.noop).then((()=>{this.appManager.notify("page-variables-data-loaded",{pageName:this.pageName}),this.startupVariablesLoaded=!0,setTimeout((()=>{this.showPageContent=!0}),100)})),e.callback(e.Actions),i.unsubscribe()}))}setTimezone(e){this.i18nService.setTimezone(e,this)}registerExpressions(){const e=this.getExpressions();r.each(e,((e,t)=>{a.registerFnByExpr(t,e[0],e[1])}))}runPageTransition(e){e=e||this.navigationService.getPageTransition();const t=yt.lastPageSnapShot;return new Promise((i=>{if(e&&!e.startsWith("none")&&t){const n=t.parent(),a=t=>{!i||t&&t.pseudoElement||(n.off("animationend",a),n.removeClass(e),n.children().first().remove(),i(),i=null)};e="page-transition page-transition-"+e,t.addClass("page-exit"),this.$page.addClass("page-entry"),n.addClass(e),n.on("animationend",a),setTimeout(a,1e3)}else i()})).then((()=>{this.$page&&this.$page.removeClass("page-entry"),t&&(t.remove(),yt.lastPageSnapShot=null),this.pageTransitionCompleted=!0}))}invokeOnReady(){this.onReady(),this.appManager.notify("highlightActiveLink",{pageName:this.pageName}),this.appManager.notify("pageReady",{name:this.pageName,instance:this}),(this.App.onPageReady||a.noop)(this.pageName,this)}loadScripts(){return new Promise((e=>{const t=this.spaPageDirective&&this.spaPageDirective.$element.attr("scripts-to-load");t?this.scriptLoaderService.load(...t.split(",")).then(e):e()}))}restoreLastPageSnapshot(){a.isMobileApp()&&yt.lastPageSnapShot&&this.$page&&this.$page.parent().prepend(yt.lastPageSnapShot)}savePageSnapShot(){yt.lastPageSnapShot&&yt.lastPageSnapShot.remove(),a.isMobileApp()&&this.$page&&(yt.lastPageSnapShot=this.$page.clone(),this.$page.parents("app-root").prepend(yt.lastPageSnapShot))}saveScrollPosition(){const e=(t,i,n=!0,a=t)=>{n&&t.children().each(((t,n)=>e($(n),i)));const s=a.scrollLeft(),o=a.scrollTop();(s>0||o>0)&&t.attr(i,s+","+o)};e(this.$page,"data-scroll-position"),this.$page.attr("data-window-scroll-position",window.scrollX+","+window.scrollY)}restoreScrollPosition(){const e=(t,i,n=!0,a=t)=>{const s=(t.attr(i)||"").split(",");s.length>1&&(a.scrollLeft(s[0]),a.scrollTop(s[1])),t.removeAttr(i),n&&t.children().each(((t,n)=>e($(n),i)))};e(this.$page,"data-scroll-position"),e(this.$page,"data-window-scroll-position",!1,$(window))}canDeactivate(){let e;return e=this.onBeforePageLeave(),!1!==e&&(e=(this.App.onBeforePageLeave||a.noop)(this.App.activePageName,this.App.activePage)),void 0===e||e}ngAfterViewInit(){this.route.snapshot.data[pt]=this.canReuse(),this.layoutDirective&&(this.$page=this.layoutDirective.$element.parent(),a.isIos()&&this.$page.addClass("ios-page"),a.isAndroid()&&this.$page.addClass("android-page")),this.restoreLastPageSnapshot(),this.loadScripts().then((()=>{this.runPageTransition().then((()=>{this.compilePageContent=!0,setTimeout((()=>{this.onPageContentReady=()=>{this.fragmentsLoaded$.subscribe(a.noop,a.noop,(()=>{this.invokeOnReady()})),a.unMuteWatchers(),this.viewInit$.complete(),this.onPageContentReady=a.noop}}),0)}))}))}ngOnDestroy(){this.savePageSnapShot(),this.destroy$.complete()}onReady(){}onBeforePageReady(){}onBeforePageLeave(){}onPageContentReady(){}canReuse(){return!(!this.spaPageDirective||!this.spaPageDirective.cache)}mute(){const e=e=>{e&&e.mute&&e.mute()};r.each(this.Widgets,e),r.each(this.Variables,e),r.each(this.Actions,e)}unmute(e=this){const t=e=>{e&&e.unmute&&e.unmute()};r.each(this.Widgets,t),r.each(this.Variables,t),r.each(this.Actions,t)}ngOnAttach(){if(this.route.snapshot.data[pt]=this.canReuse(),this.registerPageParams(),this.App.lastActivePageName=this.App.activePageName,this.App.activePageName=this.pageName,this.App.activePage=this,this.activePageName=this.pageName,this.restoreLastPageSnapshot(),this.unmute(),this.App.Widgets=Object.create(this.Widgets),this.spaPageDirective&&this.spaPageDirective.refreshdataonattach){const e=e=>{e&&e.startUpdate&&e.invoke&&e.invoke()};r.each(this.Variables,e),r.each(this.Actions,e)}this.runPageTransition().then((()=>{setTimeout((()=>this.restoreScrollPosition()),100),r.each(this.Widgets,(e=>e&&e.ngOnAttach&&e.ngOnAttach())),this.appManager.notify("pageAttach",{name:this.pageName,instance:this})})),this.appManager.notify("highlightActiveLink",{pageName:this.pageName})}ngOnDetach(){this.saveScrollPosition(),this.savePageSnapShot(),this.mute(),r.each(this.Widgets,(e=>e&&e.ngOnDetach&&e.ngOnDetach())),this.appManager.notify("pageDetach",{name:this.pageName,instance:this})}ngAfterContentInit(){this.onBeforePageReady()}static clear(){yt.lastPageSnapShot&&(yt.lastPageSnapShot.remove(),yt.lastPageSnapShot=null)}static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=_e.\u0275\u0275getInheritedFactory(yt)))(t||yt)}})()}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:yt,viewQuery:function(e,t){if(1&e&&_e.\u0275\u0275viewQuery(l.SpaPageDirective,5),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.spaPageDirective=e.first)}},hostBindings:function(e,t){1&e&&_e.\u0275\u0275listener("beforeunload",(function(){return t.canDeactivate()}),!1,_e.\u0275\u0275resolveWindow)},features:[_e.\u0275\u0275InheritDefinitionFeature]})}}var wt;("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(yt,[{type:t.Directive}],null,{spaPageDirective:[{type:t.ViewChild,args:[l.SpaPageDirective]}],canDeactivate:[{type:t.HostListener,args:["window:beforeunload"]}]}),function(e){e.EVERYONE="Everyone",e.ANONYMOUS="Anonymous",e.AUTHENTICATED="Authenticated"}(wt||(wt={}));class Ct{constructor(e,t,i,n,a){this.templateRef=e,this.viewContainerRef=t,this.securityService=i,this.inj=n,this.processed=!1,this.context={};const s=this.securityService.get();this.securityEnabled=r.get(s,"securityEnabled"),this.isUserAuthenticated=r.get(s,"authenticated"),this.userRoles=r.get(s,"userInfo.userRoles"),r.extend(this.context,n._lView[8],a)}getWidgetRolesArrayFromStr(e){const t=/&#44;/g;return""===(e=e||"")?[]:r.split(e,",").map((function(e){return r.trim(e).replace(t,",")}))}matchRoles(e,t){return e.some((function(e){return r.includes(t,e)}))}hasAccessToWidget(e,t){return!!r.includes(e,wt.EVERYONE)||(!(!r.includes(e,wt.ANONYMOUS)||this.isUserAuthenticated)||(!(!r.includes(e,wt.AUTHENTICATED)||!this.isUserAuthenticated)||this.isUserAuthenticated&&this.matchRoles(e,t)))}set accessroles(e){if(this.processed)return;this.processed=!0;const t=this.getWidgetRolesArrayFromStr(e);!this.securityEnabled||this.hasAccessToWidget(t,this.userRoles)?this.viewContainerRef.createEmbeddedView(this.templateRef,this.context):this.viewContainerRef.clear()}static{this.\u0275fac=function(e){return new(e||Ct)(_e.\u0275\u0275directiveInject(_e.TemplateRef),_e.\u0275\u0275directiveInject(_e.ViewContainerRef),_e.\u0275\u0275directiveInject(Le.SecurityService),_e.\u0275\u0275directiveInject(_e.Injector),_e.\u0275\u0275directiveInject("EXPLICIT_CONTEXT",8))}}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:Ct,selectors:[["","accessroles",""]],inputs:{accessroles:"accessroles"}})}}function Pt(e,t){if(1&e&&_e.\u0275\u0275element(0,"p",6),2&e){const e=t.$implicit;_e.\u0275\u0275property("textContent",e)}}function It(e,t){if(1&e&&(_e.\u0275\u0275elementStart(0,"div",1)(1,"div",2),_e.\u0275\u0275element(2,"i",3),_e.\u0275\u0275elementStart(3,"div",4),_e.\u0275\u0275template(4,Pt,1,1,"p",5),_e.\u0275\u0275elementEnd()()()),2&e){const e=_e.\u0275\u0275nextContext();_e.\u0275\u0275property("ngClass",e.classname),_e.\u0275\u0275advance(4),_e.\u0275\u0275property("ngForOf",e.spinnermessages)}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Ct,[{type:t.Directive,args:[{selector:"[accessroles]"}]}],(()=>[{type:_e.TemplateRef},{type:_e.ViewContainerRef},{type:Le.SecurityService},{type:_e.Injector},{type:void 0,decorators:[{type:t.Inject,args:["EXPLICIT_CONTEXT"]},{type:t.Optional}]}]),{accessroles:[{type:t.Input}]});class At{constructor(){}static{this.\u0275fac=function(e){return new(e||At)}}static{this.\u0275cmp=_e.\u0275\u0275defineComponent({type:At,selectors:[["app-spinner"]],inputs:{show:"show",spinnermessages:"spinnermessages",classname:"classname",arialabel:"arialabel"},decls:1,vars:1,consts:[["class","app-spinner",3,"ngClass",4,"ngIf"],[1,"app-spinner",3,"ngClass"],[1,"spinner-message"],[1,"spinner-image","animated","infinite","fa","fa-circle-o-notch","fa-spin"],[1,"spinner-messages"],[3,"textContent",4,"ngFor","ngForOf"],[3,"textContent"]],template:function(e,t){1&e&&_e.\u0275\u0275template(0,It,5,2,"div",0),2&e&&_e.\u0275\u0275property("ngIf",t.show)},dependencies:[Ne.NgClass,Ne.NgForOf,Ne.NgIf,je.TextContentDirective],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(At,[{type:t.Component,args:[{selector:"app-spinner",template:'\n <div class="app-spinner" [ngClass]="classname" *ngIf="show">\n <div class="spinner-message">\n <i class="spinner-image animated infinite fa fa-circle-o-notch fa-spin"></i>\n <div class="spinner-messages">\n <p *ngFor="let value of spinnermessages" [textContent]="value"></p>\n </div>\n </div>\n </div>\n '}]}],(()=>[]),{show:[{type:t.Input}],spinnermessages:[{type:t.Input}],classname:[{type:t.Input}],arialabel:[{type:t.Input}]}),("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassDebugInfo(At,{className:"AppSpinnerComponent",filePath:"components/app-spinner.component.ts",lineNumber:16});const Et=["customToast"],Ot=["customToastTmpl"],Tt=["custom-toaster-component",""];function xt(e,t){if(1&e&&_e.\u0275\u0275element(0,"div",5),2&e){const e=t.$implicit;_e.\u0275\u0275property("name",e.key)("value",e.value)}}function Dt(e,t){if(1&e&&(_e.\u0275\u0275elementStart(0,"div",3),_e.\u0275\u0275template(1,xt,1,2,"div",4),_e.\u0275\u0275pipe(2,"keyvalue"),_e.\u0275\u0275elementEnd()),2&e){const e=_e.\u0275\u0275nextContext();_e.\u0275\u0275advance(),_e.\u0275\u0275property("ngForOf",_e.\u0275\u0275pipeBind1(2,1,e.params))}}class Rt extends f.Toast{constructor(e,t){super(e,t),this.toastrService=e,this.toastPackage=t,this.watchers=[],this.params={},this.pagename=this.message||"",this.generateParams()}generateParams(){r.forEach(this.options.partialParams,(e=>{r.isString(e.value)&&0===e.value.indexOf("bind:")?this.watchers.push(a.$watch(e.value.substr(5),this.options.context,{},(t=>{this.params[e.name]=t,a.$appDigest()}))):this.params[e.name]=e.value}))}async generateDynamicComponent(){const e=$(".parent-custom-toast");this.customToastRef.clear(),e[0].appendChild(this.customToastRef.createEmbeddedView(this.customToastTmpl).rootNodes[0])}ngAfterViewInit(){this.generateDynamicComponent()}ngOnDestroy(){r.forEach(this.watchers,(e=>e())),super.ngOnDestroy()}static{this.\u0275fac=function(e){return new(e||Rt)(_e.\u0275\u0275directiveInject(Ge.ToastrService),_e.\u0275\u0275directiveInject(Ge.ToastPackage))}}static{this.\u0275cmp=_e.\u0275\u0275defineComponent({type:Rt,selectors:[["","custom-toaster-component",""]],viewQuery:function(e,i){if(1&e&&(_e.\u0275\u0275viewQuery(Et,7,t.ViewContainerRef),_e.\u0275\u0275viewQuery(Ot,5)),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(i.customToastRef=e.first),_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(i.customToastTmpl=e.first)}},features:[_e.\u0275\u0275InheritDefinitionFeature],attrs:Tt,decls:5,vars:0,consts:[["customToast",""],["customToastTmpl",""],[1,"parent-custom-toast"],["wmContainer","","partialContainer","","content.bind","pagename"],["wmParam","","hidden","",3,"name","value",4,"ngFor","ngForOf"],["wmParam","","hidden","",3,"name","value"]],template:function(e,t){1&e&&(_e.\u0275\u0275element(0,"div",2),_e.\u0275\u0275elementContainer(1,null,0),_e.\u0275\u0275template(3,Dt,3,3,"ng-template",null,1,_e.\u0275\u0275templateRefExtractor))},dependencies:[Ne.NgForOf,je.ContainerDirective,je.PartialParamHandlerDirective,je.PartialParamDirective,je.PartialContainerDirective,Ne.KeyValuePipe],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Rt,[{type:t.Component,args:[{selector:"[custom-toaster-component]",template:'\n <div class="parent-custom-toast"></div>\n <ng-container #customToast></ng-container>\n <ng-template #customToastTmpl>\n <div wmContainer partialContainer content.bind="pagename">\n <div *ngFor="let param of params | keyvalue" wmParam hidden\n [name]="param.key" [value]="param.value"></div>\n </div>\n </ng-template>',preserveWhitespaces:!1}]}],(()=>[{type:Ge.ToastrService},{type:Ge.ToastPackage}]),{customToastRef:[{type:t.ViewChild,args:["customToast",{static:!0,read:t.ViewContainerRef}]}],customToastTmpl:[{type:t.ViewChild,args:["customToastTmpl"]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassDebugInfo(Rt,{className:"CustomToasterComponent",filePath:"components/custom-toaster.component.ts",lineNumber:23});class St{constructor(e,t,i,n,a){this.route=e,this.securityService=t,this.router=i,this.app=n,this.appManger=a}ngOnInit(){this.app.isPrefabType?this.router.navigate(["prefab-preview"]):this.app.isApplicationType?this.securityService.getPageByLoggedInUser().then((e=>{this.router.navigate([e])})):(this.router.navigate([a.getWmProjectProperties().homePage]),this.appManger.postAppTypeInfo())}static{this.\u0275fac=function(e){return new(e||St)(_e.\u0275\u0275directiveInject(Me.ActivatedRoute),_e.\u0275\u0275directiveInject(Le.SecurityService),_e.\u0275\u0275directiveInject(Me.Router),_e.\u0275\u0275directiveInject(ke.App),_e.\u0275\u0275directiveInject(et))}}static{this.\u0275cmp=_e.\u0275\u0275defineComponent({type:St,selectors:[["app-empty-page"]],decls:1,vars:0,template:function(e,t){1&e&&_e.\u0275\u0275element(0,"div")},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(St,[{type:t.Component,args:[{selector:"app-empty-page",template:"<div></div>"}]}],(()=>[{type:Me.ActivatedRoute},{type:Le.SecurityService},{type:Me.Router},{type:ke.App},{type:et}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassDebugInfo(St,{className:"EmptyPageComponent",filePath:"components/empty-component/empty-page.component.ts",lineNumber:13});class _t{constructor(t,i,n,a,s,o,r){this.componentInstance=t,this.vcRef=i,this.elRef=n,this.prefabMngr=a,this.resolver=s,this.injector=o,this.componentRefProvider=r;const l=this.componentInstance.prefabName;this.prefabMngr.loadDependencies(l).then((async()=>{const t=await this.componentRefProvider.getComponentFactoryRef(l,e.ComponentType.PREFAB);if(t){const e=this.vcRef.createComponent(t,0,o);this.elRef.nativeElement.appendChild(e.location.nativeElement)}}))}static{this.\u0275fac=function(e){return new(e||_t)(_e.\u0275\u0275directiveInject(d.WidgetRef,2),_e.\u0275\u0275directiveInject(_e.ViewContainerRef),_e.\u0275\u0275directiveInject(_e.ElementRef),_e.\u0275\u0275directiveInject(rt),_e.\u0275\u0275directiveInject(_e.ComponentFactoryResolver),_e.\u0275\u0275directiveInject(_e.Injector),_e.\u0275\u0275directiveInject(Ye))}}static{this.\u0275dir=_e.\u0275\u0275defineDirective({type:_t,selectors:[["","wmPrefab","","prefabname",""]]})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(_t,[{type:t.Directive,args:[{selector:"[wmPrefab][prefabname]"}]}],(()=>[{type:void 0,decorators:[{type:t.Self},{type:t.Inject,args:[d.WidgetRef]}]},{type:_e.ViewContainerRef},{type:_e.ElementRef},{type:rt},{type:_e.ComponentFactoryResolver},{type:_e.Injector},{type:Ye}]),null);class Mt{setPipeData(){this._pipeData=[this.preparePipeMeta(n.AsyncPipe,"async",!1,[t.ChangeDetectorRef]),this.preparePipeMeta(n.SlicePipe,"slice",!1),this.preparePipeMeta(n.PercentPipe,"percent",!0,[this._locale]),this.preparePipeMeta(n.I18nPluralPipe,"i18nPlural",!0,[n.NgLocalization]),this.preparePipeMeta(n.I18nSelectPipe,"i18nSelect",!0),this.preparePipeMeta(n.KeyValuePipe,"keyvalue",!1,[t.KeyValueDiffers]),this.preparePipeMeta(d.FileIconClassPipe,"fileIconClass",!0),this.preparePipeMeta(d.FileExtensionFromMimePipe,"fileExtensionFromMime",!0),this.preparePipeMeta(d.StateClassPipe,"stateClass",!0),this.preparePipeMeta(d.FileSizePipe,"filesize",!0),this.preparePipeMeta(d.FilterPipe,"filter",!0),this.preparePipeMeta(n.UpperCasePipe,"uppercase",!0),this.preparePipeMeta(n.LowerCasePipe,"lowercase",!0),this.preparePipeMeta(n.JsonPipe,"json",!1),this.preparePipeMeta(n.DecimalPipe,"number",!0,[this._locale]),this.preparePipeMeta(n.TitleCasePipe,"titlecase",!0),this.preparePipeMeta(n.CurrencyPipe,"currency",!0,[this._locale]),this.preparePipeMeta(n.DatePipe,"date",!0,[this._locale]),this.preparePipeMeta(d.ToDatePipe,"toDate",!0,[new n.DatePipe(this._locale),void 0,this.injector.get(a.CustomPipeManager)]),this.preparePipeMeta(d.ToNumberPipe,"toNumber",!0,[new n.DecimalPipe(this._locale),this.i18service]),this.preparePipeMeta(d.ToCurrencyPipe,"toCurrency",!0,[new n.DecimalPipe(this._locale),this.i18service]),this.preparePipeMeta(d.PrefixPipe,"prefix",!0),this.preparePipeMeta(d.SuffixPipe,"suffix",!0),this.preparePipeMeta(d.TimeFromNowPipe,"timeFromNow",!0),this.preparePipeMeta(d.NumberToStringPipe,"numberToString",!0,[new n.DecimalPipe(this._locale)]),this.preparePipeMeta(d.StringToNumberPipe,"stringToNumber",!0),this.preparePipeMeta(d.CustomPipe,"custom",!0,[this.injector.get(a.CustomPipeManager)]),this.preparePipeMeta(d.TrustAsPipe,"trustAs",!0,[this.domSanitizer]),this.preparePipeMeta(d.SanitizePipe,"sanitize",!0,[this.domSanitizer])]}unknownPipe(e){throw Error(`The pipe '${e}' could not be found`)}constructor(e,t,i,n){this.compiler=e,this.injector=t,this.domSanitizer=i,this.i18service=n,this._locale=a.getSessionStorageItem("selectedLocale")||"en",this.preparePipeMeta=(e,t,i,n=[])=>({type:{reference:e,diDeps:n},name:t,pure:i}),this._pipeData=[],this._pipeMeta=new Map,this.setPipeData(),this._pipeData.forEach((e=>{this._pipeMeta.set(e.name,e)})),this.formatsByLocale=this.i18service?this.i18service.getwidgetLocale():{}}meta(e){const t=this._pipeMeta.get(e);return t||this.unknownPipe(e),t}getPipeNameVsIsPureMap(){const e=new Map;return this._pipeMeta.forEach(((t,i)=>{e.set(i,t.pure)})),e}resolveDep(e){return this.injector.get(e.token.identifier.reference)}getInstance(e){const{type:{reference:t,diDeps:i}}=this.meta(e);if(t||this.unknownPipe(e),i.length){const e=[];for(const t of i)e.push(t);return new t(...e)}return new t}static{this.\u0275fac=function(e){return new(e||Mt)(_e.\u0275\u0275inject(_e.Compiler),_e.\u0275\u0275inject(_e.Injector),_e.\u0275\u0275inject(Ve.DomSanitizer),_e.\u0275\u0275inject(ke.AbstractI18nService))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Mt,factory:Mt.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Mt,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:_e.Compiler},{type:_e.Injector},{type:Ve.DomSanitizer},{type:ke.AbstractI18nService}]),null);class Nt{constructor(e,t){this.pipeProvider=e,this.$app=t,this.supportedPipes=["toDate","toCurrency","prefix","suffix","numberToString","stringToNumber","timeFromNow","trustAs","sanitize"],this.$app.isApplicationType&&this.supportedPipes.push("custom")}getPipe(e){if(this.supportedPipes.includes(e))return this.pipeProvider.getInstance(e);throw Error(`The pipe '${e}' could not be found`)}static{this.\u0275fac=function(e){return new(e||Nt)(_e.\u0275\u0275inject(Mt),_e.\u0275\u0275inject(ke.App))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Nt,factory:Nt.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Nt,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:Mt},{type:ke.App}]),null);const kt={DialogService:a.AbstractDialogService,i18nService:a.AbstractI18nService,PipeService:Nt,statePersistence:a.StatePersistence,SpinnerService:a.AbstractSpinnerService,StatePersistenceService:a.StatePersistence,Viewport:a.Viewport,ToasterService:a.AbstractToasterService,Utils:a.UtilsService,CONSTANTS:a.ConstantService,FIELD_TYPE:a.FieldTypeService,FIELD_WIDGET:a.FieldWidgetService,DynamicComponentService:a.DynamicComponentRefProvider},Lt=(...e)=>{},Ft=function(){const e=this.httpService,t=function(t,i){const n=Array.from(arguments).slice(1);return Promise.resolve(e[t].apply(e,n))},i=function(){return t.apply(void 0,["send",...Array.from(arguments)])};return["get","post","head","put","delete","jsonp","patch"].forEach((e=>i[e]=t.bind(void 0,e))),i};class jt{reload(){window.location.reload()}constructor(e,t,i,n,s,o){this.inj=e,this.i18nService=t,this.statePersistence=i,this.httpService=n,this.securityService=s,this.routeReuseStrategy=o,this.Variables={},this.Actions={},this.onAppVariablesReady=Lt,this.onBeforeAppReady=Lt,this.onSessionTimeout=Lt,this.onPageReady=Lt,this.onBeforePageLeave=Lt,this.onBeforeServiceCall=Lt,this.onServiceSuccess=Lt,this.onServiceError=Lt,this.dynamicComponentContainerRef={},this.changeLocale=this.i18nService.setSelectedLocale.bind(this.i18nService),this.getSelectedLocale=this.i18nService.getSelectedLocale.bind(this.i18nService),this.setTimezone=this.i18nService.setTimezone.bind(this.i18nService),this.setwidgetLocale=this.i18nService.setwidgetLocale.bind(this.i18nService),this._eventNotifier=new a.EventNotifier,this.landingPageName=a.getWmProjectProperties().homePage;const r=a.getWmProjectProperties();this.projectName=r.name,this.isPrefabType="PREFAB"===r.type,this.isApplicationType="APPLICATION"===r.type,this.isTemplateBundleType="TEMPLATEBUNDLE"===r.type,this.targetPlatform=r.platformType,this.httpService.registerOnSessionTimeout(this.on401.bind(this)),this.appLocale=this.i18nService.getAppLocale(),this.httpService.setLocale(this.appLocale)}clearPageCache(t){this.routeReuseStrategy instanceof e.WmDefaultRouteReuseStrategy&&this.routeReuseStrategy.reset(t)}notify(e,...t){this._eventNotifier.notify.apply(this._eventNotifier,arguments)}getDependency(e){if(r.isString(e)){if("HttpService"===e)return Ft.call(this);let t=kt[e]&&this.inj.get(kt[e]);if(!t&&this.inj.records?.values){const t=this.inj.records.values();let i=t?.next();for(;i&&!i.done;){if(i?.value?.value?.constructor?.SERVICE_NAME===e)return i.value.value;i=t.next()}}return t}return this.inj.get(e)}on401(){const e=r.get(this.securityService.get(),"userInfo");r.isEmpty(e)||this.onSessionTimeout()}subscribe(e,t){return this._eventNotifier.subscribe(e,t)}notifyApp(e,t,i){const n=r.get(this,"Actions.appNotification"),s=-1!==["PROCESS_REJECTED_IN_QUEUE"].indexOf(e);if(n){if(s)return void console.warn("App Error",e);t=t||"success",e=n.getMessage()||e,n.invoke({message:e,title:a.isDefined(i)?i:t.toUpperCase(),class:t,duration:"ERROR"===t.toUpperCase()?0:void 0})}else console.warn('The default Action "appNotification" doesn\'t exist in the app. App notified following error:\n',e)}registerExpressions(e){r.each(e,((e,t)=>{a.registerFnByExpr(t,e[0],e[1])}))}static{this.\u0275fac=function(e){return new(e||jt)(_e.\u0275\u0275inject(_e.Injector),_e.\u0275\u0275inject(ke.AbstractI18nService),_e.\u0275\u0275inject(ke.StatePersistence),_e.\u0275\u0275inject(ke.AbstractHttpService),_e.\u0275\u0275inject(Le.SecurityService),_e.\u0275\u0275inject(Me.RouteReuseStrategy))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:jt,factory:jt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(jt,[{type:t.Injectable}],(()=>[{type:_e.Injector},{type:ke.AbstractI18nService},{type:ke.StatePersistence},{type:ke.AbstractHttpService},{type:Le.SecurityService},{type:Me.RouteReuseStrategy}]),null);class $t extends a.AbstractToasterService{constructor(e){super(),this.toaster=e}_showToaster(e,t,i,n){if(r.isNumber(n)&&(n={timeOut:n}),(n=n||{}).timeOut=a.isDefined(n.timeOut)?n.timeOut:0,n.enableHtml=a.isDefined(n.enableHtml),n.positionClass=n.positionClass||"toast-bottom-right",n.toastClass="toast",t||i){!n.bodyOutputType&&r.isObject(i)&&(i=JSON.stringify(i));const a=this.toaster[e];if(a)return a.call(this.toaster,i,t,n)}}success(e,t){return this._showToaster("success",e,t,{timeOut:5e3})}error(e,t){return this._showToaster("error",e,t,{timeOut:0})}info(e,t){return this._showToaster("info",e,t,{timeOut:0})}warn(e,t){return this._showToaster("warning",e,t,{timeOut:0})}show(e,t,i,n){return this._showToaster(e,t,i,n)}hide(e){e?this.toaster.clear(e.toastId):this.toaster.clear()}showCustom(e,t){if(e)return(t=t||{}).toastComponent=Rt,t.toastClass="custom-toaster",t.timeOut=a.isDefined(t.timeOut)?t.timeOut:0,t.enableHtml=a.isDefined(t.enableHtml),t.positionClass=t.positionClass||"toast-bottom-right",t.toastClass="toast",this.toaster.show(e,"",t)}setToasterConfig(e){r.isObject(e)?r.merge(this.toaster.toastrConfig,e):console.warn("Please pass a valid options object, For Example : {maxOpened: 1, autoDismiss: true}")}static{this.\u0275fac=function(e){return new(e||$t)(_e.\u0275\u0275inject(Ge.ToastrService))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:$t,factory:$t.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata($t,[{type:t.Injectable}],(()=>[{type:Ge.ToastrService}]),null);const Bt=["ar","ar-001","ar-ae","ar-bh","ar-dz","ar-eg","ar-iq","ar-jo","ar-kw","ar-lb","ar-ly","ar-ma","ar-om","ar-qa","ar-sa","ar-sd","ar-sy","ar-tn","ar-ye","arc","bcc","bqi","ckb","dv","fa","glk","he","ku","mzn","pnb","ps","sd","ug","ur","yi"];class Vt extends a.AbstractI18nService{get app(){return this.inj.get(a.App)}constructor(e,t,i,n){super(),this.$http=e,this.bsLocaleService=t,this.appDefaults=i,this.inj=n,this.defaultSupportedLocale="en",this._isAngularLocaleLoaded=!1,this.formatsByLocale={timezone:"",number:""},this.bundleLoaded={},this.appLocale={},this.prefabLocale=new Map}updateLocaleDirection(){let e="ltr";Bt.includes(this.selectedLocale)&&(e="rtl"),a.setCSS(document.body,"direction",e)}init(){this.messages={},Object.setPrototypeOf(this.appLocale,this.messages)}getSelectedLocale(){return this.selectedLocale}getDefaultSupportedLocale(){return this.defaultSupportedLocale}getAppLocale(){return this.appLocale}getPrefabLocaleBundle(e){return this.prefabLocale.has(e)||this.prefabLocale.set(e,Object.create(this.appLocale)),this.prefabLocale.get(e)}extendPrefabMessages(e){e.prefabMessages&&Object.keys(e.prefabMessages).forEach((t=>{let i=this.prefabLocale.get(t);i||(i=Object.create(this.appLocale),this.prefabLocale.set(t,i)),Object.assign(i,e.prefabMessages[t])}))}extendMessages(e){Object.assign(this.messages,e)}loadResource(e){return this.$http.get(e).toPromise().catch((()=>{console.warn(`error loading locale resource from ${e}`),Promise.resolve({})}))}loadAppLocaleBundle(){this.loadResource(`resources/i18n/${this.selectedLocale}.json`).then((e=>{this.extendMessages(e.messages),this.extendPrefabMessages(e),this.appDefaults.setFormats(e.formats),this.bundleLoaded.app=!0,this.notifyLocaleChanged()}))}loadMomentLocaleBundle(e){const t=a._WM_APP_PROJECT.cdnUrl||a._WM_APP_PROJECT.ngDest;if(this.selectedLocale===this.defaultSupportedLocale)return void moment.locale(this.defaultSupportedLocale);const i=t+`locales/moment/${e}.js`;a.loadScripts([i],!0).then((()=>{moment.locale(this.selectedLocale);let t=moment.localeData(e);t=t&&t._config,I.defineLocale(this.selectedLocale,t),this.bsLocaleService.use(this.getSelectedLocale()||this.defaultSupportedLocale),this.bundleLoaded.moment=!0,this.notifyLocaleChanged()}))}loadAngularLocaleBundle(e){return new Promise((t=>{const i=a._WM_APP_PROJECT.cdnUrl||a._WM_APP_PROJECT.ngDest;if(this.selectedLocale===this.defaultSupportedLocale)return void t();const n=i+`locales/angular/global/${e}.js`;a.loadScripts([n],!0).then((()=>{this._isAngularLocaleLoaded=!0,t()}),t)}))}loadCalendarLocaleBundle(e,t=!1){const i=a._WM_APP_PROJECT.cdnUrl||a._WM_APP_PROJECT.ngDest;let n;return e?(n=i+`locales/fullcalendar/${e}.js`,t||!a.isMobile()&&!a.isMobileApp()&&this.selectedLocale!==this.defaultSupportedLocale?a.loadScripts([n],!0):void(this.bundleLoaded.fullCalendar=!0)):Promise.resolve()}loadMomentTimeZoneBundle(e,t){return new Promise((i=>{const n=(a._WM_APP_PROJECT.cdnUrl||a._WM_APP_PROJECT.ngDest)+"locales/moment-timezone/moment-timezone-with-data.js";a.loadScripts([n],!0).then((()=>{let n=e;const a=(e=n.timezone).indexOf("+");a>-1&&(a>0&&(e=e.substr(a)),n.timezone=r.find(moment.tz.names(),(t=>e===moment.tz(t).format("Z")))),this.formatsByLocale.timezone=e;const s=t&&t.formatsByLocale?t.formatsByLocale:this.formatsByLocale;Object.assign(s,n),i()}),i)}))}loadLocaleBundles(e){return e.moment?this.loadMomentLocaleBundle(e.moment):this.selectedLocale===this.defaultSupportedLocale&&(this.bsLocaleService.use(this.getSelectedLocale()||this.defaultSupportedLocale),this.bundleLoaded.moment=!0),e.fullCalendar&&window.FullCalendar?this.loadCalendarLocaleBundle(e.fullCalendar)?.then((()=>{this.bundleLoaded.fullCalendar=!0,this.notifyLocaleChanged()})):this.bundleLoaded.fullCalendar=!0,e.angular&&this.loadAppLocaleBundle(),this.loadAngularLocaleBundle(e.angular)}setTimezone(e,t){this.loadMomentTimeZoneBundle(e,t)}getTimezone(e){const t=r.get(this.app,"activePage.formatsByLocale.timezone"),i=r.get(e,"formatsByLocale.timezone");return i||(t||this.formatsByLocale.timezone)}getFormatsByLocale(){return this.formatsByLocale}setSelectedLocale(e){r.isObject(e)&&(e=e.datavalue);const t=a.getWmProjectProperties().supportedLanguages[e],i=Object.keys(a.getWmProjectProperties().supportedLanguages);return r.includes(i,e)&&e&&e!==this.selectedLocale?(a.setSessionStorageItem("selectedLocale",e),this.selectedLocale=e,this.init(),this.bundleLoaded.moment=!1,this.bundleLoaded.fullCalendar=!1,this.bundleLoaded.app=!1,this.bundleLoaded.angular=!1,this.bundleLoaded.libLocale=t,this.loadLocaleBundles(t).then((()=>{this.updateLocaleDirection(),this.bundleLoaded.angular=!0,this.notifyLocaleChanged()}))):Promise.resolve()}deduceAppLocale(){const e=this.getAcceptedLanguages(),t=a.getWmProjectProperties().defaultLanguage;e.push(t);let i=a.getWmProjectProperties().preferBrowserLang;i=!i||("true"===i||!0===i);let n,s=Object.keys(a.getWmProjectProperties().supportedLanguages)||[this.defaultSupportedLocale],l=i?void 0:t;if(o.CONSTANTS.hasCordova){let t=[];r.forEach(e,(function(e){let i=r.find(s,(t=>e===t))||r.find(s,(t=>e.startsWith(t)));i&&t.push(i)})),n=t[0]}const c=a.getSessionStorageItem("selectedLocale")||l||n||r.intersection(e,s)[0]||this.defaultSupportedLocale;s=s||[c];return c||s[0]}loadDefaultLocale(){Date.prototype.month=Date.prototype.getMonth;const e=this.deduceAppLocale();return this.setSelectedLocale(e)}getLocalizedMessage(e,...t){return a.replace(this.appLocale[e],t)}getAcceptedLanguages(){let e;return o.CONSTANTS.hasCordova?e=navigator.languages||[navigator.language]:(e=decodeURIComponent(a.getWmProjectProperties().preferredLanguage||""),e=e.split(",").map((function(e){return e.split(";")[0]}))),r.map(e,r.toLower)}initCalendarLocale(){return"en"!==this.selectedLocale?this.loadCalendarLocaleBundle(this.selectedLocale,!0):Promise.resolve()}isAngularLocaleLoaded(){return this._isAngularLocaleLoaded}setwidgetLocale(e){this.formatsByLocale.number=e.number}getwidgetLocale(){return this.formatsByLocale}notifyLocaleChanged(){this.bundleLoaded.moment&&this.bundleLoaded.fullCalendar&&this.bundleLoaded.angular&&this.bundleLoaded.app&&this.app.notify("locale-changed",this.bundleLoaded.libLocale)}static{this.\u0275fac=function(e){return new(e||Vt)(_e.\u0275\u0275inject(Be.HttpClient),_e.\u0275\u0275inject(He.BsLocaleService),_e.\u0275\u0275inject(ke.AppDefaults),_e.\u0275\u0275inject(_e.Injector))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Vt,factory:Vt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Vt,[{type:t.Injectable}],(()=>[{type:Be.HttpClient},{type:He.BsLocaleService},{type:ke.AppDefaults},{type:_e.Injector}]),null);class Gt extends a.AbstractSpinnerService{constructor(){super(),this.spinnerId=0,this.messageSource=new c.Subject,this.messagesByContext={}}getMessageSource(){return this.messageSource}showContextSpinner(e,t,i){const n=$('[name="'+e+'"]');if(this.messagesByContext[e]=this.messagesByContext[e]||{},0!==Object.keys(this.messagesByContext[e]).length)this.messagesByContext[e][i]=t,this.messagesByContext[e].finalMessage=this.messagesByContext[e].finalMessage+" "+this.messagesByContext[e][i],n.find(".spinner-messages-container").html(this.messagesByContext[e].finalMessage);else{const a=$('<div class="app-spinner">\n <div class="spinner-message" aria-label="loading gif">\n <i class="spinner-image animated infinite fa fa-circle-o-notch fa-spin"></i>\n <div class="spinner-messages">\n <p class="spinner-messages-container"></p>\n </div>\n </div>\n </div>');this.messagesByContext[e][i]=t,this.messagesByContext[e].finalMessage=this.messagesByContext[e][i],a.find(".spinner-messages-container").html(this.messagesByContext[e].finalMessage),n.prepend(a)}return i}showAppSpinner(e,t){const i="page";this.messagesByContext[i]=this.messagesByContext[i]||{},this.messagesByContext[i][t]=e,this.messageSource.next({show:!0,message:e,messages:r.values(this.messagesByContext[i])})}hideContextSpinner(e,t){delete this.messagesByContext[e][t],1===Object.keys(this.messagesByContext[e]).length&&(this.messagesByContext[e]={});$('[name="'+e+'"]').find(".app-spinner").remove()}show(e,t,i,n,a){return t=t||++this.spinnerId,n&&"page"!==n?this.showContextSpinner(n,e,t):(this.showAppSpinner(e,t),t)}hide(e){const t=r.findKey(this.messagesByContext,(function(t){return r.includes(r.keys(t),e)}))||"page";if("page"===t)if(e){delete this.messagesByContext[t][e];const i=r.values(this.messagesByContext[t]);this.messageSource.next({show:!!i.length,messages:r.values(this.messagesByContext[t])})}else this.messagesByContext[t]={};else this.hideContextSpinner(t,e)}static{this.\u0275fac=function(e){return new(e||Gt)}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Gt,factory:Gt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Gt,[{type:t.Injectable}],(()=>[]),null);const Wt="body >app-root";class Ut{constructor(e,t,n){this.app=e,this.router=t,this.zone=n,this.history=new zt,this.isPageAddedToHistory=!1,this.router.events.subscribe((e=>{if(e instanceof i.NavigationStart){const t=e.url,i={};let n;this.isPageAddedToHistory||(this.isPageAddedToHistory=!1,t.indexOf("?")>0?(t.substr(t.indexOf("?")+1).split("&").forEach((e=>{const t=e.split("=");i[t[0]]=t[1]})),n=t.substr(0,t.indexOf("?"))):n=t,"/"===n[0]&&(n=n.substr(1)),n&&(delete i.name,this.history.push(new qt(n,i,this.transition))))}}))}getPageTransition(){return r.isEmpty(this.transition)||r.isEqual("none",this.transition)?null:this.transition}goToPage(e,t){this.transition=t.transition||"",this.history.getCurrentPage()&&(this.isPageAddedToHistory=!0),this.history.push(new qt(e,t.urlParams,this.transition)),this.zone.run((()=>this.router.navigate([`/${e}`],{queryParams:t.urlParams})))}goToPrevious(){this.history.getPagesCount()&&(this.transition=this.history.getCurrentPage().transition,r.isEmpty(this.transition)||(this.transition+="-exit"),this.history.pop(),this.isPageAddedToHistory=!0,window.history.back())}goToView(e,t,i){const n=(t=t||{}).pageName,a=t.transition||"",s=t.$event,r=this.app.activePage,l=i&&i._context&&i._context.prefabName;if(this.app.isPrefabType)this.goToElementView($(Wt).find('[name="'+e+'"]'),e,n,i);else if(n===r.activePageName||l)l&&this.isPrefabWithNameExists(l)?this.goToElementView($('[prefabName="'+l+'"]').find('[name="'+e+'"]'),e,n,i):n&&n!==r.activePageName?this.app.notifyApp(o.CONSTANTS.WIDGET_DOESNT_EXIST,"error"):this.goToElementView($(Wt).find('[name="'+e+'"]'),e,n,i);else if(this.isPartialWithNameExists(n))this.goToElementView($('[partialcontainer][content="'+n+'"]').find('[name="'+e+'"]'),e,n,i);else{this.goToPage(n,{viewName:e,$event:s,transition:a,urlParams:t.urlParams});const o=this.app.subscribe("pageReady",(t=>{this.goToElementView($(Wt).find('[name="'+e+'"]'),e,n,i),o()}))}}goToElementView(e,t,i,n){let a,s;const o=this.app.activePage;if(e.length)switch(this.app.isPrefabType||i!==o.activePageName||(e=this.getViewElementInActivePage(e)),a=e[0].widget,a.widgetType){case"wm-accordionpane":this.showAncestors(e,n),a.expand();break;case"wm-tabpane":this.showAncestors(e,n),a.select();break;case"wm-segment-content":this.showAncestors(e,n),a.navigate();break;case"wm-panel":a.expanded=!0}else s=this.showAncestorDialog(t),setTimeout((()=>{s&&this.goToElementView($('[name="'+t+'"]'),t,i,n)}))}getViewElementInActivePage(e){let t;return e.length>1&&(t=r.filter(e,(e=>{if(r.isEmpty($(e).closest('[data-role = "partial"]'))&&r.isEmpty($(e).closest("[wmprefabcontainer]")))return e})),t&&(e=$(t))),e}isPartialWithNameExists(e){return $('[partialcontainer][content="'+e+'"]').length}isPrefabWithNameExists(e){return $('[prefabName="'+e+'"]').length}showAncestors(e,t){e.parents('[wm-navigable-element="true"]').toArray().reverse().forEach((e=>{const t=e.widget;switch(t.widgetType){case"wm-accordionpane":t.expand();break;case"wm-tabpane":t.select();break;case"wm-segment-content":t.navigate();break;case"wm-panel":t.expanded=!0}}))}showAncestorDialog(e){let t;return $("app-root [dialogtype]").each((function(){const i=$(this);if($(i.html()).find('[name="'+e+'"]').length)return t=i.attr("name"),!1})),t}static{this.\u0275fac=function(e){return new(e||Ut)(_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(Me.Router),_e.\u0275\u0275inject(_e.NgZone))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Ut,factory:Ut.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Ut,[{type:t.Injectable}],(()=>[{type:ke.App},{type:Me.Router},{type:_e.NgZone}]),null);class qt{constructor(e,t,i){this.name=e,this.urlParams=t,this.transition=i,this.transition=r.isEmpty(this.transition)?null:this.transition}isEqual(e){return e&&e.name===this.name&&r.isEqual(e.urlParams,this.urlParams)}}class zt{constructor(){this.stack=[]}getCurrentPage(){return this.currentPage}getPagesCount(){return this.stack.length}isLastVisitedPage(e){return this.getLastPage().isEqual(e)}push(e){this.currentPage&&this.stack.push(this.currentPage),this.currentPage=e}pop(){return this.currentPage=this.stack.pop(),this.currentPage}getLastPage(){return this.stack.length>0?this.stack[this.stack.length-1]:void 0}}class Ht{constructor(){}setFormats(e){const t=e.date,i=e.time,n=t&&i?t+" "+i:void 0,a=e.currency;this.dateFormat=t,this.timeFormat=i,this.dateTimeFormat=n,this.currencyCode=a}static{this.\u0275fac=function(e){return new(e||Ht)}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Ht,factory:Ht.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Ht,[{type:t.Injectable}],(()=>[]),null);let Qt=!1;class Yt{constructor(e,t){this.securityService=e,this.appManager=t}loadSecurityConfig(){return Qt?Promise.resolve(!0):this.appManager.loadSecurityConfig().then((()=>Qt=!0))}isAuthenticated(){return this.loadSecurityConfig().then((()=>new Promise(((e,t)=>{this.securityService.isAuthenticated(e,t)}))))}canActivate(e){return this.isAuthenticated().then((t=>t?Promise.resolve(!0):(this.appManager.handle401(e.routeConfig.path,{queryParams:e.queryParams}),Promise.resolve(!1))))}static{this.\u0275fac=function(e){return new(e||Yt)(_e.\u0275\u0275inject(Le.SecurityService),_e.\u0275\u0275inject(et))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Yt,factory:Yt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Yt,[{type:t.Injectable}],(()=>[{type:Le.SecurityService},{type:et}]),null);class Xt{constructor(e,t,i,n,a){this.securityService=e,this.authGuard=t,this.toasterService=i,this.app=n,this.appManager=a}canActivate(e){const t=e.data.allowedRoles;return this.authGuard.isAuthenticated().then((i=>{if(i){const e=this.securityService.get().userInfo.userRoles;return r.intersection(t,e).length>0?Promise.resolve(!0):(this.appManager.notifyApp(this.app.appLocale.LABEL_ACCESS_DENIED||"Access Denied","error"),Promise.resolve(!1))}return this.appManager.handle401(e.routeConfig.path,{queryParams:e.queryParams}),Promise.resolve(!1)}))}static{this.\u0275fac=function(e){return new(e||Xt)(_e.\u0275\u0275inject(Le.SecurityService),_e.\u0275\u0275inject(Yt),_e.\u0275\u0275inject(ke.AbstractToasterService),_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(et))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Xt,factory:Xt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Xt,[{type:t.Injectable}],(()=>[{type:Le.SecurityService},{type:Yt},{type:ke.AbstractToasterService},{type:ke.App},{type:et}]),null);class Kt{constructor(e,t){this.app=e,this.appManager=t}canActivate(e){return this.appManager.notifyApp(this.app.appLocale.MESSAGE_PAGE_NOT_FOUND||"The page you are trying to reach is not available","error"),Promise.resolve(!1)}static{this.\u0275fac=function(e){return new(e||Kt)(_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(et))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Kt,factory:Kt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Kt,[{type:t.Injectable}],(()=>[{type:ke.App},{type:et}]),null);let Jt=!1;class Zt{constructor(e,t,i,n){this.inj=e,this.app=t,this.utilService=i,this.appJsProvider=n,this.appManager=this.inj.get(et)}async resolve(){if(Jt)return!0;try{(await this.appJsProvider.getAppScriptFn())(this.app,this.utilService,this.inj)}catch(e){console.warn("Error in executing app.js",e)}return Jt=!0,!0}static{this.\u0275fac=function(e){return new(e||Zt)(_e.\u0275\u0275inject(_e.Injector),_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(ke.UtilsService),_e.\u0275\u0275inject(Ke))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Zt,factory:Zt.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Zt,[{type:t.Injectable}],(()=>[{type:_e.Injector},{type:ke.App},{type:ke.UtilsService},{type:Ke}]),null);let ei=!1;class ti{constructor(e,t,i){this.appManager=e,this.appJsProvider=t,this.customPipeManager=i}resolve(){return!(!this.appManager.isPrefabType()&&!this.appManager.isTemplateBundleType())||(ei||(this.appJsProvider.loadFormatterConfigScript(this.loadedFormatterScript.bind(this)),ei=!0),ei)}loadedFormatterScript(e){try{let t=e;t||console.warn("Please return valid formatter object");for(let e in t)this.customPipeManager.setCustomPipe(e,t[e])}catch(e){console.warn("Error in reading formatters.js",e)}}static{this.\u0275fac=function(e){return new(e||ti)(_e.\u0275\u0275inject(et),_e.\u0275\u0275inject(Ze),_e.\u0275\u0275inject(ke.CustomPipeManager))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:ti,factory:ti.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(ti,[{type:t.Injectable}],(()=>[{type:et},{type:Ze},{type:ke.CustomPipeManager}]),null);class ii{constructor(e){this.i18nService=e}resolve(){return this.i18nService.loadDefaultLocale()}static{this.\u0275fac=function(e){return new(e||ii)(_e.\u0275\u0275inject(ke.AbstractI18nService))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:ii,factory:ii.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(ii,[{type:t.Injectable}],(()=>[{type:ke.AbstractI18nService}]),null);const ni=["dynamicComponent"];function ai(e,t){1&e&&_e.\u0275\u0275element(0,"div",11)}function si(e,t){if(1&e){const e=_e.\u0275\u0275getCurrentView();_e.\u0275\u0275elementStart(0,"li",14)(1,"button",15),_e.\u0275\u0275listener("click",(function(){const t=_e.\u0275\u0275restoreView(e).$implicit;return _e.\u0275\u0275resetView(t.invoke())})),_e.\u0275\u0275text(2),_e.\u0275\u0275elementEnd()()}if(2&e){const e=t.$implicit;_e.\u0275\u0275advance(2),_e.\u0275\u0275textInterpolate(e.name)}}function oi(e,t){if(1&e&&(_e.\u0275\u0275elementStart(0,"ul",12),_e.\u0275\u0275template(1,si,3,1,"li",13),_e.\u0275\u0275elementEnd()),2&e){const e=_e.\u0275\u0275nextContext(2);_e.\u0275\u0275advance(),_e.\u0275\u0275property("ngForOf",e.providersConfig)}}function ri(e,t){1&e&&_e.\u0275\u0275element(0,"div",16)}function li(e,t){1&e&&_e.\u0275\u0275element(0,"div",17)}function ci(e,t){if(1&e&&(_e.\u0275\u0275elementContainerStart(0),_e.\u0275\u0275element(1,"router-outlet"),_e.\u0275\u0275template(2,ai,1,0,"div",3),_e.\u0275\u0275element(3,"app-spinner",4),_e.\u0275\u0275elementStart(4,"div",5),_e.\u0275\u0275template(5,oi,2,1,"ng-template",null,1,_e.\u0275\u0275templateRefExtractor),_e.\u0275\u0275elementEnd(),_e.\u0275\u0275element(7,"div",6),_e.\u0275\u0275template(8,ri,1,0,"div",7)(9,li,1,0,"div",8),_e.\u0275\u0275element(10,"div",9)(11,"i",10),_e.\u0275\u0275elementContainerEnd()),2&e){const e=_e.\u0275\u0275nextContext();_e.\u0275\u0275advance(2),_e.\u0275\u0275property("ngIf",e.isApplicationType),_e.\u0275\u0275advance(),_e.\u0275\u0275property("show",e.spinner.show)("spinnermessages",e.spinner.messages),_e.\u0275\u0275attribute("aria-label",e.spinner.arialabel||"Loading"),_e.\u0275\u0275advance(5),_e.\u0275\u0275property("ngIf",!e.isApplicationType),_e.\u0275\u0275advance(),_e.\u0275\u0275property("ngIf",!e.isApplicationType)}}class di{constructor(e,t,n,s,o,r,l,c,d,p,u){let h;this.elRef=n,this.oAuthService=s,this.dialogService=o,this.spinnerService=r,this.router=c,this.app=d,this.appManager=p,this.customIconsLoaderService=u,this.startApp=!1,this.isApplicationType=!1,this.spinner={show:!1,messages:[],arialabel:""},this.isOAuthDialogOpen=!1,a.setPipeProvider(e),a.setNgZone(l),a.setAppRef(t),this.isApplicationType="APPLICATION"===a.getWmProjectProperties().type,this.isApplicationType&&this.customIconsLoaderService.load(),this.appManager.beforeAppReady(),s.getOAuthProvidersAsObservable().subscribe((e=>{this.providersConfig=e,e.length?this.showOAuthDialog():this.closeOAuthDialog()})),this.spinnerService.getMessageSource().asObservable().subscribe((e=>{setTimeout((()=>{this.spinner.show=e.show,this.spinner.messages=e.messages,this.spinner.arialabel=e.messages.toString()}))})),E.setTheme("bs3");let m=a.noop;this.router.events.subscribe((e=>{if(e instanceof i.NavigationStart){let t=e.url.split("?")[0];t=t.substring(1),t||(this.app.activeLayoutName="",this.app.layoutPages=[]),h=this.app.activeLayoutName&&this.app.layoutPages&&this.app.layoutPages.length&&this.app.layoutPages.includes(t)?this.spinnerService.show("","wmRouterOutlet","","wmRouterOutlet"):this.spinnerService.show("","globalSpinner");const i=document.querySelector("app-page-outlet");i&&a.addClass(i,"page-load-in-progress");const n=Date.now();m=()=>{this.spinnerService.hide(h);const e=document.querySelector("app-page-outlet");e&&a.removeClass(e,"page-load-in-progress"),m=a.noop,this.app.activePageLoadTime=Date.now()-n}}else(e instanceof i.NavigationEnd||e instanceof i.NavigationCancel||e instanceof i.NavigationError)&&setTimeout((()=>{m()}),1e3)})),this.appManager.subscribe("pageReady",(()=>{m()})),this.appManager.subscribe("pageAttach",(()=>{m()}))}showOAuthDialog(){this.isOAuthDialogOpen||(this.isOAuthDialogOpen=!0,this.dialogService.open("oAuthLoginDialog",this))}closeOAuthDialog(){this.isOAuthDialogOpen&&(this.isOAuthDialogOpen=!1,this.dialogService.close("oAuthLoginDialog",this))}start(){setTimeout((()=>{this.startApp=!0})),setTimeout((()=>{this.app.dynamicComponentContainerRef=this.dynamicComponentContainerRef,this.overrideRouterOutlet()}),10)}overrideRouterOutlet(){const e=this.routerOutlet.attach,t=this.routerOutlet.detach;this.routerOutlet.attach=t=>{e.call(this.routerOutlet,t),t.instance.ngOnAttach()},this.routerOutlet.detach=()=>{this.app.activePage.ngOnDetach();return t.call(this.routerOutlet)}}ngAfterViewInit(){a.hasCordova()&&!window.wmDeviceReady?document.addEventListener("wmDeviceReady",(()=>this.start())):this.start()}ngDoCheck(){a.$invokeWatchers()}static{this.\u0275fac=function(e){return new(e||di)(_e.\u0275\u0275directiveInject(Mt),_e.\u0275\u0275directiveInject(_e.ApplicationRef),_e.\u0275\u0275directiveInject(_e.ElementRef),_e.\u0275\u0275directiveInject(ze.OAuthService),_e.\u0275\u0275directiveInject(ke.AbstractDialogService),_e.\u0275\u0275directiveInject(ke.AbstractSpinnerService),_e.\u0275\u0275directiveInject(_e.NgZone),_e.\u0275\u0275directiveInject(Me.Router),_e.\u0275\u0275directiveInject(ke.App),_e.\u0275\u0275directiveInject(et),_e.\u0275\u0275directiveInject(ke.CustomIconsLoaderService))}}static{this.\u0275cmp=_e.\u0275\u0275defineComponent({type:di,selectors:[["app-root"]],viewQuery:function(e,n){if(1&e&&(_e.\u0275\u0275viewQuery(i.RouterOutlet,5),_e.\u0275\u0275viewQuery(ni,5,t.ViewContainerRef)),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(n.routerOutlet=e.first),_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(n.dynamicComponentContainerRef=e.first)}},decls:3,vars:1,consts:[["dynamicComponent",""],["dialogBody",""],[4,"ngIf"],["wmContainer","","partialContainer","","content","Common","hidden","","class","ng-hide",4,"ngIf"],["name","globalspinner","classname","global-spinner","role","alert","aria-live","assertive",3,"show","spinnermessages"],["wmDialog","","name","oAuthLoginDialog","title","Application is requesting you to sign in with","close.event","closeOAuthDialog()"],["wmConfirmDialog","","name","_app-confirm-dialog","title.bind","title","message.bind","message","oktext.bind","oktext","canceltext.bind","canceltext","closable","false","iconclass.bind","iconclass","escape.event","onEscape()","ok.event","onOk()","cancel.event","onCancel()","close.event","onClose()","opened.event","onOpen()"],["wmConfirmDialog","","name","PrefabConfirmDialog","title.bind","title","message.bind","text","oktext.bind","okButtonText","canceltext.bind","cancelButtonText","closable","false","iconclass.bind","iconclass","escape.event","onEscape()","ok.event","onOk()","cancel.event","onCancel()","close.event","onClose()","opened.event","onOpen()",4,"ngIf"],["wmAlertDialog","","name","PrefabAlertDialog","title.bind","title","message.bind","text","oktext.bind","okButtonText","canceltext.bind","cancelButtonText","closable","false","iconclass.bind","iconclass","escape.event","onEscape()","ok.event","onOk()","cancel.event","onCancel()","close.event","onClose()","opened.event","onOpen()",4,"ngIf"],["wmAppExt",""],["id","wm-mobile-display"],["wmContainer","","partialContainer","","content","Common","hidden","",1,"ng-hide"],[1,"list-items"],["class","list-item",4,"ngFor","ngForOf"],[1,"list-item"],[1,"btn",3,"click"],["wmConfirmDialog","","name","PrefabConfirmDialog","title.bind","title","message.bind","text","oktext.bind","okButtonText","canceltext.bind","cancelButtonText","closable","false","iconclass.bind","iconclass","escape.event","onEscape()","ok.event","onOk()","cancel.event","onCancel()","close.event","onClose()","opened.event","onOpen()"],["wmAlertDialog","","name","PrefabAlertDialog","title.bind","title","message.bind","text","oktext.bind","okButtonText","canceltext.bind","cancelButtonText","closable","false","iconclass.bind","iconclass","escape.event","onEscape()","ok.event","onOk()","cancel.event","onCancel()","close.event","onClose()","opened.event","onOpen()"]],template:function(e,t){1&e&&(_e.\u0275\u0275template(0,ci,12,6,"ng-container",2),_e.\u0275\u0275elementContainer(1,null,0)),2&e&&_e.\u0275\u0275property("ngIf",t.startApp)},dependencies:[Ne.NgForOf,Ne.NgIf,Me.RouterOutlet,je.ContainerDirective,je.PartialParamHandlerDirective,je.PartialContainerDirective,qe.AppExtComponent,We.ConfirmDialogComponent,Ue.DialogComponent,Qe.AlertDialogComponent,At],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(di,[{type:t.Component,args:[{selector:"app-root",encapsulation:t.ViewEncapsulation.None,template:'<ng-container *ngIf="startApp">\n <router-outlet></router-outlet>\n <div wmContainer partialContainer content="Common" hidden class="ng-hide" *ngIf="isApplicationType"></div>\n <app-spinner name="globalspinner" classname="global-spinner" role="alert" aria-live="assertive" [attr.aria-label]="spinner.arialabel || \'Loading\'" [show]="spinner.show" [spinnermessages]="spinner.messages"></app-spinner>\n <div wmDialog name="oAuthLoginDialog" title="Application is requesting you to sign in with"\n close.event="closeOAuthDialog()">\n <ng-template #dialogBody>\n <ul class="list-items">\n <li class="list-item" *ngFor="let provider of providersConfig">\n <button class="btn" (click)="provider.invoke()">{{provider.name}}</button>\n </li>\n </ul>\n </ng-template>\n </div>\n <div wmConfirmDialog name="_app-confirm-dialog" title.bind="title" message.bind="message" oktext.bind="oktext"\n canceltext.bind="canceltext" closable="false" iconclass.bind="iconclass"\n escape.event="onEscape()" ok.event="onOk()" cancel.event="onCancel()" close.event="onClose()" opened.event="onOpen()"></div>\n <div *ngIf="!isApplicationType" wmConfirmDialog name="PrefabConfirmDialog" title.bind="title" message.bind="text" oktext.bind="okButtonText"\n canceltext.bind="cancelButtonText" closable="false" iconclass.bind="iconclass"\n escape.event="onEscape()" ok.event="onOk()" cancel.event="onCancel()" close.event="onClose()" opened.event="onOpen()"></div>\n <div *ngIf="!isApplicationType" wmAlertDialog name="PrefabAlertDialog" title.bind="title" message.bind="text" oktext.bind="okButtonText"\n canceltext.bind="cancelButtonText" closable="false" iconclass.bind="iconclass"\n escape.event="onEscape()" ok.event="onOk()" cancel.event="onCancel()" close.event="onClose()" opened.event="onOpen()"></div>\n <div wmAppExt></div>\n <i id="wm-mobile-display"></i>\n</ng-container>\n\x3c!--Dummy container to create the component dynamically--\x3e\n<ng-container #dynamicComponent></ng-container>\n'}]}],(()=>[{type:Mt},{type:_e.ApplicationRef},{type:_e.ElementRef},{type:ze.OAuthService},{type:ke.AbstractDialogService},{type:ke.AbstractSpinnerService},{type:_e.NgZone},{type:Me.Router},{type:ke.App},{type:et},{type:ke.CustomIconsLoaderService}]),{routerOutlet:[{type:t.ViewChild,args:[i.RouterOutlet]}],dynamicComponentContainerRef:[{type:t.ViewChild,args:["dynamicComponent",{read:t.ViewContainerRef}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassDebugInfo(di,{className:"AppComponent",filePath:"components/app-component/app.component.ts",lineNumber:23});class pi{constructor(){this.wmHttpRequest=new C.WmHttpRequest,this.wmHttpResponse=new C.WmHttpResponse}createSubject(){return new c.Subject}intercept(e,t){let i,n;if(o.appManager&&o.appManager.appOnBeforeServiceCall){const t=this.wmHttpRequest.angularToWmRequest(e);i=o.appManager.appOnBeforeServiceCall(t),i&&(i=this.wmHttpRequest.wmToAngularRequest(i),e=i)}return t.handle(e).pipe(T.tap((e=>{if(e&&4===e.type&&o.appManager&&o.appManager.appOnServiceSuccess){const t=this.wmHttpResponse.angularToWmResponse(e);n=o.appManager.appOnServiceSuccess(t.body,t),n&&(n=this.wmHttpResponse.wmToAngularResponse(n),r.extend(e,n))}}),(t=>{if(t._401Subscriber=this.createSubject(),o.httpService.isPlatformSessionTimeout(t)&&o.httpService.handleSessionTimeout(e,t._401Subscriber),o.appManager&&o.appManager.appOnServiceError){const e=this.wmHttpResponse.angularToWmResponse(t);n=o.appManager.appOnServiceError(e.message,e),n&&(n=this.wmHttpResponse.wmToAngularResponse(n),r.extend(t,n))}})))}static{this.\u0275fac=function(e){return new(e||pi)}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:pi,factory:pi.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(pi,[{type:t.Injectable}],(()=>[]),null);const ui="PREFAB";class hi{constructor(e){this.prefabManager=e,window.addEventListener("message",(e=>{if((e.data&&e.data.context)!==ui)return;const t=e.data.action,i=e.data.payload;"init"===t?this.init():"set-property"===t?this.setProperty(i):"get-outbound-properties"===t?this.getOutboundProps():"invoke-script"===t&&this.invokeScript(i)}))}postMessage(e,t){const i={context:ui,action:e,payload:t};window.top.postMessage(i,"*")}setupEventListeners(){this.prefabInstance.invokeEventCallback=(e,t={})=>{this.postMessage("event-log",{name:e,data:t})}}init(){this.previewMode=!0,this.prefabInstance.readyState.subscribe((()=>{}),(()=>{}),(()=>{this.prefabManager.getConfig("__self__").then((e=>{this.config=e,this.postMessage("config",e),this.setupEventListeners()}))}))}setProperty(e){this.prefabInstance.widget[e.name]=e.value}isOutBoundProp(e){return"out-bound"===e.bindable||"in-out-bound"===e.bindable}getOutboundProps(){const e={};for(const[t,i]of Object.entries(this.config.properties||{}))this.isOutBoundProp(i)&&(e[t]=this.prefabInstance.widget[t]);this.postMessage("outbound-properties",e)}invokeScript(e){const t=`\n return ${e.script};`,i=new Function("Prefab",t)(this.prefabInstance);this.postMessage("method-output",{methodName:e.methodName,output:i})}ngAfterViewInit(){this.setupEventListeners(),this.postMessage("init")}static{this.\u0275fac=function(e){return new(e||hi)(_e.\u0275\u0275directiveInject(rt))}}static{this.\u0275cmp=_e.\u0275\u0275defineComponent({type:hi,selectors:[["wm-prefab-preview"]],viewQuery:function(e,t){if(1&e&&_e.\u0275\u0275viewQuery(u.PrefabDirective,7),2&e){let e;_e.\u0275\u0275queryRefresh(e=_e.\u0275\u0275loadQuery())&&(t.prefabInstance=e.first)}},decls:2,vars:0,consts:[[1,"prefab-preview","row"],["wmPrefab","","name","prefab-preview","prefabname","__self__"]],template:function(e,t){1&e&&(_e.\u0275\u0275elementStart(0,"div",0),_e.\u0275\u0275element(1,"section",1),_e.\u0275\u0275elementEnd())},dependencies:[$e.PrefabDirective,_t],encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(hi,[{type:t.Component,args:[{selector:"wm-prefab-preview",template:'\n <div class="prefab-preview row">\n <section wmPrefab name="prefab-preview" prefabname="__self__"></section>\n </div>\n '}]}],(()=>[{type:rt}]),{prefabInstance:[{type:t.ViewChild,args:[u.PrefabDirective,{static:!0}]}]}),("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassDebugInfo(hi,{className:"PrefabPreviewComponent",filePath:"components/prefab-preview.component.ts",lineNumber:17}),D.initComponentsBuildTask();const mi=new Map,gi=(e,i,n="")=>t.Component({template:i,styles:[n],encapsulation:t.ViewEncapsulation.None,selector:e})(class{constructor(){this.isDynamicComponent=!0}});class fi{constructor(e,t,i){this.app=e,this.appManager=t,this.compiler=i,this.counter=1}async getComponentFactoryRef(e,i,n={}){let a=mi.get(e);if(i=n.transpile?x.transpile(i).markup:i,!a||n.noCache){const o=gi(e,i,n.styles),r=(s=o,t.NgModule({declarations:[s],imports:[Bi],schemas:[t.CUSTOM_ELEMENTS_SCHEMA,t.NO_ERRORS_SCHEMA]})(class{}));a=this.compiler.compileModuleAndAllComponentsSync(r).componentFactories.filter((e=>e.componentType===o))[0],mi.set(e,a)}var s;return a}async addComponent(e,t,i={},n={}){n.transpile=!a.isDefined(n.transpile)||n.transpile,n.noCache=!a.isDefined(n.noCache)||n.noCache,n.selector=a.isDefined(n.selector)?n.selector:"wm-dynamic-component-"+this.counter++;const s=await this.getComponentFactoryRef(n.selector,t,n),o=this.app.dynamicComponentContainerRef.createComponent(s,0,r.get(n,"inj"));a.extendProto(o.instance,i),e.appendChild(o.location.nativeElement)}static{this.\u0275fac=function(e){return new(e||fi)(_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(et),_e.\u0275\u0275inject(_e.Compiler))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:fi,factory:fi.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(fi,[{type:t.Injectable}],(()=>[{type:ke.App},{type:et},{type:_e.Compiler}]),null);class vi{canDeactivate(e){return function(){let e;return e=this.app.activePage&&this.app.activePage.onBeforePageLeave(),!1!==e&&(e=(this.app.onBeforePageLeave||a.noop)(this.app.activePageName,this.app.activePage)),void 0===e||e}.apply(e)}static{this.\u0275fac=function(e){return new(e||vi)}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:vi,factory:vi.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(vi,[{type:t.Injectable}],null,null);class bi{canDeactivate(e){return!e.canDeactivate||e.canDeactivate()}static{this.\u0275fac=function(e){return new(e||bi)}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:bi,factory:bi.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(bi,[{type:t.Injectable}],null,null);
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
9
+ class yi{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach((e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))})),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}static{this.\u0275fac=function(e){return new(e||yi)}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:yi,factory:yi.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(yi,[{type:t.Injectable}],null,null);class wi extends yi{constructor(e){super(),this._doc=e,this._hostNodes=new Map,this._hostNodes.set(e.head,[])}_addStylesToHost(e,t,i){const n=document.querySelector('meta[name="CSP-NONCE"]')?.getAttribute("content")||"wm-csp-nonce";e.forEach((e=>{const a=this._doc.createElement("style");a.textContent=e,a.setAttribute("nonce",n),i.push(t.appendChild(a))}))}addHost(e){const t=[];this._addStylesToHost(this._stylesSet,e,t),this._hostNodes.set(e,t)}removeHost(e){const t=this._hostNodes.get(e);t&&t.forEach(Ci),this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(((t,i)=>{this._addStylesToHost(e,i,t)}))}ngOnDestroy(){this._hostNodes.forEach((e=>e.forEach(Ci)))}static{this.\u0275fac=function(e){return new(e||wi)(_e.\u0275\u0275inject(n.DOCUMENT))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:wi,factory:wi.\u0275fac})}}function Ci(e){n.\u0275getDOM().remove(e)}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(wi,[{type:t.Injectable}],(()=>[{type:void 0,decorators:[{type:t.Inject,args:[n.DOCUMENT]}]}]),null);const Pi={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/MathML/"},Ii=/%COMP%/g,Ai="%COMP%",Ei=`_nghost-${Ai}`,Oi=`_ngcontent-${Ai}`;function Ti(e,t,i){for(let n=0;n<t.length;n++){let a=t[n];Array.isArray(a)?Ti(e,a,i):(a=a.replace(Ii,e),i.push(a))}return i}class xi{constructor(e,t,i,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=i,this.doc=n,this.rendererByCompId=new Map,this.defaultRenderer=new Di(e,n)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;switch(i.encapsulation){case t.ViewEncapsulation.Emulated:{let t=this.rendererByCompId.get(i.id);return t||(t=new Si(this.eventManager,this.sharedStylesHost,i,this.appId,this.doc),this.rendererByCompId.set(i.id,t)),t.applyToHost(e),t}case 1:case t.ViewEncapsulation.ShadowDom:return new _i(this.eventManager,this.sharedStylesHost,e,i,this.doc);default:if(!this.rendererByCompId.has(i.id)){const e=Ti(i.id,i.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(i.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}static{this.\u0275fac=function(e){return new(e||xi)(_e.\u0275\u0275inject(Ve.EventManager),_e.\u0275\u0275inject(Ve.\u0275SharedStylesHost),_e.\u0275\u0275inject(t.APP_ID),_e.\u0275\u0275inject(n.DOCUMENT))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:xi,factory:xi.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(xi,[{type:t.Injectable}],(()=>[{type:Ve.EventManager},{type:Ve.\u0275SharedStylesHost},{type:void 0,decorators:[{type:t.Inject,args:[t.APP_ID]}]},{type:Document,decorators:[{type:t.Inject,args:[n.DOCUMENT]}]}]),null);let Di=class{constructor(e,t){this.eventManager=e,this.doc=t,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(e,t){return t?document.createElementNS(Pi[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){(Ri(e)?e.content:e).appendChild(t)}insertBefore(e,t,i){if(e){(Ri(e)?e.content:e).insertBefore(t,i)}}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let i="string"==typeof e?document.querySelector(e):e;if(!i)throw new Error(`The selector "${e}" did not match any elements`);return t||(i.textContent=""),i}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}resetStyles(e){[].slice.call(e).forEach((function(t){e.style.removeProperty(t)}))}applyStyles(e,t){if(t){return t.split(";").forEach((function(t){const i=t.split(":");let n,a;2===i.length&&(n=i[0].trim(),a=i[1].trim(),e.style[n]=a)})),t}}setAttribute(e,t,i,n){if(n){t=n+":"+t;const a=Pi[n];a?e.setAttributeNS(a,t,i):e.setAttribute(t,i)}else"style"===t?(this.resetStyles(e),this.applyStyles(e,i)):e.setAttribute(t,i)}removeAttribute(e,t,i){if(i){const n=Pi[i];n?e.removeAttributeNS(n,t):e.removeAttribute(`${i}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,i,n,a){a&(t.RendererStyleFlags2.DashCase|t.RendererStyleFlags2.Important)?e.style.setProperty(i,n,a&t.RendererStyleFlags2.Important?"important":""):e.style[i]=n}removeStyle(e,i,n){n&t.RendererStyleFlags2.DashCase?e.style.removeProperty(i):e.style[i]=""}setProperty(e,t,i){e[t]=i}setValue(e,t){e.nodeValue=t}listen(e,t,i){if("string"==typeof e&&!(e=n.\u0275getDOM().getGlobalEventTarget(this.doc,e)))throw new Error(`Unsupported event target ${e} for event ${t}`);return this.eventManager.addEventListener(e,t,(a=i,e=>{if("__ngUnwrap__"===e)return a;!1===a(e)&&(e.preventDefault(),e.returnValue=!1)}));var a}};function Ri(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}Di=p.__decorate([p.__param(1,t.Inject(n.DOCUMENT)),p.__metadata("design:paramtypes",[m.EventManager,Document])],Di);let Si=class extends Di{constructor(e,t,i,n,a){super(e,a),this.component=i,this.doc=a;const s=Ti(n+"-"+i.id,i.styles,[]);var o;t.addStyles(s),this.contentAttr=(o=n+"-"+i.id,Oi.replace(Ii,o)),this.hostAttr=function(e){return Ei.replace(Ii,e)}(n+"-"+i.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const i=super.createElement(e,t);return super.setAttribute(i,this.contentAttr,""),i}};Si=p.__decorate([p.__param(4,t.Inject(n.DOCUMENT)),p.__metadata("design:paramtypes",[m.EventManager,m.\u0275SharedStylesHost,Object,String,Document])],Si);let _i=class extends Di{constructor(e,t,i,n,a){super(e,a),this.sharedStylesHost=t,this.hostEl=i,this.doc=a,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=Ti(n.id,n.styles,[]);for(let e=0;e<s.length;e++){const t=document.createElement("style");t.textContent=s[e],this.shadowRoot.appendChild(t)}}nodeOrShadowRoot(e){return e===this.hostEl?this.shadowRoot:e}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}appendChild(e,t){return super.appendChild(this.nodeOrShadowRoot(e),t)}insertBefore(e,t,i){return super.insertBefore(this.nodeOrShadowRoot(e),t,i)}removeChild(e,t){return super.removeChild(this.nodeOrShadowRoot(e),t)}parentNode(e){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(e)))}};_i=p.__decorate([p.__param(4,t.Inject(n.DOCUMENT)),p.__metadata("design:paramtypes",[m.EventManager,m.\u0275SharedStylesHost,Object,Object,Document])],_i);const Mi=()=>{let e=document.querySelector('[name="deployUrl"]')&&document.querySelector('[name="deployUrl"]').getAttribute("content");e||(e=document.querySelector('[name="cdnUrl"]')&&document.querySelector('[name="cdnUrl"]').getAttribute("content")),a._WM_APP_PROJECT.id=a.hasCordova()?_WM_APP_PROPERTIES.displayName:location.href.split("/")[3],a._WM_APP_PROJECT.cdnUrl=e||"ng-bundle/",a._WM_APP_PROJECT.ngDest="ng-bundle/";try{__webpack_require__.p=__webpack_public_path__=e}catch(e){}};var Ni;function ki(e,t){return{provide:e,useValue:t}}function Li(e,t){return async()=>(Mi(),await t.resolve(),e.loadDefaultLocale())}function Fi(e){return Mi(),e.deduceAppLocale()}!function(e){e.IOS="ios",e.ANDROID="android"}(Ni||(Ni={}));const ji=[Ct,At,Rt,_t,di,hi,St],$i=[b.ConfirmDialogModule,y.DesignDialogModule,v.DialogModule,A.BsDatepickerModule,we.TimepickerModule,Ce.BsDropdownModule,Pe.PaginationModule,Ie.TypeaheadModule,Ae.ProgressbarModule,Ee.CarouselModule,Oe.PopoverModule,Te.NgCircleProgressModule,xe.TooltipModule,k.BasicModule,L.ProgressModule,F.RichTextEditorModule,j.SearchModule,B.TreeModule,V.CalendarModule,G.ChipsModule,W.ColorPickerModule,U.CurrencyModule,q.EpochModule,z.FileUploadModule,H.InputModule,Q.RatingModule,Y.SliderModule,X.CardModule,K.FormModule,J.ListModule,Z.LiveTableModule,ee.PaginationModule,te.TableModule,ie.ChartModule,ne.AccordionModule,ae.LinearLayoutModule,se.LayoutGridModule,oe.PanelModule,re.TabsModule,le.TileModule,ce.WizardModule,O.AlertDialogModule,de.IframeDialogModule,pe.LoginDialogModule,ue.PartialDialogModule,he.BreadcrumbModule,me.MenuModule,ge.NavbarModule,fe.PopoverModule,ve.CarouselModule,be.LoginModule,ye.MarqueeModule,l.PageModule,R.FooterModule,S.HeaderModule,_.LeftPanelModule,M.RightPanelModule,N.TopNavModule,u.PrefabModule];$.fn.swipeAnimation.expressionEvaluator=a.$parseExpr;class Bi{static addCustomEventPolyfill(){if("function"==typeof window.CustomEvent)return!1;const e=(e,t)=>{t=t||{bubbles:!1,cancelable:!1,detail:null};const i=document.createEvent("CustomEvent");return i.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),i};e.prototype=window.Event.prototype,window.CustomEvent=e}static forRoot(){return{ngModule:Bi,providers:[{provide:a.App,useClass:jt},{provide:a.AbstractToasterService,useClass:$t},{provide:a.AbstractI18nService,useClass:Vt},{provide:a.AbstractSpinnerService,useClass:Gt},{provide:a.AbstractNavigationService,useClass:Ut},{provide:a.AppDefaults,useClass:Ht},{provide:a.DynamicComponentRefProvider,useClass:fi},{provide:t.APP_INITIALIZER,useFactory:Li,deps:[a.AbstractI18nService,Zt],multi:!0},{provide:t.LOCALE_ID,useFactory:Fi,deps:[a.AbstractI18nService]},{provide:h.HTTP_INTERCEPTORS,useClass:pi,multi:!0},Nt,n.DecimalPipe,n.DatePipe,et,rt,Yt,Xt,Kt,vi,Zt,ti,ii,ki(ut,10),ki(ht,1800)]}}constructor(e,t,i){Bi.addCustomEventPolyfill(),this.getDeviceDetails().then((e=>{t.selectedViewPort={os:e.os,category:e.selectedDeviceCategory},i.update(e),t.notify("on-viewport-details",e.os)}))}getDeviceDetails(){return new Promise((function(e,t){const i={key:"on-load"};window.top!==window?(window.top.postMessage(i,"*"),window.onmessage=function(t){const i=t.data;a.isObject(i)&&"switch-device"===i.key&&e(i.device)}):a.isIphone()||a.isIpod()||a.isIpad()?e({os:Ni.IOS}):e({os:Ni.ANDROID})}))}static{this.\u0275fac=function(e){return new(e||Bi)(_e.\u0275\u0275inject(qe.MobileRuntimeModule),_e.\u0275\u0275inject(ke.App),_e.\u0275\u0275inject(ke.Viewport))}}static{this.\u0275mod=_e.\u0275\u0275defineNgModule({type:Bi})}static{this.\u0275inj=_e.\u0275\u0275defineInjector({providers:[{provide:m.\u0275SharedStylesHost,useClass:wi},{provide:m.\u0275DomRendererFactory2,useClass:xi}],imports:[n.CommonModule,i.RouterModule,h.HttpClientModule,g.FormsModule,g.ReactiveFormsModule,f.ToastrModule,d.WmComponentsModule,w.MobileRuntimeModule,a.CoreModule,s.SecurityModule,P.OAuthModule,o.VariablesModule,C.HttpServiceModule,$i,g.FormsModule,g.ReactiveFormsModule,n.CommonModule,i.RouterModule,h.HttpClientModule,f.ToastrModule,d.WmComponentsModule,w.MobileRuntimeModule,a.CoreModule,s.SecurityModule,P.OAuthModule,o.VariablesModule,C.HttpServiceModule,b.ConfirmDialogModule,y.DesignDialogModule,v.DialogModule,A.BsDatepickerModule,we.TimepickerModule,Ce.BsDropdownModule,Pe.PaginationModule,Ie.TypeaheadModule,Ae.ProgressbarModule,Ee.CarouselModule,Oe.PopoverModule,Te.NgCircleProgressModule,xe.TooltipModule,k.BasicModule,L.ProgressModule,F.RichTextEditorModule,j.SearchModule,B.TreeModule,V.CalendarModule,G.ChipsModule,W.ColorPickerModule,U.CurrencyModule,q.EpochModule,z.FileUploadModule,H.InputModule,Q.RatingModule,Y.SliderModule,X.CardModule,K.FormModule,J.ListModule,Z.LiveTableModule,ee.PaginationModule,te.TableModule,ie.ChartModule,ne.AccordionModule,ae.LinearLayoutModule,se.LayoutGridModule,oe.PanelModule,re.TabsModule,le.TileModule,ce.WizardModule,O.AlertDialogModule,de.IframeDialogModule,pe.LoginDialogModule,ue.PartialDialogModule,he.BreadcrumbModule,me.MenuModule,ge.NavbarModule,fe.PopoverModule,ve.CarouselModule,be.LoginModule,ye.MarqueeModule,l.PageModule,R.FooterModule,S.HeaderModule,_.LeftPanelModule,M.RightPanelModule,N.TopNavModule,u.PrefabModule]})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Bi,[{type:t.NgModule,args:[{declarations:[...ji],imports:[n.CommonModule,i.RouterModule,h.HttpClientModule,g.FormsModule,g.ReactiveFormsModule,f.ToastrModule,d.WmComponentsModule,w.MobileRuntimeModule,a.CoreModule,s.SecurityModule,P.OAuthModule,o.VariablesModule,C.HttpServiceModule,...$i],exports:[g.FormsModule,g.ReactiveFormsModule,...ji,n.CommonModule,i.RouterModule,h.HttpClientModule,f.ToastrModule,d.WmComponentsModule,w.MobileRuntimeModule,a.CoreModule,s.SecurityModule,P.OAuthModule,o.VariablesModule,C.HttpServiceModule,...$i],providers:[{provide:m.\u0275SharedStylesHost,useClass:wi},{provide:m.\u0275DomRendererFactory2,useClass:xi}]}]}],(()=>[{type:qe.MobileRuntimeModule},{type:ke.App},{type:ke.Viewport}]),null),("undefined"==typeof ngJitMode||ngJitMode)&&_e.\u0275\u0275setNgModuleScope(Bi,{declarations:[Ct,At,Rt,_t,di,hi,St],imports:[n.CommonModule,i.RouterModule,h.HttpClientModule,g.FormsModule,g.ReactiveFormsModule,f.ToastrModule,d.WmComponentsModule,w.MobileRuntimeModule,a.CoreModule,s.SecurityModule,P.OAuthModule,o.VariablesModule,C.HttpServiceModule,b.ConfirmDialogModule,y.DesignDialogModule,v.DialogModule,A.BsDatepickerModule,we.TimepickerModule,Ce.BsDropdownModule,Pe.PaginationModule,Ie.TypeaheadModule,Ae.ProgressbarModule,Ee.CarouselModule,Oe.PopoverModule,Te.NgCircleProgressModule,xe.TooltipModule,k.BasicModule,L.ProgressModule,F.RichTextEditorModule,j.SearchModule,B.TreeModule,V.CalendarModule,G.ChipsModule,W.ColorPickerModule,U.CurrencyModule,q.EpochModule,z.FileUploadModule,H.InputModule,Q.RatingModule,Y.SliderModule,X.CardModule,K.FormModule,J.ListModule,Z.LiveTableModule,ee.PaginationModule,te.TableModule,ie.ChartModule,ne.AccordionModule,ae.LinearLayoutModule,se.LayoutGridModule,oe.PanelModule,re.TabsModule,le.TileModule,ce.WizardModule,O.AlertDialogModule,de.IframeDialogModule,pe.LoginDialogModule,ue.PartialDialogModule,he.BreadcrumbModule,me.MenuModule,ge.NavbarModule,fe.PopoverModule,ve.CarouselModule,be.LoginModule,ye.MarqueeModule,l.PageModule,R.FooterModule,S.HeaderModule,_.LeftPanelModule,M.RightPanelModule,N.TopNavModule,u.PrefabModule],exports:[g.FormsModule,g.ReactiveFormsModule,Ct,At,Rt,_t,di,hi,St,n.CommonModule,i.RouterModule,h.HttpClientModule,f.ToastrModule,d.WmComponentsModule,w.MobileRuntimeModule,a.CoreModule,s.SecurityModule,P.OAuthModule,o.VariablesModule,C.HttpServiceModule,b.ConfirmDialogModule,y.DesignDialogModule,v.DialogModule,A.BsDatepickerModule,we.TimepickerModule,Ce.BsDropdownModule,Pe.PaginationModule,Ie.TypeaheadModule,Ae.ProgressbarModule,Ee.CarouselModule,Oe.PopoverModule,Te.NgCircleProgressModule,xe.TooltipModule,k.BasicModule,L.ProgressModule,F.RichTextEditorModule,j.SearchModule,B.TreeModule,V.CalendarModule,G.ChipsModule,W.ColorPickerModule,U.CurrencyModule,q.EpochModule,z.FileUploadModule,H.InputModule,Q.RatingModule,Y.SliderModule,X.CardModule,K.FormModule,J.ListModule,Z.LiveTableModule,ee.PaginationModule,te.TableModule,ie.ChartModule,ne.AccordionModule,ae.LinearLayoutModule,se.LayoutGridModule,oe.PanelModule,re.TabsModule,le.TileModule,ce.WizardModule,O.AlertDialogModule,de.IframeDialogModule,pe.LoginDialogModule,ue.PartialDialogModule,he.BreadcrumbModule,me.MenuModule,ge.NavbarModule,fe.PopoverModule,ve.CarouselModule,be.LoginModule,ye.MarqueeModule,l.PageModule,R.FooterModule,S.HeaderModule,_.LeftPanelModule,M.RightPanelModule,N.TopNavModule,u.PrefabModule]});const Vi=[d.WmComponentsModule.forRoot(),w.MobileRuntimeModule.forRoot(),a.CoreModule.forRoot(),s.SecurityModule.forRoot(),P.OAuthModule.forRoot(),o.VariablesModule.forRoot(),C.HttpServiceModule.forRoot(),Bi.forRoot()];let Gi=!1;class Wi{constructor(e,t){this.appManager=e,this.appVariablesProvider=t}resolve(){return!!Gi||Promise.all([this.appManager.loadSecurityConfig(),this.appManager.loadMetadata(),this.appVariablesProvider.getAppVariables()]).then((e=>this.appManager.loadAppVariables(e[2]))).then((()=>Gi=!0))}static{this.\u0275fac=function(e){return new(e||Wi)(_e.\u0275\u0275inject(et),_e.\u0275\u0275inject(Je))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:Wi,factory:Wi.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(Wi,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:et},{type:Je}]),null);let Ui=!1;class qi{constructor(e){this.appManager=e}resolve(){return Ui||this.appManager.loadMetadata().then((()=>Ui=!0))}static{this.\u0275fac=function(e){return new(e||qi)(_e.\u0275\u0275inject(et))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:qi,factory:qi.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(qi,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:et}]),null);class zi{constructor(e){this.appManager=e,a.isMobileApp()||(this.loaded=this.appManager.isPrefabType()||this.appManager.isTemplateBundleType()||!a.getWmProjectProperties().securityEnabled)}resolve(){return this.loaded||this.appManager.loadSecurityConfig().then((()=>{this.loaded=!0}))}static{this.\u0275fac=function(e){return new(e||zi)(_e.\u0275\u0275inject(et))}}static{this.\u0275prov=_e.\u0275\u0275defineInjectable({token:zi,factory:zi.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&_e.\u0275setClassMetadata(zi,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:et}]),null),e.AccessrolesDirective=Ct,e.AppComponent=di,e.AppDefaultsService=Ht,e.AppExtensionJSResolve=ti,e.AppExtensionProvider=Ze,e.AppJSProvider=Ke,e.AppJSResolve=Zt,e.AppManagerService=et,e.AppRef=jt,e.AppSpinnerComponent=At,e.AppVariablesProvider=Je,e.AppVariablesResolve=Wi,e.AuthGuard=Yt,e.BaseLayoutComponent=bt,e.BasePageComponent=ft,e.BasePartialComponent=dt,e.BasePrefabComponent=vt,e.BaseSpaPageComponent=yt,e.CACHE_PAGE=pt,e.CanDeactivateNgPageGuard=bi,e.CanDeactivatePageGuard=vi,e.ComponentRefProvider=Ye,e.CustomToasterComponent=Rt,e.DynamicComponentRefProviderService=fi,e.EmptyPageComponent=St,e.FragmentMonitor=lt,e.HttpCallInterceptor=pi,e.I18nResolve=ii,e.I18nServiceImpl=Vt,e.InitializeApp=Li,e.MAX_CACHE_AGE=ht,e.MAX_CACHE_SIZE=ut,e.MetadataResolve=qi,e.NavigationServiceImpl=Ut,e.PageNotFoundGuard=Kt,e.PipeProvider=Mt,e.PipeService=Nt,e.PrefabConfigProvider=Xe,e.PrefabDirective=_t,e.PrefabManagerService=rt,e.PrefabPreviewComponent=hi,e.REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS=$i,e.RoleGuard=Xt,e.RuntimeBaseModule=Bi,e.SecurityConfigResolve=zi,e.SpinnerServiceImpl=Gt,e.ToasterServiceImpl=$t,e.WM_MODULES_FOR_ROOT=Vi,e.WmNgRouteReuseStrategy=gt,e.WmRouteReuseStrategy=mt,e.commonPartialWidgets=ct,e.getPrefabBaseUrl=it,e.getPrefabConfigUrl=e=>`${it(e)}/config.json`,e.getPrefabMinJsonUrl=e=>`${it(e)}/pages/Main/page.min.json`,e.getPrefabPartialJsonUrl=(e,t)=>`${it(e)}/pages/${t}/page.min.json`,e.isPrefabInPreview=tt,e.setAngularLocale=Fi})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/platform-browser-dynamic"),require("tslib"),require("@angular/platform-browser"),require("@angular/common"),require("@angular/router"),require("@angular/common/http"),require("@angular/forms"),require("ngx-bootstrap/typeahead"),require("ngx-bootstrap/timepicker"),require("ngx-bootstrap/progressbar"),require("ngx-bootstrap/pagination"),require("ngx-bootstrap/modal"),require("ngx-bootstrap/tooltip"),require("ngx-bootstrap/datepicker"),require("ngx-bootstrap/dropdown"),require("ngx-bootstrap/popover"),require("ng-circle-progress"),require("ngx-toastr"),require("ngx-bootstrap/carousel"),require("@wm/core"),require("@wm/components/basic"),require("@wm/components/basic/progress"),require("@wm/components/basic/rich-text-editor"),require("@wm/components/basic/search"),require("@wm/components/basic/tree"),require("@wm/components/input"),require("@wm/components/input/calendar"),require("@wm/components/input/chips"),require("@wm/components/input/color-picker"),require("@wm/components/input/currency"),require("@wm/components/input/epoch"),require("@wm/components/input/file-upload"),require("@wm/components/input/rating"),require("@wm/components/input/slider"),require("@wm/mobile/runtime/dynamic"),require("@wm/components/data/card"),require("@wm/components/data/form"),require("@wm/components/data/list"),require("@wm/components/data/live-table"),require("@wm/components/data/pagination"),require("@wm/components/data/table"),require("@wm/components/chart"),require("@wm/components/containers/accordion"),require("@wm/components/containers/linear-layout"),require("@wm/components/containers/layout-grid"),require("@wm/components/containers/panel"),require("@wm/components/containers/tabs"),require("@wm/components/containers/tile"),require("@wm/components/containers/wizard"),require("@wm/components/dialogs/alert-dialog"),require("@wm/components/dialogs/iframe-dialog"),require("@wm/components/dialogs/login-dialog"),require("@wm/components/dialogs/partial-dialog"),require("@wm/components/navigation/breadcrumb"),require("@wm/components/navigation/menu"),require("@wm/components/navigation/navbar"),require("@wm/components/navigation/popover"),require("@wm/components/advanced/carousel"),require("@wm/components/advanced/login"),require("@wm/components/advanced/marquee"),require("@wm/components/page"),require("@wm/components/page/footer"),require("@wm/components/page/header"),require("@wm/components/page/left-panel"),require("@wm/components/page/right-panel"),require("@wm/components/page/top-nav"),require("@wm/components/prefab"),require("@wm/runtime/base"),require("@wm/variables"),require("@wm/security"),require("@wm/transpiler"),require("lodash-es"),require("@angular/platform-browser/animations")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/platform-browser-dynamic","tslib","@angular/platform-browser","@angular/common","@angular/router","@angular/common/http","@angular/forms","ngx-bootstrap/typeahead","ngx-bootstrap/timepicker","ngx-bootstrap/progressbar","ngx-bootstrap/pagination","ngx-bootstrap/modal","ngx-bootstrap/tooltip","ngx-bootstrap/datepicker","ngx-bootstrap/dropdown","ngx-bootstrap/popover","ng-circle-progress","ngx-toastr","ngx-bootstrap/carousel","@wm/core","@wm/components/basic","@wm/components/basic/progress","@wm/components/basic/rich-text-editor","@wm/components/basic/search","@wm/components/basic/tree","@wm/components/input","@wm/components/input/calendar","@wm/components/input/chips","@wm/components/input/color-picker","@wm/components/input/currency","@wm/components/input/epoch","@wm/components/input/file-upload","@wm/components/input/rating","@wm/components/input/slider","@wm/mobile/runtime/dynamic","@wm/components/data/card","@wm/components/data/form","@wm/components/data/list","@wm/components/data/live-table","@wm/components/data/pagination","@wm/components/data/table","@wm/components/chart","@wm/components/containers/accordion","@wm/components/containers/linear-layout","@wm/components/containers/layout-grid","@wm/components/containers/panel","@wm/components/containers/tabs","@wm/components/containers/tile","@wm/components/containers/wizard","@wm/components/dialogs/alert-dialog","@wm/components/dialogs/iframe-dialog","@wm/components/dialogs/login-dialog","@wm/components/dialogs/partial-dialog","@wm/components/navigation/breadcrumb","@wm/components/navigation/menu","@wm/components/navigation/navbar","@wm/components/navigation/popover","@wm/components/advanced/carousel","@wm/components/advanced/login","@wm/components/advanced/marquee","@wm/components/page","@wm/components/page/footer","@wm/components/page/header","@wm/components/page/left-panel","@wm/components/page/right-panel","@wm/components/page/top-nav","@wm/components/prefab","@wm/runtime/base","@wm/variables","@wm/security","@wm/transpiler","lodash-es","@angular/platform-browser/animations"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wm=e.wm||{},e.wm.runtime=e.wm.runtime||{},e.wm.runtime.dynamic={}),e.ng.core,e.ng.platformBrowserDynamic,e.tslib,e.ng.platformBrowser,e.ng.common,e.ng.router,e.ng.common.http,e.ng.forms,e.typeahead,e.timepicker,e.progressbar,e.pagination,e.modal,e.tooltip,e.datepicker,e.dropdown,e.popover,e.ngCircleProgress,e.ngxToastr,e.carousel,e.wm.core,e.wm.components.basic,e.wm.components.basic.progress,e.wm.components.basic.richtexteditor,e.wm.components.basic.search,e.wm.components.basic.tree,e.wm.components.input,e.wm.components.input.calendar,e.wm.components.input.chips,e.wm.components.input.colorpicker,e.wm.components.input.currency,e.wm.components.input.epoch,e.wm.components.input.fileupload,e.wm.components.input.rating,e.wm.components.input.slider,e.wm.mobile.runtime.dynamic,e.wm.components.data.card,e.wm.components.data.form,e.wm.components.data.list,e.wm.components.data.livetable,e.wm.components.data.pagination,e.wm.components.data.table,e.wm.components.chart,e.wm.components.containers.accordion,e.wm.components.containers.linearlayout,e.wm.components.containers.layoutgrid,e.wm.components.containers.panel,e.wm.components.containers.tabs,e.wm.components.containers.tile,e.wm.components.containers.wizard,e.wm.components.dialogs.alertdialog,e.wm.components.dialogs.iframedialog,e.wm.components.dialogs.logindialog,e.wm.components.dialogs.partialdialog,e.wm.components.navigation.breadcrumb,e.wm.components.navigation.menu,e.wm.components.navigation.navbar,e.wm.components.navigation.popover,e.wm.components.advanced.carousel,e.wm.components.advanced.login,e.wm.components.advanced.marquee,e.wm.components.page,e.wm.components.page.footer,e.wm.components.page.header,e.wm.components.page.leftpanel,e.wm.components.page.rightpanel,e.wm.components.page.topnav,e.wm.components.prefab,e.wm.runtime.base,e.wm.variables,e.wm.security,e.wm.transpiler,e._,e.ng.platformBrowser.animations)}(this,(function(e,t,i,n,a,s,o,r,l,c,d,p,u,h,m,g,f,v,b,y,w,C,P,I,A,E,O,T,x,D,R,S,_,M,N,k,L,F,j,B,V,G,W,U,q,z,H,Q,Y,X,K,J,Z,ee,te,ie,ne,ae,se,oe,re,le,ce,de,pe,ue,he,me,ge,fe,ve,be,ye,we,Ce){"use strict";function Pe(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n.get?n:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var Ie=Pe(t),Ae=Pe(o),Ee=Pe(r),Oe=Pe(C),Te=Pe(fe),xe=Pe(ve),De=Pe(be);class Re{constructor(e,t,i,n,a,s,o,r,l,c,d,p,u){this.injector=e,this.route=t,this.vcRef=i,this.appRef=n,this.metadataService=a,this.securityService=s,this.appManager=o,this.app=r,this.ngZone=l,this.elRef=c,this.spinnerService=d,this.componentRefProvider=p,this.router=u}getTargetNode(){return this.elRef.nativeElement}resetViewContainer(){this.vcRef.clear();this.getTargetNode().innerHTML=""}renderPage(e){const t=this.getTargetNode();this.appManager.loadAppVariables().then((async()=>{const i=await this.componentRefProvider.getComponentFactoryRef(e,fe.ComponentType.PAGE);if(i){const e=this.vcRef.createComponent(i,0,this.injector);this.instance=e.instance,t.appendChild(e.location.nativeElement)}else fe.BasePageComponent.clear();this.vcRef.length>1&&this.vcRef.remove(1)}))}renderPrefabPreviewPage(){this.router.navigate(["prefab-preview"])}loadPage(e){this.ngZone.run((()=>{e&&this.renderPage(e)}))}ngOnInit(){this.app.isPrefabType?this.renderPrefabPreviewPage():($(this.getTargetNode()).find(">div").first().remove(),this.subscription=this.route.params.subscribe((({pageName:e})=>{this.loadPage(e)})))}ngOnDestroy(){this.vcRef.clear(),this.subscription&&this.subscription.unsubscribe()}ngOnAttach(){this.getTargetNode().appendChild(this.instance.$page[0]),this.instance.ngOnAttach()}ngOnDetach(){this.instance.ngOnDetach()}static{this.\u0275fac=function(e){return new(e||Re)(Ie.\u0275\u0275directiveInject(Ie.Injector),Ie.\u0275\u0275directiveInject(Ae.ActivatedRoute),Ie.\u0275\u0275directiveInject(Ie.ViewContainerRef),Ie.\u0275\u0275directiveInject(Ie.ApplicationRef),Ie.\u0275\u0275directiveInject(xe.MetadataService),Ie.\u0275\u0275directiveInject(De.SecurityService),Ie.\u0275\u0275directiveInject(Te.AppManagerService),Ie.\u0275\u0275directiveInject(Oe.App),Ie.\u0275\u0275directiveInject(Ie.NgZone),Ie.\u0275\u0275directiveInject(Ie.ElementRef),Ie.\u0275\u0275directiveInject(Oe.AbstractSpinnerService),Ie.\u0275\u0275directiveInject(Te.ComponentRefProvider),Ie.\u0275\u0275directiveInject(Ae.Router))}}static{this.\u0275cmp=Ie.\u0275\u0275defineComponent({type:Re,selectors:[["app-page-outlet"]],decls:1,vars:0,template:function(e,t){1&e&&Ie.\u0275\u0275element(0,"div")},encapsulation:2})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(Re,[{type:t.Component,args:[{selector:"app-page-outlet",template:"<div></div>"}]}],(()=>[{type:Ie.Injector},{type:Ae.ActivatedRoute},{type:Ie.ViewContainerRef},{type:Ie.ApplicationRef},{type:xe.MetadataService},{type:De.SecurityService},{type:Te.AppManagerService},{type:Oe.App},{type:Ie.NgZone},{type:Ie.ElementRef},{type:Oe.AbstractSpinnerService},{type:Te.ComponentRefProvider},{type:Ae.Router}]),null),("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassDebugInfo(Re,{className:"PageWrapperComponent",filePath:"app/components/page-wrapper.component.ts",lineNumber:25});const Se={securityConfig:fe.SecurityConfigResolve,metadata:fe.MetadataResolve,appMetaConfig:fe.AppExtensionJSResolve},_e=[{path:"",pathMatch:"full",resolve:Se,component:fe.EmptyPageComponent},{path:"prefab-preview",pathMatch:"full",resolve:Se,component:fe.PrefabPreviewComponent},{path:":pageName",pathMatch:"full",resolve:Se,component:Re,canDeactivate:[fe.CanDeactivatePageGuard]}];class Me extends fe.AppJSProvider{constructor(e){super(),this.$http=e}getAppScriptFn(){return this.$http.get("./app.js",{responseType:"text"}).toPromise().then((e=>new Function("App","Utils","Injector",e)))}static{this.\u0275fac=function(e){return new(e||Me)(Ie.\u0275\u0275inject(Ee.HttpClient))}}static{this.\u0275prov=Ie.\u0275\u0275defineInjectable({token:Me,factory:Me.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(Me,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:Ee.HttpClient}]),null);const Ne=new Map;class ke{get(e,t){const i=Ne.get(e);return i?Promise.resolve(i):this.$http.get(e).then((i=>(t&&Ne.set(e,i),i)))}clearCache(){Ne.clear()}constructor(e){this.$http=e}static{this.\u0275fac=function(e){return new(e||ke)(Ie.\u0275\u0275inject(Oe.AbstractHttpService))}}static{this.\u0275prov=Ie.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(ke,[{type:t.Injectable}],(()=>[{type:Oe.AbstractHttpService}]),null);class Le extends fe.AppVariablesProvider{constructor(e){super(),this.resourceManager=e}async getAppVariables(){return this.resourceManager.get("./app.variables.json")}static{this.\u0275fac=function(e){return new(e||Le)(Ie.\u0275\u0275inject(ke))}}static{this.\u0275prov=Ie.\u0275\u0275defineInjectable({token:Le,factory:Le.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(Le,[{type:t.Injectable,args:[{providedIn:"root"}]}],(()=>[{type:ke}]),null);class Fe extends fe.AppExtensionProvider{loadFormatterConfigScript(e){try{C.appendScriptToHead(e)}catch(e){console.warn("Error while loading the formatters.js file")}}static{this.\u0275fac=(()=>{let e;return function(t){return(e||(e=Ie.\u0275\u0275getInheritedFactory(Fe)))(t||Fe)}})()}static{this.\u0275prov=Ie.\u0275\u0275defineInjectable({token:Fe,factory:Fe.\u0275fac,providedIn:"root"})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(Fe,[{type:t.Injectable,args:[{providedIn:"root"}]}],null,null);const je=new Map;window.resourceCache=je;const $e=new Map;$e.set(fe.ComponentType.PAGE,new Map),$e.set(fe.ComponentType.PARTIAL,new Map),$e.set(fe.ComponentType.PREFAB,new Map);const Be=e=>decodeURIComponent(e.replace(/\+/g," ")),Ve=new Map;class Ge{init(){}}const We=(e,i,a,s,o,r)=>{const l={template:a,styles:[s],encapsulation:t.ViewEncapsulation.None};let c=Ge,d="",p="";switch(i){case fe.ComponentType.PAGE:c=fe.BasePageComponent,d=`app-page-${e}`,p="Page";break;case fe.ComponentType.PARTIAL:c=fe.BasePartialComponent,d=`app-partial-${e}`,p="Partial";break;case fe.ComponentType.PREFAB:c=fe.BasePrefabComponent,d=`app-prefab-${e}`,p="Prefab"}let u=class extends c{constructor(t){switch(super(),this.injector=t,this.isDynamicComponent=!0,this.injector=t,i){case fe.ComponentType.PAGE:this.pageName=e;break;case fe.ComponentType.PARTIAL:this.partialName=e;break;case fe.ComponentType.PREFAB:this.prefabName=e}super.init()}evalUserScript(e,t,i){((e,t,i,n,a,s)=>{let o=Ve.get(t);("Partial"!==i||we.isUndefined(n.Prefab))&&o||(o=new Function(i,"App","Utils",e),Ve.set(t,o)),o(n,a,s)})(o,d,p,e,t,i)}getVariables(){return JSON.parse(r)}getExpressions(){return{}}};u=n.__decorate([n.__param(0,t.Inject(t.Injector)),n.__metadata("design:paramtypes",[t.Injector])],u);return t.Component({...l,selector:d,providers:[{provide:C.UserDefinedExecutionContext,useExisting:u}]})(u)};class Ue extends fe.ComponentRefProvider{loadResourcesOfFragment(e,t,i){const n=((e,t,i)=>t===fe.ComponentType.PAGE||t===fe.ComponentType.PARTIAL?i&&i.prefab?fe.getPrefabPartialJsonUrl(i.prefab,e):`./pages/${e}/page.min.json`:t===fe.ComponentType.PREFAB?fe.getPrefabMinJsonUrl(e):void 0)(e,t,i),a=je.get(n);return a?Promise.resolve(a):this.resouceMngr.get(n,!0).then((({markup:i,script:a,styles:s,variables:o})=>{const r={markup:ye.transpile(Be(i)).markup,script:Be(a),styles:ye.scopeComponentStyles(e,t,Be(s)),variables:C.getValidJSON(Be(o))};return je.set(n,r),r}),(e=>{const t=e.details.status,i={404:this.app.appLocale.MESSAGE_PAGE_NOT_FOUND||"The page you are trying to reach is not available",403:this.app.appLocale.LABEL_ACCESS_DENIED||"Access Denied"};return Promise.reject(i[t])}))}constructor(e,t,i,n){super(),this.resouceMngr=e,this.app=t,this.appManager=i,this.compiler=n}async getComponentFactoryRef(e,i,n){const a=$e.get(i);let s;if(a){const t=n&&n.prefab?n.prefab+e:e;if(s=a.get(t),s)return s}return this.loadResourcesOfFragment(e,i,n).then((({markup:a,script:o,styles:r,variables:l})=>{const c=We(e,i,a,r,o,JSON.stringify(l)),d=(p=c,t.NgModule({declarations:[p],imports:[fe.RuntimeBaseModule],schemas:[t.CUSTOM_ELEMENTS_SCHEMA,t.NO_ERRORS_SCHEMA]})(class{}));var p;s=this.compiler.compileModuleAndAllComponentsSync(d).componentFactories.filter((e=>e.componentType===c))[0];const u=n&&n.prefab?n.prefab+e:e;return $e.get(i).set(u,s),s}),(e=>{if(e){const t="Error while loading page";console.log(t,e),this.appManager.notifyApp(we.isString(e)?e:t+", check browser console for error details","error")}}))}clearComponentFactoryRefCache(){this.resouceMngr.clearCache(),je.clear(),$e.forEach((e=>{e.clear()}))}static{this.\u0275fac=function(e){return new(e||Ue)(Ie.\u0275\u0275inject(ke),Ie.\u0275\u0275inject(Oe.App),Ie.\u0275\u0275inject(Te.AppManagerService),Ie.\u0275\u0275inject(Ie.Compiler))}}static{this.\u0275prov=Ie.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(Ue,[{type:t.Injectable}],(()=>[{type:ke},{type:Oe.App},{type:Te.AppManagerService},{type:Ie.Compiler}]),null);const qe=new Map;class ze extends fe.PrefabConfigProvider{constructor(e){super(),this.resourceMngr=e}getConfig(e){const t=qe.get(e);return t?Promise.resolve(t):this.resourceMngr.get(fe.getPrefabConfigUrl(e)).then((t=>(qe.set(e,t),t)))}static{this.\u0275fac=function(e){return new(e||ze)(Ie.\u0275\u0275inject(ke))}}static{this.\u0275prov=Ie.\u0275\u0275defineInjectable({token:ze,factory:ze.\u0275fac})}}("undefined"==typeof ngDevMode||ngDevMode)&&Ie.\u0275setClassMetadata(ze,[{type:t.Injectable}],(()=>[{type:ke}]),null);const He=o.RouterModule.forRoot(_e,{useHash:!0,scrollPositionRestoration:"top"}),Qe=y.ToastNoAnimationModule.forRoot({maxOpened:1,autoDismiss:!0});let Ye=C.getWmProjectProperties().xsrf_header_name,Xe={cookieName:"wm_xsrf_token"};Ye&&(Xe.headerName=Ye);const Ke=r.HttpClientXsrfModule.withOptions(Xe),Je=h.ModalModule.forRoot(),Ze=g.BsDatepickerModule.forRoot(),et=d.TimepickerModule.forRoot(),tt=f.BsDropdownModule.forRoot(),it=u.PaginationModule.forRoot(),nt=c.TypeaheadModule.forRoot(),at=p.ProgressbarModule.forRoot(),st=w.CarouselModule.forRoot(),ot=v.PopoverModule.forRoot(),rt=b.NgCircleProgressModule.forRoot({}),lt=m.TooltipModule.forRoot(),ct=[g.BsDatepickerModule,d.TimepickerModule,f.BsDropdownModule,u.PaginationModule,c.TypeaheadModule,p.ProgressbarModule,w.CarouselModule,v.PopoverModule,b.NgCircleProgressModule,m.TooltipModule,P.BasicModule,I.ProgressModule,A.RichTextEditorModule,E.SearchModule,O.TreeModule,x.CalendarModule,D.ChipsModule,R.ColorPickerModule,S.CurrencyModule,_.EpochModule,M.FileUploadModule,T.InputModule,N.RatingModule,k.SliderModule,F.CardModule,j.FormModule,B.ListModule,V.LiveTableModule,G.PaginationModule,W.TableModule,U.ChartModule,q.AccordionModule,z.LinearLayoutModule,H.LayoutGridModule,Q.PanelModule,Y.TabsModule,X.TileModule,K.WizardModule,J.AlertDialogModule,Z.IframeDialogModule,ee.LoginDialogModule,te.PartialDialogModule,ie.BreadcrumbModule,ne.MenuModule,ae.NavbarModule,se.PopoverModule,oe.CarouselModule,re.LoginModule,le.MarqueeModule,ce.PageModule,de.FooterModule,pe.HeaderModule,ue.LeftPanelModule,he.RightPanelModule,me.TopNavModule,ge.PrefabModule];fe.REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...ct),fe.REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...L.MOBILE_COMPONENT_MODULES_FOR_ROOT),fe.REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(l.FormsModule,l.ReactiveFormsModule),e.AppModule=class{constructor(e,t,i){this.app=e,this.inj=t,this.componentRefProvider=i,window.cordova&&this.app.subscribe("userLoggedOut",this.componentRefProvider.clearComponentFactoryRefCache.bind(this.componentRefProvider))}},e.AppModule=n.__decorate([t.NgModule({declarations:[Re],imports:[a.BrowserModule,Ce.BrowserAnimationsModule,s.CommonModule,o.RouterModule,r.HttpClientModule,Je,Ze,et,tt,it,nt,lt,at,st,ot,rt,He,Qe,Ke,L.MobileRuntimeDynamicModule,fe.WM_MODULES_FOR_ROOT],providers:[ke,{provide:fe.AppJSProvider,useClass:Me},{provide:fe.AppVariablesProvider,useClass:Le},{provide:fe.AppExtensionProvider,useClass:Fe},{provide:fe.ComponentRefProvider,useClass:Ue},{provide:C.PartialRefProvider,useClass:Ue},{provide:fe.PrefabConfigProvider,useClass:ze},{provide:o.RouteReuseStrategy,useClass:fe.WmRouteReuseStrategy}],bootstrap:[fe.AppComponent]}),n.__metadata("design:paramtypes",[C.App,t.Injector,fe.ComponentRefProvider])],e.AppModule);const dt="debugMode";"true"!==sessionStorage.getItem(dt)&&t.enableProdMode(),console.time("bootstrap"),document.addEventListener("DOMContentLoaded",(()=>{new Promise((e=>{window.cordova?document.addEventListener("deviceready",e):e()})).then((()=>i.platformBrowserDynamic().bootstrapModule(e.AppModule))).then((e=>{const i=e.injector.get(t.ApplicationRef);window.addEventListener("unload",(()=>{i.components.map((e=>e&&e.destroy()))})),console.timeEnd("bootstrap")}),(e=>console.log(e)))})),window.debugMode=function(e){we.isEmpty(e)&&(e=!0);const t=e?"true":"false";sessionStorage.getItem(dt)!==t&&(sessionStorage.setItem(dt,t),window.location.reload())},e.AppExtensionProviderService=Fe,e.AppJSProviderService=Me,e.AppResourceManagerService=ke,e.AppVariablesProviderService=Le,e.ComponentRefProviderService=Ue,e.PageWrapperComponent=Re,e.PrefabConfigProviderService=ze,e.bsDatePickerModule=Ze,e.bsDropdownModule=tt,e.carouselModule=st,e.httpClientXsrfModule=Ke,e.modalModule=Je,e.ngCircleProgressModule=rt,e.paginationModule=it,e.popoverModule=ot,e.progressbarModule=at,e.routerModule=He,e.timepickerModule=et,e.toastrModule=Qe,e.tooltipModule=lt,e.typeaheadModule=nt}));