@wavemaker/app-ng-runtime 12.0.0-next.141131 → 12.0.0-next.141134

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 (326) hide show
  1. app-ng-runtime/build-task/bundles/index.umd.js +54 -39
  2. app-ng-runtime/build-task/esm2022/basic/default/anchor/anchor.build.mjs +2 -2
  3. app-ng-runtime/build-task/esm2022/basic/default/html/html.build.mjs +2 -2
  4. app-ng-runtime/build-task/esm2022/basic/default/icon/icon.build.mjs +2 -2
  5. app-ng-runtime/build-task/esm2022/basic/default/label/label.build.mjs +2 -2
  6. app-ng-runtime/build-task/esm2022/basic/default/picture/picture.build.mjs +2 -2
  7. app-ng-runtime/build-task/esm2022/basic/default/spinner/spinner.build.mjs +2 -2
  8. app-ng-runtime/build-task/esm2022/basic/progress/progress-circle/progress-circle.build.mjs +7 -2
  9. app-ng-runtime/build-task/esm2022/basic/rich-text-editor/rich-text-editor.build.mjs +2 -2
  10. app-ng-runtime/build-task/esm2022/containers/tile/tile.build.mjs +2 -2
  11. app-ng-runtime/build-task/esm2022/data/form/form-field/form-field.build.mjs +10 -3
  12. app-ng-runtime/build-task/esm2022/device/barcode-scanner/barcode-scanner.build.mjs +2 -2
  13. app-ng-runtime/build-task/esm2022/device/camera/camera.build.mjs +2 -2
  14. app-ng-runtime/build-task/esm2022/dialogs/alert-dialog/alert-dialog.build.mjs +2 -2
  15. app-ng-runtime/build-task/esm2022/input/calendar/calendar.build.mjs +2 -2
  16. app-ng-runtime/build-task/esm2022/input/color-picker/color-picker.build.mjs +3 -3
  17. app-ng-runtime/build-task/esm2022/input/currency/currency.build.mjs +3 -3
  18. app-ng-runtime/build-task/esm2022/input/default/button/button.build.mjs +2 -2
  19. app-ng-runtime/build-task/esm2022/input/default/button-group/button-group.build.mjs +2 -2
  20. app-ng-runtime/build-task/esm2022/input/default/switch/switch.build.mjs +2 -2
  21. app-ng-runtime/build-task/esm2022/input/file-upload/file-upload.build.mjs +5 -1
  22. app-ng-runtime/build-task/esm2022/page/footer/footer.build.mjs +2 -2
  23. app-ng-runtime/build-task/esm2022/page/header/header.build.mjs +2 -2
  24. app-ng-runtime/build-task/esm2022/page/layout.build.mjs +2 -2
  25. app-ng-runtime/build-task/esm2022/page/left-panel/left-panel.build.mjs +2 -2
  26. app-ng-runtime/build-task/esm2022/page/page.build.mjs +2 -2
  27. app-ng-runtime/build-task/esm2022/page/right-panel/right-panel.build.mjs +2 -2
  28. app-ng-runtime/build-task/esm2022/page/top-nav/top-nav.build.mjs +2 -2
  29. app-ng-runtime/build-task/fesm2022/index.mjs +54 -39
  30. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  31. app-ng-runtime/components/advanced/carousel/bundles/index.umd.js +1 -1
  32. app-ng-runtime/components/advanced/carousel/esm2022/carousel.animator.mjs +2 -2
  33. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs +1 -1
  34. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  35. app-ng-runtime/components/advanced/custom/bundles/index.umd.js +53 -13
  36. app-ng-runtime/components/advanced/custom/custom-widget-container/custom-widget-container.directive.d.ts +11 -4
  37. app-ng-runtime/components/advanced/custom/esm2022/custom-widget-container/custom-widget-container.directive.mjs +55 -12
  38. app-ng-runtime/components/advanced/custom/esm2022/custom-widget.directive.mjs +2 -2
  39. app-ng-runtime/components/advanced/custom/fesm2022/index.mjs +55 -12
  40. app-ng-runtime/components/advanced/custom/fesm2022/index.mjs.map +1 -1
  41. app-ng-runtime/components/base/bundles/index.umd.js +22 -6
  42. app-ng-runtime/components/base/esm2022/pipes/custom-pipes.mjs +3 -3
  43. app-ng-runtime/components/base/esm2022/utils/live-utils.mjs +8 -2
  44. app-ng-runtime/components/base/esm2022/widgets/common/base/base.component.mjs +15 -5
  45. app-ng-runtime/components/base/esm2022/widgets/framework/property-change-handler.mjs +2 -2
  46. app-ng-runtime/components/base/fesm2022/index.mjs +23 -7
  47. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  48. app-ng-runtime/components/base/pipes/custom-pipes.d.ts +1 -1
  49. app-ng-runtime/components/base/widgets/common/base/base-field-validations.d.ts +1 -1
  50. app-ng-runtime/components/base/widgets/common/base/base.component.d.ts +1 -0
  51. app-ng-runtime/components/basic/default/anchor/anchor.component.d.ts +1 -0
  52. app-ng-runtime/components/basic/default/audio/audio.component.d.ts +1 -0
  53. app-ng-runtime/components/basic/default/bundles/index.umd.js +27 -18
  54. app-ng-runtime/components/basic/default/esm2022/anchor/anchor.component.mjs +4 -4
  55. app-ng-runtime/components/basic/default/esm2022/anchor/anchor.props.mjs +2 -1
  56. app-ng-runtime/components/basic/default/esm2022/audio/audio.component.mjs +5 -5
  57. app-ng-runtime/components/basic/default/esm2022/audio/audio.props.mjs +2 -1
  58. app-ng-runtime/components/basic/default/esm2022/html/html.props.mjs +2 -1
  59. app-ng-runtime/components/basic/default/esm2022/icon/icon.component.mjs +6 -7
  60. app-ng-runtime/components/basic/default/esm2022/icon/icon.props.mjs +2 -1
  61. app-ng-runtime/components/basic/default/esm2022/iframe/iframe.component.mjs +3 -3
  62. app-ng-runtime/components/basic/default/esm2022/iframe/iframe.props.mjs +3 -2
  63. app-ng-runtime/components/basic/default/esm2022/label/label.props.mjs +1 -1
  64. app-ng-runtime/components/basic/default/esm2022/picture/picture.directive.mjs +2 -2
  65. app-ng-runtime/components/basic/default/esm2022/picture/picture.props.mjs +3 -1
  66. app-ng-runtime/components/basic/default/esm2022/spinner/spinner.props.mjs +3 -2
  67. app-ng-runtime/components/basic/default/esm2022/video/video.component.mjs +5 -4
  68. app-ng-runtime/components/basic/default/esm2022/video/video.props.mjs +2 -1
  69. app-ng-runtime/components/basic/default/fesm2022/index.mjs +27 -18
  70. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  71. app-ng-runtime/components/basic/default/icon/icon.component.d.ts +1 -0
  72. app-ng-runtime/components/basic/default/iframe/iframe.component.d.ts +1 -0
  73. app-ng-runtime/components/basic/default/picture/picture.directive.d.ts +2 -1
  74. app-ng-runtime/components/basic/default/video/video.component.d.ts +1 -0
  75. app-ng-runtime/components/basic/progress/bundles/index.umd.js +12 -8
  76. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +4 -4
  77. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.props.mjs +2 -1
  78. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +8 -6
  79. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.props.mjs +2 -1
  80. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +12 -8
  81. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  82. app-ng-runtime/components/basic/progress/progress-bar/progress-bar.component.d.ts +1 -0
  83. app-ng-runtime/components/basic/progress/progress-circle/progress-circle.component.d.ts +3 -1
  84. app-ng-runtime/components/basic/rich-text-editor/bundles/index.umd.js +2 -0
  85. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +2 -1
  86. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.props.mjs +2 -1
  87. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs +2 -0
  88. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  89. app-ng-runtime/components/basic/search/bundles/index.umd.js +11 -9
  90. app-ng-runtime/components/basic/search/esm2022/search.component.mjs +14 -13
  91. app-ng-runtime/components/basic/search/esm2022/search.props.mjs +2 -1
  92. app-ng-runtime/components/basic/search/fesm2022/index.mjs +11 -9
  93. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  94. app-ng-runtime/components/basic/search/search.component.d.ts +1 -0
  95. app-ng-runtime/components/containers/accordion/bundles/index.umd.js +3 -3
  96. app-ng-runtime/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +4 -4
  97. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs +3 -3
  98. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  99. app-ng-runtime/components/containers/panel/bundles/index.umd.js +14 -14
  100. app-ng-runtime/components/containers/panel/esm2022/panel.component.mjs +15 -15
  101. app-ng-runtime/components/containers/panel/fesm2022/index.mjs +14 -14
  102. app-ng-runtime/components/containers/panel/fesm2022/index.mjs.map +1 -1
  103. app-ng-runtime/components/containers/tabs/bundles/index.umd.js +2 -2
  104. app-ng-runtime/components/containers/tabs/esm2022/tabs.component.mjs +3 -3
  105. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs +2 -2
  106. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  107. app-ng-runtime/components/containers/wizard/bundles/index.umd.js +17 -0
  108. app-ng-runtime/components/containers/wizard/esm2022/wizard.component.mjs +18 -1
  109. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs +17 -0
  110. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  111. app-ng-runtime/components/containers/wizard/wizard.component.d.ts +1 -0
  112. app-ng-runtime/components/data/form/bundles/index.umd.js +27 -11
  113. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +28 -14
  114. app-ng-runtime/components/data/form/fesm2022/index.mjs +27 -13
  115. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  116. app-ng-runtime/components/data/form/form-field/form-field.directive.d.ts +2 -0
  117. app-ng-runtime/components/data/list/bundles/index.umd.js +2 -2
  118. app-ng-runtime/components/data/list/esm2022/list.component.mjs +3 -3
  119. app-ng-runtime/components/data/list/fesm2022/index.mjs +2 -2
  120. app-ng-runtime/components/data/list/fesm2022/index.mjs.map +1 -1
  121. app-ng-runtime/components/data/live-table/bundles/index.umd.js +2 -2
  122. app-ng-runtime/components/data/live-table/esm2022/live-table.component.mjs +3 -3
  123. app-ng-runtime/components/data/live-table/fesm2022/index.mjs +2 -2
  124. app-ng-runtime/components/data/live-table/fesm2022/index.mjs.map +1 -1
  125. app-ng-runtime/components/data/pagination/bundles/index.umd.js +2 -0
  126. app-ng-runtime/components/data/pagination/esm2022/pagination.component.mjs +3 -1
  127. app-ng-runtime/components/data/pagination/fesm2022/index.mjs +2 -0
  128. app-ng-runtime/components/data/pagination/fesm2022/index.mjs.map +1 -1
  129. app-ng-runtime/components/data/table/bundles/index.umd.js +45 -11
  130. app-ng-runtime/components/data/table/esm2022/table-column/table-column.directive.mjs +14 -5
  131. app-ng-runtime/components/data/table/esm2022/table-row/table-row.props.mjs +2 -2
  132. app-ng-runtime/components/data/table/esm2022/table.component.mjs +30 -7
  133. app-ng-runtime/components/data/table/esm2022/table.props.mjs +3 -1
  134. app-ng-runtime/components/data/table/fesm2022/index.mjs +46 -12
  135. app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
  136. app-ng-runtime/components/data/table/table.component.d.ts +8 -1
  137. app-ng-runtime/components/dialogs/alert-dialog/bundles/index.umd.js +6 -4
  138. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +7 -5
  139. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs +6 -4
  140. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  141. app-ng-runtime/components/dialogs/confirm-dialog/bundles/index.umd.js +8 -5
  142. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +9 -6
  143. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs +8 -5
  144. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  145. app-ng-runtime/components/dialogs/default/bundles/index.umd.js +20 -3
  146. app-ng-runtime/components/dialogs/default/dialog-header/dialog-header.component.d.ts +2 -1
  147. app-ng-runtime/components/dialogs/default/esm2022/base-dialog.mjs +13 -1
  148. app-ng-runtime/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +9 -4
  149. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +20 -3
  150. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  151. app-ng-runtime/components/dialogs/design-dialog/bundles/index.umd.js +4 -4
  152. app-ng-runtime/components/dialogs/design-dialog/esm2022/dialog.component.mjs +5 -5
  153. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs +4 -4
  154. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  155. app-ng-runtime/components/dialogs/iframe-dialog/bundles/index.umd.js +9 -5
  156. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +10 -6
  157. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs +9 -5
  158. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  159. app-ng-runtime/components/dialogs/partial-dialog/bundles/index.umd.js +9 -5
  160. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +10 -6
  161. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs +9 -5
  162. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  163. app-ng-runtime/components/input/calendar/bundles/index.umd.js +2 -4
  164. app-ng-runtime/components/input/calendar/esm2022/calendar.component.mjs +3 -5
  165. app-ng-runtime/components/input/calendar/fesm2022/index.mjs +2 -4
  166. app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
  167. app-ng-runtime/components/input/chips/bundles/index.umd.js +3 -2
  168. app-ng-runtime/components/input/chips/esm2022/chips.component.mjs +3 -3
  169. app-ng-runtime/components/input/chips/esm2022/chips.props.mjs +2 -1
  170. app-ng-runtime/components/input/chips/fesm2022/index.mjs +3 -2
  171. app-ng-runtime/components/input/chips/fesm2022/index.mjs.map +1 -1
  172. app-ng-runtime/components/input/color-picker/bundles/index.umd.js +5 -3
  173. app-ng-runtime/components/input/color-picker/color-picker.component.d.ts +1 -0
  174. app-ng-runtime/components/input/color-picker/esm2022/color-picker.component.mjs +6 -5
  175. app-ng-runtime/components/input/color-picker/esm2022/color-picker.props.mjs +2 -1
  176. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs +5 -3
  177. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  178. app-ng-runtime/components/input/currency/bundles/index.umd.js +4 -3
  179. app-ng-runtime/components/input/currency/currency.component.d.ts +1 -0
  180. app-ng-runtime/components/input/currency/esm2022/currency.component.mjs +6 -6
  181. app-ng-runtime/components/input/currency/esm2022/currency.props.mjs +2 -1
  182. app-ng-runtime/components/input/currency/fesm2022/index.mjs +4 -3
  183. app-ng-runtime/components/input/currency/fesm2022/index.mjs.map +1 -1
  184. app-ng-runtime/components/input/default/base-form-custom.component.d.ts +2 -1
  185. app-ng-runtime/components/input/default/bundles/index.umd.js +219 -114
  186. app-ng-runtime/components/input/default/button/button.component.d.ts +1 -0
  187. app-ng-runtime/components/input/default/checkbox/checkbox.component.d.ts +1 -0
  188. app-ng-runtime/components/input/default/dataset-aware-form.component.d.ts +2 -2
  189. app-ng-runtime/components/input/default/esm2022/base-form-custom.component.mjs +6 -1
  190. app-ng-runtime/components/input/default/esm2022/button/button.component.mjs +1 -1
  191. app-ng-runtime/components/input/default/esm2022/button/button.props.mjs +2 -1
  192. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +8 -7
  193. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.component.mjs +7 -7
  194. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.props.mjs +2 -1
  195. app-ng-runtime/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +23 -16
  196. app-ng-runtime/components/input/default/esm2022/dataset-aware-form.component.mjs +5 -5
  197. app-ng-runtime/components/input/default/esm2022/number/number.component.mjs +5 -5
  198. app-ng-runtime/components/input/default/esm2022/number/number.props.mjs +3 -1
  199. app-ng-runtime/components/input/default/esm2022/radioset/radioset.component.mjs +30 -23
  200. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +60 -30
  201. app-ng-runtime/components/input/default/esm2022/select/select.props.mjs +2 -1
  202. app-ng-runtime/components/input/default/esm2022/switch/switch.component.mjs +6 -5
  203. app-ng-runtime/components/input/default/esm2022/switch/switch.props.mjs +2 -1
  204. app-ng-runtime/components/input/default/esm2022/text/calendar/input-calendar.component.mjs +5 -5
  205. app-ng-runtime/components/input/default/esm2022/text/calendar/input-calendar.props.mjs +2 -1
  206. app-ng-runtime/components/input/default/esm2022/text/color/input-color.component.mjs +5 -5
  207. app-ng-runtime/components/input/default/esm2022/text/color/input-color.props.mjs +2 -1
  208. app-ng-runtime/components/input/default/esm2022/text/email/input-email.component.mjs +5 -5
  209. app-ng-runtime/components/input/default/esm2022/text/email/input-email.props.mjs +2 -1
  210. app-ng-runtime/components/input/default/esm2022/text/locale/number-locale.mjs +51 -14
  211. app-ng-runtime/components/input/default/esm2022/text/number/input-number.component.mjs +5 -5
  212. app-ng-runtime/components/input/default/esm2022/text/number/input-number.props.mjs +2 -1
  213. app-ng-runtime/components/input/default/esm2022/text/text/input-text.component.mjs +5 -5
  214. app-ng-runtime/components/input/default/esm2022/text/text/input-text.props.mjs +2 -1
  215. app-ng-runtime/components/input/default/esm2022/textarea/textarea.component.mjs +9 -6
  216. app-ng-runtime/components/input/default/esm2022/textarea/textarea.props.mjs +2 -1
  217. app-ng-runtime/components/input/default/fesm2022/index.mjs +219 -114
  218. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  219. app-ng-runtime/components/input/default/number/number.component.d.ts +1 -0
  220. app-ng-runtime/components/input/default/select/select.component.d.ts +4 -4
  221. app-ng-runtime/components/input/default/text/calendar/input-calendar.component.d.ts +1 -0
  222. app-ng-runtime/components/input/default/text/color/input-color.component.d.ts +1 -0
  223. app-ng-runtime/components/input/default/text/email/input-email.component.d.ts +1 -0
  224. app-ng-runtime/components/input/default/text/locale/number-locale.d.ts +1 -0
  225. app-ng-runtime/components/input/default/text/number/input-number.component.d.ts +1 -0
  226. app-ng-runtime/components/input/default/text/text/input-text.component.d.ts +1 -0
  227. app-ng-runtime/components/input/default/textarea/textarea.component.d.ts +4 -2
  228. app-ng-runtime/components/input/epoch/bundles/index.umd.js +15 -9
  229. app-ng-runtime/components/input/epoch/date/date.component.d.ts +1 -0
  230. app-ng-runtime/components/input/epoch/date-time/date-time.component.d.ts +2 -1
  231. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +6 -6
  232. app-ng-runtime/components/input/epoch/esm2022/date/date.props.mjs +2 -1
  233. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +10 -7
  234. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.props.mjs +2 -1
  235. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +7 -7
  236. app-ng-runtime/components/input/epoch/esm2022/time/time.props.mjs +2 -1
  237. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +15 -9
  238. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  239. app-ng-runtime/components/input/epoch/time/time.component.d.ts +1 -0
  240. app-ng-runtime/components/input/file-upload/bundles/index.umd.js +208 -95
  241. app-ng-runtime/components/input/file-upload/esm2022/file-upload.component.mjs +206 -98
  242. app-ng-runtime/components/input/file-upload/esm2022/file-upload.props.mjs +6 -1
  243. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs +209 -96
  244. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  245. app-ng-runtime/components/input/file-upload/file-upload.component.d.ts +17 -11
  246. app-ng-runtime/components/input/slider/bundles/index.umd.js +5 -6
  247. app-ng-runtime/components/input/slider/esm2022/slider.component.mjs +6 -8
  248. app-ng-runtime/components/input/slider/esm2022/slider.props.mjs +2 -1
  249. app-ng-runtime/components/input/slider/fesm2022/index.mjs +5 -6
  250. app-ng-runtime/components/input/slider/fesm2022/index.mjs.map +1 -1
  251. app-ng-runtime/components/input/slider/slider.component.d.ts +1 -0
  252. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +10 -8
  253. app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +9 -8
  254. app-ng-runtime/components/navigation/menu/esm2022/menu.props.mjs +2 -1
  255. app-ng-runtime/components/navigation/menu/esm2022/nav/nav.component.mjs +2 -2
  256. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +10 -8
  257. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  258. app-ng-runtime/components/navigation/menu/menu.component.d.ts +1 -0
  259. app-ng-runtime/components/navigation/popover/bundles/index.umd.js +121 -13
  260. app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +122 -15
  261. app-ng-runtime/components/navigation/popover/esm2022/popover.props.mjs +2 -1
  262. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +121 -13
  263. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  264. app-ng-runtime/components/navigation/popover/popover.component.d.ts +15 -3
  265. app-ng-runtime/components/page/default/bundles/index.umd.js +2 -1
  266. app-ng-runtime/components/page/default/esm2022/page.props.mjs +4 -3
  267. app-ng-runtime/components/page/default/fesm2022/index.mjs +2 -1
  268. app-ng-runtime/components/page/default/fesm2022/index.mjs.map +1 -1
  269. app-ng-runtime/components/page/footer/bundles/index.umd.js +2 -1
  270. app-ng-runtime/components/page/footer/esm2022/footer.props.mjs +3 -2
  271. app-ng-runtime/components/page/footer/fesm2022/index.mjs +2 -1
  272. app-ng-runtime/components/page/footer/fesm2022/index.mjs.map +1 -1
  273. app-ng-runtime/components/page/header/bundles/index.umd.js +2 -1
  274. app-ng-runtime/components/page/header/esm2022/header.props.mjs +3 -2
  275. app-ng-runtime/components/page/header/fesm2022/index.mjs +2 -1
  276. app-ng-runtime/components/page/header/fesm2022/index.mjs.map +1 -1
  277. app-ng-runtime/components/page/left-panel/bundles/index.umd.js +2 -1
  278. app-ng-runtime/components/page/left-panel/esm2022/left-panel.props.mjs +3 -2
  279. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs +2 -1
  280. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  281. app-ng-runtime/components/page/right-panel/bundles/index.umd.js +2 -1
  282. app-ng-runtime/components/page/right-panel/esm2022/right-panel.props.mjs +3 -2
  283. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs +2 -1
  284. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  285. app-ng-runtime/components/page/top-nav/bundles/index.umd.js +2 -1
  286. app-ng-runtime/components/page/top-nav/esm2022/top-nav.props.mjs +3 -2
  287. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs +2 -1
  288. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  289. app-ng-runtime/core/bundles/index.umd.js +18 -15
  290. app-ng-runtime/core/enums/enums.d.ts +2 -2
  291. app-ng-runtime/core/esm2022/enums/enums.mjs +2 -2
  292. app-ng-runtime/core/esm2022/public_api.mjs +2 -2
  293. app-ng-runtime/core/esm2022/utils/build-utils.mjs +12 -12
  294. app-ng-runtime/core/esm2022/utils/utils.mjs +5 -4
  295. app-ng-runtime/core/fesm2022/index.mjs +18 -16
  296. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  297. app-ng-runtime/core/public_api.d.ts +1 -1
  298. app-ng-runtime/core/utils/utils.d.ts +1 -0
  299. app-ng-runtime/locales/moment-timezone/moment-timezone-with-data.js +37 -37
  300. app-ng-runtime/mobile/components/device/barcode-scanner/bundles/index.umd.js +2 -1
  301. app-ng-runtime/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.props.mjs +3 -2
  302. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs +2 -1
  303. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +1 -1
  304. app-ng-runtime/mobile/components/device/camera/bundles/index.umd.js +2 -1
  305. app-ng-runtime/mobile/components/device/camera/esm2022/camera.props.mjs +3 -2
  306. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs +2 -1
  307. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs.map +1 -1
  308. app-ng-runtime/mobile/core/bundles/index.umd.js +18 -2
  309. app-ng-runtime/mobile/core/esm2022/native.xhr.mjs +19 -3
  310. app-ng-runtime/mobile/core/fesm2022/index.mjs +18 -2
  311. app-ng-runtime/mobile/core/fesm2022/index.mjs.map +1 -1
  312. app-ng-runtime/package.json +1 -1
  313. app-ng-runtime/runtime/base/bundles/index.umd.js +16 -5
  314. app-ng-runtime/runtime/base/components/app-component/app.component.d.ts +2 -3
  315. app-ng-runtime/runtime/base/components/base-custom-widget.component.d.ts +2 -0
  316. app-ng-runtime/runtime/base/esm2022/components/app-component/app.component.mjs +5 -5
  317. app-ng-runtime/runtime/base/esm2022/components/base-custom-widget.component.mjs +10 -1
  318. app-ng-runtime/runtime/base/esm2022/guards/can-deactivate-page.guard.mjs +5 -4
  319. app-ng-runtime/runtime/base/esm2022/services/i18n.service.mjs +2 -2
  320. app-ng-runtime/runtime/base/fesm2022/index.mjs +16 -5
  321. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  322. app-ng-runtime/runtime/base/guards/can-deactivate-page.guard.d.ts +2 -1
  323. app-ng-runtime/runtime/base/services/i18n.service.d.ts +1 -1
  324. app-ng-runtime/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -1
  325. app-ng-runtime/scripts/datatable/datatable.js +54 -43
  326. app-ng-runtime/scripts/summernote/dist/summernote-lite.min.js +2 -3
@@ -6,13 +6,15 @@ import * as i3 from '@wm/components/base';
6
6
  import { PROP_STRING, PROP_NUMBER, PROP_BOOLEAN, register, registerFormWidget, StylableComponent, styler, provideAsWidgetRef, WmComponentsModule } from '@wm/components/base';
7
7
  import { Subject } from 'rxjs';
8
8
  import * as i1 from '@wm/core';
9
- import { FormWidgetType, isImageFile, isAudioFile, isVideoFile, DataSource } from '@wm/core';
9
+ import { FormWidgetType, isImageFile, isAudioFile, isVideoFile, DataSource, getWmProjectProperties } from '@wm/core';
10
10
  import { toLower, includes, forEach, isEmpty } from 'lodash-es';
11
11
 
12
12
  const registerProps = () => {
13
13
  register('wm-fileupload', new Map([
14
14
  ['caption', PROP_STRING],
15
15
  ['name', PROP_STRING],
16
+ ['hint', PROP_STRING],
17
+ ['arialabel', PROP_STRING],
16
18
  ['tabindex', PROP_NUMBER],
17
19
  ['multiple', PROP_BOOLEAN],
18
20
  ['fileuploadmessage', PROP_STRING],
@@ -29,6 +31,9 @@ const registerProps = () => {
29
31
  ['selectedFiles', PROP_STRING],
30
32
  ['destination', PROP_STRING],
31
33
  ['filelistheight', PROP_NUMBER],
34
+ ['width', { value: 'auto', ...PROP_STRING }],
35
+ ['showprogressbar', PROP_BOOLEAN],
36
+ ['showprogressbarpercentage', PROP_BOOLEAN]
32
37
  ]));
33
38
  registerFormWidget(FormWidgetType.UPLOAD, new Map([
34
39
  ['disabled', PROP_BOOLEAN],
@@ -46,7 +51,7 @@ const _c2 = (a0, a1) => ({ height: a0, overflow: a1 });
46
51
  const _c3 = a0 => ({ width: a0 });
47
52
  function FileUploadComponent_div_1_input_6_Template(rf, ctx) { if (rf & 1) {
48
53
  const _r3 = i0.ɵɵgetCurrentView();
49
- i0.ɵɵelementStart(0, "input", 13);
54
+ i0.ɵɵelementStart(0, "input", 15);
50
55
  i0.ɵɵlistener("click", function FileUploadComponent_div_1_input_6_Template_input_click_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileElemClick($event)); })("change", function FileUploadComponent_div_1_input_6_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileSelect($event, $event.target.files)); });
51
56
  i0.ɵɵelementEnd();
52
57
  } if (rf & 2) {
@@ -54,6 +59,23 @@ function FileUploadComponent_div_1_input_6_Template(rf, ctx) { if (rf & 1) {
54
59
  i0.ɵɵproperty("disabled", ctx_r1.disabled)("accept", ctx_r1.chooseFilter);
55
60
  i0.ɵɵattribute("aria-label", ctx_r1.hint || "File selection field");
56
61
  } }
62
+ function FileUploadComponent_div_1_label_9_Template(rf, ctx) { if (rf & 1) {
63
+ i0.ɵɵelement(0, "label", 16);
64
+ } if (rf & 2) {
65
+ const ctx_r1 = i0.ɵɵnextContext(2);
66
+ i0.ɵɵproperty("innerHtml", ctx_r1.chooseFilter + " only ", i0.ɵɵsanitizeHtml);
67
+ } }
68
+ function FileUploadComponent_div_1_span_10_Template(rf, ctx) { if (rf & 1) {
69
+ i0.ɵɵelementStart(0, "span", 17);
70
+ i0.ɵɵtext(1, " . ");
71
+ i0.ɵɵelementEnd();
72
+ } }
73
+ function FileUploadComponent_div_1_label_11_Template(rf, ctx) { if (rf & 1) {
74
+ i0.ɵɵelement(0, "label", 16);
75
+ } if (rf & 2) {
76
+ const ctx_r1 = i0.ɵɵnextContext(2);
77
+ i0.ɵɵproperty("innerHtml", ctx_r1.maxfilesize + "MB max", i0.ɵɵsanitizeHtml);
78
+ } }
57
79
  function FileUploadComponent_div_1_Template(rf, ctx) { if (rf & 1) {
58
80
  const _r1 = i0.ɵɵgetCurrentView();
59
81
  i0.ɵɵelementStart(0, "div", 6)(1, "div", 7);
@@ -65,11 +87,13 @@ function FileUploadComponent_div_1_Template(rf, ctx) { if (rf & 1) {
65
87
  i0.ɵɵtemplate(6, FileUploadComponent_div_1_input_6_Template, 1, 3, "input", 11);
66
88
  i0.ɵɵelementStart(7, "a", 12);
67
89
  i0.ɵɵtext(8);
68
- i0.ɵɵelementEnd()()()()();
90
+ i0.ɵɵelementEnd()();
91
+ i0.ɵɵtemplate(9, FileUploadComponent_div_1_label_9_Template, 1, 1, "label", 13)(10, FileUploadComponent_div_1_span_10_Template, 2, 0, "span", 14)(11, FileUploadComponent_div_1_label_11_Template, 1, 1, "label", 13);
92
+ i0.ɵɵelementEnd()()();
69
93
  } if (rf & 2) {
70
94
  const ctx_r1 = i0.ɵɵnextContext();
71
95
  i0.ɵɵadvance();
72
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c1, ctx_r1.highlightDropArea));
96
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(11, _c1, ctx_r1.highlightDropArea));
73
97
  i0.ɵɵadvance();
74
98
  i0.ɵɵclassMap(ctx_r1.iconclass);
75
99
  i0.ɵɵadvance(2);
@@ -80,34 +104,40 @@ function FileUploadComponent_div_1_Template(rf, ctx) { if (rf & 1) {
80
104
  i0.ɵɵproperty("ngIf", ctx_r1.multiple);
81
105
  i0.ɵɵadvance(2);
82
106
  i0.ɵɵtextInterpolate(ctx_r1.fileUploadMessage);
107
+ i0.ɵɵadvance();
108
+ i0.ɵɵproperty("ngIf", ctx_r1.chooseFilter);
109
+ i0.ɵɵadvance();
110
+ i0.ɵɵproperty("ngIf", ctx_r1.chooseFilter && ctx_r1.maxfilesize);
111
+ i0.ɵɵadvance();
112
+ i0.ɵɵproperty("ngIf", ctx_r1.maxfilesize);
83
113
  } }
84
114
  function FileUploadComponent_div_2_input_3_Template(rf, ctx) { if (rf & 1) {
85
115
  const _r4 = i0.ɵɵgetCurrentView();
86
- i0.ɵɵelementStart(0, "input", 13);
87
- i0.ɵɵlistener("click", function FileUploadComponent_div_2_input_3_Template_input_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileElemClick($event)); })("change", function FileUploadComponent_div_2_input_3_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileSelect($event, $event.target.files)); });
116
+ i0.ɵɵelementStart(0, "input", 26);
117
+ i0.ɵɵlistener("change", function FileUploadComponent_div_2_input_3_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileSelect($event, $event.target.files)); })("click", function FileUploadComponent_div_2_input_3_Template_input_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileElemClick($event)); });
88
118
  i0.ɵɵelementEnd();
89
119
  } if (rf & 2) {
90
120
  const ctx_r1 = i0.ɵɵnextContext(2);
91
- i0.ɵɵproperty("disabled", ctx_r1.disabled)("accept", ctx_r1.chooseFilter);
92
- i0.ɵɵattribute("aria-label", ctx_r1.hint || "File selection field");
121
+ i0.ɵɵproperty("accept", ctx_r1.chooseFilter)("disabled", ctx_r1.disabled);
122
+ i0.ɵɵattribute("aria-label", ctx_r1.arialabel || "File selection field");
93
123
  } }
94
124
  function FileUploadComponent_div_2_input_4_Template(rf, ctx) { if (rf & 1) {
95
125
  const _r5 = i0.ɵɵgetCurrentView();
96
- i0.ɵɵelementStart(0, "input", 21);
97
- i0.ɵɵlistener("click", function FileUploadComponent_div_2_input_4_Template_input_click_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileElemClick($event)); })("change", function FileUploadComponent_div_2_input_4_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileSelect($event, $event.target.files)); });
126
+ i0.ɵɵelementStart(0, "input", 27);
127
+ i0.ɵɵlistener("change", function FileUploadComponent_div_2_input_4_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileSelect($event, $event.target.files)); })("click", function FileUploadComponent_div_2_input_4_Template_input_click_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileElemClick($event)); });
98
128
  i0.ɵɵelementEnd();
99
129
  } if (rf & 2) {
100
130
  const ctx_r1 = i0.ɵɵnextContext(2);
101
- i0.ɵɵproperty("disabled", ctx_r1.disabled)("accept", ctx_r1.chooseFilter);
102
- i0.ɵɵattribute("aria-label", ctx_r1.hint || "File selection field");
131
+ i0.ɵɵproperty("accept", ctx_r1.chooseFilter)("disabled", ctx_r1.disabled);
132
+ i0.ɵɵattribute("aria-label", ctx_r1.arialabel || "File selection field");
103
133
  } }
104
134
  function FileUploadComponent_div_2_Template(rf, ctx) { if (rf & 1) {
105
- i0.ɵɵelementStart(0, "div", 14)(1, "div", 15)(2, "form", 10);
106
- i0.ɵɵtemplate(3, FileUploadComponent_div_2_input_3_Template, 1, 3, "input", 11)(4, FileUploadComponent_div_2_input_4_Template, 1, 3, "input", 16);
107
- i0.ɵɵelementStart(5, "button", 17);
108
- i0.ɵɵelement(6, "i", 18)(7, "span", 19);
135
+ i0.ɵɵelementStart(0, "div", 18)(1, "div", 19)(2, "form", 10);
136
+ i0.ɵɵtemplate(3, FileUploadComponent_div_2_input_3_Template, 1, 3, "input", 20)(4, FileUploadComponent_div_2_input_4_Template, 1, 3, "input", 21);
137
+ i0.ɵɵelementStart(5, "button", 22);
138
+ i0.ɵɵelement(6, "i", 23)(7, "span", 24);
109
139
  i0.ɵɵelementEnd()()();
110
- i0.ɵɵelement(8, "div", 20);
140
+ i0.ɵɵelement(8, "div", 25);
111
141
  i0.ɵɵelementEnd();
112
142
  } if (rf & 2) {
113
143
  const ctx_r1 = i0.ɵɵnextContext();
@@ -126,9 +156,9 @@ function FileUploadComponent_div_2_Template(rf, ctx) { if (rf & 1) {
126
156
  } }
127
157
  function FileUploadComponent_button_3_Template(rf, ctx) { if (rf & 1) {
128
158
  const _r6 = i0.ɵɵgetCurrentView();
129
- i0.ɵɵelementStart(0, "button", 22);
159
+ i0.ɵɵelementStart(0, "button", 28);
130
160
  i0.ɵɵlistener("click", function FileUploadComponent_button_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openFileSelector()); });
131
- i0.ɵɵelement(1, "i")(2, "span", 19);
161
+ i0.ɵɵelement(1, "i")(2, "span", 24);
132
162
  i0.ɵɵelementEnd();
133
163
  } if (rf & 2) {
134
164
  const ctx_r1 = i0.ɵɵnextContext();
@@ -138,8 +168,15 @@ function FileUploadComponent_button_3_Template(rf, ctx) { if (rf & 1) {
138
168
  i0.ɵɵadvance();
139
169
  i0.ɵɵproperty("innerHTML", ctx_r1.caption, i0.ɵɵsanitizeHtml);
140
170
  } }
141
- function FileUploadComponent_ul_4_div_1_li_1_span_9_Template(rf, ctx) { if (rf & 1) {
142
- i0.ɵɵelementStart(0, "span", 36);
171
+ function FileUploadComponent_ul_4_div_1_li_1_span_8_Template(rf, ctx) { if (rf & 1) {
172
+ i0.ɵɵelement(0, "span");
173
+ i0.ɵɵpipe(1, "stateClass");
174
+ } if (rf & 2) {
175
+ const ft_r7 = i0.ɵɵnextContext(2).$implicit;
176
+ i0.ɵɵclassMapInterpolate1("status-icon ", i0.ɵɵpipeBind1(1, 3, ft_r7.status), "");
177
+ } }
178
+ function FileUploadComponent_ul_4_div_1_li_1_span_10_Template(rf, ctx) { if (rf & 1) {
179
+ i0.ɵɵelementStart(0, "span", 47);
143
180
  i0.ɵɵtext(1);
144
181
  i0.ɵɵpipe(2, "filesize");
145
182
  i0.ɵɵelementEnd();
@@ -148,95 +185,113 @@ function FileUploadComponent_ul_4_div_1_li_1_span_9_Template(rf, ctx) { if (rf &
148
185
  i0.ɵɵadvance();
149
186
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, ft_r7.size, 0));
150
187
  } }
151
- function FileUploadComponent_ul_4_div_1_li_1_div_10_Template(rf, ctx) { if (rf & 1) {
152
- i0.ɵɵelementStart(0, "div", 37);
153
- i0.ɵɵelement(1, "div", 38);
188
+ function FileUploadComponent_ul_4_div_1_li_1_span_11_Template(rf, ctx) { if (rf & 1) {
189
+ i0.ɵɵelement(0, "span", 34);
190
+ i0.ɵɵpipe(1, "stateClass");
191
+ } if (rf & 2) {
192
+ const ft_r7 = i0.ɵɵnextContext(2).$implicit;
193
+ const ctx_r1 = i0.ɵɵnextContext(2);
194
+ i0.ɵɵclassMapInterpolate1("status-icon ", i0.ɵɵpipeBind1(1, 4, ft_r7.status), "");
195
+ i0.ɵɵpropertyInterpolate("title", ft_r7.errMsg || ctx_r1.appLocale.MESSAGE_FILE_UPLOAD_FAILED);
196
+ } }
197
+ function FileUploadComponent_ul_4_div_1_li_1_span_12_Template(rf, ctx) { if (rf & 1) {
198
+ i0.ɵɵelementStart(0, "span", 48);
199
+ i0.ɵɵtext(1, "Upload Failed");
200
+ i0.ɵɵelementEnd();
201
+ } }
202
+ function FileUploadComponent_ul_4_div_1_li_1_div_13_Template(rf, ctx) { if (rf & 1) {
203
+ i0.ɵɵelementStart(0, "div", 49);
204
+ i0.ɵɵelement(1, "div", 50);
154
205
  i0.ɵɵelementEnd();
155
206
  } if (rf & 2) {
156
207
  const ft_r7 = i0.ɵɵnextContext(2).$implicit;
157
208
  i0.ɵɵadvance();
158
- i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(1, _c3, ft_r7.progress + "%"));
209
+ i0.ɵɵproperty("ngClass", ft_r7.status === "error" ? "progress-bar-danger" : "progress-bar-info")("ngStyle", i0.ɵɵpureFunction1(2, _c3, ft_r7.progress + "%"));
159
210
  } }
160
- function FileUploadComponent_ul_4_div_1_li_1_div_11_Template(rf, ctx) { if (rf & 1) {
161
- const _r8 = i0.ɵɵgetCurrentView();
162
- i0.ɵɵelementStart(0, "div", 39)(1, "a", 40);
163
- i0.ɵɵlistener("click", function FileUploadComponent_ul_4_div_1_li_1_div_11_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r8); const ft_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.abortFileUpload(ft_r7)); });
164
- i0.ɵɵelement(2, "i", 41);
165
- i0.ɵɵelementEnd()();
166
- } }
167
- function FileUploadComponent_ul_4_div_1_li_1_div_12_Template(rf, ctx) { if (rf & 1) {
168
- i0.ɵɵelementStart(0, "div", 39);
169
- i0.ɵɵelement(1, "span");
170
- i0.ɵɵpipe(2, "stateClass");
211
+ function FileUploadComponent_ul_4_div_1_li_1_div_14_Template(rf, ctx) { if (rf & 1) {
212
+ i0.ɵɵelementStart(0, "div", 51);
213
+ i0.ɵɵtext(1);
171
214
  i0.ɵɵelementEnd();
172
215
  } if (rf & 2) {
173
216
  const ft_r7 = i0.ɵɵnextContext(2).$implicit;
174
217
  i0.ɵɵadvance();
175
- i0.ɵɵclassMapInterpolate1("status-icon ", i0.ɵɵpipeBind1(2, 3, ft_r7.status), "");
218
+ i0.ɵɵtextInterpolate1("", ft_r7.progress + "%", " ");
176
219
  } }
177
- function FileUploadComponent_ul_4_div_1_li_1_div_13_Template(rf, ctx) { if (rf & 1) {
178
- const _r9 = i0.ɵɵgetCurrentView();
179
- i0.ɵɵelementStart(0, "div", 39)(1, "a", 42);
180
- i0.ɵɵlistener("click", function FileUploadComponent_ul_4_div_1_li_1_div_13_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r9); const ft_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.clear(ft_r7)); });
181
- i0.ɵɵelement(2, "i");
220
+ function FileUploadComponent_ul_4_div_1_li_1_div_15_Template(rf, ctx) { if (rf & 1) {
221
+ const _r8 = i0.ɵɵgetCurrentView();
222
+ i0.ɵɵelementStart(0, "div", 45)(1, "a", 52);
223
+ i0.ɵɵlistener("click", function FileUploadComponent_ul_4_div_1_li_1_div_15_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r8); const ft_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.abortFileUpload(ft_r7)); });
224
+ i0.ɵɵelement(2, "i", 53);
182
225
  i0.ɵɵelementEnd()();
226
+ } }
227
+ function FileUploadComponent_ul_4_div_1_li_1_a_17_Template(rf, ctx) { if (rf & 1) {
228
+ const _r9 = i0.ɵɵgetCurrentView();
229
+ i0.ɵɵelementStart(0, "a", 54);
230
+ i0.ɵɵlistener("click", function FileUploadComponent_ul_4_div_1_li_1_a_17_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r9); const ft_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.clear(ft_r7)); });
231
+ i0.ɵɵelement(1, "i");
232
+ i0.ɵɵelementEnd();
183
233
  } if (rf & 2) {
184
234
  const ctx_r1 = i0.ɵɵnextContext(4);
185
- i0.ɵɵadvance();
186
235
  i0.ɵɵpropertyInterpolate("title", ctx_r1.cleariconhint);
187
236
  i0.ɵɵadvance();
188
237
  i0.ɵɵclassMap(ctx_r1.cleariconclass);
189
238
  } }
190
- function FileUploadComponent_ul_4_div_1_li_1_div_14_Template(rf, ctx) { if (rf & 1) {
191
- i0.ɵɵelementStart(0, "div", 43);
192
- i0.ɵɵelement(1, "span");
193
- i0.ɵɵpipe(2, "stateClass");
194
- i0.ɵɵelementEnd();
195
- } if (rf & 2) {
196
- const ft_r7 = i0.ɵɵnextContext(2).$implicit;
197
- const ctx_r1 = i0.ɵɵnextContext(2);
198
- i0.ɵɵpropertyInterpolate("title", ft_r7.errMsg || ctx_r1.appLocale.MESSAGE_FILE_UPLOAD_FAILED);
199
- i0.ɵɵadvance();
200
- i0.ɵɵclassMapInterpolate1("status-icon ", i0.ɵɵpipeBind1(2, 4, ft_r7.status), "");
239
+ function FileUploadComponent_ul_4_div_1_li_1_div_18_Template(rf, ctx) { if (rf & 1) {
240
+ const _r10 = i0.ɵɵgetCurrentView();
241
+ i0.ɵɵelementStart(0, "div", 45)(1, "a", 55);
242
+ i0.ɵɵlistener("click", function FileUploadComponent_ul_4_div_1_li_1_div_18_Template_a_click_1_listener($event) { i0.ɵɵrestoreView(_r10); const ft_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onFileDelete($event, ft_r7)); });
243
+ i0.ɵɵelement(2, "i", 56);
244
+ i0.ɵɵelementEnd()();
201
245
  } }
202
246
  function FileUploadComponent_ul_4_div_1_li_1_Template(rf, ctx) { if (rf & 1) {
203
- i0.ɵɵelementStart(0, "li", 26)(1, "div", 27);
204
- i0.ɵɵelement(2, "div", 28);
247
+ i0.ɵɵelementStart(0, "li", 32)(1, "div", 33);
248
+ i0.ɵɵelement(2, "div", 34);
205
249
  i0.ɵɵpipe(3, "fileIconClass");
206
- i0.ɵɵelementStart(4, "div", 29)(5, "p", 30)(6, "label", 31);
250
+ i0.ɵɵelementStart(4, "div", 35)(5, "p", 36)(6, "span", 37);
207
251
  i0.ɵɵtext(7);
208
252
  i0.ɵɵelementEnd();
209
- i0.ɵɵelement(8, "br");
210
- i0.ɵɵtemplate(9, FileUploadComponent_ul_4_div_1_li_1_span_9_Template, 3, 4, "span", 32);
253
+ i0.ɵɵtemplate(8, FileUploadComponent_ul_4_div_1_li_1_span_8_Template, 2, 5, "span", 38);
254
+ i0.ɵɵelement(9, "br");
255
+ i0.ɵɵtemplate(10, FileUploadComponent_ul_4_div_1_li_1_span_10_Template, 3, 4, "span", 39)(11, FileUploadComponent_ul_4_div_1_li_1_span_11_Template, 2, 6, "span", 40)(12, FileUploadComponent_ul_4_div_1_li_1_span_12_Template, 2, 0, "span", 41);
256
+ i0.ɵɵelementEnd();
257
+ i0.ɵɵtemplate(13, FileUploadComponent_ul_4_div_1_li_1_div_13_Template, 2, 4, "div", 42)(14, FileUploadComponent_ul_4_div_1_li_1_div_14_Template, 2, 1, "div", 43);
211
258
  i0.ɵɵelementEnd();
212
- i0.ɵɵtemplate(10, FileUploadComponent_ul_4_div_1_li_1_div_10_Template, 2, 3, "div", 33);
259
+ i0.ɵɵtemplate(15, FileUploadComponent_ul_4_div_1_li_1_div_15_Template, 3, 0, "div", 44);
260
+ i0.ɵɵelementStart(16, "div", 45);
261
+ i0.ɵɵtemplate(17, FileUploadComponent_ul_4_div_1_li_1_a_17_Template, 2, 4, "a", 46);
213
262
  i0.ɵɵelementEnd();
214
- i0.ɵɵtemplate(11, FileUploadComponent_ul_4_div_1_li_1_div_11_Template, 3, 0, "div", 34)(12, FileUploadComponent_ul_4_div_1_li_1_div_12_Template, 3, 5, "div", 34)(13, FileUploadComponent_ul_4_div_1_li_1_div_13_Template, 3, 4, "div", 34)(14, FileUploadComponent_ul_4_div_1_li_1_div_14_Template, 3, 6, "div", 35);
263
+ i0.ɵɵtemplate(18, FileUploadComponent_ul_4_div_1_li_1_div_18_Template, 3, 0, "div", 44);
215
264
  i0.ɵɵelementEnd()();
216
265
  } if (rf & 2) {
217
266
  const ft_r7 = i0.ɵɵnextContext().$implicit;
218
267
  const ctx_r1 = i0.ɵɵnextContext(2);
219
268
  i0.ɵɵadvance(2);
220
- i0.ɵɵclassMapInterpolate1("media-left media-middle file-icon ", i0.ɵɵpipeBind1(3, 11, ctx_r1.getFileExtension(ft_r7.name)), "");
269
+ i0.ɵɵclassMapInterpolate1("media-left media-middle file-icon ", i0.ɵɵpipeBind1(3, 14, ctx_r1.getFileExtension(ft_r7.name)), "");
221
270
  i0.ɵɵpropertyInterpolate("title", ctx_r1.getFileExtension(ft_r7.name));
222
271
  i0.ɵɵadvance(5);
223
- i0.ɵɵtextInterpolate(ft_r7.name);
272
+ i0.ɵɵtextInterpolate(ft_r7.storageName || ft_r7.name);
273
+ i0.ɵɵadvance();
274
+ i0.ɵɵproperty("ngIf", ft_r7.status === "success");
224
275
  i0.ɵɵadvance(2);
225
276
  i0.ɵɵproperty("ngIf", ft_r7.fileLength !== 0);
226
277
  i0.ɵɵadvance();
227
- i0.ɵɵproperty("ngIf", ft_r7.status === "onProgress");
278
+ i0.ɵɵproperty("ngIf", ft_r7.status === "error");
228
279
  i0.ɵɵadvance();
229
- i0.ɵɵproperty("ngIf", ft_r7.status === "onProgress" || ft_r7.status === "queued");
280
+ i0.ɵɵproperty("ngIf", ft_r7.status === "error");
230
281
  i0.ɵɵadvance();
231
- i0.ɵɵproperty("ngIf", ft_r7.status === "success");
282
+ i0.ɵɵproperty("ngIf", ft_r7.status === "onProgress" || ctx_r1.showprogressbar);
283
+ i0.ɵɵadvance();
284
+ i0.ɵɵproperty("ngIf", (ft_r7.status === "onProgress" || ctx_r1.showprogressbar && ctx_r1.showprogressbarpercentage) && ft_r7.progress);
232
285
  i0.ɵɵadvance();
286
+ i0.ɵɵproperty("ngIf", ft_r7.status === "onProgress" || ft_r7.status === "queued");
287
+ i0.ɵɵadvance(2);
233
288
  i0.ɵɵproperty("ngIf", ctx_r1.cleariconclass !== "" && ft_r7.status !== "onProgress");
234
289
  i0.ɵɵadvance();
235
- i0.ɵɵproperty("ngIf", ft_r7.status === "error");
290
+ i0.ɵɵproperty("ngIf", ft_r7.status === "success");
236
291
  } }
237
292
  function FileUploadComponent_ul_4_div_1_Template(rf, ctx) { if (rf & 1) {
238
293
  i0.ɵɵelementStart(0, "div");
239
- i0.ɵɵtemplate(1, FileUploadComponent_ul_4_div_1_li_1_Template, 15, 13, "li", 25);
294
+ i0.ɵɵtemplate(1, FileUploadComponent_ul_4_div_1_li_1_Template, 19, 16, "li", 31);
240
295
  i0.ɵɵelementEnd();
241
296
  } if (rf & 2) {
242
297
  const ft_r7 = ctx.$implicit;
@@ -244,34 +299,34 @@ function FileUploadComponent_ul_4_div_1_Template(rf, ctx) { if (rf & 1) {
244
299
  i0.ɵɵproperty("ngIf", ft_r7.status !== "abort");
245
300
  } }
246
301
  function FileUploadComponent_ul_4_Template(rf, ctx) { if (rf & 1) {
247
- i0.ɵɵelementStart(0, "ul", 23);
248
- i0.ɵɵtemplate(1, FileUploadComponent_ul_4_div_1_Template, 2, 1, "div", 24);
302
+ i0.ɵɵelementStart(0, "ul", 29);
303
+ i0.ɵɵtemplate(1, FileUploadComponent_ul_4_div_1_Template, 2, 1, "div", 30);
249
304
  i0.ɵɵelementEnd();
250
305
  } if (rf & 2) {
251
306
  const ctx_r1 = i0.ɵɵnextContext();
252
307
  i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction2(2, _c2, ctx_r1.filelistheight, ctx_r1.overflow));
253
308
  i0.ɵɵadvance();
254
- i0.ɵɵproperty("ngForOf", ctx_r1.selectedFiles);
309
+ i0.ɵɵproperty("ngForOf", ctx_r1.uploadedFiles);
255
310
  } }
256
311
  function FileUploadComponent_ul_5_li_1_Template(rf, ctx) { if (rf & 1) {
257
- i0.ɵɵelementStart(0, "li", 26)(1, "div", 27);
258
- i0.ɵɵelement(2, "div", 46);
259
- i0.ɵɵelementStart(3, "div", 29)(4, "p", 30)(5, "label", 31);
312
+ i0.ɵɵelementStart(0, "li", 32)(1, "div", 33);
313
+ i0.ɵɵelement(2, "div", 59);
314
+ i0.ɵɵelementStart(3, "div", 35)(4, "p", 60)(5, "label", 37);
260
315
  i0.ɵɵtext(6);
261
316
  i0.ɵɵelementEnd();
262
317
  i0.ɵɵelement(7, "br");
263
318
  i0.ɵɵelementEnd()();
264
- i0.ɵɵelementStart(8, "div", 39);
265
- i0.ɵɵelement(9, "span", 47);
319
+ i0.ɵɵelementStart(8, "div", 45);
320
+ i0.ɵɵelement(9, "span", 61);
266
321
  i0.ɵɵelementEnd()()();
267
322
  } if (rf & 2) {
268
- const ft_r10 = ctx.$implicit;
323
+ const ft_r11 = ctx.$implicit;
269
324
  i0.ɵɵadvance(6);
270
- i0.ɵɵtextInterpolate(ft_r10.name);
325
+ i0.ɵɵtextInterpolate(ft_r11.name);
271
326
  } }
272
327
  function FileUploadComponent_ul_5_Template(rf, ctx) { if (rf & 1) {
273
- i0.ɵɵelementStart(0, "ul", 44);
274
- i0.ɵɵtemplate(1, FileUploadComponent_ul_5_li_1_Template, 10, 1, "li", 45);
328
+ i0.ɵɵelementStart(0, "ul", 57);
329
+ i0.ɵɵtemplate(1, FileUploadComponent_ul_5_li_1_Template, 10, 1, "li", 58);
275
330
  i0.ɵɵelementEnd();
276
331
  } if (rf & 2) {
277
332
  const ctx_r1 = i0.ɵɵnextContext();
@@ -389,6 +444,7 @@ class FileUploadComponent extends StylableComponent {
389
444
  */
390
445
  onSelectEventCall($event, $files) {
391
446
  this.selectedFiles = $files;
447
+ this.uploadedFiles = this.multiple ? [...this.uploadedFiles, ...$files] : $files;
392
448
  setTimeout(() => {
393
449
  this.invokeEventCallback('select', {
394
450
  $event: $.extend($event.$files || {}, $files),
@@ -410,7 +466,11 @@ class FileUploadComponent extends StylableComponent {
410
466
  }
411
467
  /*this function to clear the specified file. if argument is not provided, it clears the complete list */
412
468
  clear(fileObj) {
413
- this.selectedFiles = (fileObj) ? this.selectedFiles.filter((file) => file !== fileObj) : [];
469
+ this.selectedFiles = (fileObj) ? this.clearFile(this.selectedFiles, fileObj) : [];
470
+ this.uploadedFiles = (fileObj) ? this.clearFile(this.uploadedFiles, fileObj) : [];
471
+ }
472
+ clearFile(files, fileObj) {
473
+ return files.filter((file) => file?._response?.fileName !== fileObj?._response?.fileName || file?.name !== fileObj?.name || file !== fileObj);
414
474
  }
415
475
  /*this function to set the class names for clear icon */
416
476
  setClearIconClass(classValue) {
@@ -457,6 +517,10 @@ class FileUploadComponent extends StylableComponent {
457
517
  file.status = progressObj.status;
458
518
  if (progressObj.errMsg) {
459
519
  file.errMsg = progressObj.errMsg;
520
+ this.invokeEventCallback('error', {
521
+ $event,
522
+ files: file
523
+ });
460
524
  }
461
525
  }
462
526
  }
@@ -472,6 +536,44 @@ class FileUploadComponent extends StylableComponent {
472
536
  }
473
537
  }
474
538
  }
539
+ onFileDelete($event, file) {
540
+ if (!file) {
541
+ return;
542
+ }
543
+ const beforeDeleteVal = this.invokeEventCallback('beforedelete', { $event: file });
544
+ if (beforeDeleteVal !== false) {
545
+ this.dialogService.showAppConfirmDialog({
546
+ title: "Delete file",
547
+ message: "Are you sure you want to delete this file?",
548
+ oktext: "Ok",
549
+ canceltext: "Cancel",
550
+ onOk: () => {
551
+ if (this.deletedatasource) {
552
+ this.deletedatasource.setInput('file', file._response.fileName || file.name);
553
+ this.deleteFileObservable = new Subject();
554
+ this.deletedatasource._deleteFileObservable = this.deleteFileObservable;
555
+ this.deletedatasource._deleteFileObservable.asObservable().subscribe((response) => {
556
+ if (response.status === "success") {
557
+ this.selectedFiles = this.selectedFiles.filter((fileObj) => file !== fileObj) || [];
558
+ this.uploadedFiles = this.uploadedFiles.filter((fileObj) => file !== fileObj) || [];
559
+ this.deletedatasource._deleteFileObservable.unsubscribe();
560
+ }
561
+ }, (error) => {
562
+ this.deletedatasource._deleteFileObservable.unsubscribe();
563
+ });
564
+ }
565
+ this.invokeEventCallback('delete', { $event: file });
566
+ this.dialogService.closeAppConfirmDialog();
567
+ },
568
+ onCancel: () => {
569
+ this.dialogService.closeAppConfirmDialog();
570
+ },
571
+ onOpen: () => {
572
+ $('.cancel-action').focus();
573
+ }
574
+ });
575
+ }
576
+ }
475
577
  // Prevent default behavior (Prevent file from being opened)
476
578
  dragOverHandler($event) {
477
579
  $event.preventDefault();
@@ -516,6 +618,11 @@ class FileUploadComponent extends StylableComponent {
516
618
  abortFileUpload($file) {
517
619
  this.datasource.execute(DataSource.Operation.CANCEL, $file);
518
620
  }
621
+ isMimeType(file) {
622
+ return (this.defaultAllowedExtensions.includes('image/*') && isImageFile(file))
623
+ || (this.defaultAllowedExtensions.includes('audio/*') && isAudioFile(file))
624
+ || (this.defaultAllowedExtensions.includes('video/*') && isVideoFile(file));
625
+ }
519
626
  /* Define the property change handler. This function will be triggered when there is a change in the widget property */
520
627
  onPropertyChange(key, nv, ov) {
521
628
  /*Monitoring changes for styles or properties and accordingly handling respective changes.*/
@@ -525,7 +632,15 @@ class FileUploadComponent extends StylableComponent {
525
632
  this.changeServerUploadPath(nv);
526
633
  break;
527
634
  case 'contenttype':
528
- this.chooseFilter = nv.split(' ').join(',');
635
+ if (this.defaultAllowedExtensions.includes('*/*')) {
636
+ this.chooseFilter = nv.split(' ').join(',');
637
+ }
638
+ else {
639
+ this.chooseFilter = nv.split(' ').filter(item => this.defaultAllowedExtensions.includes(item) || this.isMimeType(item)).join(',');
640
+ if (isEmpty(this.chooseFilter)) {
641
+ this.chooseFilter = this.defaultAllowedExtensions;
642
+ }
643
+ }
529
644
  break;
530
645
  case 'multiple':
531
646
  this.formName = this.name + (this.multiple ? '-multiple-fileupload' : '-single-fileupload');
@@ -536,11 +651,13 @@ class FileUploadComponent extends StylableComponent {
536
651
  }
537
652
  super.onPropertyChange(key, nv, ov);
538
653
  }
539
- constructor(inj, app, onSelectEvt, explicitContext) {
654
+ constructor(inj, app, onSelectEvt, dialogService, explicitContext) {
540
655
  super(inj, WIDGET_CONFIG, explicitContext);
541
656
  this.app = app;
542
657
  this.onSelectEvt = onSelectEvt;
658
+ this.dialogService = dialogService;
543
659
  this.selectedFiles = [];
660
+ this.uploadedFiles = [];
544
661
  this.selectedFolders = [];
545
662
  this.fileTransfers = {};
546
663
  this.caption = 'Upload';
@@ -562,14 +679,10 @@ class FileUploadComponent extends StylableComponent {
562
679
  file: undefined,
563
680
  uploadPath: undefined
564
681
  };
565
- this.chooseFilter = '';
682
+ this.allowedFileUploadExtensions = getWmProjectProperties().allowedFileUploadExtensions;
683
+ this.defaultAllowedExtensions = this.allowedFileUploadExtensions.split(',').map(item => item.trim()).map(item => item.endsWith('/*') ? item : `.${item}`);
684
+ this.chooseFilter = this.defaultAllowedExtensions.includes('*/*') ? '' : this.defaultAllowedExtensions;
566
685
  this.fileUploadMessage = 'Drop your files here or click here to browse';
567
- this.uploadedFiles = {
568
- fileName: '',
569
- path: '',
570
- length: '',
571
- status: ''
572
- };
573
686
  this.uploadUrl = 'services';
574
687
  // styler(this.nativeElement, this);
575
688
  }
@@ -590,12 +703,12 @@ class FileUploadComponent extends StylableComponent {
590
703
  document.removeEventListener('mouseleave', this.dropCb);
591
704
  super.ngOnDestroy();
592
705
  }
593
- static { this.ɵfac = function FileUploadComponent_Factory(t) { return new (t || FileUploadComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1.App), i0.ɵɵinjectAttribute('select.event'), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
706
+ static { this.ɵfac = function FileUploadComponent_Factory(t) { return new (t || FileUploadComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1.App), i0.ɵɵinjectAttribute('select.event'), i0.ɵɵdirectiveInject(i1.AbstractDialogService), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
594
707
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FileUploadComponent, selectors: [["", "wmFileUpload", ""]], features: [i0.ɵɵProvidersFeature([
595
708
  provideAsWidgetRef(FileUploadComponent)
596
- ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, 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 FileUploadComponent_Template(rf, ctx) { if (rf & 1) {
709
+ ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, 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, "upload-label", 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", "upload-label"], ["class", "upload-extensions", 3, "innerHtml", 4, "ngIf"], ["class", "upload-extensions", 4, "ngIf"], ["type", "file", "name", "files", "multiple", "", 1, "file-input", 3, "click", "change", "disabled", "accept"], [1, "upload-extensions", 3, "innerHtml"], [1, "upload-extensions"], [1, "app-single-file-upload"], [1, "app-button-wrapper"], ["class", "file-input", "multiple", "", "name", "files", "type", "file", 3, "accept", "disabled", "change", "click", 4, "ngIf"], ["class", "file-input", "name", "files", "type", "file", 3, "accept", "disabled", "change", "click", 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"], ["multiple", "", "name", "files", "type", "file", 1, "file-input", 3, "change", "click", "accept", "disabled"], ["name", "files", "type", "file", 1, "file-input", 3, "change", "click", "accept", "disabled"], ["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", "col-md-3"], [1, "upload-title"], [3, "class", 4, "ngIf"], ["class", "filesize", 4, "ngIf"], [3, "class", "title", 4, "ngIf"], ["class", "error-message", 4, "ngIf"], ["class", "progress col-md-7 upload-progress", 4, "ngIf"], ["class", "col-md-1 upload-progress-percentage", 4, "ngIf"], ["class", "media-right media-middle", 4, "ngIf"], [1, "media-right", "media-middle"], ["class", "btn btn-transparent btn-default status-icon", "type", "button", 3, "title", "click", 4, "ngIf"], [1, "filesize"], [1, "error-message"], [1, "progress", "col-md-7", "upload-progress"], [1, "progress-bar", "progress-bar-striped", 3, "ngClass", "ngStyle"], [1, "col-md-1", "upload-progress-percentage"], ["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"], ["title", "delete", "type", "button", 1, "btn", "btn-transparent", "btn-default", "status-icon", 3, "click"], [1, "wi", "wi-delete"], [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, "uploaddetails"], [1, "status-icon", "wi", "wi-cancel", "text-danger"]], template: function FileUploadComponent_Template(rf, ctx) { if (rf & 1) {
597
710
  i0.ɵɵelementStart(0, "div", 0);
598
- i0.ɵɵtemplate(1, FileUploadComponent_div_1_Template, 9, 10, "div", 1)(2, FileUploadComponent_div_2_Template, 9, 10, "div", 2)(3, FileUploadComponent_button_3_Template, 3, 5, "button", 3)(4, FileUploadComponent_ul_4_Template, 2, 5, "ul", 4)(5, FileUploadComponent_ul_5_Template, 2, 6, "ul", 5);
711
+ i0.ɵɵtemplate(1, FileUploadComponent_div_1_Template, 12, 13, "div", 1)(2, FileUploadComponent_div_2_Template, 9, 10, "div", 2)(3, FileUploadComponent_button_3_Template, 3, 5, "button", 3)(4, FileUploadComponent_ul_4_Template, 2, 5, "ul", 4)(5, FileUploadComponent_ul_5_Template, 2, 6, "ul", 5);
599
712
  i0.ɵɵelementEnd();
600
713
  } if (rf & 2) {
601
714
  i0.ɵɵadvance();
@@ -605,7 +718,7 @@ class FileUploadComponent extends StylableComponent {
605
718
  i0.ɵɵadvance();
606
719
  i0.ɵɵproperty("ngIf", ctx._isCordova);
607
720
  i0.ɵɵadvance();
608
- i0.ɵɵproperty("ngIf", ctx.selectedFiles.length > 0);
721
+ i0.ɵɵproperty("ngIf", ctx.uploadedFiles.length > 0);
609
722
  i0.ɵɵadvance();
610
723
  i0.ɵɵproperty("ngIf", ctx.selectedFolders.length > 0);
611
724
  } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgStyle, i3.FileIconClassPipe, i3.FileSizePipe, i3.StateClassPipe], encapsulation: 2 }); }
@@ -614,11 +727,11 @@ class FileUploadComponent extends StylableComponent {
614
727
  type: Component,
615
728
  args: [{ selector: '[wmFileUpload]', providers: [
616
729
  provideAsWidgetRef(FileUploadComponent)
617
- ], template: "<div class=\"app-fileupload\" init-widget>\n <!-- drag and drop files UI in web -->\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 <!-- single file upload in web and single , multiple file upload UI in mobile runmode -->\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 <!-- support for file upload in Mobileapp in its runmode (Web) -->\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 <!-- support for file upload in Mobile Application (device) -->\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 <!-- list of selectedfiles UI -->\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 <!-- list of selectedfolders UI to show the error in title -->\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" }]
730
+ ], template: "<div class=\"app-fileupload\" init-widget>\n <!-- drag and drop files UI in web -->\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=\"upload-label\"></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 class=\"app-anchor upload-label\" href=\"javascript:void(0);\">{{ fileUploadMessage }}</a>\n </form>\n <label *ngIf=\"chooseFilter\" [innerHtml]=\"chooseFilter + ' only '\" class=\"upload-extensions\"></label>\n <span *ngIf=\"chooseFilter && maxfilesize\" class=\"upload-extensions\"> . </span>\n <label *ngIf=\"maxfilesize\" [innerHtml]=\"maxfilesize + 'MB max'\" class=\"upload-extensions\"></label>\n </div>\n </div>\n </div>\n <!-- single file upload in web and single , multiple file upload UI in mobile runmode -->\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 <!-- support for file upload in Mobileapp in its runmode (Web) -->\n <input (change)=\"onFileSelect($event, $event.target.files)\" (click)=\"onFileElemClick($event)\" *ngIf=\"multiple\"\n [accept]=\"chooseFilter\" [attr.aria-label]=\"arialabel || 'File selection field'\" [disabled]=\"disabled\" class=\"file-input\"\n multiple name=\"files\" type=\"file\">\n <input (change)=\"onFileSelect($event, $event.target.files)\" (click)=\"onFileElemClick($event)\" *ngIf=\"!multiple\"\n [accept]=\"chooseFilter\" [attr.aria-label]=\"arialabel || 'File selection field'\" [disabled]=\"disabled\" class=\"file-input\"\n name=\"files\" type=\"file\">\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 <!-- support for file upload in Mobile Application (device) -->\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 <!-- list of selectedfiles UI -->\n <ul class=\"list-group file-upload\" [ngStyle]=\"{height: filelistheight, overflow: overflow}\" *ngIf=\"uploadedFiles.length > 0\" >\n <div *ngFor=\"let ft of uploadedFiles\">\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 col-md-3\">\n <span class=\"upload-title\">{{ ft.storageName || ft.name }}</span>\n <span *ngIf=\"ft.status === 'success'\"\n class=\"status-icon {{ft.status | stateClass }}\"></span>\n <br/>\n <span class=\"filesize\" *ngIf=\"ft.fileLength !== 0\">{{ft.size | filesize:0}}</span>\n <span *ngIf=\"ft.status === 'error'\"\n class=\"status-icon {{ft.status | stateClass }}\"\n title=\"{{ft.errMsg || this.appLocale.MESSAGE_FILE_UPLOAD_FAILED}}\"></span>\n <span *ngIf=\"ft.status === 'error'\" class=\"error-message\">Upload Failed</span>\n </p>\n <div *ngIf=\"ft.status === 'onProgress' || showprogressbar\"\n class=\"progress col-md-7 upload-progress\">\n <div [ngClass]=\"ft.status === 'error' ? 'progress-bar-danger' : 'progress-bar-info'\"\n [ngStyle]=\"{width: (ft.progress +'%')}\"\n class=\"progress-bar progress-bar-striped\"></div>\n </div>\n <div *ngIf=\"(ft.status === 'onProgress' || showprogressbar && showprogressbarpercentage) && ft.progress \"\n class=\"col-md-1 upload-progress-percentage\">{{ ft.progress + '%' }}\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 <div class=\"media-right media-middle\">\n <a (click)=\"clear(ft)\" *ngIf=\"cleariconclass !== '' && ft.status !== 'onProgress'\"\n 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 === 'success'\">\n <a (click)=\"onFileDelete($event, ft)\" class=\"btn btn-transparent btn-default status-icon\" title=\"delete\" type=\"button\">\n <i class=\"wi wi-delete\"></i>\n </a>\n </div>\n </div>\n </li>\n </div>\n </ul>\n <!-- list of selectedfolders UI to show the error in title -->\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" }]
618
731
  }], () => [{ type: i0.Injector }, { type: i1.App }, { type: undefined, decorators: [{
619
732
  type: Attribute,
620
733
  args: ['select.event']
621
- }] }, { type: undefined, decorators: [{
734
+ }] }, { type: i1.AbstractDialogService }, { type: undefined, decorators: [{
622
735
  type: Inject,
623
736
  args: ['EXPLICIT_CONTEXT']
624
737
  }, {