@messaia/cdk 14.0.0 → 15.0.0-rc02

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 (559) hide show
  1. package/esm2020/lib/base/base.module.mjs +8 -8
  2. package/esm2020/lib/base/components/base.component.mjs +3 -3
  3. package/esm2020/lib/base/components/dynamic-table-config-dialog.comnponent.mjs +21 -21
  4. package/esm2020/lib/base/components/generic-form-base.component.mjs +3 -3
  5. package/esm2020/lib/base/components/generic-form.component.mjs +3 -3
  6. package/esm2020/lib/base/components/generic-list.component.mjs +3 -3
  7. package/esm2020/lib/base/components/generic-reactive-form.component.mjs +3 -3
  8. package/esm2020/lib/base/interceptors/base.interceptor.mjs +3 -3
  9. package/esm2020/lib/base/interceptors/caching-interceptor.mjs +3 -3
  10. package/esm2020/lib/base/interceptors/loading.interceptor.mjs +3 -3
  11. package/esm2020/lib/base/services/file.service.mjs +3 -3
  12. package/esm2020/lib/base/services/loading-screen.service.mjs +3 -3
  13. package/esm2020/lib/base/services/print.service.mjs +3 -3
  14. package/esm2020/lib/chips/chips.module.mjs +4 -4
  15. package/esm2020/lib/chips/components/chips.component.mjs +6 -6
  16. package/esm2020/lib/chips/directives/autocomplete-option.directive.mjs +3 -3
  17. package/esm2020/lib/chips/directives/chip.directive.mjs +3 -3
  18. package/esm2020/lib/common/common.module.mjs +4 -4
  19. package/esm2020/lib/common/directives/disable-control.directive.mjs +3 -3
  20. package/esm2020/lib/common/functions/utils.mjs +4 -4
  21. package/esm2020/lib/common/helpers/app-storage.mjs +4 -4
  22. package/esm2020/lib/common/helpers/dynamic-builder.mjs +3 -3
  23. package/esm2020/lib/common/helpers/dynamic-component-compiler.mjs +3 -3
  24. package/esm2020/lib/common/models/app-setting.mjs +3 -3
  25. package/esm2020/lib/common/models/audit-entity.mjs +1 -1
  26. package/esm2020/lib/common/models/base-entity.mjs +1 -1
  27. package/esm2020/lib/common/models/displayname-number-projection.mjs +1 -1
  28. package/esm2020/lib/common/models/displayname-projection.mjs +1 -1
  29. package/esm2020/lib/common/models/name-number-projection.mjs +1 -1
  30. package/esm2020/lib/common/models/name-projection.mjs +1 -1
  31. package/esm2020/lib/common/models/title-projection.mjs +1 -1
  32. package/esm2020/lib/common/pipes/data-source.pipe.mjs +3 -3
  33. package/esm2020/lib/common/pipes/enum.pipe.mjs +3 -3
  34. package/esm2020/lib/common/pipes/file-size.pipe.mjs +3 -3
  35. package/esm2020/lib/common/pipes/filter.pipe.mjs +3 -3
  36. package/esm2020/lib/common/pipes/first-letter.mjs +3 -3
  37. package/esm2020/lib/common/pipes/form-control.pipe.mjs +3 -3
  38. package/esm2020/lib/common/pipes/form-group.pipe.mjs +3 -3
  39. package/esm2020/lib/common/pipes/func.pipe.mjs +3 -3
  40. package/esm2020/lib/common/pipes/keys.mjs +3 -3
  41. package/esm2020/lib/common/pipes/month-name.pipe.mjs +3 -3
  42. package/esm2020/lib/common/pipes/only-number.mjs +3 -3
  43. package/esm2020/lib/common/pipes/order.pipe.mjs +3 -3
  44. package/esm2020/lib/common/pipes/placeholder.pipe.mjs +3 -3
  45. package/esm2020/lib/common/pipes/safe-html.pipe.mjs +3 -3
  46. package/esm2020/lib/common/pipes/time.pipe.mjs +3 -3
  47. package/esm2020/lib/common/pipes/titlecase.pipe.mjs +3 -3
  48. package/esm2020/lib/common/pipes/truncate.pipe.mjs +3 -3
  49. package/esm2020/lib/common/pipes/values.mjs +3 -3
  50. package/esm2020/lib/common/services/base.service.mjs +3 -3
  51. package/esm2020/lib/common/services/enum.service.mjs +3 -3
  52. package/esm2020/lib/dialogs/alert-dialog/alert-dialog.component.mjs +18 -6
  53. package/esm2020/lib/dialogs/confirm-dialog/confirm-dialog.component.mjs +20 -6
  54. package/esm2020/lib/dialogs/dialog.component.mjs +12 -12
  55. package/esm2020/lib/dialogs/dialogs.module.mjs +4 -4
  56. package/esm2020/lib/dialogs/prompt-dialog/prompt-dialog.component.mjs +5 -5
  57. package/esm2020/lib/dialogs/services/dialog.service.mjs +3 -3
  58. package/esm2020/lib/file/file-input.component.mjs +33 -33
  59. package/esm2020/lib/file/file.module.mjs +4 -4
  60. package/esm2020/lib/form-validators/abstract/typed-form.mjs +1 -1
  61. package/esm2020/lib/form-validators/algorithm/luhn-algorithm.mjs +1 -1
  62. package/esm2020/lib/form-validators/const/app-validators.const.mjs +1 -1
  63. package/esm2020/lib/form-validators/const/app.const.mjs +1 -1
  64. package/esm2020/lib/form-validators/const/config-names.const.mjs +1 -1
  65. package/esm2020/lib/form-validators/const/config-required-fields.const.mjs +1 -1
  66. package/esm2020/lib/form-validators/const/decorators.const.mjs +1 -1
  67. package/esm2020/lib/form-validators/const/events.const.mjs +1 -1
  68. package/esm2020/lib/form-validators/const/html-elements.const.mjs +1 -1
  69. package/esm2020/lib/form-validators/const/iban-country-wise-regex.const.mjs +1 -1
  70. package/esm2020/lib/form-validators/const/index.mjs +1 -1
  71. package/esm2020/lib/form-validators/const/operators.const.mjs +1 -1
  72. package/esm2020/lib/form-validators/const/validation-alphabet-locale.const.mjs +1 -1
  73. package/esm2020/lib/form-validators/const/validator.const.mjs +1 -1
  74. package/esm2020/lib/form-validators/core/defaultContainer.mjs +1 -1
  75. package/esm2020/lib/form-validators/core/validator.interface.mjs +1 -1
  76. package/esm2020/lib/form-validators/core/validator.static.mjs +1 -1
  77. package/esm2020/lib/form-validators/decorators/allOf.decorator.mjs +1 -1
  78. package/esm2020/lib/form-validators/decorators/alpha.decorator.mjs +1 -1
  79. package/esm2020/lib/form-validators/decorators/alphaNumeric.decorator.mjs +1 -1
  80. package/esm2020/lib/form-validators/decorators/and.decorator.mjs +1 -1
  81. package/esm2020/lib/form-validators/decorators/ascii.decorator.mjs +1 -1
  82. package/esm2020/lib/form-validators/decorators/async.decorator.mjs +1 -1
  83. package/esm2020/lib/form-validators/decorators/base-decorator.function.mjs +1 -1
  84. package/esm2020/lib/form-validators/decorators/choice.decorator.mjs +1 -1
  85. package/esm2020/lib/form-validators/decorators/compare.decorator.mjs +1 -1
  86. package/esm2020/lib/form-validators/decorators/compose.decorator.mjs +1 -1
  87. package/esm2020/lib/form-validators/decorators/contains.decorator.mjs +1 -1
  88. package/esm2020/lib/form-validators/decorators/credit-card.decorator.mjs +1 -1
  89. package/esm2020/lib/form-validators/decorators/cusip.decorator.mjs +1 -1
  90. package/esm2020/lib/form-validators/decorators/custom.decorator.mjs +1 -1
  91. package/esm2020/lib/form-validators/decorators/dataUri.decorator.mjs +1 -1
  92. package/esm2020/lib/form-validators/decorators/date.decorator.mjs +1 -1
  93. package/esm2020/lib/form-validators/decorators/different.decorator.mjs +1 -1
  94. package/esm2020/lib/form-validators/decorators/digit.decorator.mjs +1 -1
  95. package/esm2020/lib/form-validators/decorators/email.decorator.mjs +1 -1
  96. package/esm2020/lib/form-validators/decorators/endsWith.decorator.mjs +1 -1
  97. package/esm2020/lib/form-validators/decorators/even.decorator.mjs +1 -1
  98. package/esm2020/lib/form-validators/decorators/extension.decorator.mjs +1 -1
  99. package/esm2020/lib/form-validators/decorators/factor.decorator.mjs +1 -1
  100. package/esm2020/lib/form-validators/decorators/file.decorator.mjs +1 -1
  101. package/esm2020/lib/form-validators/decorators/fileSize.decorator.mjs +1 -1
  102. package/esm2020/lib/form-validators/decorators/greater-than-equal-to.decorator.mjs +1 -1
  103. package/esm2020/lib/form-validators/decorators/greater-than.decorator.mjs +1 -1
  104. package/esm2020/lib/form-validators/decorators/grid.decorator.mjs +1 -1
  105. package/esm2020/lib/form-validators/decorators/hexColor.decorator.mjs +1 -1
  106. package/esm2020/lib/form-validators/decorators/image.decorator.mjs +1 -1
  107. package/esm2020/lib/form-validators/decorators/index.mjs +1 -1
  108. package/esm2020/lib/form-validators/decorators/json.decorator.mjs +1 -1
  109. package/esm2020/lib/form-validators/decorators/latLong.decorator.mjs +1 -1
  110. package/esm2020/lib/form-validators/decorators/latitude.decorator.mjs +1 -1
  111. package/esm2020/lib/form-validators/decorators/leapYear.decorator.mjs +1 -1
  112. package/esm2020/lib/form-validators/decorators/less-than-equal-to.decorator.mjs +1 -1
  113. package/esm2020/lib/form-validators/decorators/less-than.decorator.mjs +1 -1
  114. package/esm2020/lib/form-validators/decorators/longitude.decorator.mjs +1 -1
  115. package/esm2020/lib/form-validators/decorators/lowercase.decorator.mjs +1 -1
  116. package/esm2020/lib/form-validators/decorators/mac.decorator.mjs +1 -1
  117. package/esm2020/lib/form-validators/decorators/mask.decorator.mjs +1 -1
  118. package/esm2020/lib/form-validators/decorators/maxDate.decorator.mjs +1 -1
  119. package/esm2020/lib/form-validators/decorators/maxLength.decorator.mjs +1 -1
  120. package/esm2020/lib/form-validators/decorators/maxNumber.decorator.mjs +1 -1
  121. package/esm2020/lib/form-validators/decorators/maxTime.decorator.mjs +1 -1
  122. package/esm2020/lib/form-validators/decorators/minDate.decorator.mjs +1 -1
  123. package/esm2020/lib/form-validators/decorators/minLength.decorator.mjs +1 -1
  124. package/esm2020/lib/form-validators/decorators/minNumber.decorator.mjs +1 -1
  125. package/esm2020/lib/form-validators/decorators/minTime.decorator.mjs +1 -1
  126. package/esm2020/lib/form-validators/decorators/model.decorator.mjs +1 -1
  127. package/esm2020/lib/form-validators/decorators/non-validation-decorators/disable.decorator.mjs +1 -1
  128. package/esm2020/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.mjs +1 -1
  129. package/esm2020/lib/form-validators/decorators/non-validation-decorators/error.decorator.mjs +1 -1
  130. package/esm2020/lib/form-validators/decorators/non-validation-decorators/update-on.decorator.mjs +1 -1
  131. package/esm2020/lib/form-validators/decorators/noneOf.decorator.mjs +1 -1
  132. package/esm2020/lib/form-validators/decorators/not.decorator.mjs +1 -1
  133. package/esm2020/lib/form-validators/decorators/notEmpty.decorator.mjs +1 -1
  134. package/esm2020/lib/form-validators/decorators/numeric.decorator.mjs +1 -1
  135. package/esm2020/lib/form-validators/decorators/odd.decorator.mjs +1 -1
  136. package/esm2020/lib/form-validators/decorators/oneOf.decorator.mjs +1 -1
  137. package/esm2020/lib/form-validators/decorators/or.decorator.mjs +1 -1
  138. package/esm2020/lib/form-validators/decorators/password.decorator.mjs +1 -1
  139. package/esm2020/lib/form-validators/decorators/pattern.decorator.mjs +1 -1
  140. package/esm2020/lib/form-validators/decorators/port.decorator.mjs +1 -1
  141. package/esm2020/lib/form-validators/decorators/primeNumber.decorator.mjs +1 -1
  142. package/esm2020/lib/form-validators/decorators/prop-array.decorator.mjs +1 -1
  143. package/esm2020/lib/form-validators/decorators/prop-object.decorator.mjs +1 -1
  144. package/esm2020/lib/form-validators/decorators/prop.decorator.mjs +1 -1
  145. package/esm2020/lib/form-validators/decorators/range.decorator.mjs +1 -1
  146. package/esm2020/lib/form-validators/decorators/required.decorator.mjs +1 -1
  147. package/esm2020/lib/form-validators/decorators/requiredTrue.decorator.mjs +1 -1
  148. package/esm2020/lib/form-validators/decorators/rule.decorator.mjs +1 -1
  149. package/esm2020/lib/form-validators/decorators/sanitize/blacklist.decorator.mjs +1 -1
  150. package/esm2020/lib/form-validators/decorators/sanitize/escape.decorator.mjs +1 -1
  151. package/esm2020/lib/form-validators/decorators/sanitize/ltrim.decorator.mjs +1 -1
  152. package/esm2020/lib/form-validators/decorators/sanitize/prefix.decorator.mjs +1 -1
  153. package/esm2020/lib/form-validators/decorators/sanitize/rtrim.decorator.mjs +1 -1
  154. package/esm2020/lib/form-validators/decorators/sanitize/sanitize.decorator.mjs +1 -1
  155. package/esm2020/lib/form-validators/decorators/sanitize/stripLow.decorator.mjs +1 -1
  156. package/esm2020/lib/form-validators/decorators/sanitize/suffix.decorator.mjs +1 -1
  157. package/esm2020/lib/form-validators/decorators/sanitize/toBoolean.decorator.mjs +1 -1
  158. package/esm2020/lib/form-validators/decorators/sanitize/toDate.decorator.mjs +1 -1
  159. package/esm2020/lib/form-validators/decorators/sanitize/toDouble.decorator.mjs +1 -1
  160. package/esm2020/lib/form-validators/decorators/sanitize/toFloat.decorator.mjs +1 -1
  161. package/esm2020/lib/form-validators/decorators/sanitize/toInt.decorator.mjs +1 -1
  162. package/esm2020/lib/form-validators/decorators/sanitize/toString.decorator.mjs +1 -1
  163. package/esm2020/lib/form-validators/decorators/sanitize/trim.decorator.mjs +1 -1
  164. package/esm2020/lib/form-validators/decorators/sanitize/whitelist.decorator.mjs +1 -1
  165. package/esm2020/lib/form-validators/decorators/startsWith.decorator.mjs +1 -1
  166. package/esm2020/lib/form-validators/decorators/time.decorator.mjs +1 -1
  167. package/esm2020/lib/form-validators/decorators/unique.decorator.mjs +1 -1
  168. package/esm2020/lib/form-validators/decorators/uppercase.decorator.mjs +1 -1
  169. package/esm2020/lib/form-validators/decorators/url.decorator.mjs +1 -1
  170. package/esm2020/lib/form-validators/directives/base-directive.mjs +4 -4
  171. package/esm2020/lib/form-validators/directives/control-host.directive.mjs +4 -4
  172. package/esm2020/lib/form-validators/directives/html-control-template.directive.mjs +4 -4
  173. package/esm2020/lib/form-validators/directives/rx-form.directive.mjs +4 -4
  174. package/esm2020/lib/form-validators/directives/template-validations/async-validation.directive.mjs +4 -4
  175. package/esm2020/lib/form-validators/directives/template-validations/base-validator.directive.mjs +4 -4
  176. package/esm2020/lib/form-validators/directives/template-validations/control-expression-process.mjs +4 -4
  177. package/esm2020/lib/form-validators/directives/template-validations/file-control.directive.mjs +4 -4
  178. package/esm2020/lib/form-validators/directives/template-validations/image-file-control.directive.mjs +4 -4
  179. package/esm2020/lib/form-validators/directives/template-validations/rxformcontrol.directive.mjs +4 -4
  180. package/esm2020/lib/form-validators/domain/disable-provider.mjs +1 -1
  181. package/esm2020/lib/form-validators/domain/element-processor/decimal.provider.mjs +4 -4
  182. package/esm2020/lib/form-validators/domain/element-processor/mask.provider.mjs +1 -1
  183. package/esm2020/lib/form-validators/domain/form-data.mjs +1 -1
  184. package/esm2020/lib/form-validators/enums/error-message-binding-strategy.mjs +1 -1
  185. package/esm2020/lib/form-validators/enums/index.mjs +1 -1
  186. package/esm2020/lib/form-validators/enums/ip-version.mjs +1 -1
  187. package/esm2020/lib/form-validators/enums/numeric-value-type.mjs +1 -1
  188. package/esm2020/lib/form-validators/enums/reset-type.mjs +1 -1
  189. package/esm2020/lib/form-validators/enums/url-validation-type.mjs +1 -1
  190. package/esm2020/lib/form-validators/models/config/alpha-config.mjs +1 -1
  191. package/esm2020/lib/form-validators/models/config/array-config.mjs +1 -1
  192. package/esm2020/lib/form-validators/models/config/base-config-fn.mjs +1 -1
  193. package/esm2020/lib/form-validators/models/config/base-config.mjs +1 -1
  194. package/esm2020/lib/form-validators/models/config/base-date-config.mjs +1 -1
  195. package/esm2020/lib/form-validators/models/config/choice-config.mjs +1 -1
  196. package/esm2020/lib/form-validators/models/config/compare-config.mjs +1 -1
  197. package/esm2020/lib/form-validators/models/config/component-config.mjs +1 -1
  198. package/esm2020/lib/form-validators/models/config/compose-config.mjs +1 -1
  199. package/esm2020/lib/form-validators/models/config/contains-config.mjs +1 -1
  200. package/esm2020/lib/form-validators/models/config/credit-card-config.mjs +1 -1
  201. package/esm2020/lib/form-validators/models/config/custom-config.mjs +1 -1
  202. package/esm2020/lib/form-validators/models/config/date-config.mjs +1 -1
  203. package/esm2020/lib/form-validators/models/config/default-config.mjs +1 -1
  204. package/esm2020/lib/form-validators/models/config/digit-config.mjs +1 -1
  205. package/esm2020/lib/form-validators/models/config/disable-config.mjs +1 -1
  206. package/esm2020/lib/form-validators/models/config/element-class-config.mjs +1 -1
  207. package/esm2020/lib/form-validators/models/config/email-config.mjs +1 -1
  208. package/esm2020/lib/form-validators/models/config/error-config.mjs +1 -1
  209. package/esm2020/lib/form-validators/models/config/extension-config.mjs +1 -1
  210. package/esm2020/lib/form-validators/models/config/factor-config.mjs +1 -1
  211. package/esm2020/lib/form-validators/models/config/field-config.mjs +1 -1
  212. package/esm2020/lib/form-validators/models/config/file-config.mjs +1 -1
  213. package/esm2020/lib/form-validators/models/config/hex-color-config.mjs +1 -1
  214. package/esm2020/lib/form-validators/models/config/iban-config.mjs +1 -1
  215. package/esm2020/lib/form-validators/models/config/image-config.mjs +1 -1
  216. package/esm2020/lib/form-validators/models/config/index.mjs +1 -1
  217. package/esm2020/lib/form-validators/models/config/ip-config.mjs +1 -1
  218. package/esm2020/lib/form-validators/models/config/logical-operator-config.mjs +1 -1
  219. package/esm2020/lib/form-validators/models/config/mask-config.mjs +1 -1
  220. package/esm2020/lib/form-validators/models/config/max-date-config.mjs +1 -1
  221. package/esm2020/lib/form-validators/models/config/message-config.mjs +1 -1
  222. package/esm2020/lib/form-validators/models/config/min-date-config.mjs +1 -1
  223. package/esm2020/lib/form-validators/models/config/model-config.mjs +1 -1
  224. package/esm2020/lib/form-validators/models/config/number-config.mjs +1 -1
  225. package/esm2020/lib/form-validators/models/config/numeric-config.mjs +1 -1
  226. package/esm2020/lib/form-validators/models/config/password-config.mjs +1 -1
  227. package/esm2020/lib/form-validators/models/config/pattern-config.mjs +1 -1
  228. package/esm2020/lib/form-validators/models/config/prop-config.mjs +1 -1
  229. package/esm2020/lib/form-validators/models/config/props-config.mjs +1 -1
  230. package/esm2020/lib/form-validators/models/config/range-config.mjs +1 -1
  231. package/esm2020/lib/form-validators/models/config/relational-operator-config.mjs +1 -1
  232. package/esm2020/lib/form-validators/models/config/required-config.mjs +1 -1
  233. package/esm2020/lib/form-validators/models/config/rule-config.mjs +1 -1
  234. package/esm2020/lib/form-validators/models/config/sanitize-config.mjs +1 -1
  235. package/esm2020/lib/form-validators/models/config/size-config.mjs +1 -1
  236. package/esm2020/lib/form-validators/models/config/string-comparison-config.mjs +1 -1
  237. package/esm2020/lib/form-validators/models/config/string-value-config.mjs +1 -1
  238. package/esm2020/lib/form-validators/models/config/time-config.mjs +1 -1
  239. package/esm2020/lib/form-validators/models/config/todate-config.mjs +1 -1
  240. package/esm2020/lib/form-validators/models/config/unique-config.mjs +1 -1
  241. package/esm2020/lib/form-validators/models/config/update-on-config.mjs +1 -1
  242. package/esm2020/lib/form-validators/models/config/url-config.mjs +1 -1
  243. package/esm2020/lib/form-validators/models/form-builder-configuration.mjs +1 -1
  244. package/esm2020/lib/form-validators/models/index.mjs +1 -1
  245. package/esm2020/lib/form-validators/models/interface/array-prop-instance-config.interface.mjs +1 -1
  246. package/esm2020/lib/form-validators/models/interface/auto-instance-config.interface.mjs +1 -1
  247. package/esm2020/lib/form-validators/models/interface/form-data-config.mjs +1 -1
  248. package/esm2020/lib/form-validators/models/interface/i-abstract-control.mjs +1 -1
  249. package/esm2020/lib/form-validators/models/interface/i-form-group.mjs +1 -1
  250. package/esm2020/lib/form-validators/models/interface/instance-argument.interface.mjs +1 -1
  251. package/esm2020/lib/form-validators/models/interface/object-prop-instance-config.interface.mjs +1 -1
  252. package/esm2020/lib/form-validators/models/interface/options.mjs +1 -1
  253. package/esm2020/lib/form-validators/models/password-validation.model.mjs +1 -1
  254. package/esm2020/lib/form-validators/models/prop-validation-config.mjs +1 -1
  255. package/esm2020/lib/form-validators/reactive-form-validators/allOf.validator.mjs +1 -1
  256. package/esm2020/lib/form-validators/reactive-form-validators/alpha.validator.mjs +1 -1
  257. package/esm2020/lib/form-validators/reactive-form-validators/alphaNumeric.validator.mjs +1 -1
  258. package/esm2020/lib/form-validators/reactive-form-validators/and.validator.mjs +1 -1
  259. package/esm2020/lib/form-validators/reactive-form-validators/ascii.validator.mjs +1 -1
  260. package/esm2020/lib/form-validators/reactive-form-validators/choice.validator.mjs +1 -1
  261. package/esm2020/lib/form-validators/reactive-form-validators/compare.validator.mjs +1 -1
  262. package/esm2020/lib/form-validators/reactive-form-validators/compose.validator.mjs +1 -1
  263. package/esm2020/lib/form-validators/reactive-form-validators/conditional-change.validator.mjs +1 -1
  264. package/esm2020/lib/form-validators/reactive-form-validators/contains.validator.mjs +1 -1
  265. package/esm2020/lib/form-validators/reactive-form-validators/credit-card.validator.mjs +1 -1
  266. package/esm2020/lib/form-validators/reactive-form-validators/cusip.validator.mjs +1 -1
  267. package/esm2020/lib/form-validators/reactive-form-validators/custom.validator.mjs +1 -1
  268. package/esm2020/lib/form-validators/reactive-form-validators/dataUri.validator.mjs +1 -1
  269. package/esm2020/lib/form-validators/reactive-form-validators/date.validator.mjs +1 -1
  270. package/esm2020/lib/form-validators/reactive-form-validators/different.validator.mjs +1 -1
  271. package/esm2020/lib/form-validators/reactive-form-validators/digit.validator.mjs +1 -1
  272. package/esm2020/lib/form-validators/reactive-form-validators/email.validator.mjs +1 -1
  273. package/esm2020/lib/form-validators/reactive-form-validators/endsWith.validator.mjs +1 -1
  274. package/esm2020/lib/form-validators/reactive-form-validators/even.validator.mjs +1 -1
  275. package/esm2020/lib/form-validators/reactive-form-validators/extension.validator.mjs +1 -1
  276. package/esm2020/lib/form-validators/reactive-form-validators/factor.validator.mjs +1 -1
  277. package/esm2020/lib/form-validators/reactive-form-validators/file.validator.mjs +1 -1
  278. package/esm2020/lib/form-validators/reactive-form-validators/fileSize.validator.mjs +1 -1
  279. package/esm2020/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.mjs +1 -1
  280. package/esm2020/lib/form-validators/reactive-form-validators/greater-than.validator.mjs +1 -1
  281. package/esm2020/lib/form-validators/reactive-form-validators/grid.validator.mjs +1 -1
  282. package/esm2020/lib/form-validators/reactive-form-validators/hexcolor.validator.mjs +1 -1
  283. package/esm2020/lib/form-validators/reactive-form-validators/iban.validator.mjs +1 -1
  284. package/esm2020/lib/form-validators/reactive-form-validators/image.validator.mjs +1 -1
  285. package/esm2020/lib/form-validators/reactive-form-validators/index.mjs +1 -1
  286. package/esm2020/lib/form-validators/reactive-form-validators/ip.validator.mjs +1 -1
  287. package/esm2020/lib/form-validators/reactive-form-validators/json.validator.mjs +1 -1
  288. package/esm2020/lib/form-validators/reactive-form-validators/latLong.validator.mjs +1 -1
  289. package/esm2020/lib/form-validators/reactive-form-validators/latitude.validator.mjs +1 -1
  290. package/esm2020/lib/form-validators/reactive-form-validators/leapYear.validator.mjs +1 -1
  291. package/esm2020/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.mjs +1 -1
  292. package/esm2020/lib/form-validators/reactive-form-validators/less-than.validator.mjs +1 -1
  293. package/esm2020/lib/form-validators/reactive-form-validators/longitude.validator.mjs +1 -1
  294. package/esm2020/lib/form-validators/reactive-form-validators/lowercase.validator.mjs +1 -1
  295. package/esm2020/lib/form-validators/reactive-form-validators/mac.validator.mjs +1 -1
  296. package/esm2020/lib/form-validators/reactive-form-validators/mask.validator.mjs +1 -1
  297. package/esm2020/lib/form-validators/reactive-form-validators/maxDate.validator.mjs +1 -1
  298. package/esm2020/lib/form-validators/reactive-form-validators/maxLength.validator.mjs +1 -1
  299. package/esm2020/lib/form-validators/reactive-form-validators/maxNumber.validator.mjs +1 -1
  300. package/esm2020/lib/form-validators/reactive-form-validators/maxTime.validator.mjs +1 -1
  301. package/esm2020/lib/form-validators/reactive-form-validators/minDate.validator.mjs +1 -1
  302. package/esm2020/lib/form-validators/reactive-form-validators/minLength.validator.mjs +1 -1
  303. package/esm2020/lib/form-validators/reactive-form-validators/minNumber.validator.mjs +1 -1
  304. package/esm2020/lib/form-validators/reactive-form-validators/minTime.validator.mjs +1 -1
  305. package/esm2020/lib/form-validators/reactive-form-validators/noneOf.validator.mjs +1 -1
  306. package/esm2020/lib/form-validators/reactive-form-validators/not.validator.mjs +1 -1
  307. package/esm2020/lib/form-validators/reactive-form-validators/notEmpty.validator.mjs +1 -1
  308. package/esm2020/lib/form-validators/reactive-form-validators/numeric.validator.mjs +1 -1
  309. package/esm2020/lib/form-validators/reactive-form-validators/odd.validator.mjs +1 -1
  310. package/esm2020/lib/form-validators/reactive-form-validators/oneOf.validator.mjs +1 -1
  311. package/esm2020/lib/form-validators/reactive-form-validators/or.validator.mjs +1 -1
  312. package/esm2020/lib/form-validators/reactive-form-validators/password.validator.mjs +1 -1
  313. package/esm2020/lib/form-validators/reactive-form-validators/pattern.validator.mjs +1 -1
  314. package/esm2020/lib/form-validators/reactive-form-validators/port.validator.mjs +1 -1
  315. package/esm2020/lib/form-validators/reactive-form-validators/primeNumber.validator.mjs +1 -1
  316. package/esm2020/lib/form-validators/reactive-form-validators/range.validator.mjs +1 -1
  317. package/esm2020/lib/form-validators/reactive-form-validators/required.validator.mjs +1 -1
  318. package/esm2020/lib/form-validators/reactive-form-validators/requiredTrue.validator.mjs +1 -1
  319. package/esm2020/lib/form-validators/reactive-form-validators/rule.validator.mjs +1 -1
  320. package/esm2020/lib/form-validators/reactive-form-validators/startsWith.validator.mjs +1 -1
  321. package/esm2020/lib/form-validators/reactive-form-validators/time.validator.mjs +1 -1
  322. package/esm2020/lib/form-validators/reactive-form-validators/unique.validator.mjs +1 -1
  323. package/esm2020/lib/form-validators/reactive-form-validators/uppercase.validator.mjs +1 -1
  324. package/esm2020/lib/form-validators/reactive-form-validators/url.validator.mjs +1 -1
  325. package/esm2020/lib/form-validators/services/base-form-builder.mjs +1 -1
  326. package/esm2020/lib/form-validators/services/entity.service.mjs +1 -1
  327. package/esm2020/lib/form-validators/services/form-control.mjs +1 -1
  328. package/esm2020/lib/form-validators/services/form-group.mjs +1 -1
  329. package/esm2020/lib/form-validators/services/reactive-form.module.mjs +9 -9
  330. package/esm2020/lib/form-validators/services/rx-form-array.mjs +1 -1
  331. package/esm2020/lib/form-validators/services/rx-form-builder.mjs +4 -4
  332. package/esm2020/lib/form-validators/services/rx-form-group.mjs +1 -1
  333. package/esm2020/lib/form-validators/services/typed-form-builder.mjs +4 -4
  334. package/esm2020/lib/form-validators/util/alphabet-regex.locale.mjs +1 -1
  335. package/esm2020/lib/form-validators/util/app-util.mjs +1 -1
  336. package/esm2020/lib/form-validators/util/check-length.mjs +1 -1
  337. package/esm2020/lib/form-validators/util/config-provider.mjs +1 -1
  338. package/esm2020/lib/form-validators/util/date-checker.function.mjs +1 -1
  339. package/esm2020/lib/form-validators/util/date-provider.mjs +1 -1
  340. package/esm2020/lib/form-validators/util/form-const.mjs +1 -1
  341. package/esm2020/lib/form-validators/util/form-provider.mjs +1 -1
  342. package/esm2020/lib/form-validators/util/index.mjs +1 -1
  343. package/esm2020/lib/form-validators/util/instance-provider.function.mjs +1 -1
  344. package/esm2020/lib/form-validators/util/ip-checker.mjs +1 -1
  345. package/esm2020/lib/form-validators/util/linq.mjs +1 -1
  346. package/esm2020/lib/form-validators/util/object-maker.mjs +1 -1
  347. package/esm2020/lib/form-validators/util/reactive-form-config.mjs +1 -1
  348. package/esm2020/lib/form-validators/util/regex-rules.mjs +1 -1
  349. package/esm2020/lib/form-validators/util/regex-validator.mjs +1 -1
  350. package/esm2020/lib/form-validators/util/relational-checker.function.mjs +1 -1
  351. package/esm2020/lib/form-validators/util/reset-form.mjs +1 -1
  352. package/esm2020/lib/form-validators/util/sanitizers.mjs +1 -1
  353. package/esm2020/lib/form-validators/util/time-checker.function.mjs +1 -1
  354. package/esm2020/lib/form-validators/util/type.mjs +1 -1
  355. package/esm2020/lib/form-validators/util/validator-value-checker.mjs +1 -1
  356. package/esm2020/lib/form-validators/validators-extension/allOf-validator.extension.mjs +1 -1
  357. package/esm2020/lib/form-validators/validators-extension/alpha-validator.extension.mjs +1 -1
  358. package/esm2020/lib/form-validators/validators-extension/alphaNumeric-validator.extension.mjs +1 -1
  359. package/esm2020/lib/form-validators/validators-extension/and-validator.extension.mjs +1 -1
  360. package/esm2020/lib/form-validators/validators-extension/ascii-validator.extension.mjs +1 -1
  361. package/esm2020/lib/form-validators/validators-extension/base-validator.function.mjs +1 -1
  362. package/esm2020/lib/form-validators/validators-extension/choice-validator.extension.mjs +1 -1
  363. package/esm2020/lib/form-validators/validators-extension/compare-validator.extension.mjs +1 -1
  364. package/esm2020/lib/form-validators/validators-extension/compose-validator.extension.mjs +1 -1
  365. package/esm2020/lib/form-validators/validators-extension/contains-validator.extension.mjs +1 -1
  366. package/esm2020/lib/form-validators/validators-extension/credit-card-validator.extension.mjs +1 -1
  367. package/esm2020/lib/form-validators/validators-extension/cusip-validator.extension.mjs +1 -1
  368. package/esm2020/lib/form-validators/validators-extension/custom-validator.extension.mjs +1 -1
  369. package/esm2020/lib/form-validators/validators-extension/dataUri-validator.extension.mjs +1 -1
  370. package/esm2020/lib/form-validators/validators-extension/date-validator.extension.mjs +1 -1
  371. package/esm2020/lib/form-validators/validators-extension/different-validator.extension.mjs +1 -1
  372. package/esm2020/lib/form-validators/validators-extension/digit-validator.extension.mjs +1 -1
  373. package/esm2020/lib/form-validators/validators-extension/email-validator.extension.mjs +1 -1
  374. package/esm2020/lib/form-validators/validators-extension/endsWith-validator.extension.mjs +1 -1
  375. package/esm2020/lib/form-validators/validators-extension/even-validator.extension.mjs +1 -1
  376. package/esm2020/lib/form-validators/validators-extension/extension-validator.extension.mjs +1 -1
  377. package/esm2020/lib/form-validators/validators-extension/factor-validator.extension.mjs +1 -1
  378. package/esm2020/lib/form-validators/validators-extension/file-validator.extension.mjs +1 -1
  379. package/esm2020/lib/form-validators/validators-extension/fileSize-validator.extension.mjs +1 -1
  380. package/esm2020/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.mjs +1 -1
  381. package/esm2020/lib/form-validators/validators-extension/greater-than-validator.extension.mjs +1 -1
  382. package/esm2020/lib/form-validators/validators-extension/grid-validator.extension.mjs +1 -1
  383. package/esm2020/lib/form-validators/validators-extension/hexcolor-validator.extension.mjs +1 -1
  384. package/esm2020/lib/form-validators/validators-extension/iban-validator.extension.mjs +1 -1
  385. package/esm2020/lib/form-validators/validators-extension/image-validator.extension.mjs +1 -1
  386. package/esm2020/lib/form-validators/validators-extension/index.mjs +1 -1
  387. package/esm2020/lib/form-validators/validators-extension/ip-validator.extension.mjs +1 -1
  388. package/esm2020/lib/form-validators/validators-extension/json-validator.extension.mjs +1 -1
  389. package/esm2020/lib/form-validators/validators-extension/latLong-validator.extension.mjs +1 -1
  390. package/esm2020/lib/form-validators/validators-extension/latitude-validator.extension.mjs +1 -1
  391. package/esm2020/lib/form-validators/validators-extension/leapYear-validator.extension.mjs +1 -1
  392. package/esm2020/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.mjs +1 -1
  393. package/esm2020/lib/form-validators/validators-extension/less-than-validator.extension.mjs +1 -1
  394. package/esm2020/lib/form-validators/validators-extension/longitude-validator.extension.mjs +1 -1
  395. package/esm2020/lib/form-validators/validators-extension/lowercase-validator.extension.mjs +1 -1
  396. package/esm2020/lib/form-validators/validators-extension/mac-validator.extension.mjs +1 -1
  397. package/esm2020/lib/form-validators/validators-extension/mask-validator.extension.mjs +1 -1
  398. package/esm2020/lib/form-validators/validators-extension/maxDate-validator.extension.mjs +1 -1
  399. package/esm2020/lib/form-validators/validators-extension/maxLength-validator.extension.mjs +1 -1
  400. package/esm2020/lib/form-validators/validators-extension/maxNumber-validator.extension.mjs +1 -1
  401. package/esm2020/lib/form-validators/validators-extension/maxTime-validator.extension.mjs +1 -1
  402. package/esm2020/lib/form-validators/validators-extension/minDate-validator.extension.mjs +1 -1
  403. package/esm2020/lib/form-validators/validators-extension/minLength-validator.extension.mjs +1 -1
  404. package/esm2020/lib/form-validators/validators-extension/minNumber-validator.extension.mjs +1 -1
  405. package/esm2020/lib/form-validators/validators-extension/minTime-validator.extension.mjs +1 -1
  406. package/esm2020/lib/form-validators/validators-extension/noneOf-validator.extension.mjs +1 -1
  407. package/esm2020/lib/form-validators/validators-extension/not-validator.extension.mjs +1 -1
  408. package/esm2020/lib/form-validators/validators-extension/notEmpty-validator.extension.mjs +1 -1
  409. package/esm2020/lib/form-validators/validators-extension/numeric-validator.extension.mjs +1 -1
  410. package/esm2020/lib/form-validators/validators-extension/odd-validator.extension.mjs +1 -1
  411. package/esm2020/lib/form-validators/validators-extension/oneOf-validator.extension.mjs +1 -1
  412. package/esm2020/lib/form-validators/validators-extension/or-validator.extension.mjs +1 -1
  413. package/esm2020/lib/form-validators/validators-extension/password-validator.extension.mjs +1 -1
  414. package/esm2020/lib/form-validators/validators-extension/pattern-validator.extension.mjs +1 -1
  415. package/esm2020/lib/form-validators/validators-extension/port-validator.extension.mjs +1 -1
  416. package/esm2020/lib/form-validators/validators-extension/primeNumber-validator.extension.mjs +1 -1
  417. package/esm2020/lib/form-validators/validators-extension/range-validator.extension.mjs +1 -1
  418. package/esm2020/lib/form-validators/validators-extension/required-validator.extension.mjs +1 -1
  419. package/esm2020/lib/form-validators/validators-extension/requiredTrue-validator.extension.mjs +1 -1
  420. package/esm2020/lib/form-validators/validators-extension/rxweb-validators.mjs +1 -1
  421. package/esm2020/lib/form-validators/validators-extension/startsWith-validator.extension.mjs +1 -1
  422. package/esm2020/lib/form-validators/validators-extension/time-validator.extension.mjs +1 -1
  423. package/esm2020/lib/form-validators/validators-extension/unique-validator.extension.mjs +1 -1
  424. package/esm2020/lib/form-validators/validators-extension/uppercase-validator.extension.mjs +1 -1
  425. package/esm2020/lib/form-validators/validators-extension/url-validator.extension.mjs +1 -1
  426. package/esm2020/lib/form-validators/validators-function/alpha-validation.function.mjs +1 -1
  427. package/esm2020/lib/form-validators/validators-function/regex-validation.function.mjs +1 -1
  428. package/esm2020/lib/forms/components/generic-form/generic-form.component.mjs +17 -17
  429. package/esm2020/lib/forms/directives/mat-form-field-editor.directive.mjs +3 -3
  430. package/esm2020/lib/forms/directives/mat-form-field-readonly.directive.mjs +3 -3
  431. package/esm2020/lib/forms/forms.module.mjs +4 -4
  432. package/esm2020/lib/forms/helpers/abstract-mat-form-field.mjs +17 -7
  433. package/esm2020/lib/forms/helpers/value-accessor-base.mjs +3 -3
  434. package/esm2020/lib/forms/models/form-field-definition.mjs +1 -1
  435. package/esm2020/lib/forms/validators/empty-string-reset.directive.mjs +3 -3
  436. package/esm2020/lib/forms/validators/equal-validator.directive.mjs +3 -3
  437. package/esm2020/lib/forms/validators/native-element-injector.directive.mjs +3 -3
  438. package/esm2020/lib/forms/validators/unique-validator-directive.mjs +3 -3
  439. package/esm2020/lib/http/http.module.mjs +4 -4
  440. package/esm2020/lib/layout/dynamic-menu/dynamic-menu.component.mjs +3 -3
  441. package/esm2020/lib/layout/layout-card-over/layout-card-over.component.mjs +5 -5
  442. package/esm2020/lib/layout/layout-footer/layout-footer.component.mjs +3 -3
  443. package/esm2020/lib/layout/layout-manage-list/layout-manage-list.component.mjs +4 -4
  444. package/esm2020/lib/layout/layout-manage-list/layout-manage-list.directives.mjs +9 -9
  445. package/esm2020/lib/layout/layout-nav/layout-nav.component.mjs +3 -3
  446. package/esm2020/lib/layout/layout-nav-list/layout-nav-list.component.mjs +3 -3
  447. package/esm2020/lib/layout/layout-nav-list/layout-nav-list.directives.mjs +9 -9
  448. package/esm2020/lib/layout/layout-toggle.class.mjs +3 -3
  449. package/esm2020/lib/layout/layout.component.mjs +3 -3
  450. package/esm2020/lib/layout/layout.directives.mjs +9 -9
  451. package/esm2020/lib/layout/layout.module.mjs +4 -4
  452. package/esm2020/lib/layout/list-toolbar/list-toolbar.component.mjs +3 -3
  453. package/esm2020/lib/layout/navigation-drawer/navigation-drawer.component.mjs +10 -10
  454. package/esm2020/lib/media/directives/media-toggle.directive.mjs +3 -3
  455. package/esm2020/lib/media/media.module.mjs +4 -4
  456. package/esm2020/lib/media/services/media.service.mjs +3 -3
  457. package/esm2020/lib/menu/components/menu.component.mjs +6 -7
  458. package/esm2020/lib/menu/menu.module.mjs +4 -4
  459. package/esm2020/lib/menu/models/menu-item.mjs +1 -1
  460. package/esm2020/lib/menu/models/menu.mjs +1 -1
  461. package/esm2020/lib/menu/services/menu-items.service.mjs +3 -3
  462. package/esm2020/lib/menu/services/menu.resolve.mjs +6 -6
  463. package/esm2020/lib/menu/services/menu.service.mjs +3 -3
  464. package/esm2020/lib/search/search.module.mjs +4 -4
  465. package/esm2020/lib/search/vd-search-box/vd-search-box.component.mjs +4 -4
  466. package/esm2020/lib/search/vd-search-input/vd-search-input.component.mjs +7 -7
  467. package/esm2020/lib/select/components/select.component.mjs +36 -10
  468. package/esm2020/lib/select/directives/vd-select-option.directive.mjs +3 -3
  469. package/esm2020/lib/select/directives/vd-select-trigger.directive.mjs +3 -3
  470. package/esm2020/lib/select/select.module.mjs +4 -4
  471. package/esm2020/lib/table/components/dynamic-table/dynamic-table.component.mjs +5 -5
  472. package/esm2020/lib/table/components/filter-clear.component.mjs +10 -10
  473. package/esm2020/lib/table/components/filter-date.component.mjs +28 -19
  474. package/esm2020/lib/table/components/filter-input.component.mjs +31 -20
  475. package/esm2020/lib/table/components/filter-select.component.mjs +41 -15
  476. package/esm2020/lib/table/directives/data-source-filter.directive.mjs +3 -3
  477. package/esm2020/lib/table/functions/decorators.mjs +2 -2
  478. package/esm2020/lib/table/models/table-column-config.mjs +1 -1
  479. package/esm2020/lib/table/paginator-intl.mjs +3 -3
  480. package/esm2020/lib/table/table.module.mjs +4 -4
  481. package/fesm2015/messaia-cdk.mjs +682 -573
  482. package/fesm2015/messaia-cdk.mjs.map +1 -1
  483. package/fesm2020/messaia-cdk.mjs +683 -574
  484. package/fesm2020/messaia-cdk.mjs.map +1 -1
  485. package/lib/base/components/base.component.d.ts +1 -1
  486. package/lib/base/components/dynamic-table-config-dialog.comnponent.d.ts +1 -1
  487. package/lib/base/components/generic-form-base.component.d.ts +1 -1
  488. package/lib/base/components/generic-form.component.d.ts +1 -1
  489. package/lib/base/components/generic-list.component.d.ts +1 -1
  490. package/lib/base/components/generic-reactive-form.component.d.ts +1 -1
  491. package/lib/chips/components/chips.component.d.ts +1 -1
  492. package/lib/chips/directives/autocomplete-option.directive.d.ts +1 -1
  493. package/lib/chips/directives/chip.directive.d.ts +1 -1
  494. package/lib/common/directives/disable-control.directive.d.ts +1 -1
  495. package/lib/common/functions/utils.d.ts +1 -1
  496. package/lib/common/helpers/app-storage.d.ts +1 -1
  497. package/lib/common/pipes/only-number.d.ts +1 -1
  498. package/lib/common/pipes/order.pipe.d.ts +1 -1
  499. package/lib/common/styles/_common-theme.scss +8 -7
  500. package/lib/common/styles/_layout.scss +1 -1
  501. package/lib/common/styles/core/_button.scss +1 -1
  502. package/lib/common/styles/core/_card.scss +40 -36
  503. package/lib/common/styles/core/_icons.scss +2 -1
  504. package/lib/common/styles/core/_sidenav.scss +2 -1
  505. package/lib/common/styles/utilities/_general.scss +197 -31
  506. package/lib/common/theming/_all-theme.scss +4 -0
  507. package/lib/dialogs/alert-dialog/alert-dialog.component.d.ts +1 -1
  508. package/lib/dialogs/confirm-dialog/confirm-dialog.component.d.ts +1 -1
  509. package/lib/dialogs/dialog.component.d.ts +4 -4
  510. package/lib/dialogs/prompt-dialog/prompt-dialog.component.d.ts +1 -1
  511. package/lib/file/file-input.component.d.ts +1 -1
  512. package/lib/form-validators/directives/base-directive.d.ts +1 -1
  513. package/lib/form-validators/directives/control-host.directive.d.ts +1 -1
  514. package/lib/form-validators/directives/html-control-template.directive.d.ts +1 -1
  515. package/lib/form-validators/directives/rx-form.directive.d.ts +1 -1
  516. package/lib/form-validators/directives/template-validations/async-validation.directive.d.ts +1 -1
  517. package/lib/form-validators/directives/template-validations/base-validator.directive.d.ts +1 -1
  518. package/lib/form-validators/directives/template-validations/control-expression-process.d.ts +1 -1
  519. package/lib/form-validators/directives/template-validations/file-control.directive.d.ts +1 -1
  520. package/lib/form-validators/directives/template-validations/image-file-control.directive.d.ts +1 -1
  521. package/lib/form-validators/directives/template-validations/rxformcontrol.directive.d.ts +1 -1
  522. package/lib/forms/components/generic-form/generic-form.component.d.ts +5 -5
  523. package/lib/forms/directives/mat-form-field-editor.directive.d.ts +1 -1
  524. package/lib/forms/directives/mat-form-field-readonly.directive.d.ts +1 -1
  525. package/lib/forms/helpers/abstract-mat-form-field.d.ts +8 -3
  526. package/lib/forms/helpers/value-accessor-base.d.ts +1 -1
  527. package/lib/forms/models/form-field-definition.d.ts +3 -0
  528. package/lib/forms/validators/empty-string-reset.directive.d.ts +1 -1
  529. package/lib/forms/validators/equal-validator.directive.d.ts +1 -1
  530. package/lib/forms/validators/native-element-injector.directive.d.ts +1 -1
  531. package/lib/forms/validators/unique-validator-directive.d.ts +1 -1
  532. package/lib/layout/_layout-theme.scss +133 -2
  533. package/lib/layout/dynamic-menu/dynamic-menu.component.d.ts +1 -1
  534. package/lib/layout/layout-card-over/layout-card-over.component.d.ts +1 -1
  535. package/lib/layout/layout-footer/layout-footer.component.d.ts +1 -1
  536. package/lib/layout/layout-manage-list/layout-manage-list.component.d.ts +1 -1
  537. package/lib/layout/layout-manage-list/layout-manage-list.directives.d.ts +3 -3
  538. package/lib/layout/layout-nav/layout-nav.component.d.ts +1 -1
  539. package/lib/layout/layout-nav-list/layout-nav-list.component.d.ts +1 -1
  540. package/lib/layout/layout-nav-list/layout-nav-list.directives.d.ts +3 -3
  541. package/lib/layout/layout-toggle.class.d.ts +1 -1
  542. package/lib/layout/layout.component.d.ts +1 -1
  543. package/lib/layout/layout.directives.d.ts +3 -3
  544. package/lib/layout/list-toolbar/list-toolbar.component.d.ts +1 -1
  545. package/lib/layout/navigation-drawer/navigation-drawer.component.d.ts +3 -3
  546. package/lib/media/directives/media-toggle.directive.d.ts +1 -1
  547. package/lib/menu/components/menu.component.d.ts +1 -1
  548. package/lib/search/vd-search-box/vd-search-box.component.d.ts +1 -1
  549. package/lib/search/vd-search-input/vd-search-input.component.d.ts +1 -1
  550. package/lib/select/components/select.component.d.ts +22 -5
  551. package/lib/select/directives/vd-select-option.directive.d.ts +1 -1
  552. package/lib/select/directives/vd-select-trigger.directive.d.ts +1 -1
  553. package/lib/table/components/dynamic-table/dynamic-table.component.d.ts +1 -1
  554. package/lib/table/components/filter-clear.component.d.ts +1 -1
  555. package/lib/table/components/filter-date.component.d.ts +10 -1
  556. package/lib/table/components/filter-input.component.d.ts +10 -1
  557. package/lib/table/components/filter-select.component.d.ts +11 -2
  558. package/lib/table/directives/data-source-filter.directive.d.ts +1 -1
  559. package/package.json +1 -1
@@ -1,14 +1,14 @@
1
- import * as i5$3 from '@angular/cdk/drag-drop';
1
+ import * as i5$4 from '@angular/cdk/drag-drop';
2
2
  import { DragDropModule } from '@angular/cdk/drag-drop';
3
3
  import * as i1$2 from '@angular/common';
4
4
  import { CommonModule, Location, getLocaleNumberSymbol, NumberSymbol, DecimalPipe } from '@angular/common';
5
5
  import * as i1$6 from '@angular/common/http';
6
6
  import { HttpParams, HttpClient, HttpRequest, HttpHeaders, HttpEventType, HttpClientModule, HttpResponse, HTTP_INTERCEPTORS } from '@angular/common/http';
7
7
  import * as i0 from '@angular/core';
8
- import { Directive, Input, Pipe, HostListener, Component, NgModule, Injectable, Injector, ViewEncapsulation, COMPILER_OPTIONS, CompilerFactory, Compiler, EventEmitter, Output, ViewChild, Optional, SkipSelf, NgZone, forwardRef, Inject, SecurityContext, ContentChildren, HostBinding, Self, ContentChild, TemplateRef, ViewContainerRef, ViewChildren, ElementRef, LOCALE_ID, Attribute } from '@angular/core';
8
+ import { Directive, Input, Pipe, HostListener, Component, NgModule, Injectable, Injector, ViewEncapsulation, COMPILER_OPTIONS, CompilerFactory, Compiler, EventEmitter, Output, ViewChild, Optional, SkipSelf, NgZone, forwardRef, Inject, SecurityContext, ContentChildren, HostBinding, ChangeDetectionStrategy, Self, ContentChild, TemplateRef, ViewContainerRef, ViewChildren, ElementRef, LOCALE_ID, Attribute } from '@angular/core';
9
9
  import * as i1 from '@angular/forms';
10
10
  import { FormControlName, FormControlDirective, FormArray, FormGroup, FormControl, FormsModule, NG_VALUE_ACCESSOR, NG_ASYNC_VALIDATORS, NG_VALIDATORS, AbstractControl, FormBuilder, ReactiveFormsModule } from '@angular/forms';
11
- import * as i5 from '@angular/material/button';
11
+ import * as i5$1 from '@angular/material/button';
12
12
  import { MatButtonModule } from '@angular/material/button';
13
13
  import * as i1$5 from '@angular/material/dialog';
14
14
  import { MatDialogConfig, MatDialog, MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
@@ -18,7 +18,7 @@ import * as i15 from '@angular/material/checkbox';
18
18
  import { MatCheckboxModule } from '@angular/material/checkbox';
19
19
  import * as i17 from '@angular/material/datepicker';
20
20
  import { MatDatepickerModule } from '@angular/material/datepicker';
21
- import * as i11 from '@angular/material/form-field';
21
+ import * as i6$1 from '@angular/material/form-field';
22
22
  import { MatFormFieldControl, MatFormFieldModule } from '@angular/material/form-field';
23
23
  import * as i6 from '@angular/material/icon';
24
24
  import { MatIconModule } from '@angular/material/icon';
@@ -30,15 +30,15 @@ import * as i18 from '@angular/material/paginator';
30
30
  import { MatPaginator, MatPaginatorIntl, MatPaginatorModule } from '@angular/material/paginator';
31
31
  import * as i14 from '@angular/material/progress-bar';
32
32
  import { MatProgressBarModule } from '@angular/material/progress-bar';
33
- import * as i5$2 from '@angular/material/select';
34
- import { MatSelect, MatSelectModule } from '@angular/material/select';
33
+ import * as i5$3 from '@angular/material/select';
34
+ import { MatSelect, MatSelectModule, MAT_SELECT_CONFIG } from '@angular/material/select';
35
35
  import * as i17$1 from '@angular/material/slide-toggle';
36
36
  import { MatSlideToggleModule } from '@angular/material/slide-toggle';
37
37
  import * as i12 from '@angular/material/sort';
38
38
  import { MatSort, MatSortModule } from '@angular/material/sort';
39
39
  import * as i1$4 from '@angular/material/table';
40
40
  import { MatTableDataSource, MatTableModule } from '@angular/material/table';
41
- import * as i5$1 from '@angular/material/toolbar';
41
+ import * as i5$2 from '@angular/material/toolbar';
42
42
  import { MatToolbarModule } from '@angular/material/toolbar';
43
43
  import * as i19 from '@angular/material/tooltip';
44
44
  import { MatTooltipModule } from '@angular/material/tooltip';
@@ -61,10 +61,10 @@ import * as i4$2 from '@angular/material/sidenav';
61
61
  import { MatSidenav, MatSidenavModule } from '@angular/material/sidenav';
62
62
  import * as i1$3 from '@angular/router';
63
63
  import { RouterModule, Router, NavigationEnd } from '@angular/router';
64
+ import * as i5 from '@angular/material/divider';
65
+ import { trigger, state, style, AUTO_STYLE, transition, group, query, animateChild, animate } from '@angular/animations';
64
66
  import * as i2 from '@angular/material/core';
65
67
  import { mixinErrorState, MatNativeDateModule } from '@angular/material/core';
66
- import * as i6$1 from '@angular/material/divider';
67
- import { trigger, state, style, AUTO_STYLE, transition, group, query, animateChild, animate } from '@angular/animations';
68
68
  import * as i3$2 from '@angular/cdk/a11y';
69
69
  import { CdkPortal, TemplatePortalDirective } from '@angular/cdk/portal';
70
70
  import { SelectionModel } from '@angular/cdk/collections';
@@ -74,14 +74,14 @@ import { MatSnackBar } from '@angular/material/snack-bar';
74
74
  import '@angular/localize/init';
75
75
  import { MatStepper } from '@angular/material/stepper';
76
76
  import { saveAs } from 'file-saver';
77
- import * as i11$1 from '@angular/material/autocomplete';
77
+ import * as i11 from '@angular/material/autocomplete';
78
78
  import { MatAutocomplete, MatAutocompleteTrigger, MatAutocompleteModule } from '@angular/material/autocomplete';
79
79
  import * as i7 from '@angular/material/chips';
80
80
  import { MatChipsModule } from '@angular/material/chips';
81
81
  import { ENTER, COMMA } from '@angular/cdk/keycodes';
82
82
  import * as i3$3 from '@angular/cdk/platform';
83
83
  import * as i4$3 from '@angular/cdk/text-field';
84
- import * as i5$4 from '@tinymce/tinymce-angular';
84
+ import * as i5$5 from '@tinymce/tinymce-angular';
85
85
  import * as i1$7 from '@angular/cdk/bidi';
86
86
 
87
87
  class DisableControlDirective {
@@ -106,9 +106,9 @@ class DisableControlDirective {
106
106
  }
107
107
  }
108
108
  }
109
- /** @nocollapse */ DisableControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DisableControlDirective, deps: [{ token: i1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
110
- /** @nocollapse */ DisableControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: DisableControlDirective, selector: "[disableControl]", inputs: { disableControl: "disableControl" }, ngImport: i0 });
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DisableControlDirective, decorators: [{
109
+ /** @nocollapse */ DisableControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DisableControlDirective, deps: [{ token: i1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
110
+ /** @nocollapse */ DisableControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: DisableControlDirective, selector: "[disableControl]", inputs: { disableControl: "disableControl" }, ngImport: i0 });
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DisableControlDirective, decorators: [{
112
112
  type: Directive,
113
113
  args: [{ selector: '[disableControl]' }]
114
114
  }], ctorParameters: function () { return [{ type: i1.NgControl }]; }, propDecorators: { disableControl: [{
@@ -120,9 +120,9 @@ class DataSourcePipe {
120
120
  return data ? new MatTableDataSource(data) : null;
121
121
  }
122
122
  }
123
- /** @nocollapse */ DataSourcePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DataSourcePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
124
- /** @nocollapse */ DataSourcePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: DataSourcePipe, name: "dataSource" });
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DataSourcePipe, decorators: [{
123
+ /** @nocollapse */ DataSourcePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DataSourcePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
124
+ /** @nocollapse */ DataSourcePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: DataSourcePipe, name: "dataSource" });
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DataSourcePipe, decorators: [{
126
126
  type: Pipe,
127
127
  args: [{ name: 'dataSource' }]
128
128
  }] });
@@ -137,9 +137,9 @@ class EnumPipe {
137
137
  return `${prefix}${enumType[value]}${suffix}`;
138
138
  }
139
139
  }
140
- /** @nocollapse */ EnumPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
141
- /** @nocollapse */ EnumPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: EnumPipe, name: "enum", pure: false });
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EnumPipe, decorators: [{
140
+ /** @nocollapse */ EnumPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
141
+ /** @nocollapse */ EnumPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: EnumPipe, name: "enum", pure: false });
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EnumPipe, decorators: [{
143
143
  type: Pipe,
144
144
  args: [{
145
145
  name: 'enum',
@@ -176,9 +176,9 @@ class FileSizePipe {
176
176
  return `${bytes.toFixed(precision[unit])} ${unit}`;
177
177
  }
178
178
  }
179
- /** @nocollapse */ FileSizePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
180
- /** @nocollapse */ FileSizePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: FileSizePipe, name: "fileSize" });
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileSizePipe, decorators: [{
179
+ /** @nocollapse */ FileSizePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
180
+ /** @nocollapse */ FileSizePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: FileSizePipe, name: "fileSize" });
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileSizePipe, decorators: [{
182
182
  type: Pipe,
183
183
  args: [{ name: 'fileSize' }]
184
184
  }] });
@@ -194,9 +194,9 @@ class FilterPipe {
194
194
  return items === null || items === void 0 ? void 0 : items.filter(item => item.id.indexOf(filterBy) !== -1);
195
195
  }
196
196
  }
197
- /** @nocollapse */ FilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
198
- /** @nocollapse */ FilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: FilterPipe, name: "filter", pure: false });
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterPipe, decorators: [{
197
+ /** @nocollapse */ FilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
198
+ /** @nocollapse */ FilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: FilterPipe, name: "filter", pure: false });
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterPipe, decorators: [{
200
200
  type: Pipe,
201
201
  args: [{
202
202
  name: 'filter',
@@ -215,9 +215,9 @@ class FirstLetterPipe {
215
215
  return uppercase ? val.toUpperCase() : val;
216
216
  }
217
217
  }
218
- /** @nocollapse */ FirstLetterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FirstLetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
219
- /** @nocollapse */ FirstLetterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: FirstLetterPipe, name: "firstLetter", pure: false });
220
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FirstLetterPipe, decorators: [{
218
+ /** @nocollapse */ FirstLetterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FirstLetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
219
+ /** @nocollapse */ FirstLetterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: FirstLetterPipe, name: "firstLetter", pure: false });
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FirstLetterPipe, decorators: [{
221
221
  type: Pipe,
222
222
  args: [{
223
223
  name: 'firstLetter',
@@ -231,9 +231,9 @@ class FormControlPipe {
231
231
  return value;
232
232
  }
233
233
  }
234
- /** @nocollapse */ FormControlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FormControlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
235
- /** @nocollapse */ FormControlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: FormControlPipe, name: "formControl" });
236
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FormControlPipe, decorators: [{
234
+ /** @nocollapse */ FormControlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FormControlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
235
+ /** @nocollapse */ FormControlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: FormControlPipe, name: "formControl" });
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FormControlPipe, decorators: [{
237
237
  type: Pipe,
238
238
  args: [{ name: 'formControl' }]
239
239
  }] });
@@ -243,9 +243,9 @@ class FuncPipe {
243
243
  return value && typeof value === 'function' ? value(...args) : value;
244
244
  }
245
245
  }
246
- /** @nocollapse */ FuncPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FuncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
247
- /** @nocollapse */ FuncPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: FuncPipe, name: "func" });
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FuncPipe, decorators: [{
246
+ /** @nocollapse */ FuncPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FuncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
247
+ /** @nocollapse */ FuncPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: FuncPipe, name: "func" });
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FuncPipe, decorators: [{
249
249
  type: Pipe,
250
250
  args: [{ name: 'func' }]
251
251
  }] });
@@ -259,9 +259,9 @@ class KeysPipe {
259
259
  return keys;
260
260
  }
261
261
  }
262
- /** @nocollapse */ KeysPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: KeysPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
263
- /** @nocollapse */ KeysPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: KeysPipe, name: "keys" });
264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: KeysPipe, decorators: [{
262
+ /** @nocollapse */ KeysPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: KeysPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
263
+ /** @nocollapse */ KeysPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: KeysPipe, name: "keys" });
264
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: KeysPipe, decorators: [{
265
265
  type: Pipe,
266
266
  args: [{ name: 'keys' }]
267
267
  }] });
@@ -281,9 +281,9 @@ class MonthNamePipe {
281
281
  return (month < 1 || month > 12) ? 'N/A' : this.monthNames[month - 1];
282
282
  }
283
283
  }
284
- /** @nocollapse */ MonthNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MonthNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
285
- /** @nocollapse */ MonthNamePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: MonthNamePipe, name: "monthName", pure: false });
286
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MonthNamePipe, decorators: [{
284
+ /** @nocollapse */ MonthNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MonthNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
285
+ /** @nocollapse */ MonthNamePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: MonthNamePipe, name: "monthName", pure: false });
286
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MonthNamePipe, decorators: [{
287
287
  type: Pipe,
288
288
  args: [{
289
289
  name: 'monthName',
@@ -328,9 +328,9 @@ class OnlyNumberDirective {
328
328
  }
329
329
  }
330
330
  }
331
- /** @nocollapse */ OnlyNumberDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: OnlyNumberDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
332
- /** @nocollapse */ OnlyNumberDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: OnlyNumberDirective, selector: "[onlyNumber]", inputs: { onlyNumber: "onlyNumber" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, ngImport: i0 });
333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: OnlyNumberDirective, decorators: [{
331
+ /** @nocollapse */ OnlyNumberDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: OnlyNumberDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
332
+ /** @nocollapse */ OnlyNumberDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: OnlyNumberDirective, selector: "[onlyNumber]", inputs: { onlyNumber: "onlyNumber" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, ngImport: i0 });
333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: OnlyNumberDirective, decorators: [{
334
334
  type: Directive,
335
335
  args: [{
336
336
  selector: '[onlyNumber]'
@@ -513,9 +513,9 @@ class OrderPipe {
513
513
  }, value);
514
514
  }
515
515
  }
516
- /** @nocollapse */ OrderPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: OrderPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
517
- /** @nocollapse */ OrderPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: OrderPipe, name: "orderBy", pure: false });
518
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: OrderPipe, decorators: [{
516
+ /** @nocollapse */ OrderPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: OrderPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
517
+ /** @nocollapse */ OrderPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: OrderPipe, name: "orderBy", pure: false });
518
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: OrderPipe, decorators: [{
519
519
  type: Pipe,
520
520
  args: [{
521
521
  name: 'orderBy',
@@ -536,9 +536,9 @@ class PlaceholderPipe {
536
536
  return '';
537
537
  }
538
538
  }
539
- /** @nocollapse */ PlaceholderPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PlaceholderPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
540
- /** @nocollapse */ PlaceholderPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: PlaceholderPipe, name: "placeholder", pure: false });
541
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PlaceholderPipe, decorators: [{
539
+ /** @nocollapse */ PlaceholderPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PlaceholderPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
540
+ /** @nocollapse */ PlaceholderPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: PlaceholderPipe, name: "placeholder", pure: false });
541
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PlaceholderPipe, decorators: [{
542
542
  type: Pipe,
543
543
  args: [{
544
544
  name: 'placeholder',
@@ -567,9 +567,9 @@ class SafeHtmlPipe {
567
567
  return this.sanitizer.bypassSecurityTrustHtml(html);
568
568
  }
569
569
  }
570
- /** @nocollapse */ SafeHtmlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
571
- /** @nocollapse */ SafeHtmlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: SafeHtmlPipe, name: "safeHtml" });
572
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: SafeHtmlPipe, decorators: [{
570
+ /** @nocollapse */ SafeHtmlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
571
+ /** @nocollapse */ SafeHtmlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: SafeHtmlPipe, name: "safeHtml" });
572
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: SafeHtmlPipe, decorators: [{
573
573
  type: Pipe,
574
574
  args: [{ name: 'safeHtml' }]
575
575
  }], ctorParameters: function () { return [{ type: i1$1.DomSanitizer }]; } });
@@ -585,9 +585,9 @@ class TimePipe {
585
585
  return time;
586
586
  }
587
587
  }
588
- /** @nocollapse */ TimePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TimePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
589
- /** @nocollapse */ TimePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: TimePipe, name: "time" });
590
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TimePipe, decorators: [{
588
+ /** @nocollapse */ TimePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TimePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
589
+ /** @nocollapse */ TimePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: TimePipe, name: "time" });
590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TimePipe, decorators: [{
591
591
  type: Pipe,
592
592
  args: [{ name: 'time' }]
593
593
  }] });
@@ -597,9 +597,9 @@ class TitleCase {
597
597
  return input.length > 0 ? input.replace(/\w\S*/g, (txt => txt[0].toUpperCase() + txt.substr(1).toLowerCase())) : '';
598
598
  }
599
599
  }
600
- /** @nocollapse */ TitleCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TitleCase, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
601
- /** @nocollapse */ TitleCase.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: TitleCase, name: "titlecase", pure: false });
602
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TitleCase, decorators: [{
600
+ /** @nocollapse */ TitleCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TitleCase, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
601
+ /** @nocollapse */ TitleCase.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: TitleCase, name: "titlecase", pure: false });
602
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TitleCase, decorators: [{
603
603
  type: Pipe,
604
604
  args: [{ name: 'titlecase', pure: false }]
605
605
  }] });
@@ -796,9 +796,9 @@ Utils.germanMonthNames = [
796
796
  { name: 'November', id: 11 },
797
797
  { name: 'Dezember', id: 12 }
798
798
  ];
799
- /** @nocollapse */ Utils.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: Utils, deps: [], target: i0.ɵɵFactoryTarget.Directive });
800
- /** @nocollapse */ Utils.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: Utils, ngImport: i0 });
801
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: Utils, decorators: [{
799
+ /** @nocollapse */ Utils.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: Utils, deps: [], target: i0.ɵɵFactoryTarget.Directive });
800
+ /** @nocollapse */ Utils.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: Utils, ngImport: i0 });
801
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: Utils, decorators: [{
802
802
  type: Directive
803
803
  }] });
804
804
 
@@ -807,9 +807,9 @@ class TruncatePipe {
807
807
  return Utils.truncateText(text, length);
808
808
  }
809
809
  }
810
- /** @nocollapse */ TruncatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
811
- /** @nocollapse */ TruncatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: TruncatePipe, name: "truncate" });
812
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TruncatePipe, decorators: [{
810
+ /** @nocollapse */ TruncatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
811
+ /** @nocollapse */ TruncatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: TruncatePipe, name: "truncate" });
812
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TruncatePipe, decorators: [{
813
813
  type: Pipe,
814
814
  args: [{ name: 'truncate' }]
815
815
  }] });
@@ -819,9 +819,9 @@ class ValuesPipe {
819
819
  return Object.keys(value).map(key => value[key]);
820
820
  }
821
821
  }
822
- /** @nocollapse */ ValuesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ValuesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
823
- /** @nocollapse */ ValuesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: ValuesPipe, name: "values", pure: false });
824
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ValuesPipe, decorators: [{
822
+ /** @nocollapse */ ValuesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ValuesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
823
+ /** @nocollapse */ ValuesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: ValuesPipe, name: "values", pure: false });
824
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ValuesPipe, decorators: [{
825
825
  type: Pipe,
826
826
  args: [{ name: 'values', pure: false }]
827
827
  }] });
@@ -956,7 +956,7 @@ function Column(args) {
956
956
  case 'date':
957
957
  tableColumn.inputType || (tableColumn.inputType = 'date');
958
958
  tableColumn.type || (tableColumn.type = TableColumnType.Date);
959
- tableColumn.maxWidth || (tableColumn.maxWidth = 80);
959
+ tableColumn.maxWidth || (tableColumn.maxWidth = 94);
960
960
  tableColumn.arrowBefore = tableColumn.arrowBefore !== undefined ? tableColumn.arrowBefore : true;
961
961
  break;
962
962
  case 'boolean':
@@ -1088,9 +1088,9 @@ class FormGroupPipe {
1088
1088
  return value;
1089
1089
  }
1090
1090
  }
1091
- /** @nocollapse */ FormGroupPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FormGroupPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1092
- /** @nocollapse */ FormGroupPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: FormGroupPipe, name: "formGroup" });
1093
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FormGroupPipe, decorators: [{
1091
+ /** @nocollapse */ FormGroupPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FormGroupPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1092
+ /** @nocollapse */ FormGroupPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: FormGroupPipe, name: "formGroup" });
1093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FormGroupPipe, decorators: [{
1094
1094
  type: Pipe,
1095
1095
  args: [{ name: 'formGroup' }]
1096
1096
  }] });
@@ -1314,9 +1314,9 @@ AppStorage.getObjectEncoded = (key, defaultValue) => {
1314
1314
  return defaultValue;
1315
1315
  }
1316
1316
  };
1317
- /** @nocollapse */ AppStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AppStorage, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1318
- /** @nocollapse */ AppStorage.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: AppStorage, ngImport: i0 });
1319
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AppStorage, decorators: [{
1317
+ /** @nocollapse */ AppStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AppStorage, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1318
+ /** @nocollapse */ AppStorage.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: AppStorage, ngImport: i0 });
1319
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AppStorage, decorators: [{
1320
1320
  type: Directive
1321
1321
  }] });
1322
1322
 
@@ -1359,18 +1359,18 @@ class DynamicBuilder {
1359
1359
  return componentRef;
1360
1360
  }
1361
1361
  }
1362
- /** @nocollapse */ DynamicBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DynamicBuilder, deps: [{ token: i0.Compiler }], target: i0.ɵɵFactoryTarget.Injectable });
1363
- /** @nocollapse */ DynamicBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DynamicBuilder, providedIn: 'root' });
1364
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DynamicBuilder, decorators: [{
1362
+ /** @nocollapse */ DynamicBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DynamicBuilder, deps: [{ token: i0.Compiler }], target: i0.ɵɵFactoryTarget.Injectable });
1363
+ /** @nocollapse */ DynamicBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DynamicBuilder, providedIn: 'root' });
1364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DynamicBuilder, decorators: [{
1365
1365
  type: Injectable,
1366
1366
  args: [{ providedIn: 'root' }]
1367
1367
  }], ctorParameters: function () { return [{ type: i0.Compiler }]; } });
1368
1368
 
1369
1369
  class DynamicComponentCompiler {
1370
1370
  }
1371
- /** @nocollapse */ DynamicComponentCompiler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DynamicComponentCompiler, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1372
- /** @nocollapse */ DynamicComponentCompiler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DynamicComponentCompiler, providedIn: 'root' });
1373
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DynamicComponentCompiler, decorators: [{
1371
+ /** @nocollapse */ DynamicComponentCompiler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DynamicComponentCompiler, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1372
+ /** @nocollapse */ DynamicComponentCompiler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DynamicComponentCompiler, providedIn: 'root' });
1373
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DynamicComponentCompiler, decorators: [{
1374
1374
  type: Injectable,
1375
1375
  args: [{ providedIn: 'root' }]
1376
1376
  }] });
@@ -1395,9 +1395,9 @@ class ActionItem {
1395
1395
 
1396
1396
  class AppSetting {
1397
1397
  }
1398
- /** @nocollapse */ AppSetting.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AppSetting, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1399
- /** @nocollapse */ AppSetting.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AppSetting });
1400
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AppSetting, decorators: [{
1398
+ /** @nocollapse */ AppSetting.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AppSetting, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1399
+ /** @nocollapse */ AppSetting.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AppSetting });
1400
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AppSetting, decorators: [{
1401
1401
  type: Injectable
1402
1402
  }] });
1403
1403
 
@@ -2346,9 +2346,9 @@ class BaseService extends GenericService {
2346
2346
  super('');
2347
2347
  }
2348
2348
  }
2349
- /** @nocollapse */ BaseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2350
- /** @nocollapse */ BaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseService, providedIn: 'root' });
2351
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseService, decorators: [{
2349
+ /** @nocollapse */ BaseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2350
+ /** @nocollapse */ BaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseService, providedIn: 'root' });
2351
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseService, decorators: [{
2352
2352
  type: Injectable,
2353
2353
  args: [{ providedIn: 'root' }]
2354
2354
  }], ctorParameters: function () { return []; } });
@@ -2393,9 +2393,9 @@ class EnumService {
2393
2393
  .map(key => ({ id: enumType[key], name: `${prefix}${key}` }));
2394
2394
  }
2395
2395
  }
2396
- /** @nocollapse */ EnumService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EnumService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2397
- /** @nocollapse */ EnumService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EnumService });
2398
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EnumService, decorators: [{
2396
+ /** @nocollapse */ EnumService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EnumService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2397
+ /** @nocollapse */ EnumService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EnumService });
2398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EnumService, decorators: [{
2399
2399
  type: Injectable
2400
2400
  }] });
2401
2401
 
@@ -2434,8 +2434,8 @@ const COMMON_DECLARATIONS = [
2434
2434
  ];
2435
2435
  class VdCommonModule {
2436
2436
  }
2437
- /** @nocollapse */ VdCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2438
- /** @nocollapse */ VdCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdCommonModule, declarations: [DataSourcePipe,
2437
+ /** @nocollapse */ VdCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2438
+ /** @nocollapse */ VdCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdCommonModule, declarations: [DataSourcePipe,
2439
2439
  DisableControlDirective,
2440
2440
  EnumPipe,
2441
2441
  FileSizePipe,
@@ -2472,8 +2472,8 @@ class VdCommonModule {
2472
2472
  TitleCase,
2473
2473
  TruncatePipe,
2474
2474
  ValuesPipe] });
2475
- /** @nocollapse */ VdCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCommonModule, providers: [...RUNTIME_COMPILER_PROVIDERS] });
2476
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCommonModule, decorators: [{
2475
+ /** @nocollapse */ VdCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCommonModule, providers: [...RUNTIME_COMPILER_PROVIDERS] });
2476
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCommonModule, decorators: [{
2477
2477
  type: NgModule,
2478
2478
  args: [{
2479
2479
  imports: [],
@@ -2511,11 +2511,11 @@ class VdMenuComponent {
2511
2511
  }
2512
2512
  }
2513
2513
  }
2514
- /** @nocollapse */ VdMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2515
- /** @nocollapse */ VdMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdMenuComponent, selector: "vd-menu", inputs: { items: "items", activeExact: "activeExact", avatar: "avatar" }, outputs: { onClick: "click" }, ngImport: i0, template: "<mat-nav-list>\r\n\t<ng-template let-item let-last=\"last\" ngFor [ngForOf]=\"items\">\r\n\t\t<a mat-list-item *ngIf=\"item.enabled\" [routerLink]=\"item.path\" [routerLinkActive]=\"['active']\" [routerLinkActiveOptions]=\"{exact:item.activeExact}\" (click)=\"itemClicked(item.event?item.event:$event)\">\r\n\t\t\t<mat-icon *ngIf=\"!avatar\" mat-list-icon>{{item.icon}}</mat-icon>\r\n\t\t\t<span *ngIf=\"!avatar\">{{item.title}}</span>\r\n\t\t\t<mat-icon *ngIf=\"avatar\" matListAvatar>{{item.icon}}</mat-icon>\r\n\t\t\t<h3 *ngIf=\"avatar\" matLine>{{item.title}}</h3>\r\n\t\t\t<p *ngIf=\"avatar && item.description\" matLine> {{item.description}} </p>\r\n\t\t</a>\r\n\t\t<mat-divider *ngIf=\"item.divider && !avatar\"></mat-divider>\r\n\t\t<mat-divider [inset]=\"avatar\" *ngIf=\"!item.divider && avatar && !last\"></mat-divider>\r\n\t</ng-template>\r\n</mat-nav-list>", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "directive", type: i1$3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { kind: "directive", type: i4.MatListAvatarCssMatStyler, selector: "[mat-list-avatar], [matListAvatar]" }, { kind: "directive", type: i2.MatLine, selector: "[mat-line], [matLine]" }, { kind: "directive", type: i4.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { kind: "component", type: i6$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }] });
2516
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMenuComponent, decorators: [{
2514
+ /** @nocollapse */ VdMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2515
+ /** @nocollapse */ VdMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdMenuComponent, selector: "vd-menu", inputs: { items: "items", activeExact: "activeExact", avatar: "avatar" }, outputs: { onClick: "click" }, ngImport: i0, template: "<mat-nav-list>\r\n\t<ng-template let-item let-last=\"last\" ngFor [ngForOf]=\"items\">\r\n\t\t<a mat-list-item *ngIf=\"item.enabled\" [routerLink]=\"item.path\" [routerLinkActive]=\"['active']\" [routerLinkActiveOptions]=\"{exact:item.activeExact}\" (click)=\"itemClicked(item.event?item.event:$event)\">\r\n\t\t\t<mat-icon *ngIf=\"!avatar\" matListItemIcon>{{item.icon}}</mat-icon>\r\n\t\t\t<span *ngIf=\"!avatar\" matListItemTitle>{{item.title}}</span>\r\n\t\t\t<mat-icon *ngIf=\"avatar\" matListAvatar>{{item.icon}}</mat-icon>\r\n\t\t\t<h3 *ngIf=\"avatar\" matLine>{{item.title}}</h3>\r\n\t\t\t<p *ngIf=\"avatar && item.description\" matLine> {{item.description}} </p>\r\n\t\t</a>\r\n\t\t<mat-divider *ngIf=\"item.divider && !avatar\"></mat-divider>\r\n\t\t<mat-divider [inset]=\"avatar\" *ngIf=\"!item.divider && avatar && !last\"></mat-divider>\r\n\t</ng-template>\r\n</mat-nav-list>", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i4.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: i5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i4.MatListItemTitle, selector: "[matListItemTitle]" }] });
2516
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMenuComponent, decorators: [{
2517
2517
  type: Component,
2518
- args: [{ selector: 'vd-menu', template: "<mat-nav-list>\r\n\t<ng-template let-item let-last=\"last\" ngFor [ngForOf]=\"items\">\r\n\t\t<a mat-list-item *ngIf=\"item.enabled\" [routerLink]=\"item.path\" [routerLinkActive]=\"['active']\" [routerLinkActiveOptions]=\"{exact:item.activeExact}\" (click)=\"itemClicked(item.event?item.event:$event)\">\r\n\t\t\t<mat-icon *ngIf=\"!avatar\" mat-list-icon>{{item.icon}}</mat-icon>\r\n\t\t\t<span *ngIf=\"!avatar\">{{item.title}}</span>\r\n\t\t\t<mat-icon *ngIf=\"avatar\" matListAvatar>{{item.icon}}</mat-icon>\r\n\t\t\t<h3 *ngIf=\"avatar\" matLine>{{item.title}}</h3>\r\n\t\t\t<p *ngIf=\"avatar && item.description\" matLine> {{item.description}} </p>\r\n\t\t</a>\r\n\t\t<mat-divider *ngIf=\"item.divider && !avatar\"></mat-divider>\r\n\t\t<mat-divider [inset]=\"avatar\" *ngIf=\"!item.divider && avatar && !last\"></mat-divider>\r\n\t</ng-template>\r\n</mat-nav-list>" }]
2518
+ args: [{ selector: 'vd-menu', template: "<mat-nav-list>\r\n\t<ng-template let-item let-last=\"last\" ngFor [ngForOf]=\"items\">\r\n\t\t<a mat-list-item *ngIf=\"item.enabled\" [routerLink]=\"item.path\" [routerLinkActive]=\"['active']\" [routerLinkActiveOptions]=\"{exact:item.activeExact}\" (click)=\"itemClicked(item.event?item.event:$event)\">\r\n\t\t\t<mat-icon *ngIf=\"!avatar\" matListItemIcon>{{item.icon}}</mat-icon>\r\n\t\t\t<span *ngIf=\"!avatar\" matListItemTitle>{{item.title}}</span>\r\n\t\t\t<mat-icon *ngIf=\"avatar\" matListAvatar>{{item.icon}}</mat-icon>\r\n\t\t\t<h3 *ngIf=\"avatar\" matLine>{{item.title}}</h3>\r\n\t\t\t<p *ngIf=\"avatar && item.description\" matLine> {{item.description}} </p>\r\n\t\t</a>\r\n\t\t<mat-divider *ngIf=\"item.divider && !avatar\"></mat-divider>\r\n\t\t<mat-divider [inset]=\"avatar\" *ngIf=\"!item.divider && avatar && !last\"></mat-divider>\r\n\t</ng-template>\r\n</mat-nav-list>" }]
2519
2519
  }], propDecorators: { items: [{
2520
2520
  type: Input
2521
2521
  }], activeExact: [{
@@ -2529,10 +2529,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
2529
2529
 
2530
2530
  class VdHttpModule {
2531
2531
  }
2532
- /** @nocollapse */ VdHttpModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdHttpModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2533
- /** @nocollapse */ VdHttpModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdHttpModule, imports: [HttpClientModule] });
2534
- /** @nocollapse */ VdHttpModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdHttpModule, imports: [HttpClientModule] });
2535
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdHttpModule, decorators: [{
2532
+ /** @nocollapse */ VdHttpModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdHttpModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2533
+ /** @nocollapse */ VdHttpModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdHttpModule, imports: [HttpClientModule] });
2534
+ /** @nocollapse */ VdHttpModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdHttpModule, imports: [HttpClientModule] });
2535
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdHttpModule, decorators: [{
2536
2536
  type: NgModule,
2537
2537
  args: [{
2538
2538
  imports: [
@@ -2550,9 +2550,9 @@ class MenuService extends GenericService {
2550
2550
  super('menu');
2551
2551
  }
2552
2552
  }
2553
- /** @nocollapse */ MenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2554
- /** @nocollapse */ MenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuService, providedIn: 'root' });
2555
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuService, decorators: [{
2553
+ /** @nocollapse */ MenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2554
+ /** @nocollapse */ MenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuService, providedIn: 'root' });
2555
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuService, decorators: [{
2556
2556
  type: Injectable,
2557
2557
  args: [{ providedIn: 'root' }]
2558
2558
  }], ctorParameters: function () { return []; } });
@@ -6717,9 +6717,9 @@ class MenuItemService extends GenericService {
6717
6717
  super('menuitem');
6718
6718
  }
6719
6719
  }
6720
- /** @nocollapse */ MenuItemService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuItemService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6721
- /** @nocollapse */ MenuItemService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuItemService, providedIn: 'root' });
6722
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuItemService, decorators: [{
6720
+ /** @nocollapse */ MenuItemService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuItemService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6721
+ /** @nocollapse */ MenuItemService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuItemService, providedIn: 'root' });
6722
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuItemService, decorators: [{
6723
6723
  type: Injectable,
6724
6724
  args: [{ providedIn: 'root' }]
6725
6725
  }], ctorParameters: function () { return []; } });
@@ -6743,9 +6743,9 @@ class MenuResolve {
6743
6743
  return this.menuService.getList(route.data || {}, null, { cache: 'yes' });
6744
6744
  }
6745
6745
  }
6746
- /** @nocollapse */ MenuResolve.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuResolve, deps: [{ token: MenuService }], target: i0.ɵɵFactoryTarget.Injectable });
6747
- /** @nocollapse */ MenuResolve.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuResolve });
6748
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MenuResolve, decorators: [{
6746
+ /** @nocollapse */ MenuResolve.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuResolve, deps: [{ token: MenuService }], target: i0.ɵɵFactoryTarget.Injectable });
6747
+ /** @nocollapse */ MenuResolve.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuResolve });
6748
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MenuResolve, decorators: [{
6749
6749
  type: Injectable
6750
6750
  }], ctorParameters: function () { return [{ type: MenuService }]; } });
6751
6751
  /**
@@ -6775,9 +6775,9 @@ class SubMenuResolve {
6775
6775
  return [];
6776
6776
  }
6777
6777
  }
6778
- /** @nocollapse */ SubMenuResolve.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: SubMenuResolve, deps: [{ token: i1$3.Router }, { token: i1$3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
6779
- /** @nocollapse */ SubMenuResolve.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: SubMenuResolve });
6780
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: SubMenuResolve, decorators: [{
6778
+ /** @nocollapse */ SubMenuResolve.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: SubMenuResolve, deps: [{ token: i1$3.Router }, { token: i1$3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
6779
+ /** @nocollapse */ SubMenuResolve.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: SubMenuResolve });
6780
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: SubMenuResolve, decorators: [{
6781
6781
  type: Injectable
6782
6782
  }], ctorParameters: function () { return [{ type: i1$3.Router }, { type: i1$3.ActivatedRoute }]; } });
6783
6783
 
@@ -6786,16 +6786,16 @@ const DECLARATIONS$5 = [
6786
6786
  ];
6787
6787
  class VdMenuModule {
6788
6788
  }
6789
- /** @nocollapse */ VdMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6790
- /** @nocollapse */ VdMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdMenuModule, declarations: [VdMenuComponent], imports: [CommonModule,
6789
+ /** @nocollapse */ VdMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6790
+ /** @nocollapse */ VdMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdMenuModule, declarations: [VdMenuComponent], imports: [CommonModule,
6791
6791
  RouterModule,
6792
6792
  MatIconModule,
6793
6793
  MatListModule], exports: [VdMenuComponent] });
6794
- /** @nocollapse */ VdMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMenuModule, providers: [MenuService], imports: [CommonModule,
6794
+ /** @nocollapse */ VdMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMenuModule, providers: [MenuService], imports: [CommonModule,
6795
6795
  RouterModule,
6796
6796
  MatIconModule,
6797
6797
  MatListModule] });
6798
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMenuModule, decorators: [{
6798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMenuModule, decorators: [{
6799
6799
  type: NgModule,
6800
6800
  args: [{
6801
6801
  imports: [
@@ -6816,9 +6816,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
6816
6816
 
6817
6817
  class VdDynamicMenuComponent {
6818
6818
  }
6819
- /** @nocollapse */ VdDynamicMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDynamicMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6820
- /** @nocollapse */ VdDynamicMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: { items: "items", data: "data", context: "context" }, viewQueries: [{ propertyName: "matMenu", first: true, predicate: MatMenu, descendants: true }], ngImport: i0, template: "<div layout=\"row\" layout-align=\"start center\" *ngIf=\"items\" flex>\r\n <ng-container *ngFor=\"let menu of items\">\r\n <a mat-icon-button [mat-menu-trigger-for]=\"matMenu\" *ngIf=\"menu?.items?.length && !(menu.hide && menu.hide(data, context))\" [disabled]=\"data?.locked || (menu?.disable && menu?.disable(data, context))\" (click)=\"$event.stopPropagation();\">\r\n <mat-icon fontSet=\"{{menu.iconFontSet}}\" [class]=\"menu.iconClass | func\">{{(menu.icon | func) || 'more_vert'}}</mat-icon>\r\n <span>{{menu.title}}</span>\r\n </a>\r\n <a mat-icon-button *ngIf=\"!menu?.items?.length && !(menu.hide && menu.hide(data, context))\" [disabled]=\"data?.locked || (menu?.disable && menu?.disable(data, context))\" (click)=\"$event.stopPropagation(); menu.event?menu.event(data, context):null\">\r\n <mat-icon fontSet=\"{{menu.iconFontSet}}\" [class]=\"menu.iconClass | func\">{{(menu.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n </a>\r\n <mat-menu x-position=\"before\" #matMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let menuItem of menu?.items\">\r\n <ng-container *ngIf=\"!menuItem.items\">\r\n <a mat-menu-item (click)=\"menuItem.event?menuItem.event(data, context):null\" *ngIf=\"!menuItem.hide || !menuItem.hide(data, context)\" [disabled]=\"menuItem.disable && menuItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuItem.iconClass | func\">{{(menuItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n <ng-container *ngIf=\"menuItem.items\">\r\n <mat-menu x-position=\"before\" #subMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let menuSubItem of menuItem.items\">\r\n <a mat-menu-item (click)=\"menuSubItem.event?menuSubItem.event(data, context):null\" *ngIf=\"!menuSubItem.hide || !menuSubItem.hide(data, context)\" [disabled]=\"menuSubItem.disable && menuSubItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuSubItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuSubItem.iconClass | func\">{{(menuSubItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuSubItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n </mat-menu>\r\n <a mat-menu-item [matMenuTriggerFor]=\"subMenu\" *ngIf=\"!menuItem.hide || !menuItem.hide(data, context)\" [disabled]=\"menuItem.disable && menuItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuItem.iconClass | func\">{{(menuItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </mat-menu>\r\n </ng-container>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: FuncPipe, name: "func" }] });
6821
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDynamicMenuComponent, decorators: [{
6819
+ /** @nocollapse */ VdDynamicMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDynamicMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6820
+ /** @nocollapse */ VdDynamicMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: { items: "items", data: "data", context: "context" }, viewQueries: [{ propertyName: "matMenu", first: true, predicate: MatMenu, descendants: true }], ngImport: i0, template: "<div layout=\"row\" layout-align=\"start center\" *ngIf=\"items\" flex>\r\n <ng-container *ngFor=\"let menu of items\">\r\n <a mat-icon-button [mat-menu-trigger-for]=\"matMenu\" *ngIf=\"menu?.items?.length && !(menu.hide && menu.hide(data, context))\" [disabled]=\"data?.locked || (menu?.disable && menu?.disable(data, context))\" (click)=\"$event.stopPropagation();\">\r\n <mat-icon fontSet=\"{{menu.iconFontSet}}\" [class]=\"menu.iconClass | func\">{{(menu.icon | func) || 'more_vert'}}</mat-icon>\r\n <span>{{menu.title}}</span>\r\n </a>\r\n <a mat-icon-button *ngIf=\"!menu?.items?.length && !(menu.hide && menu.hide(data, context))\" [disabled]=\"data?.locked || (menu?.disable && menu?.disable(data, context))\" (click)=\"$event.stopPropagation(); menu.event?menu.event(data, context):null\">\r\n <mat-icon fontSet=\"{{menu.iconFontSet}}\" [class]=\"menu.iconClass | func\">{{(menu.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n </a>\r\n <mat-menu x-position=\"before\" #matMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let menuItem of menu?.items\">\r\n <ng-container *ngIf=\"!menuItem.items\">\r\n <a mat-menu-item (click)=\"menuItem.event?menuItem.event(data, context):null\" *ngIf=\"!menuItem.hide || !menuItem.hide(data, context)\" [disabled]=\"menuItem.disable && menuItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuItem.iconClass | func\">{{(menuItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n <ng-container *ngIf=\"menuItem.items\">\r\n <mat-menu x-position=\"before\" #subMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let menuSubItem of menuItem.items\">\r\n <a mat-menu-item (click)=\"menuSubItem.event?menuSubItem.event(data, context):null\" *ngIf=\"!menuSubItem.hide || !menuSubItem.hide(data, context)\" [disabled]=\"menuSubItem.disable && menuSubItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuSubItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuSubItem.iconClass | func\">{{(menuSubItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuSubItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n </mat-menu>\r\n <a mat-menu-item [matMenuTriggerFor]=\"subMenu\" *ngIf=\"!menuItem.hide || !menuItem.hide(data, context)\" [disabled]=\"menuItem.disable && menuItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuItem.iconClass | func\">{{(menuItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </mat-menu>\r\n </ng-container>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatIconAnchor, selector: "a[mat-icon-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: FuncPipe, name: "func" }] });
6821
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDynamicMenuComponent, decorators: [{
6822
6822
  type: Component,
6823
6823
  args: [{ selector: 'vd-dynamic-menu', template: "<div layout=\"row\" layout-align=\"start center\" *ngIf=\"items\" flex>\r\n <ng-container *ngFor=\"let menu of items\">\r\n <a mat-icon-button [mat-menu-trigger-for]=\"matMenu\" *ngIf=\"menu?.items?.length && !(menu.hide && menu.hide(data, context))\" [disabled]=\"data?.locked || (menu?.disable && menu?.disable(data, context))\" (click)=\"$event.stopPropagation();\">\r\n <mat-icon fontSet=\"{{menu.iconFontSet}}\" [class]=\"menu.iconClass | func\">{{(menu.icon | func) || 'more_vert'}}</mat-icon>\r\n <span>{{menu.title}}</span>\r\n </a>\r\n <a mat-icon-button *ngIf=\"!menu?.items?.length && !(menu.hide && menu.hide(data, context))\" [disabled]=\"data?.locked || (menu?.disable && menu?.disable(data, context))\" (click)=\"$event.stopPropagation(); menu.event?menu.event(data, context):null\">\r\n <mat-icon fontSet=\"{{menu.iconFontSet}}\" [class]=\"menu.iconClass | func\">{{(menu.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n </a>\r\n <mat-menu x-position=\"before\" #matMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let menuItem of menu?.items\">\r\n <ng-container *ngIf=\"!menuItem.items\">\r\n <a mat-menu-item (click)=\"menuItem.event?menuItem.event(data, context):null\" *ngIf=\"!menuItem.hide || !menuItem.hide(data, context)\" [disabled]=\"menuItem.disable && menuItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuItem.iconClass | func\">{{(menuItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n <ng-container *ngIf=\"menuItem.items\">\r\n <mat-menu x-position=\"before\" #subMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let menuSubItem of menuItem.items\">\r\n <a mat-menu-item (click)=\"menuSubItem.event?menuSubItem.event(data, context):null\" *ngIf=\"!menuSubItem.hide || !menuSubItem.hide(data, context)\" [disabled]=\"menuSubItem.disable && menuSubItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuSubItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuSubItem.iconClass | func\">{{(menuSubItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuSubItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n </mat-menu>\r\n <a mat-menu-item [matMenuTriggerFor]=\"subMenu\" *ngIf=\"!menuItem.hide || !menuItem.hide(data, context)\" [disabled]=\"menuItem.disable && menuItem.disable(data, context)\">\r\n <mat-icon fontSet=\"{{menuItem.iconFontSet || 'material-icons-outlined'}}\" [class]=\"menuItem.iconClass | func\">{{(menuItem.icon | func) || 'radio_button_unchecked'}}</mat-icon>\r\n <span>{{menuItem.title}}</span>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </mat-menu>\r\n </ng-container>\r\n</div>" }]
6824
6824
  }], propDecorators: { matMenu: [{
@@ -6850,11 +6850,11 @@ class VdLayoutCardOverComponent {
6850
6850
  this.color = 'primary';
6851
6851
  }
6852
6852
  }
6853
- /** @nocollapse */ VdLayoutCardOverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutCardOverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6854
- /** @nocollapse */ VdLayoutCardOverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutCardOverComponent, selector: "vd-layout-card-over", inputs: { cardTitle: "cardTitle", cardSubtitle: "cardSubtitle", cardWidth: "cardWidth", color: "color" }, ngImport: i0, template: "<mat-toolbar [color]=\"color\"></mat-toolbar>\r\n<div class=\"vd-layout-card-over-wrapper\">\r\n\t<div class=\"vd-layout-card-over\" [style.max-width.%]=\"cardWidth\" [style.flex]=\"'1 1 ' + cardWidth + '%'\" [style.-ms-flex]=\"'1 1 ' + cardWidth + '%'\"\r\n\t [style.-webkit-box-flex]=\"1\">\r\n\t\t<mat-card>\r\n\t\t\t<mat-card-title *ngIf=\"cardTitle\">{{cardTitle}}</mat-card-title>\r\n\t\t\t<mat-card-subtitle *ngIf=\"cardSubtitle\">{{cardSubtitle}}</mat-card-subtitle>\r\n\t\t\t<mat-divider *ngIf=\"cardTitle || cardSubtitle\"></mat-divider>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</mat-card>\r\n\t\t<ng-content select=\"[vd-after-card]\"></ng-content>\r\n\t</div>\r\n</div>", styles: [":host{position:relative;display:block;z-index:2;width:100%;min-height:100%;height:100%}:host [vd-after-card]{display:block}:host.accordion>.vd-layout-card-over-wrapper>.vd-layout-card-over ::ng-deep>.mat-card{background-color:transparent;box-shadow:none;padding-bottom:24px}:host.tab>.vd-layout-card-over-wrapper{margin:-56px 0}:host mat-expansion-panel .mat-expansion-panel-header{font-size:1.1em}:host mat-expansion-panel .mat-expansion-panel-header[aria-disabled=true]{padding-right:0}:host mat-expansion-panel .mat-expansion-panel-header.enabled[aria-disabled=true]{color:inherit}:host mat-expansion-panel .enabled .mat-expansion-panel-header[aria-disabled=true]{color:inherit}.vd-layout-card-over-wrapper{margin:-64px 0;width:100%;min-height:100%;height:100%}@media (min-width: 960px){.vd-layout-card-over-wrapper{flex-direction:row;box-sizing:border-box;display:flex;align-items:flex-start;align-content:flex-start;justify-content:center}.vd-layout-card-over-wrapper .vd-layout-card-over{max-height:100%;box-sizing:border-box}}@media (max-width: 959px){.vd-layout-card-over-wrapper .vd-layout-card-over{max-width:100%!important}}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i3.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "component", type: i6$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }] });
6855
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutCardOverComponent, decorators: [{
6853
+ /** @nocollapse */ VdLayoutCardOverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutCardOverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6854
+ /** @nocollapse */ VdLayoutCardOverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutCardOverComponent, selector: "vd-layout-card-over", inputs: { cardTitle: "cardTitle", cardSubtitle: "cardSubtitle", cardWidth: "cardWidth", color: "color" }, ngImport: i0, template: "<mat-toolbar [color]=\"color\"></mat-toolbar>\r\n<div class=\"vd-layout-card-over-wrapper\">\r\n\t<div class=\"vd-layout-card-over\" [style.max-width.%]=\"cardWidth\" [style.flex]=\"'1 1 ' + cardWidth + '%'\" [style.-ms-flex]=\"'1 1 ' + cardWidth + '%'\"\r\n\t [style.-webkit-box-flex]=\"1\">\r\n\t\t<mat-card appearance=\"outlined\">\r\n\t\t\t<mat-card-title *ngIf=\"cardTitle\">{{cardTitle}}</mat-card-title>\r\n\t\t\t<mat-card-subtitle *ngIf=\"cardSubtitle\">{{cardSubtitle}}</mat-card-subtitle>\r\n\t\t\t<mat-divider *ngIf=\"cardTitle || cardSubtitle\"></mat-divider>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</mat-card>\r\n\t\t<ng-content select=\"[vd-after-card]\"></ng-content>\r\n\t</div>\r\n</div>", styles: [":host{position:relative;display:block;z-index:2;width:100%;min-height:100%;height:100%}:host [vd-after-card]{display:block}:host.accordion>.vd-layout-card-over-wrapper>.vd-layout-card-over ::ng-deep>.mat-mdc-card{background-color:transparent;box-shadow:none;padding-bottom:24px;border:none}:host.tab>.vd-layout-card-over-wrapper{margin:-56px 0}:host mat-expansion-panel .mat-expansion-panel-header{font-size:1.1em}:host mat-expansion-panel .mat-expansion-panel-header[aria-disabled=true]{padding-right:0}:host mat-expansion-panel .mat-expansion-panel-header.enabled[aria-disabled=true]{color:inherit}:host mat-expansion-panel .enabled .mat-expansion-panel-header[aria-disabled=true]{color:inherit}.vd-layout-card-over-wrapper{margin:-64px 0;width:100%;min-height:100%;height:100%}@media (min-width: 960px){.vd-layout-card-over-wrapper{flex-direction:row;box-sizing:border-box;display:flex;align-items:flex-start;align-content:flex-start;justify-content:center}.vd-layout-card-over-wrapper .vd-layout-card-over{max-height:100%;box-sizing:border-box}}@media (max-width: 959px){.vd-layout-card-over-wrapper .vd-layout-card-over{max-width:100%!important}}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "directive", type: i3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }] });
6855
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutCardOverComponent, decorators: [{
6856
6856
  type: Component,
6857
- args: [{ selector: 'vd-layout-card-over', template: "<mat-toolbar [color]=\"color\"></mat-toolbar>\r\n<div class=\"vd-layout-card-over-wrapper\">\r\n\t<div class=\"vd-layout-card-over\" [style.max-width.%]=\"cardWidth\" [style.flex]=\"'1 1 ' + cardWidth + '%'\" [style.-ms-flex]=\"'1 1 ' + cardWidth + '%'\"\r\n\t [style.-webkit-box-flex]=\"1\">\r\n\t\t<mat-card>\r\n\t\t\t<mat-card-title *ngIf=\"cardTitle\">{{cardTitle}}</mat-card-title>\r\n\t\t\t<mat-card-subtitle *ngIf=\"cardSubtitle\">{{cardSubtitle}}</mat-card-subtitle>\r\n\t\t\t<mat-divider *ngIf=\"cardTitle || cardSubtitle\"></mat-divider>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</mat-card>\r\n\t\t<ng-content select=\"[vd-after-card]\"></ng-content>\r\n\t</div>\r\n</div>", styles: [":host{position:relative;display:block;z-index:2;width:100%;min-height:100%;height:100%}:host [vd-after-card]{display:block}:host.accordion>.vd-layout-card-over-wrapper>.vd-layout-card-over ::ng-deep>.mat-card{background-color:transparent;box-shadow:none;padding-bottom:24px}:host.tab>.vd-layout-card-over-wrapper{margin:-56px 0}:host mat-expansion-panel .mat-expansion-panel-header{font-size:1.1em}:host mat-expansion-panel .mat-expansion-panel-header[aria-disabled=true]{padding-right:0}:host mat-expansion-panel .mat-expansion-panel-header.enabled[aria-disabled=true]{color:inherit}:host mat-expansion-panel .enabled .mat-expansion-panel-header[aria-disabled=true]{color:inherit}.vd-layout-card-over-wrapper{margin:-64px 0;width:100%;min-height:100%;height:100%}@media (min-width: 960px){.vd-layout-card-over-wrapper{flex-direction:row;box-sizing:border-box;display:flex;align-items:flex-start;align-content:flex-start;justify-content:center}.vd-layout-card-over-wrapper .vd-layout-card-over{max-height:100%;box-sizing:border-box}}@media (max-width: 959px){.vd-layout-card-over-wrapper .vd-layout-card-over{max-width:100%!important}}\n"] }]
6857
+ args: [{ selector: 'vd-layout-card-over', template: "<mat-toolbar [color]=\"color\"></mat-toolbar>\r\n<div class=\"vd-layout-card-over-wrapper\">\r\n\t<div class=\"vd-layout-card-over\" [style.max-width.%]=\"cardWidth\" [style.flex]=\"'1 1 ' + cardWidth + '%'\" [style.-ms-flex]=\"'1 1 ' + cardWidth + '%'\"\r\n\t [style.-webkit-box-flex]=\"1\">\r\n\t\t<mat-card appearance=\"outlined\">\r\n\t\t\t<mat-card-title *ngIf=\"cardTitle\">{{cardTitle}}</mat-card-title>\r\n\t\t\t<mat-card-subtitle *ngIf=\"cardSubtitle\">{{cardSubtitle}}</mat-card-subtitle>\r\n\t\t\t<mat-divider *ngIf=\"cardTitle || cardSubtitle\"></mat-divider>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</mat-card>\r\n\t\t<ng-content select=\"[vd-after-card]\"></ng-content>\r\n\t</div>\r\n</div>", styles: [":host{position:relative;display:block;z-index:2;width:100%;min-height:100%;height:100%}:host [vd-after-card]{display:block}:host.accordion>.vd-layout-card-over-wrapper>.vd-layout-card-over ::ng-deep>.mat-mdc-card{background-color:transparent;box-shadow:none;padding-bottom:24px;border:none}:host.tab>.vd-layout-card-over-wrapper{margin:-56px 0}:host mat-expansion-panel .mat-expansion-panel-header{font-size:1.1em}:host mat-expansion-panel .mat-expansion-panel-header[aria-disabled=true]{padding-right:0}:host mat-expansion-panel .mat-expansion-panel-header.enabled[aria-disabled=true]{color:inherit}:host mat-expansion-panel .enabled .mat-expansion-panel-header[aria-disabled=true]{color:inherit}.vd-layout-card-over-wrapper{margin:-64px 0;width:100%;min-height:100%;height:100%}@media (min-width: 960px){.vd-layout-card-over-wrapper{flex-direction:row;box-sizing:border-box;display:flex;align-items:flex-start;align-content:flex-start;justify-content:center}.vd-layout-card-over-wrapper .vd-layout-card-over{max-height:100%;box-sizing:border-box}}@media (max-width: 959px){.vd-layout-card-over-wrapper .vd-layout-card-over{max-width:100%!important}}\n"] }]
6858
6858
  }], propDecorators: { cardTitle: [{
6859
6859
  type: Input
6860
6860
  }], cardSubtitle: [{
@@ -6887,9 +6887,9 @@ class VdLayoutFooterComponent {
6887
6887
  return this._color;
6888
6888
  }
6889
6889
  }
6890
- /** @nocollapse */ VdLayoutFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutFooterComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
6891
- /** @nocollapse */ VdLayoutFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutFooterComponent, selector: "vd-layout-footer,vd-layout-footer-inner", inputs: { color: "color" }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{display:block;padding:10px 16px}\n"] });
6892
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutFooterComponent, decorators: [{
6890
+ /** @nocollapse */ VdLayoutFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutFooterComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
6891
+ /** @nocollapse */ VdLayoutFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutFooterComponent, selector: "vd-layout-footer,vd-layout-footer-inner", inputs: { color: "color" }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{display:block;padding:10px 16px}\n"] });
6892
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutFooterComponent, decorators: [{
6893
6893
  type: Component,
6894
6894
  args: [{ selector: 'vd-layout-footer,vd-layout-footer-inner', template: "<ng-content></ng-content>", styles: [":host{display:block;padding:10px 16px}\n"] }]
6895
6895
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { color: [{
@@ -6987,9 +6987,9 @@ class VdMediaService {
6987
6987
  this._querySources[query].next(matchMedia(query).matches);
6988
6988
  }
6989
6989
  }
6990
- /** @nocollapse */ VdMediaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
6991
- /** @nocollapse */ VdMediaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaService });
6992
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaService, decorators: [{
6990
+ /** @nocollapse */ VdMediaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
6991
+ /** @nocollapse */ VdMediaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaService });
6992
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaService, decorators: [{
6993
6993
  type: Injectable
6994
6994
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
6995
6995
  function MEDIA_PROVIDER_FACTORY(parent, ngZone) {
@@ -7092,11 +7092,11 @@ class VdLayoutManageListComponent {
7092
7092
  */
7093
7093
  close() { return this.sidenav.close(); }
7094
7094
  }
7095
- /** @nocollapse */ VdLayoutManageListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListComponent, deps: [{ token: VdMediaService }], target: i0.ɵɵFactoryTarget.Component });
7096
- /** @nocollapse */ VdLayoutManageListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutManageListComponent, selector: "vd-layout-manage-list", inputs: { title: "title", closable: "closable", menuItems: "menuItems", mode: "mode", sideGt: "sideGt", opened: "opened", openedGt: "openedGt", sidenavWidth: "sidenavWidth", sidenavGtXsWidth: "sidenavGtXsWidth" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container fullscreen class=\"vd-layout-manage-list\">\r\n\t<!-- #region Side nav -->\r\n\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t<!-- #region Nav list toolbar -->\r\n\t\t<mat-toolbar dense *ngIf=\"title\">\r\n\t\t\t<span>{{title}}</span>\r\n\t\t\t<span flex></span>\r\n\t\t\t<button mat-icon-button (click)=\"close()\" *ngIf=\"closable\">\r\n\t\t\t\t<mat-icon>menu_open</mat-icon>\r\n\t\t\t</button>\r\n\t\t</mat-toolbar>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom title toolbar -->\r\n\t\t<ng-content select=\"mat-toolbar[vd-sidenav-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-manage-list-sidenav\" cdkScrollable>\r\n\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-menu\"></ng-content>\r\n\t\t\t<vd-menu [items]=\"menuItems\" *ngIf=\"menuItems\"></vd-menu>\r\n\t\t</div>\r\n\t</mat-sidenav>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Main content -->\r\n\t<div class=\"vd-layout-manage-list-main\">\r\n\t\t<!-- #region Toolbar projection -->\r\n\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t<ng-content select=\"vd-list-toolbar\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Scrollable content -->\r\n\t\t<div class=\"vd-layout-manage-list-content\" cdkScrollable>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Footer content -->\r\n\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</div>\r\n\t<!-- #endregion -->\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host mat-sidenav-container.vd-layout-manage-list{flex:1}:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opened,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opening,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closed,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closing{box-shadow:0 1px 3px #0003}:host .vd-layout-manage-list-sidenav{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-manage-list-main{margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto;flex-direction:column;box-sizing:border-box;display:flex}:host .vd-layout-manage-list-main .vd-layout-manage-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}:host ::ng-deep mat-nav-list a[mat-list-item] .mat-list-item-content{font-size:14px}:host ::ng-deep .mat-toolbar{font-weight:400}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i4$2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4$2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i5$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: VdMenuComponent, selector: "vd-menu", inputs: ["items", "activeExact", "avatar"], outputs: ["click"] }] });
7097
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListComponent, decorators: [{
7095
+ /** @nocollapse */ VdLayoutManageListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListComponent, deps: [{ token: VdMediaService }], target: i0.ɵɵFactoryTarget.Component });
7096
+ /** @nocollapse */ VdLayoutManageListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutManageListComponent, selector: "vd-layout-manage-list", inputs: { title: "title", closable: "closable", menuItems: "menuItems", mode: "mode", sideGt: "sideGt", opened: "opened", openedGt: "openedGt", sidenavWidth: "sidenavWidth", sidenavGtXsWidth: "sidenavGtXsWidth" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container fullscreen class=\"vd-layout-manage-list\">\r\n\t<!-- #region Side nav -->\r\n\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t<!-- #region Nav list toolbar -->\r\n\t\t<mat-toolbar dense *ngIf=\"title\">\r\n\t\t\t<span>{{title}}</span>\r\n\t\t\t<span flex></span>\r\n\t\t\t<button mat-icon-button (click)=\"close()\" *ngIf=\"closable\">\r\n\t\t\t\t<mat-icon>menu_open</mat-icon>\r\n\t\t\t</button>\r\n\t\t</mat-toolbar>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom title toolbar -->\r\n\t\t<ng-content select=\"mat-toolbar[vd-sidenav-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-manage-list-sidenav\" cdkScrollable>\r\n\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-menu\"></ng-content>\r\n\t\t\t<vd-menu [items]=\"menuItems\" *ngIf=\"menuItems\"></vd-menu>\r\n\t\t</div>\r\n\t</mat-sidenav>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Main content -->\r\n\t<div class=\"vd-layout-manage-list-main\">\r\n\t\t<!-- #region Toolbar projection -->\r\n\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t<ng-content select=\"vd-list-toolbar\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Scrollable content -->\r\n\t\t<div class=\"vd-layout-manage-list-content\" cdkScrollable>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Footer content -->\r\n\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</div>\r\n\t<!-- #endregion -->\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host mat-sidenav-container.vd-layout-manage-list{flex:1}:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opened,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opening,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closed,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closing{box-shadow:0 1px 3px #0003}:host .vd-layout-manage-list-sidenav{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-manage-list-main{margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto;flex-direction:column;box-sizing:border-box;display:flex}:host .vd-layout-manage-list-main .vd-layout-manage-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}:host ::ng-deep .mat-toolbar{font-weight:400}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i4$2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4$2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i5$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: VdMenuComponent, selector: "vd-menu", inputs: ["items", "activeExact", "avatar"], outputs: ["click"] }] });
7097
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListComponent, decorators: [{
7098
7098
  type: Component,
7099
- args: [{ selector: 'vd-layout-manage-list', template: "<mat-sidenav-container fullscreen class=\"vd-layout-manage-list\">\r\n\t<!-- #region Side nav -->\r\n\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t<!-- #region Nav list toolbar -->\r\n\t\t<mat-toolbar dense *ngIf=\"title\">\r\n\t\t\t<span>{{title}}</span>\r\n\t\t\t<span flex></span>\r\n\t\t\t<button mat-icon-button (click)=\"close()\" *ngIf=\"closable\">\r\n\t\t\t\t<mat-icon>menu_open</mat-icon>\r\n\t\t\t</button>\r\n\t\t</mat-toolbar>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom title toolbar -->\r\n\t\t<ng-content select=\"mat-toolbar[vd-sidenav-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-manage-list-sidenav\" cdkScrollable>\r\n\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-menu\"></ng-content>\r\n\t\t\t<vd-menu [items]=\"menuItems\" *ngIf=\"menuItems\"></vd-menu>\r\n\t\t</div>\r\n\t</mat-sidenav>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Main content -->\r\n\t<div class=\"vd-layout-manage-list-main\">\r\n\t\t<!-- #region Toolbar projection -->\r\n\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t<ng-content select=\"vd-list-toolbar\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Scrollable content -->\r\n\t\t<div class=\"vd-layout-manage-list-content\" cdkScrollable>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Footer content -->\r\n\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</div>\r\n\t<!-- #endregion -->\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host mat-sidenav-container.vd-layout-manage-list{flex:1}:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opened,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opening,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closed,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closing{box-shadow:0 1px 3px #0003}:host .vd-layout-manage-list-sidenav{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-manage-list-main{margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto;flex-direction:column;box-sizing:border-box;display:flex}:host .vd-layout-manage-list-main .vd-layout-manage-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}:host ::ng-deep mat-nav-list a[mat-list-item] .mat-list-item-content{font-size:14px}:host ::ng-deep .mat-toolbar{font-weight:400}\n"] }]
7099
+ args: [{ selector: 'vd-layout-manage-list', template: "<mat-sidenav-container fullscreen class=\"vd-layout-manage-list\">\r\n\t<!-- #region Side nav -->\r\n\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t<!-- #region Nav list toolbar -->\r\n\t\t<mat-toolbar dense *ngIf=\"title\">\r\n\t\t\t<span>{{title}}</span>\r\n\t\t\t<span flex></span>\r\n\t\t\t<button mat-icon-button (click)=\"close()\" *ngIf=\"closable\">\r\n\t\t\t\t<mat-icon>menu_open</mat-icon>\r\n\t\t\t</button>\r\n\t\t</mat-toolbar>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom title toolbar -->\r\n\t\t<ng-content select=\"mat-toolbar[vd-sidenav-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-manage-list-sidenav\" cdkScrollable>\r\n\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-menu\"></ng-content>\r\n\t\t\t<vd-menu [items]=\"menuItems\" *ngIf=\"menuItems\"></vd-menu>\r\n\t\t</div>\r\n\t</mat-sidenav>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Main content -->\r\n\t<div class=\"vd-layout-manage-list-main\">\r\n\t\t<!-- #region Toolbar projection -->\r\n\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t<ng-content select=\"vd-list-toolbar\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Scrollable content -->\r\n\t\t<div class=\"vd-layout-manage-list-content\" cdkScrollable>\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Footer content -->\r\n\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</div>\r\n\t<!-- #endregion -->\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host mat-sidenav-container.vd-layout-manage-list{flex:1}:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opened,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-opening,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closed,:host mat-sidenav-container.vd-layout-manage-list>mat-sidenav.mat-drawer-closing{box-shadow:0 1px 3px #0003}:host .vd-layout-manage-list-sidenav{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-manage-list-main{margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto;flex-direction:column;box-sizing:border-box;display:flex}:host .vd-layout-manage-list-main .vd-layout-manage-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-manage-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}:host ::ng-deep .mat-toolbar{font-weight:400}\n"] }]
7100
7100
  }], ctorParameters: function () { return [{ type: VdMediaService }]; }, propDecorators: { sidenav: [{
7101
7101
  type: ViewChild,
7102
7102
  args: [MatSidenav, { static: true }]
@@ -7177,9 +7177,9 @@ class LayoutToggle {
7177
7177
  }
7178
7178
  }
7179
7179
  }
7180
- /** @nocollapse */ LayoutToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LayoutToggle, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
7181
- /** @nocollapse */ LayoutToggle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: LayoutToggle, inputs: { hideWhenOpened: "hideWhenOpened" }, host: { listeners: { "click": "clickListener($event)" } }, ngImport: i0 });
7182
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LayoutToggle, decorators: [{
7180
+ /** @nocollapse */ LayoutToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LayoutToggle, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
7181
+ /** @nocollapse */ LayoutToggle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: LayoutToggle, inputs: { hideWhenOpened: "hideWhenOpened" }, host: { listeners: { "click": "clickListener($event)" } }, ngImport: i0 });
7182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LayoutToggle, decorators: [{
7183
7183
  type: Directive
7184
7184
  }], ctorParameters: function () { return [{ type: undefined }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { hideWhenOpened: [{
7185
7185
  type: Input,
@@ -7212,9 +7212,9 @@ class VdLayoutManageListToggleDirective extends LayoutToggle {
7212
7212
  this._layout.toggle();
7213
7213
  }
7214
7214
  }
7215
- /** @nocollapse */ VdLayoutManageListToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListToggleDirective, deps: [{ token: forwardRef(() => VdLayoutManageListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7216
- /** @nocollapse */ VdLayoutManageListToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutManageListToggleDirective, selector: "[vdLayoutManageListToggle]", inputs: { vdLayoutManageListToggle: "vdLayoutManageListToggle" }, usesInheritance: true, ngImport: i0 });
7217
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListToggleDirective, decorators: [{
7215
+ /** @nocollapse */ VdLayoutManageListToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListToggleDirective, deps: [{ token: forwardRef(() => VdLayoutManageListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7216
+ /** @nocollapse */ VdLayoutManageListToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutManageListToggleDirective, selector: "[vdLayoutManageListToggle]", inputs: { vdLayoutManageListToggle: "vdLayoutManageListToggle" }, usesInheritance: true, ngImport: i0 });
7217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListToggleDirective, decorators: [{
7218
7218
  type: Directive,
7219
7219
  args: [{ selector: '[vdLayoutManageListToggle]' }]
7220
7220
  }], ctorParameters: function () {
@@ -7248,9 +7248,9 @@ class VdLayoutManageListCloseDirective extends LayoutToggle {
7248
7248
  this._layout.close();
7249
7249
  }
7250
7250
  }
7251
- /** @nocollapse */ VdLayoutManageListCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListCloseDirective, deps: [{ token: forwardRef(() => VdLayoutManageListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7252
- /** @nocollapse */ VdLayoutManageListCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutManageListCloseDirective, selector: "[vdLayoutManageListClose]", inputs: { vdLayoutManageListClose: "vdLayoutManageListClose" }, usesInheritance: true, ngImport: i0 });
7253
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListCloseDirective, decorators: [{
7251
+ /** @nocollapse */ VdLayoutManageListCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListCloseDirective, deps: [{ token: forwardRef(() => VdLayoutManageListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7252
+ /** @nocollapse */ VdLayoutManageListCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutManageListCloseDirective, selector: "[vdLayoutManageListClose]", inputs: { vdLayoutManageListClose: "vdLayoutManageListClose" }, usesInheritance: true, ngImport: i0 });
7253
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListCloseDirective, decorators: [{
7254
7254
  type: Directive,
7255
7255
  args: [{ selector: '[vdLayoutManageListClose]' }]
7256
7256
  }], ctorParameters: function () {
@@ -7284,9 +7284,9 @@ class VdLayoutManageListOpenDirective extends LayoutToggle {
7284
7284
  this._layout.open();
7285
7285
  }
7286
7286
  }
7287
- /** @nocollapse */ VdLayoutManageListOpenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListOpenDirective, deps: [{ token: forwardRef(() => VdLayoutManageListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7288
- /** @nocollapse */ VdLayoutManageListOpenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutManageListOpenDirective, selector: "[vdLayoutManageListOpen]", inputs: { vdLayoutManageListOpen: "vdLayoutManageListOpen" }, usesInheritance: true, ngImport: i0 });
7289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutManageListOpenDirective, decorators: [{
7287
+ /** @nocollapse */ VdLayoutManageListOpenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListOpenDirective, deps: [{ token: forwardRef(() => VdLayoutManageListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7288
+ /** @nocollapse */ VdLayoutManageListOpenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutManageListOpenDirective, selector: "[vdLayoutManageListOpen]", inputs: { vdLayoutManageListOpen: "vdLayoutManageListOpen" }, usesInheritance: true, ngImport: i0 });
7289
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutManageListOpenDirective, decorators: [{
7290
7290
  type: Directive,
7291
7291
  args: [{ selector: '[vdLayoutManageListOpen]' }]
7292
7292
  }], ctorParameters: function () {
@@ -7372,9 +7372,9 @@ class VdLayoutNavListComponent {
7372
7372
  return this.sidenav.close();
7373
7373
  }
7374
7374
  }
7375
- /** @nocollapse */ VdLayoutNavListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListComponent, deps: [{ token: i1$3.Router, optional: true }], target: i0.ɵɵFactoryTarget.Component });
7376
- /** @nocollapse */ VdLayoutNavListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutNavListComponent, selector: "vd-layout-nav-list", inputs: { toolbarTitle: "toolbarTitle", icon: "icon", logo: "logo", color: "color", mode: "mode", opened: "opened", sidenavWidth: "sidenavWidth", navigationRoute: "navigationRoute" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<div class=\"vd-layout-nav-list-wrapper\">\r\n\t<mat-sidenav-container fullscreen class=\"vd-layout-nav-list\">\r\n\t\t<!-- #region Sidenav -->\r\n\t\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t\t<!-- #region Sidenav toolbar -->\r\n\t\t\t<mat-toolbar [color]=\"color\">\r\n\t\t\t\t<ng-content select=\"[vd-menu-button]\"></ng-content>\r\n\t\t\t\t<span *ngIf=\"icon || logo || toolbarTitle\" class=\"vd-layout-nav-list-toolbar-content\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\">\r\n\t\t\t\t\t<mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\r\n\t\t\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t\t\t<span *ngIf=\"toolbarTitle\">{{toolbarTitle}}</span>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-content select=\"[vd-sidenav-toolbar-content]\"></ng-content>\r\n\t\t\t</mat-toolbar>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Sidenav content -->\r\n\t\t\t<div class=\"vd-layout-nav-list-content\" cdkScrollable>\r\n\t\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t\t<!-- #endregion -->\r\n\t\t</mat-sidenav>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-nav-list-main\">\r\n\t\t\t<!-- #region Toolbar projection -->\r\n\t\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-toolbar-content\"></ng-content>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Scrollable content -->\r\n\t\t\t<div class=\"vd-layout-nav-list-content\" cdkScrollable>\r\n\t\t\t\t<ng-content></ng-content>\r\n\t\t\t</div>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Footer content -->\r\n\t\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t\t<!-- #endregion -->\r\n\t\t</div>\r\n\t</mat-sidenav-container>\r\n</div>\r\n<ng-content select=\"vd-layout-footer\"></ng-content>", styles: [":host{margin:0;width:100%;min-height:100%;height:100%;overflow:hidden;flex-direction:column;box-sizing:border-box;display:flex;flex:1}:host .vd-layout-nav-list-wrapper{flex-direction:column;box-sizing:border-box;display:flex;flex:1;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-content{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-main{flex-direction:column;box-sizing:border-box;display:flex;margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-main .vd-layout-nav-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list{flex:1}:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-opened,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-opening,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-closed,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-closing{box-shadow:none}:host ::ng-deep mat-sidenav-container.vd-layout-nav-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-nav-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i4$2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4$2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i5$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
7377
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListComponent, decorators: [{
7375
+ /** @nocollapse */ VdLayoutNavListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListComponent, deps: [{ token: i1$3.Router, optional: true }], target: i0.ɵɵFactoryTarget.Component });
7376
+ /** @nocollapse */ VdLayoutNavListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutNavListComponent, selector: "vd-layout-nav-list", inputs: { toolbarTitle: "toolbarTitle", icon: "icon", logo: "logo", color: "color", mode: "mode", opened: "opened", sidenavWidth: "sidenavWidth", navigationRoute: "navigationRoute" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<div class=\"vd-layout-nav-list-wrapper\">\r\n\t<mat-sidenav-container fullscreen class=\"vd-layout-nav-list\">\r\n\t\t<!-- #region Sidenav -->\r\n\t\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t\t<!-- #region Sidenav toolbar -->\r\n\t\t\t<mat-toolbar [color]=\"color\">\r\n\t\t\t\t<ng-content select=\"[vd-menu-button]\"></ng-content>\r\n\t\t\t\t<span *ngIf=\"icon || logo || toolbarTitle\" class=\"vd-layout-nav-list-toolbar-content\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\">\r\n\t\t\t\t\t<mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\r\n\t\t\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t\t\t<span *ngIf=\"toolbarTitle\">{{toolbarTitle}}</span>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-content select=\"[vd-sidenav-toolbar-content]\"></ng-content>\r\n\t\t\t</mat-toolbar>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Sidenav content -->\r\n\t\t\t<div class=\"vd-layout-nav-list-content\" cdkScrollable>\r\n\t\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t\t<!-- #endregion -->\r\n\t\t</mat-sidenav>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-nav-list-main\">\r\n\t\t\t<!-- #region Toolbar projection -->\r\n\t\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-toolbar-content\"></ng-content>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Scrollable content -->\r\n\t\t\t<div class=\"vd-layout-nav-list-content\" cdkScrollable>\r\n\t\t\t\t<ng-content></ng-content>\r\n\t\t\t</div>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Footer content -->\r\n\t\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t\t<!-- #endregion -->\r\n\t\t</div>\r\n\t</mat-sidenav-container>\r\n</div>\r\n<ng-content select=\"vd-layout-footer\"></ng-content>", styles: [":host{margin:0;width:100%;min-height:100%;height:100%;overflow:hidden;flex-direction:column;box-sizing:border-box;display:flex;flex:1}:host .vd-layout-nav-list-wrapper{flex-direction:column;box-sizing:border-box;display:flex;flex:1;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-content{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-main{flex-direction:column;box-sizing:border-box;display:flex;margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-main .vd-layout-nav-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list{flex:1}:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-opened,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-opening,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-closed,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-closing{box-shadow:none}:host ::ng-deep mat-sidenav-container.vd-layout-nav-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-nav-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i4$2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4$2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i5$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
7377
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListComponent, decorators: [{
7378
7378
  type: Component,
7379
7379
  args: [{ selector: 'vd-layout-nav-list', template: "<div class=\"vd-layout-nav-list-wrapper\">\r\n\t<mat-sidenav-container fullscreen class=\"vd-layout-nav-list\">\r\n\t\t<!-- #region Sidenav -->\r\n\t\t<mat-sidenav #sidenav position=\"start\" [mode]=\"mode\" [opened]=\"opened\" [disableClose]=\"disableClose\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\">\r\n\t\t\t<!-- #region Sidenav toolbar -->\r\n\t\t\t<mat-toolbar [color]=\"color\">\r\n\t\t\t\t<ng-content select=\"[vd-menu-button]\"></ng-content>\r\n\t\t\t\t<span *ngIf=\"icon || logo || toolbarTitle\" class=\"vd-layout-nav-list-toolbar-content\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\">\r\n\t\t\t\t\t<mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\r\n\t\t\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t\t\t<span *ngIf=\"toolbarTitle\">{{toolbarTitle}}</span>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-content select=\"[vd-sidenav-toolbar-content]\"></ng-content>\r\n\t\t\t</mat-toolbar>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Sidenav content -->\r\n\t\t\t<div class=\"vd-layout-nav-list-content\" cdkScrollable>\r\n\t\t\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t\t<!-- #endregion -->\r\n\t\t</mat-sidenav>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<div class=\"vd-layout-nav-list-main\">\r\n\t\t\t<!-- #region Toolbar projection -->\r\n\t\t\t<ng-content select=\"mat-toolbar\"></ng-content>\r\n\t\t\t<ng-content select=\"vd-toolbar-content\"></ng-content>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Scrollable content -->\r\n\t\t\t<div class=\"vd-layout-nav-list-content\" cdkScrollable>\r\n\t\t\t\t<ng-content></ng-content>\r\n\t\t\t</div>\r\n\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t<!-- #region Footer content -->\r\n\t\t\t<ng-content select=\"vd-layout-footer-inner\"></ng-content>\r\n\t\t\t<!-- #endregion -->\r\n\t\t</div>\r\n\t</mat-sidenav-container>\r\n</div>\r\n<ng-content select=\"vd-layout-footer\"></ng-content>", styles: [":host{margin:0;width:100%;min-height:100%;height:100%;overflow:hidden;flex-direction:column;box-sizing:border-box;display:flex;flex:1}:host .vd-layout-nav-list-wrapper{flex-direction:column;box-sizing:border-box;display:flex;flex:1;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-content{text-align:start;flex:1;display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-main{flex-direction:column;box-sizing:border-box;display:flex;margin:0;width:100%;min-height:100%;height:100%;position:relative;overflow:auto}:host .vd-layout-nav-list-wrapper .vd-layout-nav-list-main .vd-layout-nav-list-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list{flex:1}:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-opened,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-opening,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-closed,:host .vd-layout-nav-list-wrapper mat-sidenav-container.vd-layout-nav-list>mat-sidenav.mat-drawer-closing{box-shadow:none}:host ::ng-deep mat-sidenav-container.vd-layout-nav-list>.mat-drawer-content{flex-grow:1}:host ::ng-deep mat-sidenav-container.vd-layout-nav-list>mat-sidenav{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;box-sizing:border-box;display:flex;flex-direction:column}\n"] }]
7380
7380
  }], ctorParameters: function () {
@@ -7423,9 +7423,9 @@ class VdLayoutNavListToggleDirective extends LayoutToggle {
7423
7423
  this._layout.toggle();
7424
7424
  }
7425
7425
  }
7426
- /** @nocollapse */ VdLayoutNavListToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListToggleDirective, deps: [{ token: forwardRef(() => VdLayoutNavListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7427
- /** @nocollapse */ VdLayoutNavListToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutNavListToggleDirective, selector: "[vdLayoutNavListToggle]", inputs: { vdLayoutNavListToggle: "vdLayoutNavListToggle" }, usesInheritance: true, ngImport: i0 });
7428
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListToggleDirective, decorators: [{
7426
+ /** @nocollapse */ VdLayoutNavListToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListToggleDirective, deps: [{ token: forwardRef(() => VdLayoutNavListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7427
+ /** @nocollapse */ VdLayoutNavListToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutNavListToggleDirective, selector: "[vdLayoutNavListToggle]", inputs: { vdLayoutNavListToggle: "vdLayoutNavListToggle" }, usesInheritance: true, ngImport: i0 });
7428
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListToggleDirective, decorators: [{
7429
7429
  type: Directive,
7430
7430
  args: [{ selector: '[vdLayoutNavListToggle]' }]
7431
7431
  }], ctorParameters: function () {
@@ -7458,9 +7458,9 @@ class VdLayoutNavListCloseDirective extends LayoutToggle {
7458
7458
  this._layout.close();
7459
7459
  }
7460
7460
  }
7461
- /** @nocollapse */ VdLayoutNavListCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListCloseDirective, deps: [{ token: forwardRef(() => VdLayoutNavListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7462
- /** @nocollapse */ VdLayoutNavListCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutNavListCloseDirective, selector: "[vdLayoutNavListClose]", inputs: { vdLayoutNavListClose: "vdLayoutNavListClose" }, usesInheritance: true, ngImport: i0 });
7463
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListCloseDirective, decorators: [{
7461
+ /** @nocollapse */ VdLayoutNavListCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListCloseDirective, deps: [{ token: forwardRef(() => VdLayoutNavListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7462
+ /** @nocollapse */ VdLayoutNavListCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutNavListCloseDirective, selector: "[vdLayoutNavListClose]", inputs: { vdLayoutNavListClose: "vdLayoutNavListClose" }, usesInheritance: true, ngImport: i0 });
7463
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListCloseDirective, decorators: [{
7464
7464
  type: Directive,
7465
7465
  args: [{ selector: '[vdLayoutNavListClose]' }]
7466
7466
  }], ctorParameters: function () {
@@ -7493,9 +7493,9 @@ class VdLayoutNavListOpenDirective extends LayoutToggle {
7493
7493
  this._layout.open();
7494
7494
  }
7495
7495
  }
7496
- /** @nocollapse */ VdLayoutNavListOpenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListOpenDirective, deps: [{ token: forwardRef(() => VdLayoutNavListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7497
- /** @nocollapse */ VdLayoutNavListOpenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutNavListOpenDirective, selector: "[vdLayoutNavListOpen]", inputs: { vdLayoutNavListOpen: "vdLayoutNavListOpen" }, usesInheritance: true, ngImport: i0 });
7498
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavListOpenDirective, decorators: [{
7496
+ /** @nocollapse */ VdLayoutNavListOpenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListOpenDirective, deps: [{ token: forwardRef(() => VdLayoutNavListComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7497
+ /** @nocollapse */ VdLayoutNavListOpenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutNavListOpenDirective, selector: "[vdLayoutNavListOpen]", inputs: { vdLayoutNavListOpen: "vdLayoutNavListOpen" }, usesInheritance: true, ngImport: i0 });
7498
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavListOpenDirective, decorators: [{
7499
7499
  type: Directive,
7500
7500
  args: [{ selector: '[vdLayoutNavListOpen]' }]
7501
7501
  }], ctorParameters: function () {
@@ -7567,9 +7567,9 @@ class VdLayoutComponent {
7567
7567
  return this.sidenav.close();
7568
7568
  }
7569
7569
  }
7570
- /** @nocollapse */ VdLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7571
- /** @nocollapse */ VdLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutComponent, selector: "vd-layout", inputs: { mode: "mode", opened: "opened", sidenavWidth: "sidenavWidth" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container fullscreen>\r\n\t<mat-sidenav #sidenav class=\"vd-layout-sidenav\" [mode]=\"mode\" [opened]=\"opened\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\"\r\n\t [disableClose]=\"disableClose\">\r\n\t\t<ng-content select=\"vd-navigation-drawer\"></ng-content>\r\n\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t</mat-sidenav>\r\n\t<ng-content></ng-content>\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host ::ng-deep>mat-sidenav-container>mat-sidenav{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: i4$2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4$2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }] });
7572
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutComponent, decorators: [{
7570
+ /** @nocollapse */ VdLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7571
+ /** @nocollapse */ VdLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutComponent, selector: "vd-layout", inputs: { mode: "mode", opened: "opened", sidenavWidth: "sidenavWidth" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container fullscreen>\r\n\t<mat-sidenav #sidenav class=\"vd-layout-sidenav\" [mode]=\"mode\" [opened]=\"opened\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\"\r\n\t [disableClose]=\"disableClose\">\r\n\t\t<ng-content select=\"vd-navigation-drawer\"></ng-content>\r\n\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t</mat-sidenav>\r\n\t<ng-content></ng-content>\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host ::ng-deep>mat-sidenav-container>mat-sidenav{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: i4$2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4$2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }] });
7572
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutComponent, decorators: [{
7573
7573
  type: Component,
7574
7574
  args: [{ selector: 'vd-layout', template: "<mat-sidenav-container fullscreen>\r\n\t<mat-sidenav #sidenav class=\"vd-layout-sidenav\" [mode]=\"mode\" [opened]=\"opened\" [style.max-width]=\"sidenavWidth\" [style.min-width]=\"sidenavWidth\"\r\n\t [disableClose]=\"disableClose\">\r\n\t\t<ng-content select=\"vd-navigation-drawer\"></ng-content>\r\n\t\t<ng-content select=\"[vd-sidenav-content]\"></ng-content>\r\n\t</mat-sidenav>\r\n\t<ng-content></ng-content>\r\n</mat-sidenav-container>", styles: [":host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host ::ng-deep>mat-sidenav-container>mat-sidenav{display:flex;flex-direction:column}\n"] }]
7575
7575
  }], propDecorators: { sidenav: [{
@@ -7597,9 +7597,9 @@ class VdLayoutToggleDirective extends LayoutToggle {
7597
7597
  this._layout.toggle();
7598
7598
  }
7599
7599
  }
7600
- /** @nocollapse */ VdLayoutToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutToggleDirective, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7601
- /** @nocollapse */ VdLayoutToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutToggleDirective, selector: "[vdLayoutToggle]", inputs: { vdLayoutToggle: "vdLayoutToggle" }, usesInheritance: true, ngImport: i0 });
7602
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutToggleDirective, decorators: [{
7600
+ /** @nocollapse */ VdLayoutToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutToggleDirective, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7601
+ /** @nocollapse */ VdLayoutToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutToggleDirective, selector: "[vdLayoutToggle]", inputs: { vdLayoutToggle: "vdLayoutToggle" }, usesInheritance: true, ngImport: i0 });
7602
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutToggleDirective, decorators: [{
7603
7603
  type: Directive,
7604
7604
  args: [{
7605
7605
  selector: '[vdLayoutToggle]',
@@ -7624,9 +7624,9 @@ class VdLayoutCloseDirective extends LayoutToggle {
7624
7624
  this._layout.close();
7625
7625
  }
7626
7626
  }
7627
- /** @nocollapse */ VdLayoutCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutCloseDirective, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7628
- /** @nocollapse */ VdLayoutCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutCloseDirective, selector: "[vdLayoutClose]", inputs: { vdLayoutClose: "vdLayoutClose" }, usesInheritance: true, ngImport: i0 });
7629
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutCloseDirective, decorators: [{
7627
+ /** @nocollapse */ VdLayoutCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutCloseDirective, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7628
+ /** @nocollapse */ VdLayoutCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutCloseDirective, selector: "[vdLayoutClose]", inputs: { vdLayoutClose: "vdLayoutClose" }, usesInheritance: true, ngImport: i0 });
7629
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutCloseDirective, decorators: [{
7630
7630
  type: Directive,
7631
7631
  args: [{
7632
7632
  selector: '[vdLayoutClose]',
@@ -7651,9 +7651,9 @@ class VdLayoutOpenDirective extends LayoutToggle {
7651
7651
  this._layout.open();
7652
7652
  }
7653
7653
  }
7654
- /** @nocollapse */ VdLayoutOpenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutOpenDirective, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7655
- /** @nocollapse */ VdLayoutOpenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutOpenDirective, selector: "[vdLayoutOpen]", inputs: { vdLayoutClose: ["vdLayoutOpen", "vdLayoutClose"] }, usesInheritance: true, ngImport: i0 });
7656
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutOpenDirective, decorators: [{
7654
+ /** @nocollapse */ VdLayoutOpenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutOpenDirective, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7655
+ /** @nocollapse */ VdLayoutOpenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutOpenDirective, selector: "[vdLayoutOpen]", inputs: { vdLayoutClose: ["vdLayoutOpen", "vdLayoutClose"] }, usesInheritance: true, ngImport: i0 });
7656
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutOpenDirective, decorators: [{
7657
7657
  type: Directive,
7658
7658
  args: [{
7659
7659
  selector: '[vdLayoutOpen]',
@@ -7720,9 +7720,9 @@ class VdLayoutNavComponent {
7720
7720
  }
7721
7721
  }
7722
7722
  }
7723
- /** @nocollapse */ VdLayoutNavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavComponent, deps: [{ token: i1$3.Router, optional: true }, { token: i1$3.ActivatedRoute, optional: true }], target: i0.ɵɵFactoryTarget.Component });
7724
- /** @nocollapse */ VdLayoutNavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdLayoutNavComponent, selector: "vd-layout-nav", inputs: { toolbarTitle: "toolbarTitle", editMode: "editMode", actions: "actions", data: "data", context: "context", icon: "icon", logo: "logo", color: "color", hideToggle: "hideToggle", backNavigationRoute: "backNavigationRoute", navigationRoute: "navigationRoute" }, outputs: { reload: "reload" }, ngImport: i0, template: "<div class=\"vd-layout-nav-wrapper\">\r\n\t<mat-toolbar [color]=\"color\">\r\n\t\t<!-- #region Toggle buton -->\r\n\t\t<button mat-icon-button vd-menu-button [vdLayoutToggle]=\"true\" *ngIf=\"!hideToggle\">\r\n\t\t\t<mat-icon>menu</mat-icon>\r\n\t\t</button>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Back button -->\r\n\t\t<button mat-icon-button vd-menu-button *ngIf=\"backNavigationRouteEnabled\" (click)=\"handleBackNavigationClick()\">\r\n\t\t\t<mat-icon>arrow_back</mat-icon>\r\n\t\t</button>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom buttons -->\r\n\t\t<ng-content select=\"[vd-menu-button]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Logo with home link -->\r\n\t\t<span *ngIf=\"icon || logo || toolbarTitle\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\" class=\"vd-layout-nav-toolbar-content\">\r\n\t\t\t<mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\r\n\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t<span *ngIf=\"toolbarTitle\">{{toolbarTitle}}</span>&nbsp;\r\n\t\t\t<span i18n=\"@@add\" *ngIf=\"editMode == false\">Add</span>\r\n\t\t\t<span i18n=\"@@edit\" *ngIf=\"editMode == true\">Edit</span>\r\n\t\t</span>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom content -->\r\n\t\t<ng-content select=\"[vd-toolbar-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<span flex></span>\r\n\r\n\t\t<!-- #region Actions -->\r\n\t\t<vd-dynamic-menu *ngIf=\"editMode==true\" [items]=\"actions\" [data]=\"data\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t<!-- #endregion-->\r\n\r\n\t\t<!-- #region Custom right content -->\r\n\t\t<ng-content select=\"[vd-toolbar-content-right]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</mat-toolbar>\r\n\t<div class=\"vd-layout-nav-content\" cdkScrollable>\r\n\t\t<ng-content></ng-content>\r\n\t</div>\r\n\t<ng-content select=\"vd-layout-footer\"></ng-content>\r\n</div>", styles: [".vd-menu-button{margin-left:0}::ng-deep [dir=rtl] .vd-menu-button{margin-right:0;margin-left:6px}:host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host .vd-layout-nav-wrapper{flex-direction:column;box-sizing:border-box;display:flex;margin:0;width:100%;min-height:100%;height:100%}:host .vd-layout-nav-wrapper .vd-layout-nav-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host .vd-layout-nav-wrapper .vd-layout-nav-content{flex-direction:column;box-sizing:border-box;display:flex;flex:1;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i5$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: VdLayoutToggleDirective, selector: "[vdLayoutToggle]", inputs: ["vdLayoutToggle"] }, { kind: "component", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: ["items", "data", "context"] }] });
7725
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutNavComponent, decorators: [{
7723
+ /** @nocollapse */ VdLayoutNavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavComponent, deps: [{ token: i1$3.Router, optional: true }, { token: i1$3.ActivatedRoute, optional: true }], target: i0.ɵɵFactoryTarget.Component });
7724
+ /** @nocollapse */ VdLayoutNavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdLayoutNavComponent, selector: "vd-layout-nav", inputs: { toolbarTitle: "toolbarTitle", editMode: "editMode", actions: "actions", data: "data", context: "context", icon: "icon", logo: "logo", color: "color", hideToggle: "hideToggle", backNavigationRoute: "backNavigationRoute", navigationRoute: "navigationRoute" }, outputs: { reload: "reload" }, ngImport: i0, template: "<div class=\"vd-layout-nav-wrapper\">\r\n\t<mat-toolbar [color]=\"color\">\r\n\t\t<!-- #region Toggle buton -->\r\n\t\t<button mat-icon-button vd-menu-button [vdLayoutToggle]=\"true\" *ngIf=\"!hideToggle\">\r\n\t\t\t<mat-icon>menu</mat-icon>\r\n\t\t</button>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Back button -->\r\n\t\t<button mat-icon-button vd-menu-button *ngIf=\"backNavigationRouteEnabled\" (click)=\"handleBackNavigationClick()\">\r\n\t\t\t<mat-icon>arrow_back</mat-icon>\r\n\t\t</button>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom buttons -->\r\n\t\t<ng-content select=\"[vd-menu-button]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Logo with home link -->\r\n\t\t<span *ngIf=\"icon || logo || toolbarTitle\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\" class=\"vd-layout-nav-toolbar-content\">\r\n\t\t\t<mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\r\n\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t<span *ngIf=\"toolbarTitle\">{{toolbarTitle}}</span>&nbsp;\r\n\t\t\t<span i18n=\"@@add\" *ngIf=\"editMode == false\">Add</span>\r\n\t\t\t<span i18n=\"@@edit\" *ngIf=\"editMode == true\">Edit</span>\r\n\t\t</span>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom content -->\r\n\t\t<ng-content select=\"[vd-toolbar-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<span flex></span>\r\n\r\n\t\t<!-- #region Actions -->\r\n\t\t<vd-dynamic-menu *ngIf=\"editMode==true\" [items]=\"actions\" [data]=\"data\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t<!-- #endregion-->\r\n\r\n\t\t<!-- #region Custom right content -->\r\n\t\t<ng-content select=\"[vd-toolbar-content-right]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</mat-toolbar>\r\n\t<div class=\"vd-layout-nav-content\" cdkScrollable>\r\n\t\t<ng-content></ng-content>\r\n\t</div>\r\n\t<ng-content select=\"vd-layout-footer\"></ng-content>\r\n</div>", styles: [".vd-menu-button{margin-left:0}::ng-deep [dir=rtl] .vd-menu-button{margin-right:0;margin-left:6px}:host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host .vd-layout-nav-wrapper{flex-direction:column;box-sizing:border-box;display:flex;margin:0;width:100%;min-height:100%;height:100%}:host .vd-layout-nav-wrapper .vd-layout-nav-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host .vd-layout-nav-wrapper .vd-layout-nav-content{flex-direction:column;box-sizing:border-box;display:flex;flex:1;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i5$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: VdLayoutToggleDirective, selector: "[vdLayoutToggle]", inputs: ["vdLayoutToggle"] }, { kind: "component", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: ["items", "data", "context"] }] });
7725
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutNavComponent, decorators: [{
7726
7726
  type: Component,
7727
7727
  args: [{ selector: 'vd-layout-nav', template: "<div class=\"vd-layout-nav-wrapper\">\r\n\t<mat-toolbar [color]=\"color\">\r\n\t\t<!-- #region Toggle buton -->\r\n\t\t<button mat-icon-button vd-menu-button [vdLayoutToggle]=\"true\" *ngIf=\"!hideToggle\">\r\n\t\t\t<mat-icon>menu</mat-icon>\r\n\t\t</button>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Back button -->\r\n\t\t<button mat-icon-button vd-menu-button *ngIf=\"backNavigationRouteEnabled\" (click)=\"handleBackNavigationClick()\">\r\n\t\t\t<mat-icon>arrow_back</mat-icon>\r\n\t\t</button>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom buttons -->\r\n\t\t<ng-content select=\"[vd-menu-button]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Logo with home link -->\r\n\t\t<span *ngIf=\"icon || logo || toolbarTitle\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\" class=\"vd-layout-nav-toolbar-content\">\r\n\t\t\t<mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\r\n\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t<span *ngIf=\"toolbarTitle\">{{toolbarTitle}}</span>&nbsp;\r\n\t\t\t<span i18n=\"@@add\" *ngIf=\"editMode == false\">Add</span>\r\n\t\t\t<span i18n=\"@@edit\" *ngIf=\"editMode == true\">Edit</span>\r\n\t\t</span>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<!-- #region Custom content -->\r\n\t\t<ng-content select=\"[vd-toolbar-content]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\r\n\t\t<span flex></span>\r\n\r\n\t\t<!-- #region Actions -->\r\n\t\t<vd-dynamic-menu *ngIf=\"editMode==true\" [items]=\"actions\" [data]=\"data\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t<!-- #endregion-->\r\n\r\n\t\t<!-- #region Custom right content -->\r\n\t\t<ng-content select=\"[vd-toolbar-content-right]\"></ng-content>\r\n\t\t<!-- #endregion -->\r\n\t</mat-toolbar>\r\n\t<div class=\"vd-layout-nav-content\" cdkScrollable>\r\n\t\t<ng-content></ng-content>\r\n\t</div>\r\n\t<ng-content select=\"vd-layout-footer\"></ng-content>\r\n</div>", styles: [".vd-menu-button{margin-left:0}::ng-deep [dir=rtl] .vd-menu-button{margin-right:0;margin-left:6px}:host{display:flex;margin:0;width:100%;min-height:100%;height:100%;overflow:hidden}:host .vd-layout-nav-wrapper{flex-direction:column;box-sizing:border-box;display:flex;margin:0;width:100%;min-height:100%;height:100%}:host .vd-layout-nav-wrapper .vd-layout-nav-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host .vd-layout-nav-wrapper .vd-layout-nav-content{flex-direction:column;box-sizing:border-box;display:flex;flex:1;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}\n"] }]
7728
7728
  }], ctorParameters: function () {
@@ -7769,9 +7769,9 @@ class VdListToolbarComponent {
7769
7769
  this.actions = [];
7770
7770
  }
7771
7771
  }
7772
- /** @nocollapse */ VdListToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdListToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7773
- /** @nocollapse */ VdListToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdListToolbarComponent, selector: "vd-list-toolbar", inputs: { subtitle: "subtitle", backButton: "backButton", actions: "actions" }, outputs: { back: "back" }, ngImport: i0, template: "<mat-toolbar dense [ngClass]=\"{'pad-left-none': backButton}\">\r\n <div layout=\"row\" layout-align=\"start center\" flex>\r\n <button mat-icon-button [vdLayoutManageListOpen]=\"true\" [hideWhenOpened]=\"true\">\r\n <mat-icon>menu</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"back.emit()\" *ngIf=\"backButton\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n <span>{{subtitle}}</span>\r\n <span flex></span>\r\n <vd-dynamic-menu [items]=\"actions\"></vd-dynamic-menu>\r\n </div>\r\n</mat-toolbar>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: VdLayoutManageListOpenDirective, selector: "[vdLayoutManageListOpen]", inputs: ["vdLayoutManageListOpen"] }, { kind: "component", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: ["items", "data", "context"] }] });
7774
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdListToolbarComponent, decorators: [{
7772
+ /** @nocollapse */ VdListToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdListToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7773
+ /** @nocollapse */ VdListToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdListToolbarComponent, selector: "vd-list-toolbar", inputs: { subtitle: "subtitle", backButton: "backButton", actions: "actions" }, outputs: { back: "back" }, ngImport: i0, template: "<mat-toolbar dense [ngClass]=\"{'pad-left-none': backButton}\">\r\n <div layout=\"row\" layout-align=\"start center\" flex>\r\n <button mat-icon-button [vdLayoutManageListOpen]=\"true\" [hideWhenOpened]=\"true\">\r\n <mat-icon>menu</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"back.emit()\" *ngIf=\"backButton\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n <span>{{subtitle}}</span>\r\n <span flex></span>\r\n <vd-dynamic-menu [items]=\"actions\"></vd-dynamic-menu>\r\n </div>\r\n</mat-toolbar>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: VdLayoutManageListOpenDirective, selector: "[vdLayoutManageListOpen]", inputs: ["vdLayoutManageListOpen"] }, { kind: "component", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: ["items", "data", "context"] }] });
7774
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdListToolbarComponent, decorators: [{
7775
7775
  type: Component,
7776
7776
  args: [{ selector: 'vd-list-toolbar', template: "<mat-toolbar dense [ngClass]=\"{'pad-left-none': backButton}\">\r\n <div layout=\"row\" layout-align=\"start center\" flex>\r\n <button mat-icon-button [vdLayoutManageListOpen]=\"true\" [hideWhenOpened]=\"true\">\r\n <mat-icon>menu</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"back.emit()\" *ngIf=\"backButton\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n <span>{{subtitle}}</span>\r\n <span flex></span>\r\n <vd-dynamic-menu [items]=\"actions\"></vd-dynamic-menu>\r\n </div>\r\n</mat-toolbar>" }]
7777
7777
  }], propDecorators: { subtitle: [{
@@ -7818,17 +7818,17 @@ const vdCollapseAnimation = trigger('vdCollapse', [
7818
7818
 
7819
7819
  class VdNavigationDrawerMenuDirective {
7820
7820
  }
7821
- /** @nocollapse */ VdNavigationDrawerMenuDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdNavigationDrawerMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
7822
- /** @nocollapse */ VdNavigationDrawerMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdNavigationDrawerMenuDirective, selector: "[vd-navigation-drawer-menu]", ngImport: i0 });
7823
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdNavigationDrawerMenuDirective, decorators: [{
7821
+ /** @nocollapse */ VdNavigationDrawerMenuDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdNavigationDrawerMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
7822
+ /** @nocollapse */ VdNavigationDrawerMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdNavigationDrawerMenuDirective, selector: "[vd-navigation-drawer-menu]", ngImport: i0 });
7823
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdNavigationDrawerMenuDirective, decorators: [{
7824
7824
  type: Directive,
7825
7825
  args: [{ selector: '[vd-navigation-drawer-menu]' }]
7826
7826
  }] });
7827
7827
  class VdNavigationDrawerToolbarDirective {
7828
7828
  }
7829
- /** @nocollapse */ VdNavigationDrawerToolbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdNavigationDrawerToolbarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
7830
- /** @nocollapse */ VdNavigationDrawerToolbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdNavigationDrawerToolbarDirective, selector: "[vd-navigation-drawer-toolbar]", ngImport: i0 });
7831
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdNavigationDrawerToolbarDirective, decorators: [{
7829
+ /** @nocollapse */ VdNavigationDrawerToolbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdNavigationDrawerToolbarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
7830
+ /** @nocollapse */ VdNavigationDrawerToolbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdNavigationDrawerToolbarDirective, selector: "[vd-navigation-drawer-toolbar]", ngImport: i0 });
7831
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdNavigationDrawerToolbarDirective, decorators: [{
7832
7832
  type: Directive,
7833
7833
  args: [{ selector: '[vd-navigation-drawer-toolbar]' }]
7834
7834
  }] });
@@ -7936,9 +7936,9 @@ class VdNavigationDrawerComponent {
7936
7936
  return this._layout.close();
7937
7937
  }
7938
7938
  }
7939
- /** @nocollapse */ VdNavigationDrawerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdNavigationDrawerComponent, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i1$3.Router, optional: true }, { token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
7940
- /** @nocollapse */ VdNavigationDrawerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdNavigationDrawerComponent, selector: "vd-navigation-drawer", inputs: { sidenavTitle: "sidenavTitle", icon: "icon", logo: "logo", avatar: "avatar", color: "color", navigationRoute: "navigationRoute", backgroundUrl: "backgroundUrl", name: "name", email: "email" }, queries: [{ propertyName: "_drawerMenu", predicate: VdNavigationDrawerMenuDirective, descendants: true }, { propertyName: "_toolbar", predicate: VdNavigationDrawerToolbarDirective, descendants: true }], ngImport: i0, template: "<mat-toolbar [color]=\"color\" [style.background-image]=\"backgroundImage\" [class.vd-toolbar-background]=\"!!isBackgroundAvailable\" class=\"vd-nagivation-drawer-toolbar\">\r\n\t<ng-content select=\"[vd-navigation-drawer-toolbar]\"></ng-content>\r\n\t<ng-container *ngIf=\"!isCustomToolbar\">\r\n\t\t<div *ngIf=\"icon || logo || sidenavTitle || avatar\" class=\"vd-navigation-drawer-toolbar-content\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\">\r\n\t\t\t<mat-icon *ngIf=\"icon\">{{ icon }}</mat-icon>\r\n\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t<img *ngIf=\"avatar && !logo && !icon\" class=\"vd-nagivation-drawer-toolbar-avatar\" [attr.src]=\"avatar\" />\r\n\t\t\t<span *ngIf=\"sidenavTitle\" class=\"vd-navigation-drawer-title\">{{\r\n\t\t\t\tsidenavTitle\r\n\t\t\t\t}}</span>\r\n\t\t</div>\r\n\t\t<div class=\"vd-navigation-drawer-name\" *ngIf=\"email && name\">\r\n\t\t\t{{ name }}\r\n\t\t</div>\r\n\t\t<div class=\"vd-navigation-drawer-menu-toggle\" href *ngIf=\"email || name\" (click)=\"toggleMenu()\">\r\n\t\t\t<span class=\"vd-navigation-drawer-label\">{{ email || name }}</span>\r\n\t\t\t<button mat-icon-button class=\"vd-navigation-drawer-menu-button\" *ngIf=\"isMenuAvailable\">\r\n\t\t\t\t<mat-icon *ngIf=\"!menuToggled\">arrow_drop_down</mat-icon>\r\n\t\t\t\t<mat-icon *ngIf=\"menuToggled\">arrow_drop_up</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t</ng-container>\r\n</mat-toolbar>\r\n<div class=\"vd-navigation-drawer-content\" [@vdCollapse]=\"menuToggled\">\r\n\t<ng-content></ng-content>\r\n</div>\r\n<div class=\"vd-navigation-drawer-menu-content\" [@vdCollapse]=\"!menuToggled\">\r\n\t<ng-content select=\"[vd-navigation-drawer-menu]\"></ng-content>\r\n</div>", styles: [":host{width:100%}:host .vd-navigation-drawer-content.ng-animating,:host .vd-navigation-drawer-menu-content.ng-animating{overflow:hidden}:host mat-toolbar{padding:16px}:host mat-toolbar.vd-toolbar-background{background-repeat:no-repeat;background-size:cover}:host mat-toolbar.vd-nagivation-drawer-toolbar{flex-direction:column;height:auto!important;display:block!important}:host mat-toolbar .vd-navigation-drawer-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host mat-toolbar .vd-navigation-drawer-toolbar-content .vd-nagivation-drawer-toolbar-avatar{border-radius:50%;height:60px;width:60px;margin:0 12px 12px 0}:host mat-toolbar .vd-navigation-drawer-toolbar-content .vd-navigation-drawer-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-menu-toggle{flex-direction:row;box-sizing:border-box;display:flex}:host mat-toolbar .vd-navigation-drawer-menu-toggle .vd-navigation-drawer-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-menu-toggle .vd-navigation-drawer-menu-button{height:24px;line-height:24px;width:24px}:host>div{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], animations: [vdCollapseAnimation] });
7941
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdNavigationDrawerComponent, decorators: [{
7939
+ /** @nocollapse */ VdNavigationDrawerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdNavigationDrawerComponent, deps: [{ token: forwardRef(() => VdLayoutComponent) }, { token: i1$3.Router, optional: true }, { token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
7940
+ /** @nocollapse */ VdNavigationDrawerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdNavigationDrawerComponent, selector: "vd-navigation-drawer", inputs: { sidenavTitle: "sidenavTitle", icon: "icon", logo: "logo", avatar: "avatar", color: "color", navigationRoute: "navigationRoute", backgroundUrl: "backgroundUrl", name: "name", email: "email" }, queries: [{ propertyName: "_drawerMenu", predicate: VdNavigationDrawerMenuDirective, descendants: true }, { propertyName: "_toolbar", predicate: VdNavigationDrawerToolbarDirective, descendants: true }], ngImport: i0, template: "<mat-toolbar [color]=\"color\" [style.background-image]=\"backgroundImage\" [class.vd-toolbar-background]=\"!!isBackgroundAvailable\" class=\"vd-nagivation-drawer-toolbar\">\r\n\t<ng-content select=\"[vd-navigation-drawer-toolbar]\"></ng-content>\r\n\t<ng-container *ngIf=\"!isCustomToolbar\">\r\n\t\t<div *ngIf=\"icon || logo || sidenavTitle || avatar\" class=\"vd-navigation-drawer-toolbar-content\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\">\r\n\t\t\t<mat-icon *ngIf=\"icon\">{{ icon }}</mat-icon>\r\n\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t<img *ngIf=\"avatar && !logo && !icon\" class=\"vd-nagivation-drawer-toolbar-avatar\" [attr.src]=\"avatar\" />\r\n\t\t\t<span *ngIf=\"sidenavTitle\" class=\"vd-navigation-drawer-title\">{{\r\n\t\t\t\tsidenavTitle\r\n\t\t\t\t}}</span>\r\n\t\t</div>\r\n\t\t<div class=\"vd-navigation-drawer-name\" *ngIf=\"email && name\">\r\n\t\t\t{{ name }}\r\n\t\t</div>\r\n\t\t<div class=\"vd-navigation-drawer-menu-toggle\" href *ngIf=\"email || name\" (click)=\"toggleMenu()\">\r\n\t\t\t<span class=\"vd-navigation-drawer-label\">{{ email || name }}</span>\r\n\t\t\t<button mat-icon-button class=\"vd-navigation-drawer-menu-button\" *ngIf=\"isMenuAvailable\">\r\n\t\t\t\t<mat-icon *ngIf=\"!menuToggled\">arrow_drop_down</mat-icon>\r\n\t\t\t\t<mat-icon *ngIf=\"menuToggled\">arrow_drop_up</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t</ng-container>\r\n</mat-toolbar>\r\n<div class=\"vd-navigation-drawer-content\" [@vdCollapse]=\"menuToggled\">\r\n\t<ng-content></ng-content>\r\n</div>\r\n<div class=\"vd-navigation-drawer-menu-content\" [@vdCollapse]=\"!menuToggled\">\r\n\t<ng-content select=\"[vd-navigation-drawer-menu]\"></ng-content>\r\n</div>", styles: [":host{width:100%}:host .vd-navigation-drawer-content.ng-animating,:host .vd-navigation-drawer-menu-content.ng-animating{overflow:hidden}:host mat-toolbar{padding:16px}:host mat-toolbar.vd-toolbar-background{background-repeat:no-repeat;background-size:cover}:host mat-toolbar.vd-nagivation-drawer-toolbar{flex-direction:column;height:auto!important;display:block!important}:host mat-toolbar .vd-navigation-drawer-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host mat-toolbar .vd-navigation-drawer-toolbar-content .vd-nagivation-drawer-toolbar-avatar{border-radius:50%;height:60px;width:60px;margin:0 12px 12px 0}:host mat-toolbar .vd-navigation-drawer-toolbar-content .vd-navigation-drawer-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-menu-toggle{flex-direction:row;box-sizing:border-box;display:flex}:host mat-toolbar .vd-navigation-drawer-menu-toggle .vd-navigation-drawer-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-menu-toggle .vd-navigation-drawer-menu-button{height:24px;line-height:24px;width:24px}:host>div{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], animations: [vdCollapseAnimation] });
7941
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdNavigationDrawerComponent, decorators: [{
7942
7942
  type: Component,
7943
7943
  args: [{ selector: 'vd-navigation-drawer', animations: [vdCollapseAnimation], template: "<mat-toolbar [color]=\"color\" [style.background-image]=\"backgroundImage\" [class.vd-toolbar-background]=\"!!isBackgroundAvailable\" class=\"vd-nagivation-drawer-toolbar\">\r\n\t<ng-content select=\"[vd-navigation-drawer-toolbar]\"></ng-content>\r\n\t<ng-container *ngIf=\"!isCustomToolbar\">\r\n\t\t<div *ngIf=\"icon || logo || sidenavTitle || avatar\" class=\"vd-navigation-drawer-toolbar-content\" [class.cursor-pointer]=\"routerEnabled\" (click)=\"handleNavigationClick()\">\r\n\t\t\t<mat-icon *ngIf=\"icon\">{{ icon }}</mat-icon>\r\n\t\t\t<mat-icon *ngIf=\"logo && !icon\" class=\"mat-icon-logo\" [svgIcon]=\"logo\"></mat-icon>\r\n\t\t\t<img *ngIf=\"avatar && !logo && !icon\" class=\"vd-nagivation-drawer-toolbar-avatar\" [attr.src]=\"avatar\" />\r\n\t\t\t<span *ngIf=\"sidenavTitle\" class=\"vd-navigation-drawer-title\">{{\r\n\t\t\t\tsidenavTitle\r\n\t\t\t\t}}</span>\r\n\t\t</div>\r\n\t\t<div class=\"vd-navigation-drawer-name\" *ngIf=\"email && name\">\r\n\t\t\t{{ name }}\r\n\t\t</div>\r\n\t\t<div class=\"vd-navigation-drawer-menu-toggle\" href *ngIf=\"email || name\" (click)=\"toggleMenu()\">\r\n\t\t\t<span class=\"vd-navigation-drawer-label\">{{ email || name }}</span>\r\n\t\t\t<button mat-icon-button class=\"vd-navigation-drawer-menu-button\" *ngIf=\"isMenuAvailable\">\r\n\t\t\t\t<mat-icon *ngIf=\"!menuToggled\">arrow_drop_down</mat-icon>\r\n\t\t\t\t<mat-icon *ngIf=\"menuToggled\">arrow_drop_up</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t</ng-container>\r\n</mat-toolbar>\r\n<div class=\"vd-navigation-drawer-content\" [@vdCollapse]=\"menuToggled\">\r\n\t<ng-content></ng-content>\r\n</div>\r\n<div class=\"vd-navigation-drawer-menu-content\" [@vdCollapse]=\"!menuToggled\">\r\n\t<ng-content select=\"[vd-navigation-drawer-menu]\"></ng-content>\r\n</div>", styles: [":host{width:100%}:host .vd-navigation-drawer-content.ng-animating,:host .vd-navigation-drawer-menu-content.ng-animating{overflow:hidden}:host mat-toolbar{padding:16px}:host mat-toolbar.vd-toolbar-background{background-repeat:no-repeat;background-size:cover}:host mat-toolbar.vd-nagivation-drawer-toolbar{flex-direction:column;height:auto!important;display:block!important}:host mat-toolbar .vd-navigation-drawer-toolbar-content{flex-direction:row;box-sizing:border-box;display:flex;align-items:center;align-content:center;max-width:100%;justify-content:flex-start}:host mat-toolbar .vd-navigation-drawer-toolbar-content .vd-nagivation-drawer-toolbar-avatar{border-radius:50%;height:60px;width:60px;margin:0 12px 12px 0}:host mat-toolbar .vd-navigation-drawer-toolbar-content .vd-navigation-drawer-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-menu-toggle{flex-direction:row;box-sizing:border-box;display:flex}:host mat-toolbar .vd-navigation-drawer-menu-toggle .vd-navigation-drawer-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host mat-toolbar .vd-navigation-drawer-menu-toggle .vd-navigation-drawer-menu-button{height:24px;line-height:24px;width:24px}:host>div{overflow:hidden}\n"] }]
7944
7944
  }], ctorParameters: function () {
@@ -7998,8 +7998,8 @@ const VD_LAYOUTS = [
7998
7998
  ];
7999
7999
  class VdLayoutModule {
8000
8000
  }
8001
- /** @nocollapse */ VdLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8002
- /** @nocollapse */ VdLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutModule, declarations: [VdLayoutComponent,
8001
+ /** @nocollapse */ VdLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8002
+ /** @nocollapse */ VdLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutModule, declarations: [VdLayoutComponent,
8003
8003
  VdLayoutToggleDirective,
8004
8004
  VdLayoutCloseDirective,
8005
8005
  VdLayoutOpenDirective,
@@ -8049,7 +8049,7 @@ class VdLayoutModule {
8049
8049
  VdNavigationDrawerToolbarDirective,
8050
8050
  VdListToolbarComponent,
8051
8051
  VdDynamicMenuComponent] });
8052
- /** @nocollapse */ VdLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutModule, imports: [CommonModule,
8052
+ /** @nocollapse */ VdLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutModule, imports: [CommonModule,
8053
8053
  ScrollingModule,
8054
8054
  MatSidenavModule,
8055
8055
  MatToolbarModule,
@@ -8061,7 +8061,7 @@ class VdLayoutModule {
8061
8061
  MatProgressSpinnerModule,
8062
8062
  VdMenuModule,
8063
8063
  VdCommonModule] });
8064
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdLayoutModule, decorators: [{
8064
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdLayoutModule, decorators: [{
8065
8065
  type: NgModule,
8066
8066
  args: [{
8067
8067
  imports: [
@@ -8129,7 +8129,7 @@ class AbstractMatFormField extends _AbstractMatFormFieldBase$1 {
8129
8129
  * @param _focusMonitor
8130
8130
  * @param _elementRef
8131
8131
  */
8132
- constructor(controlType, ngControl, _parentForm, _parentFormGroup, _defaultErrorStateMatcher, _focusMonitor, _elementRef) {
8132
+ constructor(controlType, ngControl, _parentForm, _parentFormGroup, _defaultErrorStateMatcher, _focusMonitor, _elementRef, changeDetectorRef) {
8133
8133
  super(_defaultErrorStateMatcher, _parentForm, _parentFormGroup, ngControl);
8134
8134
  this.controlType = controlType;
8135
8135
  this.ngControl = ngControl;
@@ -8138,6 +8138,7 @@ class AbstractMatFormField extends _AbstractMatFormFieldBase$1 {
8138
8138
  this._defaultErrorStateMatcher = _defaultErrorStateMatcher;
8139
8139
  this._focusMonitor = _focusMonitor;
8140
8140
  this._elementRef = _elementRef;
8141
+ this.changeDetectorRef = changeDetectorRef;
8141
8142
  /**
8142
8143
  * The placeholder for this control.
8143
8144
  */
@@ -8162,12 +8163,17 @@ class AbstractMatFormField extends _AbstractMatFormFieldBase$1 {
8162
8163
  * Whether the control is focused.
8163
8164
  */
8164
8165
  this.focused = false;
8166
+ /**
8167
+ * Whether the control is touched.
8168
+ */
8169
+ this.touched = false;
8165
8170
  if (this.ngControl) {
8166
8171
  this.ngControl.valueAccessor = this;
8167
8172
  }
8168
8173
  _focusMonitor.monitor(this._elementRef.nativeElement, true).subscribe(origin => {
8169
8174
  this.focused = !!origin;
8170
8175
  this.stateChanges.next();
8176
+ this.changeDetectorRef.markForCheck();
8171
8177
  });
8172
8178
  }
8173
8179
  /**
@@ -8178,6 +8184,7 @@ class AbstractMatFormField extends _AbstractMatFormFieldBase$1 {
8178
8184
  if (this.onChange) {
8179
8185
  this.onChange(value);
8180
8186
  }
8187
+ this.stateChanges.next();
8181
8188
  }
8182
8189
  /**
8183
8190
  * Gets the value
@@ -8325,11 +8332,11 @@ class AbstractMatFormField extends _AbstractMatFormFieldBase$1 {
8325
8332
  * The element ID
8326
8333
  */
8327
8334
  AbstractMatFormField.nextId = 0;
8328
- /** @nocollapse */ AbstractMatFormField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AbstractMatFormField, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
8329
- /** @nocollapse */ AbstractMatFormField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: AbstractMatFormField, inputs: { placeholder: "placeholder", required: "required", readonly: "readonly", disabled: "disabled" }, host: { listeners: { "focusout": "onBlur()" }, properties: { "id": "this.id", "attr.aria-describedBy": "this.describedBy" } }, usesInheritance: true, ngImport: i0 });
8330
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AbstractMatFormField, decorators: [{
8335
+ /** @nocollapse */ AbstractMatFormField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AbstractMatFormField, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
8336
+ /** @nocollapse */ AbstractMatFormField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: AbstractMatFormField, inputs: { placeholder: "placeholder", required: "required", readonly: "readonly", disabled: "disabled" }, host: { listeners: { "focusout": "onBlur()" }, properties: { "class.floating": "this.shouldLabelFloat", "id": "this.id", "attr.aria-describedBy": "this.describedBy" } }, usesInheritance: true, ngImport: i0 });
8337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AbstractMatFormField, decorators: [{
8331
8338
  type: Directive
8332
- }], ctorParameters: function () { return [{ type: undefined }, { type: i1.NgControl }, { type: i1.NgForm }, { type: i1.FormGroupDirective }, { type: i2.ErrorStateMatcher }, { type: i3$2.FocusMonitor }, { type: i0.ElementRef }]; }, propDecorators: { placeholder: [{
8339
+ }], ctorParameters: function () { return [{ type: undefined }, { type: i1.NgControl }, { type: i1.NgForm }, { type: i1.FormGroupDirective }, { type: i2.ErrorStateMatcher }, { type: i3$2.FocusMonitor }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { placeholder: [{
8333
8340
  type: Input
8334
8341
  }], required: [{
8335
8342
  type: Input
@@ -8337,6 +8344,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
8337
8344
  type: Input
8338
8345
  }], disabled: [{
8339
8346
  type: Input
8347
+ }], shouldLabelFloat: [{
8348
+ type: HostBinding,
8349
+ args: ['class.floating']
8340
8350
  }], id: [{
8341
8351
  type: HostBinding
8342
8352
  }], describedBy: [{
@@ -8360,9 +8370,9 @@ class VdSelectOptionDirective extends CdkPortal {
8360
8370
  super(templateRef, viewContainerRef);
8361
8371
  }
8362
8372
  }
8363
- /** @nocollapse */ VdSelectOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectOptionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
8364
- /** @nocollapse */ VdSelectOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdSelectOptionDirective, selector: "[vd-select-option]ng-template", usesInheritance: true, ngImport: i0 });
8365
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectOptionDirective, decorators: [{
8373
+ /** @nocollapse */ VdSelectOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectOptionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
8374
+ /** @nocollapse */ VdSelectOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdSelectOptionDirective, selector: "[vd-select-option]ng-template", usesInheritance: true, ngImport: i0 });
8375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectOptionDirective, decorators: [{
8366
8376
  type: Directive,
8367
8377
  args: [{ selector: '[vd-select-option]ng-template' }]
8368
8378
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -8380,9 +8390,9 @@ class VdSelectTriggerDirective extends CdkPortal {
8380
8390
  super(templateRef, viewContainerRef);
8381
8391
  }
8382
8392
  }
8383
- /** @nocollapse */ VdSelectTriggerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectTriggerDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
8384
- /** @nocollapse */ VdSelectTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdSelectTriggerDirective, selector: "[vd-select-trigger]ng-template", usesInheritance: true, ngImport: i0 });
8385
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectTriggerDirective, decorators: [{
8393
+ /** @nocollapse */ VdSelectTriggerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectTriggerDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
8394
+ /** @nocollapse */ VdSelectTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdSelectTriggerDirective, selector: "[vd-select-trigger]ng-template", usesInheritance: true, ngImport: i0 });
8395
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectTriggerDirective, decorators: [{
8386
8396
  type: Directive,
8387
8397
  args: [{ selector: '[vd-select-trigger]ng-template' }]
8388
8398
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -8400,8 +8410,8 @@ class VdSelectComponent extends AbstractMatFormField {
8400
8410
  * @param focusMonitor
8401
8411
  * @param elementRef
8402
8412
  */
8403
- constructor(injector, ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef) {
8404
- super("vd-select", ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef);
8413
+ constructor(injector, ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef, changeDetectorRef) {
8414
+ super("vd-select", ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef, changeDetectorRef);
8405
8415
  this.injector = injector;
8406
8416
  /**
8407
8417
  * The http service from to get the data
@@ -8415,6 +8425,10 @@ class VdSelectComponent extends AbstractMatFormField {
8415
8425
  * Sorts options
8416
8426
  */
8417
8427
  this._sorted = true;
8428
+ /**
8429
+ * Trigger mode
8430
+ */
8431
+ this._triggerMode = 'chip';
8418
8432
  /**
8419
8433
  * textPrefix?: any
8420
8434
  */
@@ -8494,7 +8508,6 @@ class VdSelectComponent extends AbstractMatFormField {
8494
8508
  }
8495
8509
  /**
8496
8510
  * Sets the disabled.
8497
- * @param disabled
8498
8511
  */
8499
8512
  get disabled() {
8500
8513
  if (this._readonly) {
@@ -8510,6 +8523,23 @@ class VdSelectComponent extends AbstractMatFormField {
8510
8523
  this._sorted = coerceBooleanProperty(multi);
8511
8524
  this.stateChanges.next();
8512
8525
  }
8526
+ /**
8527
+ * Trigger css class
8528
+ */
8529
+ get triggerCssClass() { return this._triggerCssClass; }
8530
+ set triggerCssClass(triggerCssClass) {
8531
+ this._triggerCssClass = triggerCssClass;
8532
+ this.stateChanges.next();
8533
+ }
8534
+ /**
8535
+ * Trigger mode
8536
+ */
8537
+ get triggerMode() { return this.triggerMode; }
8538
+ set triggerMode(triggerMode) {
8539
+ this._triggerMode = triggerMode;
8540
+ this.triggerCssClass = 'chip';
8541
+ this.stateChanges.next();
8542
+ }
8513
8543
  /**
8514
8544
  * Whether the select has a value.
8515
8545
  */
@@ -8607,6 +8637,7 @@ class VdSelectComponent extends AbstractMatFormField {
8607
8637
  if (Array.isArray(this.options)) {
8608
8638
  this.handleItemSelected(this.value);
8609
8639
  }
8640
+ this.writeValue(this.value);
8610
8641
  });
8611
8642
  }
8612
8643
  });
@@ -8649,6 +8680,7 @@ class VdSelectComponent extends AbstractMatFormField {
8649
8680
  if (!this.value) {
8650
8681
  (_a = this.selectEl) === null || _a === void 0 ? void 0 : _a.writeValue(null);
8651
8682
  }
8683
+ this.changeDetectorRef.detectChanges();
8652
8684
  }
8653
8685
  /**
8654
8686
  * Method executed when an option changes
@@ -8722,11 +8754,11 @@ class VdSelectComponent extends AbstractMatFormField {
8722
8754
  }
8723
8755
  }
8724
8756
  }
8725
- /** @nocollapse */ VdSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectComponent, deps: [{ token: i0.Injector }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgForm, optional: true }, { token: i1.FormGroupDirective, optional: true }, { token: i2.ErrorStateMatcher }, { token: i3$2.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
8726
- /** @nocollapse */ VdSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdSelectComponent, selector: "vd-select", inputs: { multiple: "multiple", disabled: "disabled", sorted: "sorted", textPrefix: "textPrefix", endpoint: "endpoint", params: "params", projection: "projection", enum: "enum", key: "key", text: "text", prefix: "prefix", options: "options", filteredOptions: "filteredOptions", filterable: "filterable", cache: "cache", sortBy: "sortBy", mapper: "mapper", compareWith: "compareWith", searchField: "searchField" }, outputs: { onValueChange: "change", onItemChange: "itemChange", onSelected: "selected", onItemSelected: "itemSelected", onLaunch: "launch" }, providers: [{ provide: MatFormFieldControl, useExisting: VdSelectComponent }], queries: [{ propertyName: "optionTemplate", first: true, predicate: VdSelectOptionDirective, descendants: true }, { propertyName: "triggerTemplate", first: true, predicate: VdSelectTriggerDirective, descendants: true }], viewQueries: [{ propertyName: "selectEl", first: true, predicate: MatSelect, descendants: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-select [placeholder]=\"placeholder\" i18n-placeholder [(ngModel)]=\"value\" #select=\"matSelect\" (selectionChange)=\"handleChange($event)\" *ngIf=\"!readonly\" [multiple]=\"multiple\" [compareWith]=\"compareWith\" [disabled]=\"disabled\" flex>\r\n <!-- #region Filter input -->\r\n <div *ngIf=\"filterable\" class=\"vd-select-filter-wrap\">\r\n <div class=\"vd-select-filter-inner\">\r\n <a mat-icon-button disabled *ngIf=\"!filterInput.value\">\r\n <mat-icon>search</mat-icon>\r\n </a>\r\n <a mat-icon-button *ngIf=\"filterInput.value\" (click)=\"filterInput.value = null; handleFilter(null)\">\r\n <mat-icon>close</mat-icon>\r\n </a>\r\n <input #filterInput type=\"text\" placeholder=\"Filter...\" class=\"vd-select-filter mat-input-element\" (keyup)=\"handleFilter($event)\">\r\n </div>\r\n <div class=\"mat-divider\"></div>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Trigger for launch button -->\r\n <mat-select-trigger *ngIf=\"onLaunch?.observers?.length > 0\">\r\n <span>{{getTriggerValues(select.selected)}}</span>\r\n <mat-icon class=\"vd-select-launch\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom trigger template -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && triggerTemplate?.templateRef\">\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Option template as trigger -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && !triggerTemplate?.templateRef && optionTemplate?.templateRef\">\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Default option -->\r\n <mat-option class=\"tc-grey-500\" *ngIf=\"!multiple\" i18n=\"@@pleaseSelect\">--- Please Select ---</mat-option>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Options -->\r\n <ng-template let-option let-first=\"first\" ngFor [ngForOf]=\"filteredOptions\">\r\n <mat-option [value]=\"mapper ? option : option[key]\">\r\n <span *ngIf=\"!optionTemplate?.templateRef\" i18n=\"@@selection\">{option[text], select, option {option} other {{{option[text]}}}}</span>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: option }\"></ng-template>\r\n </mat-option>\r\n </ng-template>\r\n <!-- #endregion -->\r\n</mat-select>\r\n\r\n<!-- #region Read only value -->\r\n<div *ngIf=\"readonly\">\r\n <div *ngIf=\"currentValue\">\r\n <div class=\"readonly-value\">\r\n <span *ngIf=\"!optionTemplate?.templateRef && !triggerTemplate?.templateRef\">\r\n <span *ngIf=\"!multiple\" i18n=\"@@selection\">{currentValue[text], select, option {option} other {{{currentValue[text]}}}}</span>\r\n <ng-container *ngIf=\"multiple\">\r\n <span *ngFor=\"let optionValue of currentValue; let last = last\">\r\n <span i18n=\"@@selection\">{optionValue[text], select, option {option} other {{{optionValue[text]}}}}</span>\r\n <span *ngIf=\"!last\">,&nbsp;</span>\r\n </span>\r\n </ng-container>\r\n </span>\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: currentValue }\"></ng-template>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef && !triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: currentValue }\"></ng-template>\r\n </div>\r\n <mat-icon *ngIf=\"onLaunch?.observers?.length > 0\" class=\"vd-select-launch-readonly\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </div>\r\n <div *ngIf=\"!currentValue\">&nbsp;</div>\r\n</div>\r\n<!-- #endregion -->", styles: [".vd-select-launch{position:absolute;right:30px;top:-5px;font-size:18px;cursor:pointer}.readonly-value{padding-right:24px;opacity:.6;min-height:15px}.vd-select-launch-readonly{position:absolute;right:0px;top:9px;font-size:18px;cursor:pointer}.vd-select-filter-wrap{background:inherit;position:sticky;top:0;box-sizing:border-box;z-index:100}.vd-select-filter-wrap .vd-select-filter-inner{z-index:100;display:flex;flex-direction:row;align-items:center;background:inherit}.vd-select-filter-wrap .vd-select-filter-inner .mat-icon-button{margin:4px}.vd-select-filter-wrap .vd-select-filter-inner .vd-select-filter{box-shadow:none;padding:16px 16px 16px 0;box-sizing:border-box}.vd-select-filter-wrap .mat-divider{display:block;width:100%;border-top-width:1px;border-top-style:solid;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "directive", type: i5$2.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }] });
8727
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectComponent, decorators: [{
8757
+ /** @nocollapse */ VdSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectComponent, deps: [{ token: i0.Injector }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgForm, optional: true }, { token: i1.FormGroupDirective, optional: true }, { token: i2.ErrorStateMatcher }, { token: i3$2.FocusMonitor }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
8758
+ /** @nocollapse */ VdSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdSelectComponent, selector: "vd-select", inputs: { multiple: "multiple", disabled: "disabled", sorted: "sorted", triggerCssClass: "triggerCssClass", triggerMode: "triggerMode", textPrefix: "textPrefix", endpoint: "endpoint", params: "params", projection: "projection", enum: "enum", key: "key", text: "text", prefix: "prefix", options: "options", filteredOptions: "filteredOptions", filterable: "filterable", cache: "cache", sortBy: "sortBy", mapper: "mapper", compareWith: "compareWith", searchField: "searchField" }, outputs: { onValueChange: "change", onItemChange: "itemChange", onSelected: "selected", onItemSelected: "itemSelected", onLaunch: "launch" }, providers: [{ provide: MatFormFieldControl, useExisting: VdSelectComponent }], queries: [{ propertyName: "optionTemplate", first: true, predicate: VdSelectOptionDirective, descendants: true }, { propertyName: "triggerTemplate", first: true, predicate: VdSelectTriggerDirective, descendants: true }], viewQueries: [{ propertyName: "selectEl", first: true, predicate: MatSelect, descendants: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-select [placeholder]=\"placeholder\" i18n-placeholder [(ngModel)]=\"value\" #select=\"matSelect\" (selectionChange)=\"handleChange($event)\" *ngIf=\"!readonly\" [multiple]=\"multiple\" [compareWith]=\"compareWith\" [disabled]=\"disabled\" flex>\r\n <!-- #region Filter input -->\r\n <div *ngIf=\"filterable\" class=\"vd-select-filter-wrap\">\r\n <div class=\"vd-select-filter-inner\">\r\n <a mat-icon-button disabled *ngIf=\"!filterInput.value\">\r\n <mat-icon>search</mat-icon>\r\n </a>\r\n <a mat-icon-button *ngIf=\"filterInput.value\" (click)=\"filterInput.value = null; handleFilter(null)\">\r\n <mat-icon>close</mat-icon>\r\n </a>\r\n <input #filterInput type=\"text\" placeholder=\"Filter...\" class=\"vd-select-filter mat-input-element\" (keyup)=\"handleFilter($event)\">\r\n </div>\r\n <div class=\"mat-divider\"></div>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Trigger for launch button -->\r\n <mat-select-trigger *ngIf=\"onLaunch?.observers?.length > 0\" [class]=\"triggerCssClass\">\r\n <span>{{getTriggerValues(select.selected)}}</span>\r\n <mat-icon class=\"vd-select-launch\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom trigger template -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && triggerTemplate?.templateRef\" [class]=\"triggerCssClass\">\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Option template as trigger -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && !triggerTemplate?.templateRef && optionTemplate?.templateRef\" [class]=\"triggerCssClass\">\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Default option -->\r\n <mat-option class=\"tc-grey-500\" *ngIf=\"!multiple\" i18n=\"@@pleaseSelect\">--- Please Select ---</mat-option>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Options -->\r\n <ng-template let-option let-first=\"first\" ngFor [ngForOf]=\"filteredOptions\">\r\n <mat-option [value]=\"mapper ? option : option[key]\">\r\n <span *ngIf=\"!optionTemplate?.templateRef\" i18n=\"@@selection\">{option[text], select, option {option} other {{{option[text]}}}}</span>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: option }\"></ng-template>\r\n </mat-option>\r\n </ng-template>\r\n <!-- #endregion -->\r\n</mat-select>\r\n\r\n<!-- #region Read only value -->\r\n<div *ngIf=\"readonly\">\r\n <div *ngIf=\"currentValue\">\r\n <div class=\"readonly-value\">\r\n <span *ngIf=\"!optionTemplate?.templateRef && !triggerTemplate?.templateRef\">\r\n <span *ngIf=\"!multiple\" i18n=\"@@selection\">{currentValue[text], select, option {option} other {{{currentValue[text]}}}}</span>\r\n <ng-container *ngIf=\"multiple\">\r\n <span *ngFor=\"let optionValue of currentValue; let last = last\">\r\n <span i18n=\"@@selection\">{optionValue[text], select, option {option} other {{{optionValue[text]}}}}</span>\r\n <span *ngIf=\"!last\">,&nbsp;</span>\r\n </span>\r\n </ng-container>\r\n </span>\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: currentValue }\"></ng-template>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef && !triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: currentValue }\"></ng-template>\r\n </div>\r\n <mat-icon *ngIf=\"onLaunch?.observers?.length > 0\" class=\"vd-select-launch-readonly\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </div>\r\n <div *ngIf=\"!currentValue\">&nbsp;</div>\r\n</div>\r\n<!-- #endregion -->", styles: [".vd-select-launch{position:absolute;right:30px;top:-5px;font-size:18px;cursor:pointer}.readonly-value{padding-right:24px;opacity:.6;min-height:15px}.vd-select-launch-readonly{position:absolute;right:0;top:9px;font-size:18px;cursor:pointer}.vd-select-filter-wrap{background:inherit;position:sticky;top:0;box-sizing:border-box;z-index:100}.vd-select-filter-wrap .vd-select-filter-inner{z-index:100;display:flex;flex-direction:row;align-items:center;background:inherit}.vd-select-filter-wrap .vd-select-filter-inner .vd-select-filter{box-shadow:none;padding:16px 16px 16px 0;box-sizing:border-box;width:100%;border:none;background-color:inherit;color:inherit}.vd-select-filter-wrap .vd-select-filter-inner .vd-select-filter:focus-visible{border:none;outline:none}.vd-select-filter-wrap .mat-divider{display:block;width:100%;border-top-width:1px;border-top-style:solid;box-sizing:border-box}::ng-deep .mat-mdc-select-trigger{display:flex!important}::ng-deep .mat-mdc-select-trigger .mat-icon{display:flex}\n"], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "directive", type: i5$3.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$1.MatIconAnchor, selector: "a[mat-icon-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8759
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectComponent, decorators: [{
8728
8760
  type: Component,
8729
- args: [{ selector: 'vd-select', providers: [{ provide: MatFormFieldControl, useExisting: VdSelectComponent }], template: "<mat-select [placeholder]=\"placeholder\" i18n-placeholder [(ngModel)]=\"value\" #select=\"matSelect\" (selectionChange)=\"handleChange($event)\" *ngIf=\"!readonly\" [multiple]=\"multiple\" [compareWith]=\"compareWith\" [disabled]=\"disabled\" flex>\r\n <!-- #region Filter input -->\r\n <div *ngIf=\"filterable\" class=\"vd-select-filter-wrap\">\r\n <div class=\"vd-select-filter-inner\">\r\n <a mat-icon-button disabled *ngIf=\"!filterInput.value\">\r\n <mat-icon>search</mat-icon>\r\n </a>\r\n <a mat-icon-button *ngIf=\"filterInput.value\" (click)=\"filterInput.value = null; handleFilter(null)\">\r\n <mat-icon>close</mat-icon>\r\n </a>\r\n <input #filterInput type=\"text\" placeholder=\"Filter...\" class=\"vd-select-filter mat-input-element\" (keyup)=\"handleFilter($event)\">\r\n </div>\r\n <div class=\"mat-divider\"></div>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Trigger for launch button -->\r\n <mat-select-trigger *ngIf=\"onLaunch?.observers?.length > 0\">\r\n <span>{{getTriggerValues(select.selected)}}</span>\r\n <mat-icon class=\"vd-select-launch\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom trigger template -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && triggerTemplate?.templateRef\">\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Option template as trigger -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && !triggerTemplate?.templateRef && optionTemplate?.templateRef\">\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Default option -->\r\n <mat-option class=\"tc-grey-500\" *ngIf=\"!multiple\" i18n=\"@@pleaseSelect\">--- Please Select ---</mat-option>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Options -->\r\n <ng-template let-option let-first=\"first\" ngFor [ngForOf]=\"filteredOptions\">\r\n <mat-option [value]=\"mapper ? option : option[key]\">\r\n <span *ngIf=\"!optionTemplate?.templateRef\" i18n=\"@@selection\">{option[text], select, option {option} other {{{option[text]}}}}</span>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: option }\"></ng-template>\r\n </mat-option>\r\n </ng-template>\r\n <!-- #endregion -->\r\n</mat-select>\r\n\r\n<!-- #region Read only value -->\r\n<div *ngIf=\"readonly\">\r\n <div *ngIf=\"currentValue\">\r\n <div class=\"readonly-value\">\r\n <span *ngIf=\"!optionTemplate?.templateRef && !triggerTemplate?.templateRef\">\r\n <span *ngIf=\"!multiple\" i18n=\"@@selection\">{currentValue[text], select, option {option} other {{{currentValue[text]}}}}</span>\r\n <ng-container *ngIf=\"multiple\">\r\n <span *ngFor=\"let optionValue of currentValue; let last = last\">\r\n <span i18n=\"@@selection\">{optionValue[text], select, option {option} other {{{optionValue[text]}}}}</span>\r\n <span *ngIf=\"!last\">,&nbsp;</span>\r\n </span>\r\n </ng-container>\r\n </span>\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: currentValue }\"></ng-template>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef && !triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: currentValue }\"></ng-template>\r\n </div>\r\n <mat-icon *ngIf=\"onLaunch?.observers?.length > 0\" class=\"vd-select-launch-readonly\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </div>\r\n <div *ngIf=\"!currentValue\">&nbsp;</div>\r\n</div>\r\n<!-- #endregion -->", styles: [".vd-select-launch{position:absolute;right:30px;top:-5px;font-size:18px;cursor:pointer}.readonly-value{padding-right:24px;opacity:.6;min-height:15px}.vd-select-launch-readonly{position:absolute;right:0px;top:9px;font-size:18px;cursor:pointer}.vd-select-filter-wrap{background:inherit;position:sticky;top:0;box-sizing:border-box;z-index:100}.vd-select-filter-wrap .vd-select-filter-inner{z-index:100;display:flex;flex-direction:row;align-items:center;background:inherit}.vd-select-filter-wrap .vd-select-filter-inner .mat-icon-button{margin:4px}.vd-select-filter-wrap .vd-select-filter-inner .vd-select-filter{box-shadow:none;padding:16px 16px 16px 0;box-sizing:border-box}.vd-select-filter-wrap .mat-divider{display:block;width:100%;border-top-width:1px;border-top-style:solid;box-sizing:border-box}\n"] }]
8761
+ args: [{ selector: 'vd-select', providers: [{ provide: MatFormFieldControl, useExisting: VdSelectComponent }], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-select [placeholder]=\"placeholder\" i18n-placeholder [(ngModel)]=\"value\" #select=\"matSelect\" (selectionChange)=\"handleChange($event)\" *ngIf=\"!readonly\" [multiple]=\"multiple\" [compareWith]=\"compareWith\" [disabled]=\"disabled\" flex>\r\n <!-- #region Filter input -->\r\n <div *ngIf=\"filterable\" class=\"vd-select-filter-wrap\">\r\n <div class=\"vd-select-filter-inner\">\r\n <a mat-icon-button disabled *ngIf=\"!filterInput.value\">\r\n <mat-icon>search</mat-icon>\r\n </a>\r\n <a mat-icon-button *ngIf=\"filterInput.value\" (click)=\"filterInput.value = null; handleFilter(null)\">\r\n <mat-icon>close</mat-icon>\r\n </a>\r\n <input #filterInput type=\"text\" placeholder=\"Filter...\" class=\"vd-select-filter mat-input-element\" (keyup)=\"handleFilter($event)\">\r\n </div>\r\n <div class=\"mat-divider\"></div>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Trigger for launch button -->\r\n <mat-select-trigger *ngIf=\"onLaunch?.observers?.length > 0\" [class]=\"triggerCssClass\">\r\n <span>{{getTriggerValues(select.selected)}}</span>\r\n <mat-icon class=\"vd-select-launch\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom trigger template -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && triggerTemplate?.templateRef\" [class]=\"triggerCssClass\">\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Option template as trigger -->\r\n <mat-select-trigger *ngIf=\"!onLaunch?.observers?.length && !triggerTemplate?.templateRef && optionTemplate?.templateRef\" [class]=\"triggerCssClass\">\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: getTriggerValues(select.selected) }\"></ng-template>\r\n </mat-select-trigger>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Default option -->\r\n <mat-option class=\"tc-grey-500\" *ngIf=\"!multiple\" i18n=\"@@pleaseSelect\">--- Please Select ---</mat-option>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Options -->\r\n <ng-template let-option let-first=\"first\" ngFor [ngForOf]=\"filteredOptions\">\r\n <mat-option [value]=\"mapper ? option : option[key]\">\r\n <span *ngIf=\"!optionTemplate?.templateRef\" i18n=\"@@selection\">{option[text], select, option {option} other {{{option[text]}}}}</span>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: option }\"></ng-template>\r\n </mat-option>\r\n </ng-template>\r\n <!-- #endregion -->\r\n</mat-select>\r\n\r\n<!-- #region Read only value -->\r\n<div *ngIf=\"readonly\">\r\n <div *ngIf=\"currentValue\">\r\n <div class=\"readonly-value\">\r\n <span *ngIf=\"!optionTemplate?.templateRef && !triggerTemplate?.templateRef\">\r\n <span *ngIf=\"!multiple\" i18n=\"@@selection\">{currentValue[text], select, option {option} other {{{currentValue[text]}}}}</span>\r\n <ng-container *ngIf=\"multiple\">\r\n <span *ngFor=\"let optionValue of currentValue; let last = last\">\r\n <span i18n=\"@@selection\">{optionValue[text], select, option {option} other {{{optionValue[text]}}}}</span>\r\n <span *ngIf=\"!last\">,&nbsp;</span>\r\n </span>\r\n </ng-container>\r\n </span>\r\n <ng-template *ngIf=\"triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"triggerTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ trigger: currentValue }\"></ng-template>\r\n <ng-template *ngIf=\"optionTemplate?.templateRef && !triggerTemplate?.templateRef\" [ngTemplateOutlet]=\"optionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: currentValue }\"></ng-template>\r\n </div>\r\n <mat-icon *ngIf=\"onLaunch?.observers?.length > 0\" class=\"vd-select-launch-readonly\" (click)=\"$event.stopPropagation(); handleLaunchClicked(value)\">launch</mat-icon>\r\n </div>\r\n <div *ngIf=\"!currentValue\">&nbsp;</div>\r\n</div>\r\n<!-- #endregion -->", styles: [".vd-select-launch{position:absolute;right:30px;top:-5px;font-size:18px;cursor:pointer}.readonly-value{padding-right:24px;opacity:.6;min-height:15px}.vd-select-launch-readonly{position:absolute;right:0;top:9px;font-size:18px;cursor:pointer}.vd-select-filter-wrap{background:inherit;position:sticky;top:0;box-sizing:border-box;z-index:100}.vd-select-filter-wrap .vd-select-filter-inner{z-index:100;display:flex;flex-direction:row;align-items:center;background:inherit}.vd-select-filter-wrap .vd-select-filter-inner .vd-select-filter{box-shadow:none;padding:16px 16px 16px 0;box-sizing:border-box;width:100%;border:none;background-color:inherit;color:inherit}.vd-select-filter-wrap .vd-select-filter-inner .vd-select-filter:focus-visible{border:none;outline:none}.vd-select-filter-wrap .mat-divider{display:block;width:100%;border-top-width:1px;border-top-style:solid;box-sizing:border-box}::ng-deep .mat-mdc-select-trigger{display:flex!important}::ng-deep .mat-mdc-select-trigger .mat-icon{display:flex}\n"] }]
8730
8762
  }], ctorParameters: function () {
8731
8763
  return [{ type: i0.Injector }, { type: i1.NgControl, decorators: [{
8732
8764
  type: Optional
@@ -8736,7 +8768,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
8736
8768
  type: Optional
8737
8769
  }] }, { type: i1.FormGroupDirective, decorators: [{
8738
8770
  type: Optional
8739
- }] }, { type: i2.ErrorStateMatcher }, { type: i3$2.FocusMonitor }, { type: i0.ElementRef }];
8771
+ }] }, { type: i2.ErrorStateMatcher }, { type: i3$2.FocusMonitor }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }];
8740
8772
  }, propDecorators: { optionTemplate: [{
8741
8773
  type: ContentChild,
8742
8774
  args: [VdSelectOptionDirective]
@@ -8755,6 +8787,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
8755
8787
  type: Input
8756
8788
  }], sorted: [{
8757
8789
  type: Input
8790
+ }], triggerCssClass: [{
8791
+ type: Input
8792
+ }], triggerMode: [{
8793
+ type: Input
8758
8794
  }], textPrefix: [{
8759
8795
  type: Input
8760
8796
  }], endpoint: [{
@@ -8811,8 +8847,8 @@ const EXPORTED_DECLARATIONS = [
8811
8847
  ];
8812
8848
  class VdSelectModule {
8813
8849
  }
8814
- /** @nocollapse */ VdSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8815
- /** @nocollapse */ VdSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdSelectModule, declarations: [VdSelectComponent,
8850
+ /** @nocollapse */ VdSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8851
+ /** @nocollapse */ VdSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdSelectModule, declarations: [VdSelectComponent,
8816
8852
  VdSelectOptionDirective,
8817
8853
  VdSelectTriggerDirective], imports: [CommonModule,
8818
8854
  FormsModule,
@@ -8821,12 +8857,12 @@ class VdSelectModule {
8821
8857
  MatButtonModule], exports: [VdSelectComponent,
8822
8858
  VdSelectOptionDirective,
8823
8859
  VdSelectTriggerDirective] });
8824
- /** @nocollapse */ VdSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectModule, imports: [CommonModule,
8860
+ /** @nocollapse */ VdSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectModule, imports: [CommonModule,
8825
8861
  FormsModule,
8826
8862
  MatSelectModule,
8827
8863
  MatIconModule,
8828
8864
  MatButtonModule] });
8829
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSelectModule, decorators: [{
8865
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSelectModule, decorators: [{
8830
8866
  type: NgModule,
8831
8867
  args: [{
8832
8868
  imports: [
@@ -9038,6 +9074,10 @@ class FilterInputComponent {
9038
9074
  * Placeholder for the underlying input component.
9039
9075
  */
9040
9076
  this.placeholder = 'Filter...';
9077
+ /**
9078
+ * Whether the control is focused.
9079
+ */
9080
+ this.focused = false;
9041
9081
  /**
9042
9082
  * Called when the control receives a change event.
9043
9083
  */
@@ -9052,6 +9092,11 @@ class FilterInputComponent {
9052
9092
  this.reload = () => this.table.dataSource['reload']();
9053
9093
  this.field = this.column.name.replace('filter.', '');
9054
9094
  }
9095
+ /**
9096
+ * Whether the control is focused.
9097
+ */
9098
+ onFocusIn() { this.focused = true; }
9099
+ onFocusOut() { this.focused = false; }
9055
9100
  /**
9056
9101
  * Setters and getters for the input value
9057
9102
  */
@@ -9141,41 +9186,37 @@ class FilterInputComponent {
9141
9186
  }
9142
9187
  }
9143
9188
  }
9144
- /** @nocollapse */ FilterInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterInputComponent, deps: [{ token: i1$4.MatTable }, { token: i2$1.CdkColumnDef }], target: i0.ɵɵFactoryTarget.Component });
9145
- /** @nocollapse */ FilterInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: FilterInputComponent, selector: "mat-header-cell[filter-input], [mat-header-cell][filter-input], [filter-input]", inputs: { field: "field", operator: "operator", onlyNumber: "onlyNumber", debounce: "debounce", placeholder: "placeholder" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, providers: [
9189
+ /** @nocollapse */ FilterInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterInputComponent, deps: [{ token: i1$4.MatTable }, { token: i2$1.CdkColumnDef }], target: i0.ɵɵFactoryTarget.Component });
9190
+ /** @nocollapse */ FilterInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: FilterInputComponent, selector: "mat-header-cell[filter-input], [mat-header-cell][filter-input], [filter-input]", inputs: { field: "field", operator: "operator", onlyNumber: "onlyNumber", debounce: "debounce", placeholder: "placeholder" }, host: { listeners: { "focusin": "onFocusIn()", "focusout": "onFocusOut()", "keydown": "onKeyDown($event)" } }, providers: [
9146
9191
  {
9147
9192
  provide: NG_VALUE_ACCESSOR,
9148
9193
  useExisting: forwardRef((() => FilterInputComponent)),
9149
9194
  multi: true
9150
9195
  }
9151
9196
  ], viewQueries: [{ propertyName: "_filter", first: true, predicate: ["filterElement"], descendants: true, static: true }], ngImport: i0, template: `
9152
- <mat-form-field flex>
9153
- <input matInput #filterElement ngControl="filterElement" autocomplete="off" type="input" [(ngModel)]="value" [placeholder]="placeholder" (search)="stopPropagation($event)"
9154
- (keyup.enter)="handleSearch($event)"/>
9155
- <button type="button" mat-button matSuffix mat-icon-button aria-label="Clear" *ngIf="value" (click)="clearSearch()">
9197
+ <mat-form-field [ngClass]="{'filter-not-empty': value}" flex>
9198
+ <input matInput #filterElement ngControl="filterElement" autocomplete="off" type="input" [(ngModel)]="value" (search)="stopPropagation($event)" (keyup.enter)="handleSearch($event)"/>
9199
+ <span matPrefix *ngIf="!value && !focused"><mat-icon>manage_search</mat-icon></span>
9200
+ <button type="button" matSuffix mat-icon-button aria-label="Clear" *ngIf="value" (click)="clearSearch()">
9156
9201
  <mat-icon>close</mat-icon>
9157
9202
  </button>
9158
- </mat-form-field>`, isInline: true, dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i11.MatSuffix, selector: "[matSuffix]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] });
9159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterInputComponent, decorators: [{
9203
+ </mat-form-field>`, isInline: true, styles: [".mdc-icon-button{padding:3px;width:30px;height:30px}.mdc-icon-button mat-icon{line-height:1.125;font-size:.8em}mat-icon{opacity:.6}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]" }, { kind: "directive", type: i6$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] });
9204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterInputComponent, decorators: [{
9160
9205
  type: Component,
9161
- args: [{
9162
- selector: 'mat-header-cell[filter-input], [mat-header-cell][filter-input], [filter-input]',
9163
- template: `
9164
- <mat-form-field flex>
9165
- <input matInput #filterElement ngControl="filterElement" autocomplete="off" type="input" [(ngModel)]="value" [placeholder]="placeholder" (search)="stopPropagation($event)"
9166
- (keyup.enter)="handleSearch($event)"/>
9167
- <button type="button" mat-button matSuffix mat-icon-button aria-label="Clear" *ngIf="value" (click)="clearSearch()">
9206
+ args: [{ selector: 'mat-header-cell[filter-input], [mat-header-cell][filter-input], [filter-input]', template: `
9207
+ <mat-form-field [ngClass]="{'filter-not-empty': value}" flex>
9208
+ <input matInput #filterElement ngControl="filterElement" autocomplete="off" type="input" [(ngModel)]="value" (search)="stopPropagation($event)" (keyup.enter)="handleSearch($event)"/>
9209
+ <span matPrefix *ngIf="!value && !focused"><mat-icon>manage_search</mat-icon></span>
9210
+ <button type="button" matSuffix mat-icon-button aria-label="Clear" *ngIf="value" (click)="clearSearch()">
9168
9211
  <mat-icon>close</mat-icon>
9169
9212
  </button>
9170
- </mat-form-field>`,
9171
- providers: [
9213
+ </mat-form-field>`, providers: [
9172
9214
  {
9173
9215
  provide: NG_VALUE_ACCESSOR,
9174
9216
  useExisting: forwardRef((() => FilterInputComponent)),
9175
9217
  multi: true
9176
9218
  }
9177
- ]
9178
- }]
9219
+ ], styles: [".mdc-icon-button{padding:3px;width:30px;height:30px}.mdc-icon-button mat-icon{line-height:1.125;font-size:.8em}mat-icon{opacity:.6}\n"] }]
9179
9220
  }], ctorParameters: function () { return [{ type: i1$4.MatTable }, { type: i2$1.CdkColumnDef }]; }, propDecorators: { _filter: [{
9180
9221
  type: ViewChild,
9181
9222
  args: ['filterElement', { static: true }]
@@ -9189,6 +9230,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
9189
9230
  type: Input
9190
9231
  }], placeholder: [{
9191
9232
  type: Input
9233
+ }], onFocusIn: [{
9234
+ type: HostListener,
9235
+ args: ["focusin"]
9236
+ }], onFocusOut: [{
9237
+ type: HostListener,
9238
+ args: ["focusout"]
9192
9239
  }], onKeyDown: [{
9193
9240
  type: HostListener,
9194
9241
  args: ['keydown', ['$event']]
@@ -9199,9 +9246,9 @@ class VdFilterOptionDirective extends TemplatePortalDirective {
9199
9246
  super(templateRef, viewContainerRef);
9200
9247
  }
9201
9248
  }
9202
- /** @nocollapse */ VdFilterOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFilterOptionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
9203
- /** @nocollapse */ VdFilterOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdFilterOptionDirective, selector: "[vd-filter-option]ng-template", usesInheritance: true, ngImport: i0 });
9204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFilterOptionDirective, decorators: [{
9249
+ /** @nocollapse */ VdFilterOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFilterOptionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
9250
+ /** @nocollapse */ VdFilterOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdFilterOptionDirective, selector: "[vd-filter-option]ng-template", usesInheritance: true, ngImport: i0 });
9251
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFilterOptionDirective, decorators: [{
9205
9252
  type: Directive,
9206
9253
  args: [{ selector: '[vd-filter-option]ng-template' }]
9207
9254
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -9266,6 +9313,10 @@ class FilterSelectComponent {
9266
9313
  * The http service from to get the data
9267
9314
  */
9268
9315
  this.http = null;
9316
+ /**
9317
+ * Whether the control is focused.
9318
+ */
9319
+ this.focused = false;
9269
9320
  /**
9270
9321
  * Called when the control receives a change event.
9271
9322
  */
@@ -9337,6 +9388,11 @@ class FilterSelectComponent {
9337
9388
  this.onChange(v);
9338
9389
  }
9339
9390
  }
9391
+ /**
9392
+ * Whether the control is focused.
9393
+ */
9394
+ onFocusIn() { this.focused = true; }
9395
+ onFocusOut() { this.focused = false; }
9340
9396
  /**
9341
9397
  * Lifecycle hook that is called after data-bound properties of a directive are initialized.
9342
9398
  */
@@ -9408,16 +9464,21 @@ class FilterSelectComponent {
9408
9464
  */
9409
9465
  registerOnTouched(fn) { this.onTouched = fn; }
9410
9466
  }
9411
- /** @nocollapse */ FilterSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterSelectComponent, deps: [{ token: i0.Injector }, { token: i1$4.MatTable }, { token: i2$1.CdkColumnDef }], target: i0.ɵɵFactoryTarget.Component });
9412
- /** @nocollapse */ FilterSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: FilterSelectComponent, selector: "mat-header-cell[filter-select], [mat-header-cell][filter-select], [filter-select]", inputs: { endpoint: "endpoint", params: "params", projection: "projection", sortBy: "sortBy", sorted: "sorted", enum: "enum", key: "key", text: "text", prefix: "prefix", multiple: "multiple", options: "options", filteredOptions: "filteredOptions", filterable: "filterable", field: "field", placeholder: "placeholder", cache: "cache" }, providers: [
9467
+ /** @nocollapse */ FilterSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterSelectComponent, deps: [{ token: i0.Injector }, { token: i1$4.MatTable }, { token: i2$1.CdkColumnDef }], target: i0.ɵɵFactoryTarget.Component });
9468
+ /** @nocollapse */ FilterSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: FilterSelectComponent, selector: "mat-header-cell[filter-select], [mat-header-cell][filter-select], [filter-select]", inputs: { endpoint: "endpoint", params: "params", projection: "projection", sortBy: "sortBy", sorted: "sorted", enum: "enum", key: "key", text: "text", prefix: "prefix", multiple: "multiple", options: "options", filteredOptions: "filteredOptions", filterable: "filterable", field: "field", placeholder: "placeholder", cache: "cache" }, host: { listeners: { "focusin": "onFocusIn()", "focusout": "onFocusOut()" } }, providers: [
9413
9469
  {
9414
9470
  provide: NG_VALUE_ACCESSOR,
9415
9471
  useExisting: forwardRef((() => FilterSelectComponent)),
9416
9472
  multi: true
9473
+ },
9474
+ {
9475
+ provide: MAT_SELECT_CONFIG,
9476
+ useValue: { overlayPanelClass: 'vd-select-filter-overlay' }
9417
9477
  }
9418
9478
  ], queries: [{ propertyName: "optionTemplate", first: true, predicate: VdFilterOptionDirective, descendants: true }], viewQueries: [{ propertyName: "selectEl", first: true, predicate: MatSelect, descendants: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }], ngImport: i0, template: `
9419
- <mat-form-field flex>
9420
- <mat-select type="input" [(ngModel)]="value" [multiple]="multiple" [placeholder]="placeholder">
9479
+ <mat-form-field [ngClass]="{'filter-not-empty': value}" flex>
9480
+ <span matPrefix *ngIf="!value && value!=0 && !focused"><mat-icon>manage_search</mat-icon></span>
9481
+ <mat-select type="input" [(ngModel)]="value" [multiple]="multiple">
9421
9482
  <input #filterInput *ngIf="filterable" type="text" placeholder="Filter..." class="vd-select-filter" (keyup)="handleFilter($event)">
9422
9483
  <mat-option *ngIf="!multiple" class="tc-grey-500"></mat-option>
9423
9484
  <ng-template let-option let-first="first" ngFor [ngForOf]="filteredOptions">
@@ -9427,12 +9488,13 @@ class FilterSelectComponent {
9427
9488
  </mat-option>
9428
9489
  </ng-template>
9429
9490
  </mat-select>
9430
- </mat-form-field>`, isInline: true, styles: [".vd-select-filter{position:sticky;top:0;z-index:100;font-size:inherit;box-shadow:none;border-radius:0;padding:11px 16px;box-sizing:border-box;border:none;border-bottom:1px solid #dcdcdc;width:100%;background-color:#f5f5f5;outline:none}\n"], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }] });
9431
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterSelectComponent, decorators: [{
9491
+ </mat-form-field>`, isInline: true, styles: [".vd-select-filter{position:sticky;top:0;z-index:100;font-size:inherit;box-shadow:none;border-radius:0;padding:11px 16px;box-sizing:border-box;border:none;border-bottom:1px solid #dcdcdc;width:100%;background-color:inherit;color:inherit;outline:none}mat-icon{opacity:.7}::ng-deep .vd-select-filter-overlay{min-width:150px}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]" }, { kind: "component", type: i5$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
9492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterSelectComponent, decorators: [{
9432
9493
  type: Component,
9433
9494
  args: [{ selector: 'mat-header-cell[filter-select], [mat-header-cell][filter-select], [filter-select]', template: `
9434
- <mat-form-field flex>
9435
- <mat-select type="input" [(ngModel)]="value" [multiple]="multiple" [placeholder]="placeholder">
9495
+ <mat-form-field [ngClass]="{'filter-not-empty': value}" flex>
9496
+ <span matPrefix *ngIf="!value && value!=0 && !focused"><mat-icon>manage_search</mat-icon></span>
9497
+ <mat-select type="input" [(ngModel)]="value" [multiple]="multiple">
9436
9498
  <input #filterInput *ngIf="filterable" type="text" placeholder="Filter..." class="vd-select-filter" (keyup)="handleFilter($event)">
9437
9499
  <mat-option *ngIf="!multiple" class="tc-grey-500"></mat-option>
9438
9500
  <ng-template let-option let-first="first" ngFor [ngForOf]="filteredOptions">
@@ -9447,8 +9509,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
9447
9509
  provide: NG_VALUE_ACCESSOR,
9448
9510
  useExisting: forwardRef((() => FilterSelectComponent)),
9449
9511
  multi: true
9512
+ },
9513
+ {
9514
+ provide: MAT_SELECT_CONFIG,
9515
+ useValue: { overlayPanelClass: 'vd-select-filter-overlay' }
9450
9516
  }
9451
- ], styles: [".vd-select-filter{position:sticky;top:0;z-index:100;font-size:inherit;box-shadow:none;border-radius:0;padding:11px 16px;box-sizing:border-box;border:none;border-bottom:1px solid #dcdcdc;width:100%;background-color:#f5f5f5;outline:none}\n"] }]
9517
+ ], styles: [".vd-select-filter{position:sticky;top:0;z-index:100;font-size:inherit;box-shadow:none;border-radius:0;padding:11px 16px;box-sizing:border-box;border:none;border-bottom:1px solid #dcdcdc;width:100%;background-color:inherit;color:inherit;outline:none}mat-icon{opacity:.7}::ng-deep .vd-select-filter-overlay{min-width:150px}\n"] }]
9452
9518
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$4.MatTable }, { type: i2$1.CdkColumnDef }]; }, propDecorators: { optionTemplate: [{
9453
9519
  type: ContentChild,
9454
9520
  args: [VdFilterOptionDirective]
@@ -9490,6 +9556,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
9490
9556
  type: Input
9491
9557
  }], cache: [{
9492
9558
  type: Input
9559
+ }], onFocusIn: [{
9560
+ type: HostListener,
9561
+ args: ["focusin"]
9562
+ }], onFocusOut: [{
9563
+ type: HostListener,
9564
+ args: ["focusout"]
9493
9565
  }] } });
9494
9566
 
9495
9567
  /**
@@ -9754,18 +9826,18 @@ class FilterClearComponent {
9754
9826
  }
9755
9827
  }
9756
9828
  }
9757
- /** @nocollapse */ FilterClearComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterClearComponent, deps: [{ token: i1$4.MatTable }], target: i0.ɵɵFactoryTarget.Component });
9758
- /** @nocollapse */ FilterClearComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: FilterClearComponent, selector: "mat-header-cell[filter-clear], [mat-header-cell][filter-clear], [filter-clear]", ngImport: i0, template: `
9759
- <button type="button" mat-icon-button (click)="clear()">
9760
- <mat-icon>backspace</mat-icon>
9761
- </button>`, isInline: true, dependencies: [{ kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
9762
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterClearComponent, decorators: [{
9829
+ /** @nocollapse */ FilterClearComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterClearComponent, deps: [{ token: i1$4.MatTable }], target: i0.ɵɵFactoryTarget.Component });
9830
+ /** @nocollapse */ FilterClearComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: FilterClearComponent, selector: "mat-header-cell[filter-clear], [mat-header-cell][filter-clear], [filter-clear]", ngImport: i0, template: `
9831
+ <button type="button" mat-icon-button (click)="clear()">
9832
+ <mat-icon>backspace</mat-icon>
9833
+ </button>`, isInline: true, dependencies: [{ kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
9834
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterClearComponent, decorators: [{
9763
9835
  type: Component,
9764
9836
  args: [{
9765
9837
  selector: 'mat-header-cell[filter-clear], [mat-header-cell][filter-clear], [filter-clear]',
9766
- template: `
9767
- <button type="button" mat-icon-button (click)="clear()">
9768
- <mat-icon>backspace</mat-icon>
9838
+ template: `
9839
+ <button type="button" mat-icon-button (click)="clear()">
9840
+ <mat-icon>backspace</mat-icon>
9769
9841
  </button>`,
9770
9842
  }]
9771
9843
  }], ctorParameters: function () { return [{ type: i1$4.MatTable }]; } });
@@ -9792,6 +9864,10 @@ class FilterDateComponent {
9792
9864
  * Placeholder for the underlying input component.
9793
9865
  */
9794
9866
  this.placeholder = 'Filter...';
9867
+ /**
9868
+ * Whether the control is focused.
9869
+ */
9870
+ this.focused = false;
9795
9871
  /**
9796
9872
  * Called when the control receives a change event.
9797
9873
  */
@@ -9822,6 +9898,11 @@ class FilterDateComponent {
9822
9898
  this.onChange(v);
9823
9899
  }
9824
9900
  }
9901
+ /**
9902
+ * Whether the control is focused.
9903
+ */
9904
+ onFocusIn() { this.focused = true; }
9905
+ onFocusOut() { this.focused = false; }
9825
9906
  /**
9826
9907
  * Call serch event
9827
9908
  */
@@ -9858,8 +9939,8 @@ class FilterDateComponent {
9858
9939
  */
9859
9940
  registerOnTouched(fn) { this.onTouched = fn; }
9860
9941
  }
9861
- /** @nocollapse */ FilterDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterDateComponent, deps: [{ token: i1$4.MatTable }, { token: i2$1.CdkColumnDef }], target: i0.ɵɵFactoryTarget.Component });
9862
- /** @nocollapse */ FilterDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: FilterDateComponent, selector: "mat-header-cell[filter-date], [mat-header-cell][filter-date], [filter-date]", inputs: { field: "field", debounce: "debounce", placeholder: "placeholder" }, providers: [
9942
+ /** @nocollapse */ FilterDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterDateComponent, deps: [{ token: i1$4.MatTable }, { token: i2$1.CdkColumnDef }], target: i0.ɵɵFactoryTarget.Component });
9943
+ /** @nocollapse */ FilterDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: FilterDateComponent, selector: "mat-header-cell[filter-date], [mat-header-cell][filter-date], [filter-date]", inputs: { field: "field", debounce: "debounce", placeholder: "placeholder" }, host: { listeners: { "focusin": "onFocusIn()", "focusout": "onFocusOut()" } }, providers: [
9863
9944
  {
9864
9945
  provide: NG_VALUE_ACCESSOR,
9865
9946
  useExisting: forwardRef((() => FilterDateComponent)),
@@ -9867,36 +9948,30 @@ class FilterDateComponent {
9867
9948
  }
9868
9949
  ], ngImport: i0, template: `
9869
9950
  <mat-form-field flex>
9870
- <input matInput [matDatepicker]="picker" [ngModel]="value" (ngModelChange)="handleSearch($event)"
9871
- (click)="picker.open()" [placeholder]="placeholder" (search)="handleSearch($event)" (keyup.enter)="handleSearch($event)"
9872
- readonly>
9951
+ <input matInput [matDatepicker]="picker" [ngModel]="value" (ngModelChange)="handleSearch($event)" (click)="picker.open()" (search)="handleSearch($event)" (keyup.enter)="handleSearch($event)" readonly>
9952
+ <span matPrefix *ngIf="!value && !focused"><mat-icon>manage_search</mat-icon></span>
9873
9953
  <button type="button" mat-button matSuffix mat-icon-button aria-label="Clear" *ngIf="value" (click)="clearSearch()">
9874
9954
  <mat-icon>close</mat-icon>
9875
9955
  </button>
9876
9956
  <mat-datepicker #picker></mat-datepicker>
9877
- </mat-form-field>`, isInline: true, dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i11.MatSuffix, selector: "[matSuffix]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i17.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i17.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }] });
9878
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FilterDateComponent, decorators: [{
9957
+ </mat-form-field>`, isInline: true, styles: [".mdc-icon-button{padding:3px;width:30px;height:30px}.mdc-icon-button mat-icon{line-height:1.125;font-size:.8em}mat-icon{opacity:.7}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]" }, { kind: "directive", type: i6$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i17.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i17.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }] });
9958
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FilterDateComponent, decorators: [{
9879
9959
  type: Component,
9880
- args: [{
9881
- selector: 'mat-header-cell[filter-date], [mat-header-cell][filter-date], [filter-date]',
9882
- template: `
9960
+ args: [{ selector: 'mat-header-cell[filter-date], [mat-header-cell][filter-date], [filter-date]', template: `
9883
9961
  <mat-form-field flex>
9884
- <input matInput [matDatepicker]="picker" [ngModel]="value" (ngModelChange)="handleSearch($event)"
9885
- (click)="picker.open()" [placeholder]="placeholder" (search)="handleSearch($event)" (keyup.enter)="handleSearch($event)"
9886
- readonly>
9962
+ <input matInput [matDatepicker]="picker" [ngModel]="value" (ngModelChange)="handleSearch($event)" (click)="picker.open()" (search)="handleSearch($event)" (keyup.enter)="handleSearch($event)" readonly>
9963
+ <span matPrefix *ngIf="!value && !focused"><mat-icon>manage_search</mat-icon></span>
9887
9964
  <button type="button" mat-button matSuffix mat-icon-button aria-label="Clear" *ngIf="value" (click)="clearSearch()">
9888
9965
  <mat-icon>close</mat-icon>
9889
9966
  </button>
9890
9967
  <mat-datepicker #picker></mat-datepicker>
9891
- </mat-form-field>`,
9892
- providers: [
9968
+ </mat-form-field>`, providers: [
9893
9969
  {
9894
9970
  provide: NG_VALUE_ACCESSOR,
9895
9971
  useExisting: forwardRef((() => FilterDateComponent)),
9896
9972
  multi: true
9897
9973
  }
9898
- ]
9899
- }]
9974
+ ], styles: [".mdc-icon-button{padding:3px;width:30px;height:30px}.mdc-icon-button mat-icon{line-height:1.125;font-size:.8em}mat-icon{opacity:.7}\n"] }]
9900
9975
  }], ctorParameters: function () { return [{ type: i1$4.MatTable }, { type: i2$1.CdkColumnDef }]; }, propDecorators: { field: [{
9901
9976
  type: Input
9902
9977
  }], debounce: [{
@@ -9905,6 +9980,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
9905
9980
  }], placeholder: [{
9906
9981
  type: Input,
9907
9982
  args: ['placeholder']
9983
+ }], onFocusIn: [{
9984
+ type: HostListener,
9985
+ args: ["focusin"]
9986
+ }], onFocusOut: [{
9987
+ type: HostListener,
9988
+ args: ["focusout"]
9908
9989
  }] } });
9909
9990
 
9910
9991
  class DataSourceFilterDirective {
@@ -9935,9 +10016,9 @@ class DataSourceFilterDirective {
9935
10016
  });
9936
10017
  }
9937
10018
  }
9938
- /** @nocollapse */ DataSourceFilterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DataSourceFilterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
9939
- /** @nocollapse */ DataSourceFilterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: DataSourceFilterDirective, selector: "[dataSourceFilter]", inputs: { dataSource: "dataSource", dataSourceFilter: "dataSourceFilter" }, ngImport: i0 });
9940
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DataSourceFilterDirective, decorators: [{
10019
+ /** @nocollapse */ DataSourceFilterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DataSourceFilterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10020
+ /** @nocollapse */ DataSourceFilterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: DataSourceFilterDirective, selector: "[dataSourceFilter]", inputs: { dataSource: "dataSource", dataSourceFilter: "dataSourceFilter" }, ngImport: i0 });
10021
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DataSourceFilterDirective, decorators: [{
9941
10022
  type: Directive,
9942
10023
  args: [{
9943
10024
  selector: '[dataSourceFilter]'
@@ -10283,15 +10364,15 @@ class VdDynamicTableComponent {
10283
10364
  this.changeDetector.detectChanges();
10284
10365
  }
10285
10366
  }
10286
- /** @nocollapse */ VdDynamicTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDynamicTableComponent, deps: [{ token: DynamicBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
10287
- /** @nocollapse */ VdDynamicTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdDynamicTableComponent, selector: "vd-dynamic-table", inputs: { dataSource: "dataSource", data: "data", classType: "classType", context: "context", dataSourceFilter: "dataSourceFilter", static: "static", filterable: "filterable", paginable: "paginable", selectable: "selectable", sortActive: "sortActive", sortDirection: "sortDirection", stickyHeader: "stickyHeader", stickyFilter: "stickyFilter", rowNgClass: "rowNgClass", detailsTemplate: "detailsTemplate", readonly: "readonly", selectAllFilter: "selectAllFilter", columns: "columns", rowMenuItems: "rowMenuItems", excludedColumns: "excludedColumns", pageSize: "pageSize", pageSizeOptions: "pageSizeOptions" }, outputs: { rowClick: "rowClick" }, host: { listeners: { "document:contextmenu": "handleContextMenuEvent($event)" } }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "detailsTemplateRef", predicate: ["detailsTemplate"], descendants: true, read: ViewContainerRef }, { propertyName: "rowContextMenuTriggers", predicate: MatMenuTrigger, descendants: true }], ngImport: i0, template: "<div class=\"loading-progress\" *ngIf=\"!static\">\r\n\t<mat-progress-bar mode=\"indeterminate\" *ngIf=\"dataSource?.isLoading\"></mat-progress-bar>\r\n</div>\r\n\r\n<!-- #region Data table -->\r\n<table mat-table #table [dataSource]=\"dataSource\" [dataSourceFilter]=\"dataSourceFilter\" [ngClass]=\"{'table-fixed': !detailsTemplate && !templateRef}\" [trackBy]=\"trackBy\" matSort matSortDisableClear [matSortActive]=\"sortActive||'id'\" [matSortDirection]=\"sortDirection\" multiTemplateDataRows>\r\n\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t<!-- #region Column def -->\r\n\t\t<ng-container [cdkColumnDef]=\"column.name\" [sticky]=\"column.sticky\" [stickyEnd]=\"column.stickyEnd\">\r\n\t\t\t<th mat-header-cell *cdkHeaderCellDef [mat-sort-header]=\"column.sortBy || column.name\" [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [disabled]=\"column.type == ColumnType.Checkbox || column.disabled\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\" [arrowPosition]=\"column.arrowBefore?'before':'after'\">\r\n\t\t\t\t<mat-checkbox *ngIf=\"column.type == ColumnType.Checkbox\" (change)=\"$event ? dataSource.toggleSelect($event, selectAllFilter) : null\" [disabled]=\"!dataSource.paginator?.length\" [checked]=\"dataSource.selectionModel.hasValue() && dataSource.isAllSelected()\" [indeterminate]=\"dataSource.selectionModel.hasValue() && !dataSource.isAllSelected()\"></mat-checkbox>\r\n\t\t\t\t<span *ngIf=\"column.type != ColumnType.Checkbox\">{{column.header}}</span>\r\n\t\t\t</th>\r\n\r\n\t\t\t<td mat-cell *cdkCellDef=\"let row; let rowIndex = index\" [matTooltip]=\"column.tooltip?column.tooltip(row, context):null\" [matTooltipClass]=\"column.tooltipClass\" [hidden]=\"column.hidden\" [ngClass]=\"getRowClasses(column, row)\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\">\r\n\t\t\t\t<ng-container [ngSwitch]=\"column.type\">\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<mat-checkbox *ngSwitchCase=\"ColumnType.Checkbox\" (click)=\"$event.stopPropagation()\" (change)=\"$event ? dataSource.selectionModel.toggle(row) : null\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [checked]=\"dataSource.selectionModel.isSelected(row)\"></mat-checkbox>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Enum\" i18n=\"@@selection\">{column.content(row) | enum:column.enumType:column.enumPrefix, select, type {type} other {{{column.content(row, context) | enum:column.enumType:column.enumPrefix}}}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Toggle column -->\r\n\t\t\t\t\t<mat-slide-toggle *ngSwitchCase=\"ColumnType.Toggle\" [(ngModel)]=\"row[column.name]\" (click)=\"$event.stopPropagation();\" (ngModelChange)=\"handleModelChange(column, row)\" [disabled]=\"readonly || (column.disable && column.disable(row, context))\" color=\"primary\"></mat-slide-toggle>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Date\">{{column.content(row, context) | date:column.shortDate?'dd.MM.yyyy':'dd.MM.yyyy HH:mm:ss'}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.TextInput\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<input type=\"{{column.inputType}}\" autocomplete=\"none\" matInput name=\"{{column.name}}{{rowIndex}}\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [min]=\"column.inputMin?column.inputMin(row, context):null\" [max]=\"column.inputMax?column.inputMax(row, context):null\" (ngModelChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" [ngModelOptions]=\"{updateOn: 'blur'}\" (keydown.enter)=\"handleKeydownEnter($event)\">\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.Select\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<vd-select name=\"{{column.name}}{{rowIndex}}\" [enum]=\"column.enumType\" [options]=\"column.options\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" (selectionChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" (keydown.enter)=\"handleKeydownEnter($event)\"></vd-select>\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action -->\r\n\t\t\t\t\t<ng-container *ngSwitchCase=\"ColumnType.Action\">\r\n\t\t\t\t\t\t<div id=\"menu-{{row.id}}\" style=\"visibility: hidden; position: fixed;\" #contextMenuTrigger=\"matMenuTrigger\" [matMenuTriggerFor]=\"menu.matMenu\" *ngIf=\"menu?.matMenu && !row.locked && hasVisibleRowMenuItems(row, column)\"></div>\r\n\t\t\t\t\t\t<vd-dynamic-menu [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\" #menu></vd-dynamic-menu>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Menu -->\r\n\t\t\t\t\t<vd-dynamic-menu *ngSwitchCase=\"ColumnType.Menu\" [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region icon button -->\r\n\t\t\t\t\t<a mat-icon-button *ngSwitchCase=\"ColumnType.IconButton\" (click)=\"$event.stopPropagation();column.iconButton?.event?column.iconButton.event(row, context):null\">\r\n\t\t\t\t\t\t<mat-icon fontSet=\"{{column.iconButton?.iconFontSet || 'material-icons-outlined'}}\" [class]=\"handleExpression(column.iconButton?.iconClass, row)\">{{handleExpression(column.iconButton?.icon, row) || 'radio_button_checked'}}</mat-icon>\r\n\t\t\t\t\t</a>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Other column types -->\r\n\t\t\t\t\t<span *ngSwitchDefault [innerHtml]=\"column.content ? column.content(row, context):''\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</ng-container>\r\n\t\t\t</td>\r\n\t\t</ng-container>\r\n\t\t<!-- #endregion -->\r\n\t</ng-container>\r\n\r\n\t<!-- #region Filter row -->\r\n\t<ng-container *ngIf=\"dataSource && filterable\">\r\n\t\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t\t<ng-container cdkColumnDef=\"filter.{{column.filter || column.name}}\">\r\n\t\t\t\t<th mat-header-cell *cdkHeaderCellDef [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\">\r\n\t\t\t\t\t<!-- #region Select filter -->\r\n\t\t\t\t\t<span *ngIf=\"(column.endpoint || column.enumType || column.options) else notSelectFilter\" filter-select [endpoint]=\"column.endpoint\" [enum]=\"column.enumType\" [prefix]=\"column.enumPrefix\" [options]=\"column.options\" [text]=\"column.filterOptionText || 'name'\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text filter -->\r\n\t\t\t\t\t<ng-template #notSelectFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"notSelectFilter && (column.type == ColumnType.Text || column.type == ColumnType.TextInput || column.type == ColumnType.Number) else notInputFilter\" filter-input [onlyNumber]=\"column.filterInputNumber\" [operator]=\"column.filterOperator\"></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date filter -->\r\n\t\t\t\t\t<ng-template #notInputFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Date else notDateFilter\" filter-date></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action filter (clear) -->\r\n\t\t\t\t\t<ng-template #notDateFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Action\" filter-clear></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</th>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Details column -->\r\n\t<ng-container cdkColumnDef=\"expandedDetail\">\r\n\t\t<td mat-cell *matCellDef=\"let row; let index = index\" [attr.colspan]=\"(displayedColumns$ | async).length\">\r\n\t\t\t<div class=\"row-detail\" [@detailExpand]=\"row == expandedRow ? 'expanded' : 'collapsed'\" #detailsTemplate>\r\n\t\t\t\t<ng-container *ngIf=\"templateRef && row === expandedRow\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"templateRef; context:{row: row, index: index, context: context}\"></ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</td>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Filter header -->\r\n\t<ng-container *ngIf=\"filterable\">\r\n\t\t<tr mat-header-row *cdkHeaderRowDef=\"displayedFilterColumns$ | async\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<tr mat-header-row *cdkHeaderRowDef=\"displayedColumns$ | async; sticky: stickyFilter\"></tr>\r\n\t<tr mat-row *cdkRowDef=\"let row; columns: displayedColumns$ | async; let index = dataIndex\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\" [class.expanded-row]=\"expandedRow === row\" (click)=\"handleRowClick(index, row)\" (contextmenu)=\"handleRowRightClick($event, row)\"></tr>\r\n\r\n\t<!-- #region Detrails row -->\r\n\t<ng-container *ngIf=\"detailsTemplate || templateRef\">\r\n\t\t<tr mat-row *cdkRowDef=\"let row; columns: ['expandedDetail']\" class=\"detail-row\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n</table>\r\n<!-- #endregion -->\r\n\r\n<!-- #region Row shown when there is no matching data.-->\r\n<div class=\"mat-cell pad table-empty txt-italic\" *ngIf=\"!dataSource?.filteredData?.length && !dataSource?.total\" i18n=\"@@noResultsFound\">No results were found.</div>\r\n<!-- #endregion -->\r\n\r\n<div class=\"table-footer\" layout=\"row\">\r\n\t<ng-content select=\"[table-footer]\"></ng-content>\r\n\t<span flex></span>\r\n\t<mat-paginator *ngIf=\"paginable\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\"></mat-paginator>\r\n</div>", styles: ["::ng-deep .mat-table .mat-row .mat-cell .mat-form-field .mat-form-field-wrapper{width:100%}@media (max-width: 389px){::ng-deep .mat-table [gt-xs],::ng-deep .mat-table .gt-xs{display:none}::ng-deep .mat-table [gt-sm],::ng-deep .mat-table .gt-sm{display:none}::ng-deep .mat-table [gt-md],::ng-deep .mat-table .gt-md{display:none}::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 599px){::ng-deep .mat-table [gt-sm],::ng-deep .mat-table .gt-sm{display:none}::ng-deep .mat-table [gt-md],::ng-deep .mat-table .gt-md{display:none}::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 959px){::ng-deep .mat-table [gt-md],::ng-deep .mat-table .gt-md{display:none}::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 1279px){::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 1919px){::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 1979px){::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: ["items", "data", "context"] }, { kind: "directive", type: OnlyNumberDirective, selector: "[onlyNumber]", inputs: ["onlyNumber"] }, { kind: "component", type: VdSelectComponent, selector: "vd-select", inputs: ["multiple", "disabled", "sorted", "textPrefix", "endpoint", "params", "projection", "enum", "key", "text", "prefix", "options", "filteredOptions", "filterable", "cache", "sortBy", "mapper", "compareWith", "searchField"], outputs: ["change", "itemChange", "selected", "itemSelected", "launch"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i1$4.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i1$4.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i1$4.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i1$4.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i1$4.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i1$4.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i12.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i12.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i2$1.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i2$1.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i2$1.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i2$1.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["sticky", "cdkColumnDef", "stickyEnd"] }, { kind: "directive", type: i2$1.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "component", type: i14.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i15.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i17$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i18.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "directive", type: i19.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: FilterInputComponent, selector: "mat-header-cell[filter-input], [mat-header-cell][filter-input], [filter-input]", inputs: ["field", "operator", "onlyNumber", "debounce", "placeholder"] }, { kind: "component", type: FilterSelectComponent, selector: "mat-header-cell[filter-select], [mat-header-cell][filter-select], [filter-select]", inputs: ["endpoint", "params", "projection", "sortBy", "sorted", "enum", "key", "text", "prefix", "multiple", "options", "filteredOptions", "filterable", "field", "placeholder", "cache"] }, { kind: "component", type: FilterClearComponent, selector: "mat-header-cell[filter-clear], [mat-header-cell][filter-clear], [filter-clear]" }, { kind: "component", type: FilterDateComponent, selector: "mat-header-cell[filter-date], [mat-header-cell][filter-date], [filter-date]", inputs: ["field", "debounce", "placeholder"] }, { kind: "directive", type: DataSourceFilterDirective, selector: "[dataSourceFilter]", inputs: ["dataSource", "dataSourceFilter"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.DatePipe, name: "date" }, { kind: "pipe", type: EnumPipe, name: "enum" }], animations: [
10367
+ /** @nocollapse */ VdDynamicTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDynamicTableComponent, deps: [{ token: DynamicBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
10368
+ /** @nocollapse */ VdDynamicTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdDynamicTableComponent, selector: "vd-dynamic-table", inputs: { dataSource: "dataSource", data: "data", classType: "classType", context: "context", dataSourceFilter: "dataSourceFilter", static: "static", filterable: "filterable", paginable: "paginable", selectable: "selectable", sortActive: "sortActive", sortDirection: "sortDirection", stickyHeader: "stickyHeader", stickyFilter: "stickyFilter", rowNgClass: "rowNgClass", detailsTemplate: "detailsTemplate", readonly: "readonly", selectAllFilter: "selectAllFilter", columns: "columns", rowMenuItems: "rowMenuItems", excludedColumns: "excludedColumns", pageSize: "pageSize", pageSizeOptions: "pageSizeOptions" }, outputs: { rowClick: "rowClick" }, host: { listeners: { "document:contextmenu": "handleContextMenuEvent($event)" } }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "detailsTemplateRef", predicate: ["detailsTemplate"], descendants: true, read: ViewContainerRef }, { propertyName: "rowContextMenuTriggers", predicate: MatMenuTrigger, descendants: true }], ngImport: i0, template: "<div class=\"loading-progress\" *ngIf=\"!static\">\r\n\t<mat-progress-bar mode=\"indeterminate\" *ngIf=\"dataSource?.isLoading\"></mat-progress-bar>\r\n</div>\r\n\r\n<!-- #region Data table -->\r\n<table mat-table #table [dataSource]=\"dataSource\" [dataSourceFilter]=\"dataSourceFilter\" [ngClass]=\"{'table-fixed': !detailsTemplate && !templateRef}\" [trackBy]=\"trackBy\" matSort matSortDisableClear [matSortActive]=\"sortActive||'id'\" [matSortDirection]=\"sortDirection\" multiTemplateDataRows>\r\n\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t<!-- #region Column def -->\r\n\t\t<ng-container [cdkColumnDef]=\"column.name\" [sticky]=\"column.sticky\" [stickyEnd]=\"column.stickyEnd\">\r\n\t\t\t<th mat-header-cell *cdkHeaderCellDef [mat-sort-header]=\"column.sortBy || column.name\" [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [disabled]=\"column.type == ColumnType.Checkbox || column.disabled\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\" [arrowPosition]=\"column.arrowBefore?'before':'after'\">\r\n\t\t\t\t<mat-checkbox *ngIf=\"column.type == ColumnType.Checkbox\" (change)=\"$event ? dataSource.toggleSelect($event, selectAllFilter) : null\" [disabled]=\"!dataSource.paginator?.length\" [checked]=\"dataSource.selectionModel.hasValue() && dataSource.isAllSelected()\" [indeterminate]=\"dataSource.selectionModel.hasValue() && !dataSource.isAllSelected()\"></mat-checkbox>\r\n\t\t\t\t<span *ngIf=\"column.type != ColumnType.Checkbox\">{{column.header}}</span>\r\n\t\t\t</th>\r\n\r\n\t\t\t<td mat-cell *cdkCellDef=\"let row; let rowIndex = index\" [matTooltip]=\"column.tooltip?column.tooltip(row, context):null\" [matTooltipClass]=\"column.tooltipClass\" [hidden]=\"column.hidden\" [ngClass]=\"getRowClasses(column, row)\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\">\r\n\t\t\t\t<ng-container [ngSwitch]=\"column.type\">\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<mat-checkbox *ngSwitchCase=\"ColumnType.Checkbox\" (click)=\"$event.stopPropagation()\" (change)=\"$event ? dataSource.selectionModel.toggle(row) : null\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [checked]=\"dataSource.selectionModel.isSelected(row)\"></mat-checkbox>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Enum\" i18n=\"@@selection\">{column.content(row) | enum:column.enumType:column.enumPrefix, select, type {type} other {{{column.content(row, context) | enum:column.enumType:column.enumPrefix}}}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Toggle column -->\r\n\t\t\t\t\t<mat-slide-toggle *ngSwitchCase=\"ColumnType.Toggle\" [(ngModel)]=\"row[column.name]\" (click)=\"$event.stopPropagation();\" (ngModelChange)=\"handleModelChange(column, row)\" [disabled]=\"readonly || (column.disable && column.disable(row, context))\" color=\"primary\"></mat-slide-toggle>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Date\">{{column.content(row, context) | date:column.shortDate?'dd.MM.yyyy':'dd.MM.yyyy HH:mm:ss'}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.TextInput\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<input type=\"{{column.inputType}}\" autocomplete=\"none\" matInput name=\"{{column.name}}{{rowIndex}}\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [min]=\"column.inputMin?column.inputMin(row, context):null\" [max]=\"column.inputMax?column.inputMax(row, context):null\" (ngModelChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" [ngModelOptions]=\"{updateOn: 'blur'}\" (keydown.enter)=\"handleKeydownEnter($event)\">\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.Select\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<vd-select name=\"{{column.name}}{{rowIndex}}\" [enum]=\"column.enumType\" [options]=\"column.options\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" (selectionChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" (keydown.enter)=\"handleKeydownEnter($event)\"></vd-select>\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action -->\r\n\t\t\t\t\t<ng-container *ngSwitchCase=\"ColumnType.Action\">\r\n\t\t\t\t\t\t<div id=\"menu-{{row.id}}\" style=\"visibility: hidden; position: fixed;\" #contextMenuTrigger=\"matMenuTrigger\" [matMenuTriggerFor]=\"menu.matMenu\" *ngIf=\"menu?.matMenu && !row.locked && hasVisibleRowMenuItems(row, column)\"></div>\r\n\t\t\t\t\t\t<vd-dynamic-menu [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\" #menu></vd-dynamic-menu>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Menu -->\r\n\t\t\t\t\t<vd-dynamic-menu *ngSwitchCase=\"ColumnType.Menu\" [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region icon button -->\r\n\t\t\t\t\t<a mat-icon-button *ngSwitchCase=\"ColumnType.IconButton\" (click)=\"$event.stopPropagation();column.iconButton?.event?column.iconButton.event(row, context):null\">\r\n\t\t\t\t\t\t<mat-icon fontSet=\"{{column.iconButton?.iconFontSet || 'material-icons-outlined'}}\" [class]=\"handleExpression(column.iconButton?.iconClass, row)\">{{handleExpression(column.iconButton?.icon, row) || 'radio_button_checked'}}</mat-icon>\r\n\t\t\t\t\t</a>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Other column types -->\r\n\t\t\t\t\t<span *ngSwitchDefault [innerHtml]=\"column.content ? column.content(row, context):''\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</ng-container>\r\n\t\t\t</td>\r\n\t\t</ng-container>\r\n\t\t<!-- #endregion -->\r\n\t</ng-container>\r\n\r\n\t<!-- #region Filter row -->\r\n\t<ng-container *ngIf=\"dataSource && filterable\">\r\n\t\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t\t<ng-container cdkColumnDef=\"filter.{{column.filter || column.name}}\">\r\n\t\t\t\t<th mat-header-cell *cdkHeaderCellDef [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\">\r\n\t\t\t\t\t<!-- #region Select filter -->\r\n\t\t\t\t\t<span *ngIf=\"(column.endpoint || column.enumType || column.options) else notSelectFilter\" filter-select [endpoint]=\"column.endpoint\" [enum]=\"column.enumType\" [prefix]=\"column.enumPrefix\" [options]=\"column.options\" [text]=\"column.filterOptionText || 'name'\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text filter -->\r\n\t\t\t\t\t<ng-template #notSelectFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"notSelectFilter && (column.type == ColumnType.Text || column.type == ColumnType.TextInput || column.type == ColumnType.Number) else notInputFilter\" filter-input [onlyNumber]=\"column.filterInputNumber\" [operator]=\"column.filterOperator\"></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date filter -->\r\n\t\t\t\t\t<ng-template #notInputFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Date else notDateFilter\" filter-date></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action filter (clear) -->\r\n\t\t\t\t\t<ng-template #notDateFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Action\" filter-clear></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</th>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Details column -->\r\n\t<ng-container cdkColumnDef=\"expandedDetail\">\r\n\t\t<td mat-cell *matCellDef=\"let row; let index = index\" [attr.colspan]=\"(displayedColumns$ | async).length\">\r\n\t\t\t<div class=\"row-detail\" [@detailExpand]=\"row == expandedRow ? 'expanded' : 'collapsed'\" #detailsTemplate>\r\n\t\t\t\t<ng-container *ngIf=\"templateRef && row === expandedRow\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"templateRef; context:{row: row, index: index, context: context}\"></ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</td>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Filter header -->\r\n\t<ng-container *ngIf=\"filterable\">\r\n\t\t<tr mat-header-row *cdkHeaderRowDef=\"displayedFilterColumns$ | async\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<tr mat-header-row *cdkHeaderRowDef=\"displayedColumns$ | async; sticky: stickyFilter\"></tr>\r\n\t<tr mat-row *cdkRowDef=\"let row; columns: displayedColumns$ | async; let index = dataIndex\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\" [class.expanded-row]=\"expandedRow === row\" (click)=\"handleRowClick(index, row)\" (contextmenu)=\"handleRowRightClick($event, row)\"></tr>\r\n\r\n\t<!-- #region Detrails row -->\r\n\t<ng-container *ngIf=\"detailsTemplate || templateRef\">\r\n\t\t<tr mat-row *cdkRowDef=\"let row; columns: ['expandedDetail']\" class=\"detail-row\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n</table>\r\n<!-- #endregion -->\r\n\r\n<!-- #region Row shown when there is no matching data.-->\r\n<div class=\"mat-cell pad table-empty txt-italic\" *ngIf=\"!dataSource?.filteredData?.length && !dataSource?.total\" i18n=\"@@noResultsFound\">No results were found.</div>\r\n<!-- #endregion -->\r\n\r\n<div class=\"table-footer\" layout=\"row\">\r\n\t<ng-content select=\"[table-footer]\"></ng-content>\r\n\t<span flex></span>\r\n\t<mat-paginator *ngIf=\"paginable\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\"></mat-paginator>\r\n</div>", styles: ["::ng-deep .mat-mdc-table .mat-mdc-row .mat-mdc-cell .mat-mdc-form-field .mat-form-field-wrapper{width:100%}@media (max-width: 389px){::ng-deep .mat-mdc-table [gt-xs],::ng-deep .mat-mdc-table .gt-xs{display:none}::ng-deep .mat-mdc-table [gt-sm],::ng-deep .mat-mdc-table .gt-sm{display:none}::ng-deep .mat-mdc-table [gt-md],::ng-deep .mat-mdc-table .gt-md{display:none}::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 599px){::ng-deep .mat-mdc-table [gt-sm],::ng-deep .mat-mdc-table .gt-sm{display:none}::ng-deep .mat-mdc-table [gt-md],::ng-deep .mat-mdc-table .gt-md{display:none}::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 959px){::ng-deep .mat-mdc-table [gt-md],::ng-deep .mat-mdc-table .gt-md{display:none}::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 1279px){::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 1919px){::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 1979px){::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: VdDynamicMenuComponent, selector: "vd-dynamic-menu", inputs: ["items", "data", "context"] }, { kind: "directive", type: OnlyNumberDirective, selector: "[onlyNumber]", inputs: ["onlyNumber"] }, { kind: "component", type: VdSelectComponent, selector: "vd-select", inputs: ["multiple", "disabled", "sorted", "triggerCssClass", "triggerMode", "textPrefix", "endpoint", "params", "projection", "enum", "key", "text", "prefix", "options", "filteredOptions", "filterable", "cache", "sortBy", "mapper", "compareWith", "searchField"], outputs: ["change", "itemChange", "selected", "itemSelected", "launch"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$1.MatIconAnchor, selector: "a[mat-icon-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i1$4.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i1$4.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i1$4.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i1$4.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i1$4.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i1$4.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i12.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i12.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i2$1.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i2$1.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i2$1.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i2$1.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["sticky", "cdkColumnDef", "stickyEnd"] }, { kind: "directive", type: i2$1.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "component", type: i14.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i15.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i17$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i18.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "directive", type: i19.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: FilterInputComponent, selector: "mat-header-cell[filter-input], [mat-header-cell][filter-input], [filter-input]", inputs: ["field", "operator", "onlyNumber", "debounce", "placeholder"] }, { kind: "component", type: FilterSelectComponent, selector: "mat-header-cell[filter-select], [mat-header-cell][filter-select], [filter-select]", inputs: ["endpoint", "params", "projection", "sortBy", "sorted", "enum", "key", "text", "prefix", "multiple", "options", "filteredOptions", "filterable", "field", "placeholder", "cache"] }, { kind: "component", type: FilterClearComponent, selector: "mat-header-cell[filter-clear], [mat-header-cell][filter-clear], [filter-clear]" }, { kind: "component", type: FilterDateComponent, selector: "mat-header-cell[filter-date], [mat-header-cell][filter-date], [filter-date]", inputs: ["field", "debounce", "placeholder"] }, { kind: "directive", type: DataSourceFilterDirective, selector: "[dataSourceFilter]", inputs: ["dataSource", "dataSourceFilter"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.DatePipe, name: "date" }, { kind: "pipe", type: EnumPipe, name: "enum" }], animations: [
10288
10369
  trigger('detailExpand', [
10289
10370
  state('collapsed', style({ height: '0px', minHeight: '0' })),
10290
10371
  state('expanded', style({ height: AUTO_STYLE })),
10291
10372
  transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
10292
10373
  ]),
10293
10374
  ] });
10294
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDynamicTableComponent, decorators: [{
10375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDynamicTableComponent, decorators: [{
10295
10376
  type: Component,
10296
10377
  args: [{ selector: 'vd-dynamic-table', animations: [
10297
10378
  trigger('detailExpand', [
@@ -10299,7 +10380,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
10299
10380
  state('expanded', style({ height: AUTO_STYLE })),
10300
10381
  transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
10301
10382
  ]),
10302
- ], template: "<div class=\"loading-progress\" *ngIf=\"!static\">\r\n\t<mat-progress-bar mode=\"indeterminate\" *ngIf=\"dataSource?.isLoading\"></mat-progress-bar>\r\n</div>\r\n\r\n<!-- #region Data table -->\r\n<table mat-table #table [dataSource]=\"dataSource\" [dataSourceFilter]=\"dataSourceFilter\" [ngClass]=\"{'table-fixed': !detailsTemplate && !templateRef}\" [trackBy]=\"trackBy\" matSort matSortDisableClear [matSortActive]=\"sortActive||'id'\" [matSortDirection]=\"sortDirection\" multiTemplateDataRows>\r\n\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t<!-- #region Column def -->\r\n\t\t<ng-container [cdkColumnDef]=\"column.name\" [sticky]=\"column.sticky\" [stickyEnd]=\"column.stickyEnd\">\r\n\t\t\t<th mat-header-cell *cdkHeaderCellDef [mat-sort-header]=\"column.sortBy || column.name\" [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [disabled]=\"column.type == ColumnType.Checkbox || column.disabled\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\" [arrowPosition]=\"column.arrowBefore?'before':'after'\">\r\n\t\t\t\t<mat-checkbox *ngIf=\"column.type == ColumnType.Checkbox\" (change)=\"$event ? dataSource.toggleSelect($event, selectAllFilter) : null\" [disabled]=\"!dataSource.paginator?.length\" [checked]=\"dataSource.selectionModel.hasValue() && dataSource.isAllSelected()\" [indeterminate]=\"dataSource.selectionModel.hasValue() && !dataSource.isAllSelected()\"></mat-checkbox>\r\n\t\t\t\t<span *ngIf=\"column.type != ColumnType.Checkbox\">{{column.header}}</span>\r\n\t\t\t</th>\r\n\r\n\t\t\t<td mat-cell *cdkCellDef=\"let row; let rowIndex = index\" [matTooltip]=\"column.tooltip?column.tooltip(row, context):null\" [matTooltipClass]=\"column.tooltipClass\" [hidden]=\"column.hidden\" [ngClass]=\"getRowClasses(column, row)\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\">\r\n\t\t\t\t<ng-container [ngSwitch]=\"column.type\">\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<mat-checkbox *ngSwitchCase=\"ColumnType.Checkbox\" (click)=\"$event.stopPropagation()\" (change)=\"$event ? dataSource.selectionModel.toggle(row) : null\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [checked]=\"dataSource.selectionModel.isSelected(row)\"></mat-checkbox>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Enum\" i18n=\"@@selection\">{column.content(row) | enum:column.enumType:column.enumPrefix, select, type {type} other {{{column.content(row, context) | enum:column.enumType:column.enumPrefix}}}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Toggle column -->\r\n\t\t\t\t\t<mat-slide-toggle *ngSwitchCase=\"ColumnType.Toggle\" [(ngModel)]=\"row[column.name]\" (click)=\"$event.stopPropagation();\" (ngModelChange)=\"handleModelChange(column, row)\" [disabled]=\"readonly || (column.disable && column.disable(row, context))\" color=\"primary\"></mat-slide-toggle>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Date\">{{column.content(row, context) | date:column.shortDate?'dd.MM.yyyy':'dd.MM.yyyy HH:mm:ss'}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.TextInput\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<input type=\"{{column.inputType}}\" autocomplete=\"none\" matInput name=\"{{column.name}}{{rowIndex}}\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [min]=\"column.inputMin?column.inputMin(row, context):null\" [max]=\"column.inputMax?column.inputMax(row, context):null\" (ngModelChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" [ngModelOptions]=\"{updateOn: 'blur'}\" (keydown.enter)=\"handleKeydownEnter($event)\">\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.Select\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<vd-select name=\"{{column.name}}{{rowIndex}}\" [enum]=\"column.enumType\" [options]=\"column.options\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" (selectionChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" (keydown.enter)=\"handleKeydownEnter($event)\"></vd-select>\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action -->\r\n\t\t\t\t\t<ng-container *ngSwitchCase=\"ColumnType.Action\">\r\n\t\t\t\t\t\t<div id=\"menu-{{row.id}}\" style=\"visibility: hidden; position: fixed;\" #contextMenuTrigger=\"matMenuTrigger\" [matMenuTriggerFor]=\"menu.matMenu\" *ngIf=\"menu?.matMenu && !row.locked && hasVisibleRowMenuItems(row, column)\"></div>\r\n\t\t\t\t\t\t<vd-dynamic-menu [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\" #menu></vd-dynamic-menu>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Menu -->\r\n\t\t\t\t\t<vd-dynamic-menu *ngSwitchCase=\"ColumnType.Menu\" [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region icon button -->\r\n\t\t\t\t\t<a mat-icon-button *ngSwitchCase=\"ColumnType.IconButton\" (click)=\"$event.stopPropagation();column.iconButton?.event?column.iconButton.event(row, context):null\">\r\n\t\t\t\t\t\t<mat-icon fontSet=\"{{column.iconButton?.iconFontSet || 'material-icons-outlined'}}\" [class]=\"handleExpression(column.iconButton?.iconClass, row)\">{{handleExpression(column.iconButton?.icon, row) || 'radio_button_checked'}}</mat-icon>\r\n\t\t\t\t\t</a>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Other column types -->\r\n\t\t\t\t\t<span *ngSwitchDefault [innerHtml]=\"column.content ? column.content(row, context):''\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</ng-container>\r\n\t\t\t</td>\r\n\t\t</ng-container>\r\n\t\t<!-- #endregion -->\r\n\t</ng-container>\r\n\r\n\t<!-- #region Filter row -->\r\n\t<ng-container *ngIf=\"dataSource && filterable\">\r\n\t\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t\t<ng-container cdkColumnDef=\"filter.{{column.filter || column.name}}\">\r\n\t\t\t\t<th mat-header-cell *cdkHeaderCellDef [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\">\r\n\t\t\t\t\t<!-- #region Select filter -->\r\n\t\t\t\t\t<span *ngIf=\"(column.endpoint || column.enumType || column.options) else notSelectFilter\" filter-select [endpoint]=\"column.endpoint\" [enum]=\"column.enumType\" [prefix]=\"column.enumPrefix\" [options]=\"column.options\" [text]=\"column.filterOptionText || 'name'\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text filter -->\r\n\t\t\t\t\t<ng-template #notSelectFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"notSelectFilter && (column.type == ColumnType.Text || column.type == ColumnType.TextInput || column.type == ColumnType.Number) else notInputFilter\" filter-input [onlyNumber]=\"column.filterInputNumber\" [operator]=\"column.filterOperator\"></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date filter -->\r\n\t\t\t\t\t<ng-template #notInputFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Date else notDateFilter\" filter-date></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action filter (clear) -->\r\n\t\t\t\t\t<ng-template #notDateFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Action\" filter-clear></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</th>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Details column -->\r\n\t<ng-container cdkColumnDef=\"expandedDetail\">\r\n\t\t<td mat-cell *matCellDef=\"let row; let index = index\" [attr.colspan]=\"(displayedColumns$ | async).length\">\r\n\t\t\t<div class=\"row-detail\" [@detailExpand]=\"row == expandedRow ? 'expanded' : 'collapsed'\" #detailsTemplate>\r\n\t\t\t\t<ng-container *ngIf=\"templateRef && row === expandedRow\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"templateRef; context:{row: row, index: index, context: context}\"></ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</td>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Filter header -->\r\n\t<ng-container *ngIf=\"filterable\">\r\n\t\t<tr mat-header-row *cdkHeaderRowDef=\"displayedFilterColumns$ | async\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<tr mat-header-row *cdkHeaderRowDef=\"displayedColumns$ | async; sticky: stickyFilter\"></tr>\r\n\t<tr mat-row *cdkRowDef=\"let row; columns: displayedColumns$ | async; let index = dataIndex\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\" [class.expanded-row]=\"expandedRow === row\" (click)=\"handleRowClick(index, row)\" (contextmenu)=\"handleRowRightClick($event, row)\"></tr>\r\n\r\n\t<!-- #region Detrails row -->\r\n\t<ng-container *ngIf=\"detailsTemplate || templateRef\">\r\n\t\t<tr mat-row *cdkRowDef=\"let row; columns: ['expandedDetail']\" class=\"detail-row\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n</table>\r\n<!-- #endregion -->\r\n\r\n<!-- #region Row shown when there is no matching data.-->\r\n<div class=\"mat-cell pad table-empty txt-italic\" *ngIf=\"!dataSource?.filteredData?.length && !dataSource?.total\" i18n=\"@@noResultsFound\">No results were found.</div>\r\n<!-- #endregion -->\r\n\r\n<div class=\"table-footer\" layout=\"row\">\r\n\t<ng-content select=\"[table-footer]\"></ng-content>\r\n\t<span flex></span>\r\n\t<mat-paginator *ngIf=\"paginable\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\"></mat-paginator>\r\n</div>", styles: ["::ng-deep .mat-table .mat-row .mat-cell .mat-form-field .mat-form-field-wrapper{width:100%}@media (max-width: 389px){::ng-deep .mat-table [gt-xs],::ng-deep .mat-table .gt-xs{display:none}::ng-deep .mat-table [gt-sm],::ng-deep .mat-table .gt-sm{display:none}::ng-deep .mat-table [gt-md],::ng-deep .mat-table .gt-md{display:none}::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 599px){::ng-deep .mat-table [gt-sm],::ng-deep .mat-table .gt-sm{display:none}::ng-deep .mat-table [gt-md],::ng-deep .mat-table .gt-md{display:none}::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 959px){::ng-deep .mat-table [gt-md],::ng-deep .mat-table .gt-md{display:none}::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 1279px){::ng-deep .mat-table [gt-lg],::ng-deep .mat-table .gt-lg{display:none}::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 1919px){::ng-deep .mat-table [gt-xl],::ng-deep .mat-table .gt-xl{display:none}::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}@media (max-width: 1979px){::ng-deep .mat-table [gt-xxl],::ng-deep .mat-table .gt-xxl{display:none}}\n"] }]
10383
+ ], template: "<div class=\"loading-progress\" *ngIf=\"!static\">\r\n\t<mat-progress-bar mode=\"indeterminate\" *ngIf=\"dataSource?.isLoading\"></mat-progress-bar>\r\n</div>\r\n\r\n<!-- #region Data table -->\r\n<table mat-table #table [dataSource]=\"dataSource\" [dataSourceFilter]=\"dataSourceFilter\" [ngClass]=\"{'table-fixed': !detailsTemplate && !templateRef}\" [trackBy]=\"trackBy\" matSort matSortDisableClear [matSortActive]=\"sortActive||'id'\" [matSortDirection]=\"sortDirection\" multiTemplateDataRows>\r\n\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t<!-- #region Column def -->\r\n\t\t<ng-container [cdkColumnDef]=\"column.name\" [sticky]=\"column.sticky\" [stickyEnd]=\"column.stickyEnd\">\r\n\t\t\t<th mat-header-cell *cdkHeaderCellDef [mat-sort-header]=\"column.sortBy || column.name\" [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [disabled]=\"column.type == ColumnType.Checkbox || column.disabled\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\" [arrowPosition]=\"column.arrowBefore?'before':'after'\">\r\n\t\t\t\t<mat-checkbox *ngIf=\"column.type == ColumnType.Checkbox\" (change)=\"$event ? dataSource.toggleSelect($event, selectAllFilter) : null\" [disabled]=\"!dataSource.paginator?.length\" [checked]=\"dataSource.selectionModel.hasValue() && dataSource.isAllSelected()\" [indeterminate]=\"dataSource.selectionModel.hasValue() && !dataSource.isAllSelected()\"></mat-checkbox>\r\n\t\t\t\t<span *ngIf=\"column.type != ColumnType.Checkbox\">{{column.header}}</span>\r\n\t\t\t</th>\r\n\r\n\t\t\t<td mat-cell *cdkCellDef=\"let row; let rowIndex = index\" [matTooltip]=\"column.tooltip?column.tooltip(row, context):null\" [matTooltipClass]=\"column.tooltipClass\" [hidden]=\"column.hidden\" [ngClass]=\"getRowClasses(column, row)\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\">\r\n\t\t\t\t<ng-container [ngSwitch]=\"column.type\">\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<mat-checkbox *ngSwitchCase=\"ColumnType.Checkbox\" (click)=\"$event.stopPropagation()\" (change)=\"$event ? dataSource.selectionModel.toggle(row) : null\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [checked]=\"dataSource.selectionModel.isSelected(row)\"></mat-checkbox>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Enum column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Enum\" i18n=\"@@selection\">{column.content(row) | enum:column.enumType:column.enumPrefix, select, type {type} other {{{column.content(row, context) | enum:column.enumType:column.enumPrefix}}}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Toggle column -->\r\n\t\t\t\t\t<mat-slide-toggle *ngSwitchCase=\"ColumnType.Toggle\" [(ngModel)]=\"row[column.name]\" (click)=\"$event.stopPropagation();\" (ngModelChange)=\"handleModelChange(column, row)\" [disabled]=\"readonly || (column.disable && column.disable(row, context))\" color=\"primary\"></mat-slide-toggle>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date column -->\r\n\t\t\t\t\t<span *ngSwitchCase=\"ColumnType.Date\">{{column.content(row, context) | date:column.shortDate?'dd.MM.yyyy':'dd.MM.yyyy HH:mm:ss'}}</span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.TextInput\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<input type=\"{{column.inputType}}\" autocomplete=\"none\" matInput name=\"{{column.name}}{{rowIndex}}\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" [min]=\"column.inputMin?column.inputMin(row, context):null\" [max]=\"column.inputMax?column.inputMax(row, context):null\" (ngModelChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" [ngModelOptions]=\"{updateOn: 'blur'}\" (keydown.enter)=\"handleKeydownEnter($event)\">\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text Input column -->\r\n\t\t\t\t\t<mat-form-field *ngSwitchCase=\"ColumnType.Select\" appearance=\"outline\" layout=\"column\" layout-align=\"center start\" (click)=\"$event.stopPropagation();\">\r\n\t\t\t\t\t\t<vd-select name=\"{{column.name}}{{rowIndex}}\" [enum]=\"column.enumType\" [options]=\"column.options\" [(ngModel)]=\"row[column.name]\" [disabled]=\"readonly || (column.disabled || (column.disable && column.disable(row, context)))\" (selectionChange)=\"column.change?column.change(row, context):patch(row, [column.name], row[column.name], column.patchIncludes)\" (keydown.enter)=\"handleKeydownEnter($event)\"></vd-select>\r\n\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action -->\r\n\t\t\t\t\t<ng-container *ngSwitchCase=\"ColumnType.Action\">\r\n\t\t\t\t\t\t<div id=\"menu-{{row.id}}\" style=\"visibility: hidden; position: fixed;\" #contextMenuTrigger=\"matMenuTrigger\" [matMenuTriggerFor]=\"menu.matMenu\" *ngIf=\"menu?.matMenu && !row.locked && hasVisibleRowMenuItems(row, column)\"></div>\r\n\t\t\t\t\t\t<vd-dynamic-menu [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\" #menu></vd-dynamic-menu>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Menu -->\r\n\t\t\t\t\t<vd-dynamic-menu *ngSwitchCase=\"ColumnType.Menu\" [items]=\"[column.menu]\" [data]=\"row\" [context]=\"context\"></vd-dynamic-menu>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region icon button -->\r\n\t\t\t\t\t<a mat-icon-button *ngSwitchCase=\"ColumnType.IconButton\" (click)=\"$event.stopPropagation();column.iconButton?.event?column.iconButton.event(row, context):null\">\r\n\t\t\t\t\t\t<mat-icon fontSet=\"{{column.iconButton?.iconFontSet || 'material-icons-outlined'}}\" [class]=\"handleExpression(column.iconButton?.iconClass, row)\">{{handleExpression(column.iconButton?.icon, row) || 'radio_button_checked'}}</mat-icon>\r\n\t\t\t\t\t</a>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Other column types -->\r\n\t\t\t\t\t<span *ngSwitchDefault [innerHtml]=\"column.content ? column.content(row, context):''\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</ng-container>\r\n\t\t\t</td>\r\n\t\t</ng-container>\r\n\t\t<!-- #endregion -->\r\n\t</ng-container>\r\n\r\n\t<!-- #region Filter row -->\r\n\t<ng-container *ngIf=\"dataSource && filterable\">\r\n\t\t<ng-container *ngFor=\"let column of columns$ | async\">\r\n\t\t\t<ng-container cdkColumnDef=\"filter.{{column.filter || column.name}}\">\r\n\t\t\t\t<th mat-header-cell *cdkHeaderCellDef [hidden]=\"column.hidden\" [ngStyle]=\"{maxWidth:column.maxWidth?(column.maxWidth+(column.maxWidthUnit || 'px')):null,minWidth:column.minWidth?(column.minWidth+(column.minWidthUnit || 'px')):null,width:column.width?(column.width+(column.widthUnit || 'px')):null}\" [ngClass]=\"{'gt-xs': column.display == Grid.Xs, 'gt-sm': column.display == Grid.Sm, 'gt-md': column.display == Grid.Md, 'gt-lg': column.display == Grid.Lg, 'gt-xl': column.display == Grid.Xl, 'gt-xxl': column.display == Grid.Xxl, 'hidden': column.display == Grid.None}\">\r\n\t\t\t\t\t<!-- #region Select filter -->\r\n\t\t\t\t\t<span *ngIf=\"(column.endpoint || column.enumType || column.options) else notSelectFilter\" filter-select [endpoint]=\"column.endpoint\" [enum]=\"column.enumType\" [prefix]=\"column.enumPrefix\" [options]=\"column.options\" [text]=\"column.filterOptionText || 'name'\"></span>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Text filter -->\r\n\t\t\t\t\t<ng-template #notSelectFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"notSelectFilter && (column.type == ColumnType.Text || column.type == ColumnType.TextInput || column.type == ColumnType.Number) else notInputFilter\" filter-input [onlyNumber]=\"column.filterInputNumber\" [operator]=\"column.filterOperator\"></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Date filter -->\r\n\t\t\t\t\t<ng-template #notInputFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Date else notDateFilter\" filter-date></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t\t<!-- #region Action filter (clear) -->\r\n\t\t\t\t\t<ng-template #notDateFilter>\r\n\t\t\t\t\t\t<span *ngIf=\"column.type == ColumnType.Action\" filter-clear></span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<!-- #endregion -->\r\n\t\t\t\t</th>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Details column -->\r\n\t<ng-container cdkColumnDef=\"expandedDetail\">\r\n\t\t<td mat-cell *matCellDef=\"let row; let index = index\" [attr.colspan]=\"(displayedColumns$ | async).length\">\r\n\t\t\t<div class=\"row-detail\" [@detailExpand]=\"row == expandedRow ? 'expanded' : 'collapsed'\" #detailsTemplate>\r\n\t\t\t\t<ng-container *ngIf=\"templateRef && row === expandedRow\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"templateRef; context:{row: row, index: index, context: context}\"></ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</td>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Filter header -->\r\n\t<ng-container *ngIf=\"filterable\">\r\n\t\t<tr mat-header-row *cdkHeaderRowDef=\"displayedFilterColumns$ | async\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n\r\n\t<tr mat-header-row *cdkHeaderRowDef=\"displayedColumns$ | async; sticky: stickyFilter\"></tr>\r\n\t<tr mat-row *cdkRowDef=\"let row; columns: displayedColumns$ | async; let index = dataIndex\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\" [class.expanded-row]=\"expandedRow === row\" (click)=\"handleRowClick(index, row)\" (contextmenu)=\"handleRowRightClick($event, row)\"></tr>\r\n\r\n\t<!-- #region Detrails row -->\r\n\t<ng-container *ngIf=\"detailsTemplate || templateRef\">\r\n\t\t<tr mat-row *cdkRowDef=\"let row; columns: ['expandedDetail']\" class=\"detail-row\" [ngClass]=\"rowNgClass?rowNgClass(row, context):null\"></tr>\r\n\t</ng-container>\r\n\t<!-- #endregion -->\r\n</table>\r\n<!-- #endregion -->\r\n\r\n<!-- #region Row shown when there is no matching data.-->\r\n<div class=\"mat-cell pad table-empty txt-italic\" *ngIf=\"!dataSource?.filteredData?.length && !dataSource?.total\" i18n=\"@@noResultsFound\">No results were found.</div>\r\n<!-- #endregion -->\r\n\r\n<div class=\"table-footer\" layout=\"row\">\r\n\t<ng-content select=\"[table-footer]\"></ng-content>\r\n\t<span flex></span>\r\n\t<mat-paginator *ngIf=\"paginable\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\"></mat-paginator>\r\n</div>", styles: ["::ng-deep .mat-mdc-table .mat-mdc-row .mat-mdc-cell .mat-mdc-form-field .mat-form-field-wrapper{width:100%}@media (max-width: 389px){::ng-deep .mat-mdc-table [gt-xs],::ng-deep .mat-mdc-table .gt-xs{display:none}::ng-deep .mat-mdc-table [gt-sm],::ng-deep .mat-mdc-table .gt-sm{display:none}::ng-deep .mat-mdc-table [gt-md],::ng-deep .mat-mdc-table .gt-md{display:none}::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 599px){::ng-deep .mat-mdc-table [gt-sm],::ng-deep .mat-mdc-table .gt-sm{display:none}::ng-deep .mat-mdc-table [gt-md],::ng-deep .mat-mdc-table .gt-md{display:none}::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 959px){::ng-deep .mat-mdc-table [gt-md],::ng-deep .mat-mdc-table .gt-md{display:none}::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 1279px){::ng-deep .mat-mdc-table [gt-lg],::ng-deep .mat-mdc-table .gt-lg{display:none}::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 1919px){::ng-deep .mat-mdc-table [gt-xl],::ng-deep .mat-mdc-table .gt-xl{display:none}::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}@media (max-width: 1979px){::ng-deep .mat-mdc-table [gt-xxl],::ng-deep .mat-mdc-table .gt-xxl{display:none}}\n"] }]
10303
10384
  }], ctorParameters: function () { return [{ type: DynamicBuilder }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { table: [{
10304
10385
  type: ViewChild,
10305
10386
  args: ['table']
@@ -10404,9 +10485,9 @@ class PaginatorIntl extends MatPaginatorIntl {
10404
10485
  };
10405
10486
  }
10406
10487
  }
10407
- /** @nocollapse */ PaginatorIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PaginatorIntl, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
10408
- /** @nocollapse */ PaginatorIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PaginatorIntl });
10409
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PaginatorIntl, decorators: [{
10488
+ /** @nocollapse */ PaginatorIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PaginatorIntl, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
10489
+ /** @nocollapse */ PaginatorIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PaginatorIntl });
10490
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PaginatorIntl, decorators: [{
10410
10491
  type: Injectable
10411
10492
  }] });
10412
10493
 
@@ -10493,8 +10574,8 @@ const DECLARATIONS$4 = [
10493
10574
  ];
10494
10575
  class VdTableModule {
10495
10576
  }
10496
- /** @nocollapse */ VdTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10497
- /** @nocollapse */ VdTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdTableModule, declarations: [FilterInputComponent,
10577
+ /** @nocollapse */ VdTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10578
+ /** @nocollapse */ VdTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdTableModule, declarations: [FilterInputComponent,
10498
10579
  FilterSelectComponent,
10499
10580
  FilterClearComponent,
10500
10581
  FilterDateComponent,
@@ -10528,7 +10609,7 @@ class VdTableModule {
10528
10609
  DataSourceFilterDirective,
10529
10610
  VdFilterOptionDirective,
10530
10611
  VdDynamicTableComponent] });
10531
- /** @nocollapse */ VdTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdTableModule, providers: [
10612
+ /** @nocollapse */ VdTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdTableModule, providers: [
10532
10613
  { provide: MatPaginatorIntl, useClass: PaginatorIntl }
10533
10614
  ], imports: [CommonModule,
10534
10615
  VdLayoutModule,
@@ -10552,7 +10633,7 @@ class VdTableModule {
10552
10633
  MatPaginatorModule,
10553
10634
  MatTooltipModule,
10554
10635
  MatToolbarModule] });
10555
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdTableModule, decorators: [{
10636
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdTableModule, decorators: [{
10556
10637
  type: NgModule,
10557
10638
  args: [{
10558
10639
  imports: [
@@ -10587,59 +10668,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
10587
10668
  }]
10588
10669
  }] });
10589
10670
 
10590
- class VdDialogTitleDirective {
10591
- }
10592
- /** @nocollapse */ VdDialogTitleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10593
- /** @nocollapse */ VdDialogTitleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdDialogTitleDirective, selector: "vd-dialog-title", ngImport: i0 });
10594
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogTitleDirective, decorators: [{
10595
- type: Directive,
10596
- args: [{ selector: 'vd-dialog-title' }]
10597
- }] });
10598
- class VdDialogContentDirective {
10599
- }
10600
- /** @nocollapse */ VdDialogContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10601
- /** @nocollapse */ VdDialogContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdDialogContentDirective, selector: "vd-dialog-content", ngImport: i0 });
10602
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogContentDirective, decorators: [{
10603
- type: Directive,
10604
- args: [{ selector: 'vd-dialog-content' }]
10605
- }] });
10606
- class VdDialogActionsDirective {
10607
- }
10608
- /** @nocollapse */ VdDialogActionsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogActionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10609
- /** @nocollapse */ VdDialogActionsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdDialogActionsDirective, selector: "vd-dialog-actions", ngImport: i0 });
10610
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogActionsDirective, decorators: [{
10611
- type: Directive,
10612
- args: [{ selector: 'vd-dialog-actions' }]
10613
- }] });
10614
- class VdDialogComponent {
10615
- ngAfterContentInit() {
10616
- if (this.dialogTitle.length > 1) {
10617
- throw new Error('Duplicate vd-dialog-title component at in vd-dialog.');
10618
- }
10619
- if (this.dialogContent.length > 1) {
10620
- throw new Error('Duplicate vd-dialog-content component at in vd-dialog.');
10621
- }
10622
- if (this.dialogActions.length > 1) {
10623
- throw new Error('Duplicate vd-dialog-actions component at in vd-dialog.');
10624
- }
10625
- }
10626
- }
10627
- /** @nocollapse */ VdDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10628
- /** @nocollapse */ VdDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdDialogComponent, selector: "vd-dialog", queries: [{ propertyName: "dialogTitle", predicate: VdDialogTitleDirective }, { propertyName: "dialogContent", predicate: VdDialogContentDirective }, { propertyName: "dialogActions", predicate: VdDialogActionsDirective }], ngImport: i0, template: "<div class=\"vd-dialog-wrapper\">\r\n\t<h3 class=\"vd-dialog-title md-title\" *ngIf=\"dialogTitle.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-title\"></ng-content>\r\n\t</h3>\r\n\t<div class=\"vd-dialog-content\" *ngIf=\"dialogContent.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-content\"></ng-content>\r\n\t</div>\r\n\t<div class=\"vd-dialog-actions\" *ngIf=\"dialogActions.length > 0\" layout=\"row\">\r\n\t\t<span flex></span>\r\n\t\t<ng-content select=\"vd-dialog-actions\"></ng-content>\r\n\t</div>\r\n</div>", styles: [".vd-dialog-title{margin-top:0;margin-bottom:20px}.vd-dialog-content{margin-bottom:16px}.vd-dialog-actions{position:relative;top:16px;left:16px}::ng-deep [dir=rtl] .vd-dialog-actions{right:16px;left:auto}:host{display:block}:host .vd-dialog-actions ::ng-deep button{text-transform:uppercase;margin-left:8px;padding-left:8px;padding-right:8px;min-width:64px}[dir=rtl] :host .vd-dialog-actions ::ng-deep button{margin-right:8px;margin-left:inherit}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
10629
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogComponent, decorators: [{
10630
- type: Component,
10631
- args: [{ selector: 'vd-dialog', template: "<div class=\"vd-dialog-wrapper\">\r\n\t<h3 class=\"vd-dialog-title md-title\" *ngIf=\"dialogTitle.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-title\"></ng-content>\r\n\t</h3>\r\n\t<div class=\"vd-dialog-content\" *ngIf=\"dialogContent.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-content\"></ng-content>\r\n\t</div>\r\n\t<div class=\"vd-dialog-actions\" *ngIf=\"dialogActions.length > 0\" layout=\"row\">\r\n\t\t<span flex></span>\r\n\t\t<ng-content select=\"vd-dialog-actions\"></ng-content>\r\n\t</div>\r\n</div>", styles: [".vd-dialog-title{margin-top:0;margin-bottom:20px}.vd-dialog-content{margin-bottom:16px}.vd-dialog-actions{position:relative;top:16px;left:16px}::ng-deep [dir=rtl] .vd-dialog-actions{right:16px;left:auto}:host{display:block}:host .vd-dialog-actions ::ng-deep button{text-transform:uppercase;margin-left:8px;padding-left:8px;padding-right:8px;min-width:64px}[dir=rtl] :host .vd-dialog-actions ::ng-deep button{margin-right:8px;margin-left:inherit}\n"] }]
10632
- }], propDecorators: { dialogTitle: [{
10633
- type: ContentChildren,
10634
- args: [VdDialogTitleDirective]
10635
- }], dialogContent: [{
10636
- type: ContentChildren,
10637
- args: [VdDialogContentDirective]
10638
- }], dialogActions: [{
10639
- type: ContentChildren,
10640
- args: [VdDialogActionsDirective]
10641
- }] } });
10642
-
10643
10671
  class VdAlertDialogComponent {
10644
10672
  /**
10645
10673
  * Constructor
@@ -10656,11 +10684,24 @@ class VdAlertDialogComponent {
10656
10684
  this._dialogRef.close();
10657
10685
  }
10658
10686
  }
10659
- /** @nocollapse */ VdAlertDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdAlertDialogComponent, deps: [{ token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
10660
- /** @nocollapse */ VdAlertDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdAlertDialogComponent, selector: "vd-alert-dialog", ngImport: i0, template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content class=\"md-subhead\" [innerHtml]=\"message\"></vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button color=\"accent\" (click)=\"close()\">{{closeButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: VdDialogComponent, selector: "vd-dialog" }, { kind: "directive", type: VdDialogTitleDirective, selector: "vd-dialog-title" }, { kind: "directive", type: VdDialogActionsDirective, selector: "vd-dialog-actions" }, { kind: "directive", type: VdDialogContentDirective, selector: "vd-dialog-content" }] });
10661
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdAlertDialogComponent, decorators: [{
10687
+ /** @nocollapse */ VdAlertDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdAlertDialogComponent, deps: [{ token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
10688
+ /** @nocollapse */ VdAlertDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdAlertDialogComponent, selector: "vd-alert-dialog", ngImport: i0, template: `
10689
+ <h1 mat-dialog-title *ngIf="title">{{title}}</h1>
10690
+ <mat-dialog-content class="md-subhead" [innerHtml]="message"></mat-dialog-content>
10691
+ <mat-dialog-actions align="end">
10692
+ <button mat-button color="accent" (click)="close()">{{closeButton}}</button>
10693
+ </mat-dialog-actions>`, isInline: true, dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$5.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$5.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
10694
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdAlertDialogComponent, decorators: [{
10662
10695
  type: Component,
10663
- args: [{ selector: 'vd-alert-dialog', template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content class=\"md-subhead\" [innerHtml]=\"message\"></vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button color=\"accent\" (click)=\"close()\">{{closeButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"] }]
10696
+ args: [{
10697
+ selector: 'vd-alert-dialog',
10698
+ template: `
10699
+ <h1 mat-dialog-title *ngIf="title">{{title}}</h1>
10700
+ <mat-dialog-content class="md-subhead" [innerHtml]="message"></mat-dialog-content>
10701
+ <mat-dialog-actions align="end">
10702
+ <button mat-button color="accent" (click)="close()">{{closeButton}}</button>
10703
+ </mat-dialog-actions>`
10704
+ }]
10664
10705
  }], ctorParameters: function () { return [{ type: i1$5.MatDialogRef }]; } });
10665
10706
 
10666
10707
  class VdConfirmDialogComponent {
@@ -10686,13 +10727,81 @@ class VdConfirmDialogComponent {
10686
10727
  this._dialogRef.close(true);
10687
10728
  }
10688
10729
  }
10689
- /** @nocollapse */ VdConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdConfirmDialogComponent, deps: [{ token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
10690
- /** @nocollapse */ VdConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdConfirmDialogComponent, selector: "vd-confirm-dialog", ngImport: i0, template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content class=\"md-subhead\" [innerHtml]=\"message\"></vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button #closeBtn (keydown.arrowright)=\"acceptBtn.focus()\" (click)=\"cancel()\">{{cancelButton}}</button>\r\n\t\t<button mat-button color=\"accent\" #acceptBtn (keydown.arrowleft)=\"closeBtn.focus()\" (click)=\"accept()\">{{acceptButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: VdDialogComponent, selector: "vd-dialog" }, { kind: "directive", type: VdDialogTitleDirective, selector: "vd-dialog-title" }, { kind: "directive", type: VdDialogActionsDirective, selector: "vd-dialog-actions" }, { kind: "directive", type: VdDialogContentDirective, selector: "vd-dialog-content" }] });
10691
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdConfirmDialogComponent, decorators: [{
10730
+ /** @nocollapse */ VdConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdConfirmDialogComponent, deps: [{ token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
10731
+ /** @nocollapse */ VdConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdConfirmDialogComponent, selector: "vd-confirm-dialog", ngImport: i0, template: `
10732
+ <h1 mat-dialog-title *ngIf="title">{{title}}</h1>
10733
+ <mat-dialog-content class="md-subhead" [innerHtml]="message"></mat-dialog-content>
10734
+ <mat-dialog-actions align="end">
10735
+ <button mat-button #closeBtn (keydown.arrowright)="acceptBtn.focus()" (click)="cancel()">{{cancelButton}}</button>
10736
+ <button mat-button color="accent" #acceptBtn (keydown.arrowleft)="closeBtn.focus()" (click)="accept()">{{acceptButton}}</button>
10737
+ </mat-dialog-actions>`, isInline: true, dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$5.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$5.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
10738
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdConfirmDialogComponent, decorators: [{
10692
10739
  type: Component,
10693
- args: [{ selector: 'vd-confirm-dialog', template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content class=\"md-subhead\" [innerHtml]=\"message\"></vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button #closeBtn (keydown.arrowright)=\"acceptBtn.focus()\" (click)=\"cancel()\">{{cancelButton}}</button>\r\n\t\t<button mat-button color=\"accent\" #acceptBtn (keydown.arrowleft)=\"closeBtn.focus()\" (click)=\"accept()\">{{acceptButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"] }]
10740
+ args: [{
10741
+ selector: 'vd-confirm-dialog',
10742
+ template: `
10743
+ <h1 mat-dialog-title *ngIf="title">{{title}}</h1>
10744
+ <mat-dialog-content class="md-subhead" [innerHtml]="message"></mat-dialog-content>
10745
+ <mat-dialog-actions align="end">
10746
+ <button mat-button #closeBtn (keydown.arrowright)="acceptBtn.focus()" (click)="cancel()">{{cancelButton}}</button>
10747
+ <button mat-button color="accent" #acceptBtn (keydown.arrowleft)="closeBtn.focus()" (click)="accept()">{{acceptButton}}</button>
10748
+ </mat-dialog-actions>`
10749
+ }]
10694
10750
  }], ctorParameters: function () { return [{ type: i1$5.MatDialogRef }]; } });
10695
10751
 
10752
+ class VdDialogTitleDirective {
10753
+ }
10754
+ /** @nocollapse */ VdDialogTitleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10755
+ /** @nocollapse */ VdDialogTitleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdDialogTitleDirective, selector: "vd-dialog-title", ngImport: i0 });
10756
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogTitleDirective, decorators: [{
10757
+ type: Directive,
10758
+ args: [{ selector: 'vd-dialog-title' }]
10759
+ }] });
10760
+ class VdDialogContentDirective {
10761
+ }
10762
+ /** @nocollapse */ VdDialogContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10763
+ /** @nocollapse */ VdDialogContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdDialogContentDirective, selector: "vd-dialog-content", ngImport: i0 });
10764
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogContentDirective, decorators: [{
10765
+ type: Directive,
10766
+ args: [{ selector: 'vd-dialog-content' }]
10767
+ }] });
10768
+ class VdDialogActionsDirective {
10769
+ }
10770
+ /** @nocollapse */ VdDialogActionsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogActionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10771
+ /** @nocollapse */ VdDialogActionsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdDialogActionsDirective, selector: "vd-dialog-actions", ngImport: i0 });
10772
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogActionsDirective, decorators: [{
10773
+ type: Directive,
10774
+ args: [{ selector: 'vd-dialog-actions' }]
10775
+ }] });
10776
+ class VdDialogComponent {
10777
+ ngAfterContentInit() {
10778
+ if (this.dialogTitle.length > 1) {
10779
+ throw new Error('Duplicate vd-dialog-title component at in vd-dialog.');
10780
+ }
10781
+ if (this.dialogContent.length > 1) {
10782
+ throw new Error('Duplicate vd-dialog-content component at in vd-dialog.');
10783
+ }
10784
+ if (this.dialogActions.length > 1) {
10785
+ throw new Error('Duplicate vd-dialog-actions component at in vd-dialog.');
10786
+ }
10787
+ }
10788
+ }
10789
+ /** @nocollapse */ VdDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10790
+ /** @nocollapse */ VdDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdDialogComponent, selector: "vd-dialog", queries: [{ propertyName: "dialogTitle", predicate: VdDialogTitleDirective }, { propertyName: "dialogContent", predicate: VdDialogContentDirective }, { propertyName: "dialogActions", predicate: VdDialogActionsDirective }], ngImport: i0, template: "<div class=\"vd-dialog-wrapper\">\r\n\t<h3 class=\"vd-dialog-title md-title\" *ngIf=\"dialogTitle.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-title\"></ng-content>\r\n\t</h3>\r\n\t<div class=\"vd-dialog-content\" *ngIf=\"dialogContent.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-content\"></ng-content>\r\n\t</div>\r\n\t<div class=\"vd-dialog-actions\" *ngIf=\"dialogActions.length > 0\" layout=\"row\">\r\n\t\t<span flex></span>\r\n\t\t<ng-content select=\"vd-dialog-actions\"></ng-content>\r\n\t</div>\r\n</div>", styles: [".vd-dialog-title{margin-top:0;margin-bottom:20px}.vd-dialog-content{margin-bottom:16px}.vd-dialog-actions{position:relative;top:16px;left:16px}::ng-deep [dir=rtl] .vd-dialog-actions{right:16px;left:auto}:host{display:block}:host .vd-dialog-actions ::ng-deep button{text-transform:uppercase;margin-left:8px;padding-left:8px;padding-right:8px;min-width:64px}[dir=rtl] :host .vd-dialog-actions ::ng-deep button{margin-right:8px;margin-left:inherit}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
10791
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogComponent, decorators: [{
10792
+ type: Component,
10793
+ args: [{ selector: 'vd-dialog', template: "<div class=\"vd-dialog-wrapper\">\r\n\t<h3 class=\"vd-dialog-title md-title\" *ngIf=\"dialogTitle.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-title\"></ng-content>\r\n\t</h3>\r\n\t<div class=\"vd-dialog-content\" *ngIf=\"dialogContent.length > 0\">\r\n\t\t<ng-content select=\"vd-dialog-content\"></ng-content>\r\n\t</div>\r\n\t<div class=\"vd-dialog-actions\" *ngIf=\"dialogActions.length > 0\" layout=\"row\">\r\n\t\t<span flex></span>\r\n\t\t<ng-content select=\"vd-dialog-actions\"></ng-content>\r\n\t</div>\r\n</div>", styles: [".vd-dialog-title{margin-top:0;margin-bottom:20px}.vd-dialog-content{margin-bottom:16px}.vd-dialog-actions{position:relative;top:16px;left:16px}::ng-deep [dir=rtl] .vd-dialog-actions{right:16px;left:auto}:host{display:block}:host .vd-dialog-actions ::ng-deep button{text-transform:uppercase;margin-left:8px;padding-left:8px;padding-right:8px;min-width:64px}[dir=rtl] :host .vd-dialog-actions ::ng-deep button{margin-right:8px;margin-left:inherit}\n"] }]
10794
+ }], propDecorators: { dialogTitle: [{
10795
+ type: ContentChildren,
10796
+ args: [VdDialogTitleDirective]
10797
+ }], dialogContent: [{
10798
+ type: ContentChildren,
10799
+ args: [VdDialogContentDirective]
10800
+ }], dialogActions: [{
10801
+ type: ContentChildren,
10802
+ args: [VdDialogActionsDirective]
10803
+ }] } });
10804
+
10696
10805
  class VdPromptDialogComponent {
10697
10806
  /**
10698
10807
  * Constructor
@@ -10716,9 +10825,9 @@ class VdPromptDialogComponent {
10716
10825
  this._dialogRef.close(this.value);
10717
10826
  }
10718
10827
  }
10719
- /** @nocollapse */ VdPromptDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdPromptDialogComponent, deps: [{ token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
10720
- /** @nocollapse */ VdPromptDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdPromptDialogComponent, selector: "vd-prompt-dialog", ngImport: i0, template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content layout=\"column\" class=\"md-subhead\">\r\n\t\t<span [innerHtml]=\"message\"></span>\r\n\t\t<form #form=\"ngForm\" layout=\"row\" novalidate flex>\r\n\t\t\t<mat-form-field flex>\r\n\t\t\t\t<input matInput (keydown.enter)=\"$event.preventDefault(); form.valid && accept()\" [(ngModel)]=\"value\" name=\"value\" required />\r\n\t\t\t</mat-form-field>\r\n\t\t</form>\r\n\t</vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button #closeBtn (keydown.arrowright)=\"acceptBtn.focus()\" (click)=\"cancel()\">{{cancelButton}}</button>\r\n\t\t<button mat-button color=\"accent\" #acceptBtn (keydown.arrowleft)=\"closeBtn.focus()\" [disabled]=\"!form.valid\" (click)=\"accept()\">{{acceptButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: VdDialogComponent, selector: "vd-dialog" }, { kind: "directive", type: VdDialogTitleDirective, selector: "vd-dialog-title" }, { kind: "directive", type: VdDialogActionsDirective, selector: "vd-dialog-actions" }, { kind: "directive", type: VdDialogContentDirective, selector: "vd-dialog-content" }] });
10721
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdPromptDialogComponent, decorators: [{
10828
+ /** @nocollapse */ VdPromptDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdPromptDialogComponent, deps: [{ token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
10829
+ /** @nocollapse */ VdPromptDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdPromptDialogComponent, selector: "vd-prompt-dialog", ngImport: i0, template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content layout=\"column\" class=\"md-subhead\">\r\n\t\t<span [innerHtml]=\"message\"></span>\r\n\t\t<form #form=\"ngForm\" layout=\"row\" novalidate flex>\r\n\t\t\t<mat-form-field flex>\r\n\t\t\t\t<input matInput (keydown.enter)=\"$event.preventDefault(); form.valid && accept()\" [(ngModel)]=\"value\" name=\"value\" required />\r\n\t\t\t</mat-form-field>\r\n\t\t</form>\r\n\t</vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button #closeBtn (keydown.arrowright)=\"acceptBtn.focus()\" (click)=\"cancel()\">{{cancelButton}}</button>\r\n\t\t<button mat-button color=\"accent\" #acceptBtn (keydown.arrowleft)=\"closeBtn.focus()\" [disabled]=\"!form.valid\" (click)=\"accept()\">{{acceptButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: VdDialogComponent, selector: "vd-dialog" }, { kind: "directive", type: VdDialogTitleDirective, selector: "vd-dialog-title" }, { kind: "directive", type: VdDialogActionsDirective, selector: "vd-dialog-actions" }, { kind: "directive", type: VdDialogContentDirective, selector: "vd-dialog-content" }] });
10830
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdPromptDialogComponent, decorators: [{
10722
10831
  type: Component,
10723
10832
  args: [{ selector: 'vd-prompt-dialog', template: "<vd-dialog>\r\n\t<vd-dialog-title *ngIf=\"title\">{{title}}</vd-dialog-title>\r\n\t<vd-dialog-content layout=\"column\" class=\"md-subhead\">\r\n\t\t<span [innerHtml]=\"message\"></span>\r\n\t\t<form #form=\"ngForm\" layout=\"row\" novalidate flex>\r\n\t\t\t<mat-form-field flex>\r\n\t\t\t\t<input matInput (keydown.enter)=\"$event.preventDefault(); form.valid && accept()\" [(ngModel)]=\"value\" name=\"value\" required />\r\n\t\t\t</mat-form-field>\r\n\t\t</form>\r\n\t</vd-dialog-content>\r\n\t<vd-dialog-actions>\r\n\t\t<button mat-button #closeBtn (keydown.arrowright)=\"acceptBtn.focus()\" (click)=\"cancel()\">{{cancelButton}}</button>\r\n\t\t<button mat-button color=\"accent\" #acceptBtn (keydown.arrowleft)=\"closeBtn.focus()\" [disabled]=\"!form.valid\" (click)=\"accept()\">{{acceptButton}}</button>\r\n\t</vd-dialog-actions>\r\n</vd-dialog>", styles: ["@media (min-width: 600px){vd-dialog{width:400px}}@media (max-width: 599px){vd-dialog{width:250px}}\n"] }]
10724
10833
  }], ctorParameters: function () { return [{ type: i1$5.MatDialogRef }]; } });
@@ -10836,9 +10945,9 @@ class VdDialogService {
10836
10945
  return dialogConfig;
10837
10946
  }
10838
10947
  }
10839
- /** @nocollapse */ VdDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogService, deps: [{ token: i1$5.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
10840
- /** @nocollapse */ VdDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogService, providedIn: 'root' });
10841
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogService, decorators: [{
10948
+ /** @nocollapse */ VdDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogService, deps: [{ token: i1$5.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
10949
+ /** @nocollapse */ VdDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogService, providedIn: 'root' });
10950
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogService, decorators: [{
10842
10951
  type: Injectable,
10843
10952
  args: [{ providedIn: 'root' }]
10844
10953
  }], ctorParameters: function () { return [{ type: i1$5.MatDialog }]; } });
@@ -11447,9 +11556,9 @@ class BaseComponent {
11447
11556
  this.matExpansionPanelSubscriptions.forEach(x => x.unsubscribe());
11448
11557
  }
11449
11558
  }
11450
- /** @nocollapse */ BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseComponent, deps: [{ token: i1$3.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
11451
- /** @nocollapse */ BaseComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: BaseComponent, inputs: { handleExpansionPanelChanges: "handleExpansionPanelChanges" }, viewQueries: [{ propertyName: "matExpansionPanelElementQueryList", predicate: MatExpansionPanel, descendants: true, read: ElementRef }, { propertyName: "matExpansionPanelQueryList", predicate: MatExpansionPanel, descendants: true }], ngImport: i0 });
11452
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseComponent, decorators: [{
11559
+ /** @nocollapse */ BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseComponent, deps: [{ token: i1$3.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
11560
+ /** @nocollapse */ BaseComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: BaseComponent, inputs: { handleExpansionPanelChanges: "handleExpansionPanelChanges" }, viewQueries: [{ propertyName: "matExpansionPanelElementQueryList", predicate: MatExpansionPanel, descendants: true, read: ElementRef }, { propertyName: "matExpansionPanelQueryList", predicate: MatExpansionPanel, descendants: true }], ngImport: i0 });
11561
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseComponent, decorators: [{
11453
11562
  type: Directive
11454
11563
  }], ctorParameters: function () { return [{ type: i1$3.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { handleExpansionPanelChanges: [{
11455
11564
  type: Input
@@ -11515,27 +11624,27 @@ class VdDynamicTableConfigDialogComponent extends BaseComponent {
11515
11624
  (_a = this.genericList) === null || _a === void 0 ? void 0 : _a.updateColumns();
11516
11625
  }
11517
11626
  }
11518
- /** @nocollapse */ VdDynamicTableConfigDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDynamicTableConfigDialogComponent, deps: [{ token: i1$3.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i1$5.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
11519
- /** @nocollapse */ VdDynamicTableConfigDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdDynamicTableConfigDialogComponent, selector: "vd-dynamic-table-config-dialog", usesInheritance: true, ngImport: i0, template: `
11520
- <div mat-dialog-title cdkDrag cdkDragRootElement=".cdk-overlay-pane" class="pad push-none" cdkDragHandle i18n="@@tableConfiguration">Table configuration</div>
11521
- <vd-dynamic-table [data]="columns" [classType]="classType" [filterable]="false" [pageSize]="10" [context]="this">
11522
- <div table-footer layout-padding class="push-xs">
11523
- <a mat-flat-button color="primary" (click)="save()" i18n="@@save">Save</a>
11524
- <a mat-flat-button (click)="apply()" i18n="@@apply">Apply</a>
11525
- <a mat-flat-button (click)="dialogRef.close()" i18n="@@close">Close</a>
11526
- </div>
11527
- </vd-dynamic-table>`, isInline: true, styles: [".mat-dialog-title{cursor:move}\n"], dependencies: [{ kind: "directive", type: i1$5.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "component", type: VdDynamicTableComponent, selector: "vd-dynamic-table", inputs: ["dataSource", "data", "classType", "context", "dataSourceFilter", "static", "filterable", "paginable", "selectable", "sortActive", "sortDirection", "stickyHeader", "stickyFilter", "rowNgClass", "detailsTemplate", "readonly", "selectAllFilter", "columns", "rowMenuItems", "excludedColumns", "pageSize", "pageSizeOptions"], outputs: ["rowClick"] }, { kind: "component", type: i5.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i5$3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i5$3.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }] });
11528
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDynamicTableConfigDialogComponent, decorators: [{
11627
+ /** @nocollapse */ VdDynamicTableConfigDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDynamicTableConfigDialogComponent, deps: [{ token: i1$3.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i1$5.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
11628
+ /** @nocollapse */ VdDynamicTableConfigDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdDynamicTableConfigDialogComponent, selector: "vd-dynamic-table-config-dialog", usesInheritance: true, ngImport: i0, template: `
11629
+ <div mat-dialog-title cdkDrag cdkDragRootElement=".cdk-overlay-pane" class="pad push-none" cdkDragHandle i18n="@@tableConfiguration">Table configuration</div>
11630
+ <vd-dynamic-table [data]="columns" [classType]="classType" [filterable]="false" [pageSize]="10" [context]="this">
11631
+ <div table-footer layout-padding class="push-xs">
11632
+ <a mat-flat-button color="primary" (click)="save()" i18n="@@save">Save</a>
11633
+ <a mat-flat-button (click)="apply()" i18n="@@apply">Apply</a>
11634
+ <a mat-flat-button (click)="dialogRef.close()" i18n="@@close">Close</a>
11635
+ </div>
11636
+ </vd-dynamic-table>`, isInline: true, styles: [".mat-mdc-dialog-title{cursor:move}\n"], dependencies: [{ kind: "directive", type: i1$5.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "component", type: VdDynamicTableComponent, selector: "vd-dynamic-table", inputs: ["dataSource", "data", "classType", "context", "dataSourceFilter", "static", "filterable", "paginable", "selectable", "sortActive", "sortDirection", "stickyHeader", "stickyFilter", "rowNgClass", "detailsTemplate", "readonly", "selectAllFilter", "columns", "rowMenuItems", "excludedColumns", "pageSize", "pageSizeOptions"], outputs: ["rowClick"] }, { kind: "component", type: i5$1.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i5$4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i5$4.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }] });
11637
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDynamicTableConfigDialogComponent, decorators: [{
11529
11638
  type: Component,
11530
- args: [{ selector: 'vd-dynamic-table-config-dialog', template: `
11531
- <div mat-dialog-title cdkDrag cdkDragRootElement=".cdk-overlay-pane" class="pad push-none" cdkDragHandle i18n="@@tableConfiguration">Table configuration</div>
11532
- <vd-dynamic-table [data]="columns" [classType]="classType" [filterable]="false" [pageSize]="10" [context]="this">
11533
- <div table-footer layout-padding class="push-xs">
11534
- <a mat-flat-button color="primary" (click)="save()" i18n="@@save">Save</a>
11535
- <a mat-flat-button (click)="apply()" i18n="@@apply">Apply</a>
11536
- <a mat-flat-button (click)="dialogRef.close()" i18n="@@close">Close</a>
11537
- </div>
11538
- </vd-dynamic-table>`, styles: [".mat-dialog-title{cursor:move}\n"] }]
11639
+ args: [{ selector: 'vd-dynamic-table-config-dialog', template: `
11640
+ <div mat-dialog-title cdkDrag cdkDragRootElement=".cdk-overlay-pane" class="pad push-none" cdkDragHandle i18n="@@tableConfiguration">Table configuration</div>
11641
+ <vd-dynamic-table [data]="columns" [classType]="classType" [filterable]="false" [pageSize]="10" [context]="this">
11642
+ <div table-footer layout-padding class="push-xs">
11643
+ <a mat-flat-button color="primary" (click)="save()" i18n="@@save">Save</a>
11644
+ <a mat-flat-button (click)="apply()" i18n="@@apply">Apply</a>
11645
+ <a mat-flat-button (click)="dialogRef.close()" i18n="@@close">Close</a>
11646
+ </div>
11647
+ </vd-dynamic-table>`, styles: [".mat-mdc-dialog-title{cursor:move}\n"] }]
11539
11648
  }], ctorParameters: function () {
11540
11649
  return [{ type: i1$3.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i1$5.MatDialogRef }, { type: undefined, decorators: [{
11541
11650
  type: Inject,
@@ -12217,9 +12326,9 @@ class GenericFormBaseComponent extends BaseComponent {
12217
12326
  }
12218
12327
  }
12219
12328
  }
12220
- /** @nocollapse */ GenericFormBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericFormBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
12221
- /** @nocollapse */ GenericFormBaseComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: GenericFormBaseComponent, inputs: { id: "id", _item: "_item", item: "item", includes: "includes", projection: "projection", query: "query", form: "form" }, host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "matStepper", first: true, predicate: MatStepper, descendants: true }, { propertyName: "input", predicate: ["focus"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
12222
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericFormBaseComponent, decorators: [{
12329
+ /** @nocollapse */ GenericFormBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericFormBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
12330
+ /** @nocollapse */ GenericFormBaseComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: GenericFormBaseComponent, inputs: { id: "id", _item: "_item", item: "item", includes: "includes", projection: "projection", query: "query", form: "form" }, host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "matStepper", first: true, predicate: MatStepper, descendants: true }, { propertyName: "input", predicate: ["focus"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
12331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericFormBaseComponent, decorators: [{
12223
12332
  type: Directive
12224
12333
  }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: i1$3.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { id: [{
12225
12334
  type: Input
@@ -12272,9 +12381,9 @@ class GenericFormComponent extends GenericFormBaseComponent {
12272
12381
  get formValue() { return this.item; }
12273
12382
  ;
12274
12383
  }
12275
- /** @nocollapse */ GenericFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericFormComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
12276
- /** @nocollapse */ GenericFormComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: GenericFormComponent, inputs: { form: "form" }, usesInheritance: true, ngImport: i0 });
12277
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericFormComponent, decorators: [{
12384
+ /** @nocollapse */ GenericFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericFormComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
12385
+ /** @nocollapse */ GenericFormComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: GenericFormComponent, inputs: { form: "form" }, usesInheritance: true, ngImport: i0 });
12386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericFormComponent, decorators: [{
12278
12387
  type: Directive
12279
12388
  }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: i1$3.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { form: [{
12280
12389
  type: Input
@@ -12943,9 +13052,9 @@ class GenericListComponent extends BaseComponent {
12943
13052
  */
12944
13053
  get [Symbol.toStringTag]() { return 'GenericListComponent'; }
12945
13054
  }
12946
- /** @nocollapse */ GenericListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericListComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
12947
- /** @nocollapse */ GenericListComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: GenericListComponent, inputs: { backButton: "backButton" }, host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "dynamicTable", first: true, predicate: VdDynamicTableComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0 });
12948
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericListComponent, decorators: [{
13055
+ /** @nocollapse */ GenericListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericListComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
13056
+ /** @nocollapse */ GenericListComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: GenericListComponent, inputs: { backButton: "backButton" }, host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "dynamicTable", first: true, predicate: VdDynamicTableComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0 });
13057
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericListComponent, decorators: [{
12949
13058
  type: Directive
12950
13059
  }], ctorParameters: function () { return [{ type: undefined }, { type: i1$3.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: undefined }]; }, propDecorators: { paginator: [{
12951
13060
  type: ViewChild,
@@ -13003,9 +13112,9 @@ class BaseDirective {
13003
13112
  });
13004
13113
  }
13005
13114
  }
13006
- /** @nocollapse */ BaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13007
- /** @nocollapse */ BaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: BaseDirective, inputs: { model: "model" }, ngImport: i0 });
13008
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseDirective, decorators: [{
13115
+ /** @nocollapse */ BaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13116
+ /** @nocollapse */ BaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: BaseDirective, inputs: { model: "model" }, ngImport: i0 });
13117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseDirective, decorators: [{
13009
13118
  type: Directive
13010
13119
  }], propDecorators: { model: [{
13011
13120
  type: Input
@@ -13017,9 +13126,9 @@ class HtmlControlTemplateDirective {
13017
13126
  }
13018
13127
  ;
13019
13128
  }
13020
- /** @nocollapse */ HtmlControlTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: HtmlControlTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
13021
- /** @nocollapse */ HtmlControlTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: HtmlControlTemplateDirective, selector: "[htmlControlTemplate]", inputs: { type: ["htmlControlTemplate", "type"] }, ngImport: i0 });
13022
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: HtmlControlTemplateDirective, decorators: [{
13129
+ /** @nocollapse */ HtmlControlTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: HtmlControlTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
13130
+ /** @nocollapse */ HtmlControlTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: HtmlControlTemplateDirective, selector: "[htmlControlTemplate]", inputs: { type: ["htmlControlTemplate", "type"] }, ngImport: i0 });
13131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: HtmlControlTemplateDirective, decorators: [{
13023
13132
  type: Directive,
13024
13133
  args: [{
13025
13134
  selector: '[htmlControlTemplate]'
@@ -13206,9 +13315,9 @@ class RxwebFormDirective extends BaseDirective {
13206
13315
  ngOnDestroy() {
13207
13316
  }
13208
13317
  }
13209
- /** @nocollapse */ RxwebFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxwebFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
13210
- /** @nocollapse */ RxwebFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: RxwebFormDirective, selector: "[formGroup],[rxwebForm]", inputs: { formGroup: "formGroup", ngForm: ["rxwebForm", "ngForm"] }, usesInheritance: true, ngImport: i0 });
13211
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxwebFormDirective, decorators: [{
13318
+ /** @nocollapse */ RxwebFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxwebFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
13319
+ /** @nocollapse */ RxwebFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: RxwebFormDirective, selector: "[formGroup],[rxwebForm]", inputs: { formGroup: "formGroup", ngForm: ["rxwebForm", "ngForm"] }, usesInheritance: true, ngImport: i0 });
13320
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxwebFormDirective, decorators: [{
13212
13321
  type: Directive,
13213
13322
  args: [{
13214
13323
  selector: '[formGroup],[rxwebForm]',
@@ -13234,13 +13343,13 @@ class AsyncValidationDirective {
13234
13343
  return this.async ? this.async(control) : of(null);
13235
13344
  }
13236
13345
  }
13237
- /** @nocollapse */ AsyncValidationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AsyncValidationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13238
- /** @nocollapse */ AsyncValidationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: AsyncValidationDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: { async: "async" }, providers: [{
13346
+ /** @nocollapse */ AsyncValidationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AsyncValidationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13347
+ /** @nocollapse */ AsyncValidationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: AsyncValidationDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: { async: "async" }, providers: [{
13239
13348
  provide: NG_ASYNC_VALIDATORS,
13240
13349
  useExisting: forwardRef((() => AsyncValidationDirective)),
13241
13350
  multi: true
13242
13351
  }], ngImport: i0 });
13243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AsyncValidationDirective, decorators: [{
13352
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AsyncValidationDirective, decorators: [{
13244
13353
  type: Directive,
13245
13354
  args: [{
13246
13355
  selector: '[ngModel],[formControlName],[formControl]',
@@ -13311,13 +13420,13 @@ class FileControlDirective {
13311
13420
  return result;
13312
13421
  }
13313
13422
  }
13314
- /** @nocollapse */ FileControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileControlDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13315
- /** @nocollapse */ FileControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: FileControlDirective, selector: "input[type=file]", inputs: { writeFile: "writeFile", extension: "extension", fileSize: "fileSize", file: "file" }, host: { listeners: { "change": "onChangeCall($event.target)", "blur": "onTouched()" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: FileControlDirective, multi: true }, {
13423
+ /** @nocollapse */ FileControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileControlDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13424
+ /** @nocollapse */ FileControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: FileControlDirective, selector: "input[type=file]", inputs: { writeFile: "writeFile", extension: "extension", fileSize: "fileSize", file: "file" }, host: { listeners: { "change": "onChangeCall($event.target)", "blur": "onTouched()" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: FileControlDirective, multi: true }, {
13316
13425
  provide: NG_VALIDATORS,
13317
13426
  useExisting: forwardRef((() => FileControlDirective)),
13318
13427
  multi: true
13319
13428
  }], ngImport: i0 });
13320
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileControlDirective, decorators: [{
13429
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileControlDirective, decorators: [{
13321
13430
  type: Directive,
13322
13431
  args: [{
13323
13432
  selector: "input[type=file]",
@@ -13366,13 +13475,13 @@ class ImageFileControlDirective {
13366
13475
  return of(null);
13367
13476
  }
13368
13477
  }
13369
- /** @nocollapse */ ImageFileControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ImageFileControlDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13370
- /** @nocollapse */ ImageFileControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: ImageFileControlDirective, selector: "input[type=file]", inputs: { image: "image" }, providers: [{
13478
+ /** @nocollapse */ ImageFileControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ImageFileControlDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13479
+ /** @nocollapse */ ImageFileControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: ImageFileControlDirective, selector: "input[type=file]", inputs: { image: "image" }, providers: [{
13371
13480
  provide: NG_ASYNC_VALIDATORS,
13372
13481
  useExisting: forwardRef((() => ImageFileControlDirective)),
13373
13482
  multi: true
13374
13483
  }], ngImport: i0 });
13375
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ImageFileControlDirective, decorators: [{
13484
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ImageFileControlDirective, decorators: [{
13376
13485
  type: Directive,
13377
13486
  args: [{
13378
13487
  selector: "input[type=file]",
@@ -13827,9 +13936,9 @@ class ControlExpressionProcess {
13827
13936
  }
13828
13937
  }
13829
13938
  }
13830
- /** @nocollapse */ ControlExpressionProcess.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ControlExpressionProcess, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13831
- /** @nocollapse */ ControlExpressionProcess.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: ControlExpressionProcess, inputs: { name: "name", formControlName: "formControlName" }, ngImport: i0 });
13832
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ControlExpressionProcess, decorators: [{
13939
+ /** @nocollapse */ ControlExpressionProcess.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ControlExpressionProcess, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13940
+ /** @nocollapse */ ControlExpressionProcess.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: ControlExpressionProcess, inputs: { name: "name", formControlName: "formControlName" }, ngImport: i0 });
13941
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ControlExpressionProcess, decorators: [{
13833
13942
  type: Directive
13834
13943
  }], propDecorators: { name: [{
13835
13944
  type: Input
@@ -13867,9 +13976,9 @@ class BaseValidator extends ControlExpressionProcess {
13867
13976
  this.eventName = eventName.toLowerCase();
13868
13977
  }
13869
13978
  }
13870
- /** @nocollapse */ BaseValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
13871
- /** @nocollapse */ BaseValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: BaseValidator, inputs: { formControl: "formControl" }, usesInheritance: true, ngImport: i0 });
13872
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseValidator, decorators: [{
13979
+ /** @nocollapse */ BaseValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
13980
+ /** @nocollapse */ BaseValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: BaseValidator, inputs: { formControl: "formControl" }, usesInheritance: true, ngImport: i0 });
13981
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseValidator, decorators: [{
13873
13982
  type: Directive
13874
13983
  }], propDecorators: { formControl: [{
13875
13984
  type: Input
@@ -13930,9 +14039,9 @@ class DecimalProvider {
13930
14039
  this.isSetConfig = true;
13931
14040
  }
13932
14041
  }
13933
- /** @nocollapse */ DecimalProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DecimalProvider, deps: [{ token: i1$2.DecimalPipe }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
13934
- /** @nocollapse */ DecimalProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DecimalProvider });
13935
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DecimalProvider, decorators: [{
14042
+ /** @nocollapse */ DecimalProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DecimalProvider, deps: [{ token: i1$2.DecimalPipe }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
14043
+ /** @nocollapse */ DecimalProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DecimalProvider });
14044
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: DecimalProvider, decorators: [{
13936
14045
  type: Injectable
13937
14046
  }], ctorParameters: function () {
13938
14047
  return [{ type: i1$2.DecimalPipe }, { type: undefined, decorators: [{
@@ -14094,9 +14203,9 @@ class RxFormControlDirective extends BaseValidator {
14094
14203
  this.maskProvider.onDestroy();
14095
14204
  }
14096
14205
  }
14097
- /** @nocollapse */ RxFormControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxFormControlDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DecimalProvider }], target: i0.ɵɵFactoryTarget.Directive });
14098
- /** @nocollapse */ RxFormControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: RxFormControlDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: { rxalpha: "rxalpha", rxalphaNumeric: "rxalphaNumeric", rxascii: "rxascii", rxcompare: "rxcompare", rxcompose: "rxcompose", rxcontains: "rxcontains", rxcreditCard: "rxcreditCard", rxdataUri: "rxdataUri", rxdifferent: "rxdifferent", rxdigit: "rxdigit", rxemail: "rxemail", rxendsWith: "rxendsWith", rxeven: "rxeven", rxextension: "rxextension", rxfactor: "rxfactor", rxfileSize: "rxfileSize", rxgreaterThanEqualTo: "rxgreaterThanEqualTo", rxgreaterThan: "rxgreaterThan", rxhexColor: "rxhexColor", rxjson: "rxjson", rxlatitude: "rxlatitude", rxlatLong: "rxlatLong", rxleapYear: "rxleapYear", rxlessThan: "rxlessThan", rxlessThanEqualTo: "rxlessThanEqualTo", rxlongitude: "rxlongitude", rxlowerCase: "rxlowerCase", rxmac: "rxmac", rxmaxDate: "rxmaxDate", rxmaxLength: "rxmaxLength", rxmaxNumber: "rxmaxNumber", rxminDate: "rxminDate", rxminLength: "rxminLength", rxminNumber: "rxminNumber", rxnumeric: "rxnumeric", rxodd: "rxodd", rxpassword: "rxpassword", rxport: "rxport", rxprimeNumber: "rxprimeNumber", rxrequired: "rxrequired", rxrange: "rxrange", rxrule: "rxrule", rxstartsWith: "rxstartsWith", rxtime: "rxtime", rxupperCase: "rxupperCase", rxurl: "rxurl", rxunique: "rxunique", rxnotEmpty: "rxnotEmpty", rxcusip: "rxcusip", rxgrid: "rxgrid", rxdate: "rxdate" }, providers: [NGMODEL_BINDING], usesInheritance: true, ngImport: i0 });
14099
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxFormControlDirective, decorators: [{
14206
+ /** @nocollapse */ RxFormControlDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxFormControlDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DecimalProvider }], target: i0.ɵɵFactoryTarget.Directive });
14207
+ /** @nocollapse */ RxFormControlDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: RxFormControlDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: { rxalpha: "rxalpha", rxalphaNumeric: "rxalphaNumeric", rxascii: "rxascii", rxcompare: "rxcompare", rxcompose: "rxcompose", rxcontains: "rxcontains", rxcreditCard: "rxcreditCard", rxdataUri: "rxdataUri", rxdifferent: "rxdifferent", rxdigit: "rxdigit", rxemail: "rxemail", rxendsWith: "rxendsWith", rxeven: "rxeven", rxextension: "rxextension", rxfactor: "rxfactor", rxfileSize: "rxfileSize", rxgreaterThanEqualTo: "rxgreaterThanEqualTo", rxgreaterThan: "rxgreaterThan", rxhexColor: "rxhexColor", rxjson: "rxjson", rxlatitude: "rxlatitude", rxlatLong: "rxlatLong", rxleapYear: "rxleapYear", rxlessThan: "rxlessThan", rxlessThanEqualTo: "rxlessThanEqualTo", rxlongitude: "rxlongitude", rxlowerCase: "rxlowerCase", rxmac: "rxmac", rxmaxDate: "rxmaxDate", rxmaxLength: "rxmaxLength", rxmaxNumber: "rxmaxNumber", rxminDate: "rxminDate", rxminLength: "rxminLength", rxminNumber: "rxminNumber", rxnumeric: "rxnumeric", rxodd: "rxodd", rxpassword: "rxpassword", rxport: "rxport", rxprimeNumber: "rxprimeNumber", rxrequired: "rxrequired", rxrange: "rxrange", rxrule: "rxrule", rxstartsWith: "rxstartsWith", rxtime: "rxtime", rxupperCase: "rxupperCase", rxurl: "rxurl", rxunique: "rxunique", rxnotEmpty: "rxnotEmpty", rxcusip: "rxcusip", rxgrid: "rxgrid", rxdate: "rxdate" }, providers: [NGMODEL_BINDING], usesInheritance: true, ngImport: i0 });
14208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxFormControlDirective, decorators: [{
14100
14209
  type: Directive,
14101
14210
  args: [{
14102
14211
  selector: '[ngModel],[formControlName],[formControl]',
@@ -14905,9 +15014,9 @@ class RxFormBuilder extends BaseFormBuilder {
14905
15014
  });
14906
15015
  }
14907
15016
  }
14908
- /** @nocollapse */ RxFormBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxFormBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14909
- /** @nocollapse */ RxFormBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxFormBuilder });
14910
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxFormBuilder, decorators: [{
15017
+ /** @nocollapse */ RxFormBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxFormBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15018
+ /** @nocollapse */ RxFormBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxFormBuilder });
15019
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxFormBuilder, decorators: [{
14911
15020
  type: Injectable
14912
15021
  }], ctorParameters: function () { return []; } });
14913
15022
 
@@ -14931,9 +15040,9 @@ class ControlHostDirective {
14931
15040
  this.viewContainerRef.clear();
14932
15041
  }
14933
15042
  }
14934
- /** @nocollapse */ ControlHostDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ControlHostDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
14935
- /** @nocollapse */ ControlHostDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: ControlHostDirective, selector: "[controlHost]", inputs: { portal: ["controlHost", "portal"] }, ngImport: i0 });
14936
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ControlHostDirective, decorators: [{
15043
+ /** @nocollapse */ ControlHostDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ControlHostDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
15044
+ /** @nocollapse */ ControlHostDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: ControlHostDirective, selector: "[controlHost]", inputs: { portal: ["controlHost", "portal"] }, ngImport: i0 });
15045
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ControlHostDirective, decorators: [{
14937
15046
  type: Directive,
14938
15047
  args: [{
14939
15048
  selector: '[controlHost]'
@@ -14955,19 +15064,19 @@ class TypedFormBuilder {
14955
15064
  return this.formBuilder.group(controlsConfig, options);
14956
15065
  }
14957
15066
  }
14958
- /** @nocollapse */ TypedFormBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TypedFormBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14959
- /** @nocollapse */ TypedFormBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TypedFormBuilder });
14960
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: TypedFormBuilder, decorators: [{
15067
+ /** @nocollapse */ TypedFormBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TypedFormBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15068
+ /** @nocollapse */ TypedFormBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TypedFormBuilder });
15069
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: TypedFormBuilder, decorators: [{
14961
15070
  type: Injectable
14962
15071
  }], ctorParameters: function () { return []; } });
14963
15072
 
14964
15073
  class RxReactiveFormsModule {
14965
15074
  static forRoot() { return { ngModule: RxReactiveFormsModule, providers: [] }; }
14966
15075
  }
14967
- /** @nocollapse */ RxReactiveFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxReactiveFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14968
- /** @nocollapse */ RxReactiveFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: RxReactiveFormsModule, declarations: [RxwebFormDirective, HtmlControlTemplateDirective, ControlHostDirective, RxFormControlDirective, FileControlDirective, ImageFileControlDirective, AsyncValidationDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule], exports: [AsyncValidationDirective, RxwebFormDirective, HtmlControlTemplateDirective, RxFormControlDirective, FileControlDirective, ImageFileControlDirective] });
14969
- /** @nocollapse */ RxReactiveFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxReactiveFormsModule, providers: [RxFormBuilder, DecimalProvider, DecimalPipe], imports: [CommonModule, FormsModule, ReactiveFormsModule] });
14970
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: RxReactiveFormsModule, decorators: [{
15076
+ /** @nocollapse */ RxReactiveFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxReactiveFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15077
+ /** @nocollapse */ RxReactiveFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: RxReactiveFormsModule, declarations: [RxwebFormDirective, HtmlControlTemplateDirective, ControlHostDirective, RxFormControlDirective, FileControlDirective, ImageFileControlDirective, AsyncValidationDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule], exports: [AsyncValidationDirective, RxwebFormDirective, HtmlControlTemplateDirective, RxFormControlDirective, FileControlDirective, ImageFileControlDirective] });
15078
+ /** @nocollapse */ RxReactiveFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxReactiveFormsModule, providers: [RxFormBuilder, DecimalProvider, DecimalPipe], imports: [CommonModule, FormsModule, ReactiveFormsModule] });
15079
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: RxReactiveFormsModule, decorators: [{
14971
15080
  type: NgModule,
14972
15081
  args: [{
14973
15082
  declarations: [RxwebFormDirective, HtmlControlTemplateDirective, ControlHostDirective, RxFormControlDirective, FileControlDirective, ImageFileControlDirective, AsyncValidationDirective],
@@ -14984,10 +15093,10 @@ class ReactiveTypedFormsModule {
14984
15093
  }
14985
15094
  static forRoot() { return { ngModule: ReactiveTypedFormsModule, providers: [] }; }
14986
15095
  }
14987
- /** @nocollapse */ ReactiveTypedFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ReactiveTypedFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14988
- /** @nocollapse */ ReactiveTypedFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: ReactiveTypedFormsModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, RxReactiveFormsModule], exports: [ReactiveFormsModule, FormsModule, ReactiveFormsModule] });
14989
- /** @nocollapse */ ReactiveTypedFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ReactiveTypedFormsModule, providers: [{ provide: FormBuilder, useClass: TypedFormBuilder }, TypedFormBuilder], imports: [CommonModule, FormsModule, ReactiveFormsModule, RxReactiveFormsModule.forRoot(), ReactiveFormsModule, FormsModule, ReactiveFormsModule] });
14990
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ReactiveTypedFormsModule, decorators: [{
15096
+ /** @nocollapse */ ReactiveTypedFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ReactiveTypedFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15097
+ /** @nocollapse */ ReactiveTypedFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: ReactiveTypedFormsModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, RxReactiveFormsModule], exports: [ReactiveFormsModule, FormsModule, ReactiveFormsModule] });
15098
+ /** @nocollapse */ ReactiveTypedFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ReactiveTypedFormsModule, providers: [{ provide: FormBuilder, useClass: TypedFormBuilder }, TypedFormBuilder], imports: [CommonModule, FormsModule, ReactiveFormsModule, RxReactiveFormsModule.forRoot(), ReactiveFormsModule, FormsModule, ReactiveFormsModule] });
15099
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ReactiveTypedFormsModule, decorators: [{
14991
15100
  type: NgModule,
14992
15101
  args: [{
14993
15102
  declarations: [],
@@ -15575,9 +15684,9 @@ class GenericReactiveFormComponent extends GenericFormBaseComponent {
15575
15684
  console.log(this.form.getErrorSummary(false));
15576
15685
  }
15577
15686
  }
15578
- /** @nocollapse */ GenericReactiveFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericReactiveFormComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
15579
- /** @nocollapse */ GenericReactiveFormComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: GenericReactiveFormComponent, inputs: { form: "form" }, usesInheritance: true, ngImport: i0 });
15580
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: GenericReactiveFormComponent, decorators: [{
15687
+ /** @nocollapse */ GenericReactiveFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericReactiveFormComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
15688
+ /** @nocollapse */ GenericReactiveFormComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: GenericReactiveFormComponent, inputs: { form: "form" }, usesInheritance: true, ngImport: i0 });
15689
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: GenericReactiveFormComponent, decorators: [{
15581
15690
  type: Directive
15582
15691
  }], ctorParameters: function () { return [{ type: i0.Type }, { type: undefined }, { type: i1$3.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { form: [{
15583
15692
  type: Input
@@ -15706,9 +15815,9 @@ class BaseInterceptor {
15706
15815
  return errors.join('\n');
15707
15816
  }
15708
15817
  }
15709
- /** @nocollapse */ BaseInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseInterceptor, deps: [{ token: AppSetting }, { token: i2$2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable });
15710
- /** @nocollapse */ BaseInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseInterceptor, providedIn: 'root' });
15711
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BaseInterceptor, decorators: [{
15818
+ /** @nocollapse */ BaseInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseInterceptor, deps: [{ token: AppSetting }, { token: i2$2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable });
15819
+ /** @nocollapse */ BaseInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseInterceptor, providedIn: 'root' });
15820
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BaseInterceptor, decorators: [{
15712
15821
  type: Injectable,
15713
15822
  args: [{ providedIn: 'root' }]
15714
15823
  }], ctorParameters: function () { return [{ type: AppSetting }, { type: i2$2.MatSnackBar }]; } });
@@ -15769,9 +15878,9 @@ class CachingInterceptor {
15769
15878
  }));
15770
15879
  }
15771
15880
  }
15772
- /** @nocollapse */ CachingInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: CachingInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15773
- /** @nocollapse */ CachingInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: CachingInterceptor, providedIn: 'root' });
15774
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: CachingInterceptor, decorators: [{
15881
+ /** @nocollapse */ CachingInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: CachingInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15882
+ /** @nocollapse */ CachingInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: CachingInterceptor, providedIn: 'root' });
15883
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: CachingInterceptor, decorators: [{
15775
15884
  type: Injectable,
15776
15885
  args: [{ providedIn: 'root' }]
15777
15886
  }], ctorParameters: function () { return []; } });
@@ -15813,9 +15922,9 @@ class LoadingScreenService {
15813
15922
  this.loading = false;
15814
15923
  }
15815
15924
  }
15816
- /** @nocollapse */ LoadingScreenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoadingScreenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15817
- /** @nocollapse */ LoadingScreenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoadingScreenService, providedIn: 'root' });
15818
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoadingScreenService, decorators: [{
15925
+ /** @nocollapse */ LoadingScreenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LoadingScreenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15926
+ /** @nocollapse */ LoadingScreenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LoadingScreenService, providedIn: 'root' });
15927
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LoadingScreenService, decorators: [{
15819
15928
  type: Injectable,
15820
15929
  args: [{ providedIn: 'root' }]
15821
15930
  }] });
@@ -15872,9 +15981,9 @@ class LoadingScreenInterceptor {
15872
15981
  }
15873
15982
  ;
15874
15983
  }
15875
- /** @nocollapse */ LoadingScreenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoadingScreenInterceptor, deps: [{ token: LoadingScreenService }], target: i0.ɵɵFactoryTarget.Injectable });
15876
- /** @nocollapse */ LoadingScreenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoadingScreenInterceptor });
15877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoadingScreenInterceptor, decorators: [{
15984
+ /** @nocollapse */ LoadingScreenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LoadingScreenInterceptor, deps: [{ token: LoadingScreenService }], target: i0.ɵɵFactoryTarget.Injectable });
15985
+ /** @nocollapse */ LoadingScreenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LoadingScreenInterceptor });
15986
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LoadingScreenInterceptor, decorators: [{
15878
15987
  type: Injectable
15879
15988
  }], ctorParameters: function () { return [{ type: LoadingScreenService }]; } });
15880
15989
 
@@ -15886,9 +15995,9 @@ class FileService extends GenericService {
15886
15995
  super('file');
15887
15996
  }
15888
15997
  }
15889
- /** @nocollapse */ FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15890
- /** @nocollapse */ FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileService, providedIn: 'root' });
15891
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: FileService, decorators: [{
15998
+ /** @nocollapse */ FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15999
+ /** @nocollapse */ FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileService, providedIn: 'root' });
16000
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FileService, decorators: [{
15892
16001
  type: Injectable,
15893
16002
  args: [{ providedIn: 'root' }]
15894
16003
  }], ctorParameters: function () { return []; } });
@@ -15922,9 +16031,9 @@ class PrintService {
15922
16031
  });
15923
16032
  }
15924
16033
  }
15925
- /** @nocollapse */ PrintService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PrintService, deps: [{ token: i1$3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
15926
- /** @nocollapse */ PrintService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PrintService, providedIn: 'root' });
15927
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PrintService, decorators: [{
16034
+ /** @nocollapse */ PrintService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PrintService, deps: [{ token: i1$3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
16035
+ /** @nocollapse */ PrintService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PrintService, providedIn: 'root' });
16036
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: PrintService, decorators: [{
15928
16037
  type: Injectable,
15929
16038
  args: [{ providedIn: 'root' }]
15930
16039
  }], ctorParameters: function () { return [{ type: i1$3.Router }]; } });
@@ -15932,12 +16041,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
15932
16041
  const DECLARATIONS$3 = [VdDynamicTableConfigDialogComponent];
15933
16042
  class MaterialModule {
15934
16043
  }
15935
- /** @nocollapse */ MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15936
- /** @nocollapse */ MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: MaterialModule, exports: [MatButtonModule,
16044
+ /** @nocollapse */ MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16045
+ /** @nocollapse */ MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: MaterialModule, exports: [MatButtonModule,
15937
16046
  DragDropModule] });
15938
- /** @nocollapse */ MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MaterialModule, imports: [MatButtonModule,
16047
+ /** @nocollapse */ MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MaterialModule, imports: [MatButtonModule,
15939
16048
  DragDropModule] });
15940
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MaterialModule, decorators: [{
16049
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MaterialModule, decorators: [{
15941
16050
  type: NgModule,
15942
16051
  args: [{
15943
16052
  exports: [
@@ -15948,13 +16057,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
15948
16057
  }] });
15949
16058
  class VdBaseModule {
15950
16059
  }
15951
- /** @nocollapse */ VdBaseModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdBaseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15952
- /** @nocollapse */ VdBaseModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdBaseModule, declarations: [VdDynamicTableConfigDialogComponent], imports: [CommonModule,
16060
+ /** @nocollapse */ VdBaseModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdBaseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16061
+ /** @nocollapse */ VdBaseModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdBaseModule, declarations: [VdDynamicTableConfigDialogComponent], imports: [CommonModule,
15953
16062
  FormsModule,
15954
16063
  ReactiveFormsModule,
15955
16064
  MatDialogModule,
15956
16065
  VdTableModule, MaterialModule], exports: [VdDynamicTableConfigDialogComponent] });
15957
- /** @nocollapse */ VdBaseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdBaseModule, providers: [
16066
+ /** @nocollapse */ VdBaseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdBaseModule, providers: [
15958
16067
  { provide: HTTP_INTERCEPTORS, useClass: BaseInterceptor, multi: true },
15959
16068
  { provide: HTTP_INTERCEPTORS, useClass: CachingInterceptor, multi: true },
15960
16069
  { provide: HTTP_INTERCEPTORS, useClass: LoadingScreenInterceptor, multi: true },
@@ -15964,7 +16073,7 @@ class VdBaseModule {
15964
16073
  MatDialogModule,
15965
16074
  VdTableModule,
15966
16075
  MaterialModule] });
15967
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdBaseModule, decorators: [{
16076
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdBaseModule, decorators: [{
15968
16077
  type: NgModule,
15969
16078
  args: [{
15970
16079
  imports: [
@@ -15997,9 +16106,9 @@ class VdAutocompleteOptionDirective extends CdkPortal {
15997
16106
  super(templateRef, viewContainerRef);
15998
16107
  }
15999
16108
  }
16000
- /** @nocollapse */ VdAutocompleteOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdAutocompleteOptionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
16001
- /** @nocollapse */ VdAutocompleteOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdAutocompleteOptionDirective, selector: "[vd-autocomplete-option]ng-template", usesInheritance: true, ngImport: i0 });
16002
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdAutocompleteOptionDirective, decorators: [{
16109
+ /** @nocollapse */ VdAutocompleteOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdAutocompleteOptionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
16110
+ /** @nocollapse */ VdAutocompleteOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdAutocompleteOptionDirective, selector: "[vd-autocomplete-option]ng-template", usesInheritance: true, ngImport: i0 });
16111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdAutocompleteOptionDirective, decorators: [{
16003
16112
  type: Directive,
16004
16113
  args: [{ selector: '[vd-autocomplete-option]ng-template' }]
16005
16114
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -16012,9 +16121,9 @@ class VdChipDirective extends CdkPortal {
16012
16121
  super(templateRef, viewContainerRef);
16013
16122
  }
16014
16123
  }
16015
- /** @nocollapse */ VdChipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
16016
- /** @nocollapse */ VdChipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdChipDirective, selector: "[vd-chip]ng-template", usesInheritance: true, ngImport: i0 });
16017
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipDirective, decorators: [{
16124
+ /** @nocollapse */ VdChipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
16125
+ /** @nocollapse */ VdChipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdChipDirective, selector: "[vd-chip]ng-template", usesInheritance: true, ngImport: i0 });
16126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipDirective, decorators: [{
16018
16127
  type: Directive,
16019
16128
  args: [{ selector: '[vd-chip]ng-template' }]
16020
16129
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -16033,7 +16142,7 @@ class VdChipsComponent extends AbstractMatFormField {
16033
16142
  * @param elementRef
16034
16143
  */
16035
16144
  constructor(injector, media, changeDetectorRef, ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef) {
16036
- super("app-vd-chips", ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef);
16145
+ super("app-vd-chips", ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, focusMonitor, elementRef, changeDetectorRef);
16037
16146
  this.injector = injector;
16038
16147
  this.media = media;
16039
16148
  this.changeDetectorRef = changeDetectorRef;
@@ -16393,11 +16502,11 @@ class VdChipsComponent extends AbstractMatFormField {
16393
16502
  (_a = this.dataSourceSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
16394
16503
  }
16395
16504
  }
16396
- /** @nocollapse */ VdChipsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipsComponent, deps: [{ token: i0.Injector }, { token: VdMediaService }, { token: i0.ChangeDetectorRef }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgForm, optional: true }, { token: i1.FormGroupDirective, optional: true }, { token: i2.ErrorStateMatcher }, { token: i3$2.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
16397
- /** @nocollapse */ VdChipsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdChipsComponent, selector: "vd-chips", inputs: { classType: "classType", chips: "chips", endpoint: "endpoint", params: "params", projection: "projection", paginated: "paginated", context: "context", key: "key", searchField: "searchField", searchFields: "searchFields", removable: "removable", debounce: "debounce", autocompleteCssClass: "autocompleteCssClass", suffixButtons: "suffixButtons" }, outputs: { initSelect: "initSelect", selected: "selected", cleared: "cleared", onLaunch: "launch", chipFocus: "chipFocus" }, providers: [{ provide: MatFormFieldControl, useExisting: VdChipsComponent }], queries: [{ propertyName: "chipTemplate", first: true, predicate: VdChipDirective, descendants: true }, { propertyName: "autocompleteOptionTemplate", first: true, predicate: VdAutocompleteOptionDirective, descendants: true }], viewQueries: [{ propertyName: "dynamicTable", first: true, predicate: VdDynamicTableComponent, descendants: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }, { propertyName: "autocomplete", first: true, predicate: MatAutocomplete, descendants: true }, { propertyName: "autocompleteTrigger", first: true, predicate: MatAutocompleteTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-chip-list #chipList [required]=\"required\" [disabled]=\"readonly\" matAutocompleteOrigin #origin=\"matAutocompleteOrigin\">\r\n\t<!-- #region Chips -->\r\n\t<ng-template let-chip let-first=\"first\" let-index=\"index\" ngFor [ngForOf]=\"chips\">\r\n\t\t<mat-basic-chip [selectable]=\"!readonly\" [removable]=\"!readonly\" (removed)=\"handleRemovedEvent()\" disableRipple>\r\n\t\t\t<span class=\"vd-chip-content\">\r\n\t\t\t\t<span *ngIf=\"!chipTemplate?.templateRef\">\r\n\t\t\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{ chip }}</span>\r\n\t\t\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: chip }\"></ng-template>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-template *ngIf=\"chipTemplate?.templateRef\" [ngTemplateOutlet]=\"chipTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ chip: chip }\"></ng-template>\r\n\t\t\t</span>\r\n\t\t\t<ng-template let-button let-first=\"first\" ngFor [ngForOf]=\"suffixButtons\">\r\n\t\t\t\t<a mat-icon-button *ngIf=\"!button.hide || !button.hide(chips[0], context)\" (click)=\"$event.stopPropagation(); button.event && button.event(chips[0], context)\">\r\n\t\t\t\t\t<mat-icon>{{button.icon}}</mat-icon>\r\n\t\t\t\t</a>\r\n\t\t\t</ng-template>\r\n\t\t\t<a mat-icon-button *ngIf=\"onLaunch?.observers?.length > 0\" (click)=\"$event.stopPropagation(); handleLaunchClicked()\">\r\n\t\t\t\t<mat-icon>launch</mat-icon>\r\n\t\t\t</a>\r\n\t\t\t<a mat-icon-button *ngIf=\"!readonly\">\r\n\t\t\t\t<mat-icon matChipRemove>close</mat-icon>\r\n\t\t\t</a>\r\n\t\t</mat-basic-chip>\r\n\t</ng-template>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Search box -->\r\n\t<input matInput [hidden]=\"value && !empty\" placeholder=\"{{placeholder}}\" (focus)=\"connect()\" [readonly]=\"readonly\" [matChipInputFor]=\"chipList\" [matAutocomplete]=\"auto\" [matAutocompleteConnectedTo]=\"origin\" [formControl]=\"autoCompleteChipList\" #filterInput />\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Reset button -->\r\n\t<a mat-icon-button trailingIcon *ngIf=\"filterInput.value\" class=\"reset-input\" (click)=\"filterInput.value = ''\">\r\n\t\t<mat-icon>close</mat-icon>\r\n\t</a>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Progress -->\r\n\t<!-- <mat-spinner diameter=\"18\" *ngIf=\"dataSource?.isLoading\"></mat-spinner> -->\r\n\t<!-- #endregion -->\r\n</mat-chip-list>\r\n\r\n<!-- #region Autocomplete -->\r\n<mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"addChip($event.option.value, filterInput)\" class=\"{{autocompleteCssClass}}{{classType?' table-autocomplete':''}}\">\r\n\t<ng-template *ngIf=\"!classType && opened\" let-item let-first=\"first\" ngFor [ngForOf]=\"dataSource?.items\">\r\n\t\t<mat-option [value]=\"item\">\r\n\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{item}}</span>\r\n\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: item }\"></ng-template>\r\n\t\t</mat-option>\r\n\t</ng-template>\r\n\t<ng-container *ngIf=\"classType && opened\">\r\n\t\t<mat-option hide=\"true\"></mat-option>\r\n\t\t<vd-dynamic-table [dataSource]=\"dataSource\" [classType]=\"classType\" (rowClick)=\"addChip($event, filterInput)\" matSort [sortActive]=\"sortActive||'id'\" [sortDirection]=\"sortDirection\"></vd-dynamic-table>\r\n\t</ng-container>\r\n\t<mat-paginator [length]=\"dataSource?.total\" [pageIndex]=\"dataSource?.pageIndex\" [pageSize]=\"dataSource?.pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\" hidePageSize=\"true\"></mat-paginator>\r\n</mat-autocomplete>\r\n<!-- #endregion -->", styles: [":host ::ng-deep .mat-chip-list-wrapper{min-height:24px}:host ::ng-deep .mat-chip{display:flex;flex-direction:row;width:100%;padding:0 5px;justify-content:center}:host ::ng-deep .mat-chip.mat-chip-disabled{opacity:.6}:host ::ng-deep .mat-chip .vd-chip-content{flex-grow:1!important;font-weight:initial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;justify-content:center}:host ::ng-deep .mat-chip .mat-icon{cursor:pointer}:host ::ng-deep .mat-chip .vd-chip-launch{font-size:18px;position:absolute;right:4px;top:0;cursor:pointer}:host ::ng-deep .mat-chip .vd-chip-launch.removable{right:34px}:host ::ng-deep .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;width:2em;height:2em;margin-top:-6px}:host ::ng-deep .mat-icon-button .mat-button-wrapper{line-height:20px}:host ::ng-deep .mat-icon-button .mat-button-wrapper .mat-icon{font-size:21px;line-height:21px}::ng-deep .mat-autocomplete-panel{margin-top:9px}::ng-deep .mat-autocomplete-panel .mat-paginator{position:sticky;bottom:0}::ng-deep .mat-autocomplete-panel .mat-paginator .mat-paginator-container{padding:0}::ng-deep .mat-autocomplete-panel .mat-paginator .mat-paginator-container .mat-paginator-range-actions{align-items:baseline}::ng-deep .mat-autocomplete-panel .mat-paginator .mat-paginator-container .mat-paginator-range-actions .mat-paginator-range-label{margin:0 16px 0 24px}::ng-deep .mat-autocomplete-panel.table-autocomplete{max-height:400px}mat-spinner{margin-top:-9px;margin-right:6px}::ng-deep mat-form-field.mat-form-field-type-app-vd-chips .mat-form-field-infix{display:flex;align-items:center;flex-direction:row}::ng-deep mat-form-field.multiline .vd-chip-content{margin-top:-4px}\n"], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: VdDynamicTableComponent, selector: "vd-dynamic-table", inputs: ["dataSource", "data", "classType", "context", "dataSourceFilter", "static", "filterable", "paginable", "selectable", "sortActive", "sortDirection", "stickyHeader", "stickyFilter", "rowNgClass", "detailsTemplate", "readonly", "selectAllFilter", "columns", "rowMenuItems", "excludedColumns", "pageSize", "pageSizeOptions"], outputs: ["rowClick"] }, { kind: "component", type: i7.MatChipList, selector: "mat-chip-list", inputs: ["role", "aria-describedby", "errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { kind: "directive", type: i7.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "role", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i11$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i11$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i11$1.MatAutocompleteOrigin, selector: "[matAutocompleteOrigin]", exportAs: ["matAutocompleteOrigin"] }, { kind: "component", type: i18.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }] });
16398
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipsComponent, decorators: [{
16505
+ /** @nocollapse */ VdChipsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipsComponent, deps: [{ token: i0.Injector }, { token: VdMediaService }, { token: i0.ChangeDetectorRef }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgForm, optional: true }, { token: i1.FormGroupDirective, optional: true }, { token: i2.ErrorStateMatcher }, { token: i3$2.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
16506
+ /** @nocollapse */ VdChipsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdChipsComponent, selector: "vd-chips", inputs: { classType: "classType", chips: "chips", endpoint: "endpoint", params: "params", projection: "projection", paginated: "paginated", context: "context", key: "key", searchField: "searchField", searchFields: "searchFields", removable: "removable", debounce: "debounce", autocompleteCssClass: "autocompleteCssClass", suffixButtons: "suffixButtons" }, outputs: { initSelect: "initSelect", selected: "selected", cleared: "cleared", onLaunch: "launch", chipFocus: "chipFocus" }, providers: [{ provide: MatFormFieldControl, useExisting: VdChipsComponent }], queries: [{ propertyName: "chipTemplate", first: true, predicate: VdChipDirective, descendants: true }, { propertyName: "autocompleteOptionTemplate", first: true, predicate: VdAutocompleteOptionDirective, descendants: true }], viewQueries: [{ propertyName: "dynamicTable", first: true, predicate: VdDynamicTableComponent, descendants: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }, { propertyName: "autocomplete", first: true, predicate: MatAutocomplete, descendants: true }, { propertyName: "autocompleteTrigger", first: true, predicate: MatAutocompleteTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-chip-grid #chipList [required]=\"required\" [disabled]=\"readonly\" matAutocompleteOrigin #origin=\"matAutocompleteOrigin\">\r\n\t<!-- #region Chips -->\r\n\t<ng-template let-chip let-first=\"first\" let-index=\"index\" ngFor [ngForOf]=\"chips\">\r\n\t\t<mat-basic-chip [removable]=\"!readonly\" (removed)=\"handleRemovedEvent()\" disableRipple>\r\n\t\t\t<span class=\"vd-chip-content\">\r\n\t\t\t\t<span *ngIf=\"!chipTemplate?.templateRef\">\r\n\t\t\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{ chip }}</span>\r\n\t\t\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: chip }\"></ng-template>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-template *ngIf=\"chipTemplate?.templateRef\" [ngTemplateOutlet]=\"chipTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ chip: chip }\"></ng-template>\r\n\t\t\t</span>\r\n\t\t\t<ng-template let-button let-first=\"first\" ngFor [ngForOf]=\"suffixButtons\">\r\n\t\t\t\t<a mat-icon-button *ngIf=\"!button.hide || !button.hide(chips[0], context)\" (click)=\"$event.stopPropagation(); button.event && button.event(chips[0], context)\">\r\n\t\t\t\t\t<mat-icon>{{button.icon}}</mat-icon>\r\n\t\t\t\t</a>\r\n\t\t\t</ng-template>\r\n\t\t\t<a mat-icon-button *ngIf=\"onLaunch?.observers?.length > 0\" (click)=\"$event.stopPropagation(); handleLaunchClicked()\">\r\n\t\t\t\t<mat-icon>launch</mat-icon>\r\n\t\t\t</a>\r\n\t\t\t<a mat-icon-button *ngIf=\"!readonly\">\r\n\t\t\t\t<mat-icon matChipRemove>close</mat-icon>\r\n\t\t\t</a>\r\n\t\t</mat-basic-chip>\r\n\t</ng-template>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Search box -->\r\n\t<input matInput [hidden]=\"value && !empty\" placeholder=\"{{placeholder}}\" (focus)=\"connect()\" [readonly]=\"readonly\" [matChipInputFor]=\"chipList\" [matAutocomplete]=\"auto\" [matAutocompleteConnectedTo]=\"origin\" [formControl]=\"autoCompleteChipList\" #filterInput />\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Reset button -->\r\n\t<a mat-icon-button trailingIcon *ngIf=\"filterInput.value\" class=\"reset-input\" (click)=\"filterInput.value = ''\">\r\n\t\t<mat-icon>close</mat-icon>\r\n\t</a>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Progress -->\r\n\t<!-- <mat-spinner diameter=\"18\" *ngIf=\"dataSource?.isLoading\"></mat-spinner> -->\r\n\t<!-- #endregion -->\r\n</mat-chip-grid>\r\n\r\n<!-- #region Autocomplete -->\r\n<mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"addChip($event.option.value, filterInput)\" class=\"{{autocompleteCssClass}}{{classType?' table-autocomplete':''}}\">\r\n\t<ng-template *ngIf=\"!classType && opened\" let-item let-first=\"first\" ngFor [ngForOf]=\"dataSource?.items\">\r\n\t\t<mat-option [value]=\"item\">\r\n\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{item}}</span>\r\n\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: item }\"></ng-template>\r\n\t\t</mat-option>\r\n\t</ng-template>\r\n\t<ng-container *ngIf=\"classType && opened\">\r\n\t\t<mat-option hide=\"true\"></mat-option>\r\n\t\t<vd-dynamic-table [dataSource]=\"dataSource\" [classType]=\"classType\" (rowClick)=\"addChip($event, filterInput)\" matSort [sortActive]=\"sortActive||'id'\" [sortDirection]=\"sortDirection\"></vd-dynamic-table>\r\n\t</ng-container>\r\n\t<mat-paginator [length]=\"dataSource?.total\" [pageIndex]=\"dataSource?.pageIndex\" [pageSize]=\"dataSource?.pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\" hidePageSize=\"true\"></mat-paginator>\r\n</mat-autocomplete>\r\n<!-- #endregion -->", styles: [":host ::ng-deep .mat-chip-list-wrapper{min-height:24px}:host ::ng-deep .mat-mdc-chip{display:flex;flex-direction:row;width:100%;padding:0 5px;justify-content:center}:host ::ng-deep .mat-mdc-chip.mat-chip-disabled{opacity:.6}:host ::ng-deep .mat-mdc-chip .vd-chip-content{flex-grow:1!important;font-weight:initial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;justify-content:center}:host ::ng-deep .mat-mdc-chip .mat-icon{cursor:pointer}:host ::ng-deep .mat-mdc-chip .vd-chip-launch{font-size:18px;position:absolute;right:4px;top:0;cursor:pointer}:host ::ng-deep .mat-mdc-chip .vd-chip-launch.removable{right:34px}:host ::ng-deep .mat-mdc-icon-button{display:inline-flex;justify-content:center;align-items:center;width:2em;height:2em;margin-top:-6px}:host ::ng-deep .mat-mdc-icon-button .mat-button-wrapper{line-height:20px}:host ::ng-deep .mat-mdc-icon-button .mat-button-wrapper .mat-icon{font-size:21px;line-height:21px}::ng-deep .mat-autocomplete-panel{margin-top:9px}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator{position:sticky;bottom:0}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator .mat-mdc-paginator-container{padding:0}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator .mat-mdc-paginator-container .mat-mdc-paginator-range-actions{align-items:baseline}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator .mat-mdc-paginator-container .mat-mdc-paginator-range-actions .mat-mdc-paginator-range-label{margin:0 16px 0 24px}::ng-deep .mat-autocomplete-panel.table-autocomplete{max-height:400px}mat-spinner{margin-top:-9px;margin-right:6px}::ng-deep mat-form-field.mat-form-field-type-app-vd-chips .mat-form-field-infix{display:flex;align-items:center;flex-direction:row}::ng-deep mat-form-field.multiline .vd-chip-content{margin-top:-4px}\n"], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: VdDynamicTableComponent, selector: "vd-dynamic-table", inputs: ["dataSource", "data", "classType", "context", "dataSourceFilter", "static", "filterable", "paginable", "selectable", "sortActive", "sortDirection", "stickyHeader", "stickyFilter", "rowNgClass", "detailsTemplate", "readonly", "selectAllFilter", "columns", "rowMenuItems", "excludedColumns", "pageSize", "pageSizeOptions"], outputs: ["rowClick"] }, { kind: "component", type: i7.MatChip, selector: "mat-basic-chip, mat-chip", inputs: ["color", "disabled", "disableRipple", "tabIndex", "role", "id", "aria-label", "value", "removable", "highlighted"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "component", type: i7.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$1.MatIconAnchor, selector: "a[mat-icon-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i11.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i11.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i11.MatAutocompleteOrigin, selector: "[matAutocompleteOrigin]", exportAs: ["matAutocompleteOrigin"] }, { kind: "component", type: i18.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }] });
16507
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipsComponent, decorators: [{
16399
16508
  type: Component,
16400
- args: [{ selector: 'vd-chips', providers: [{ provide: MatFormFieldControl, useExisting: VdChipsComponent }], template: "<mat-chip-list #chipList [required]=\"required\" [disabled]=\"readonly\" matAutocompleteOrigin #origin=\"matAutocompleteOrigin\">\r\n\t<!-- #region Chips -->\r\n\t<ng-template let-chip let-first=\"first\" let-index=\"index\" ngFor [ngForOf]=\"chips\">\r\n\t\t<mat-basic-chip [selectable]=\"!readonly\" [removable]=\"!readonly\" (removed)=\"handleRemovedEvent()\" disableRipple>\r\n\t\t\t<span class=\"vd-chip-content\">\r\n\t\t\t\t<span *ngIf=\"!chipTemplate?.templateRef\">\r\n\t\t\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{ chip }}</span>\r\n\t\t\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: chip }\"></ng-template>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-template *ngIf=\"chipTemplate?.templateRef\" [ngTemplateOutlet]=\"chipTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ chip: chip }\"></ng-template>\r\n\t\t\t</span>\r\n\t\t\t<ng-template let-button let-first=\"first\" ngFor [ngForOf]=\"suffixButtons\">\r\n\t\t\t\t<a mat-icon-button *ngIf=\"!button.hide || !button.hide(chips[0], context)\" (click)=\"$event.stopPropagation(); button.event && button.event(chips[0], context)\">\r\n\t\t\t\t\t<mat-icon>{{button.icon}}</mat-icon>\r\n\t\t\t\t</a>\r\n\t\t\t</ng-template>\r\n\t\t\t<a mat-icon-button *ngIf=\"onLaunch?.observers?.length > 0\" (click)=\"$event.stopPropagation(); handleLaunchClicked()\">\r\n\t\t\t\t<mat-icon>launch</mat-icon>\r\n\t\t\t</a>\r\n\t\t\t<a mat-icon-button *ngIf=\"!readonly\">\r\n\t\t\t\t<mat-icon matChipRemove>close</mat-icon>\r\n\t\t\t</a>\r\n\t\t</mat-basic-chip>\r\n\t</ng-template>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Search box -->\r\n\t<input matInput [hidden]=\"value && !empty\" placeholder=\"{{placeholder}}\" (focus)=\"connect()\" [readonly]=\"readonly\" [matChipInputFor]=\"chipList\" [matAutocomplete]=\"auto\" [matAutocompleteConnectedTo]=\"origin\" [formControl]=\"autoCompleteChipList\" #filterInput />\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Reset button -->\r\n\t<a mat-icon-button trailingIcon *ngIf=\"filterInput.value\" class=\"reset-input\" (click)=\"filterInput.value = ''\">\r\n\t\t<mat-icon>close</mat-icon>\r\n\t</a>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Progress -->\r\n\t<!-- <mat-spinner diameter=\"18\" *ngIf=\"dataSource?.isLoading\"></mat-spinner> -->\r\n\t<!-- #endregion -->\r\n</mat-chip-list>\r\n\r\n<!-- #region Autocomplete -->\r\n<mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"addChip($event.option.value, filterInput)\" class=\"{{autocompleteCssClass}}{{classType?' table-autocomplete':''}}\">\r\n\t<ng-template *ngIf=\"!classType && opened\" let-item let-first=\"first\" ngFor [ngForOf]=\"dataSource?.items\">\r\n\t\t<mat-option [value]=\"item\">\r\n\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{item}}</span>\r\n\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: item }\"></ng-template>\r\n\t\t</mat-option>\r\n\t</ng-template>\r\n\t<ng-container *ngIf=\"classType && opened\">\r\n\t\t<mat-option hide=\"true\"></mat-option>\r\n\t\t<vd-dynamic-table [dataSource]=\"dataSource\" [classType]=\"classType\" (rowClick)=\"addChip($event, filterInput)\" matSort [sortActive]=\"sortActive||'id'\" [sortDirection]=\"sortDirection\"></vd-dynamic-table>\r\n\t</ng-container>\r\n\t<mat-paginator [length]=\"dataSource?.total\" [pageIndex]=\"dataSource?.pageIndex\" [pageSize]=\"dataSource?.pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\" hidePageSize=\"true\"></mat-paginator>\r\n</mat-autocomplete>\r\n<!-- #endregion -->", styles: [":host ::ng-deep .mat-chip-list-wrapper{min-height:24px}:host ::ng-deep .mat-chip{display:flex;flex-direction:row;width:100%;padding:0 5px;justify-content:center}:host ::ng-deep .mat-chip.mat-chip-disabled{opacity:.6}:host ::ng-deep .mat-chip .vd-chip-content{flex-grow:1!important;font-weight:initial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;justify-content:center}:host ::ng-deep .mat-chip .mat-icon{cursor:pointer}:host ::ng-deep .mat-chip .vd-chip-launch{font-size:18px;position:absolute;right:4px;top:0;cursor:pointer}:host ::ng-deep .mat-chip .vd-chip-launch.removable{right:34px}:host ::ng-deep .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;width:2em;height:2em;margin-top:-6px}:host ::ng-deep .mat-icon-button .mat-button-wrapper{line-height:20px}:host ::ng-deep .mat-icon-button .mat-button-wrapper .mat-icon{font-size:21px;line-height:21px}::ng-deep .mat-autocomplete-panel{margin-top:9px}::ng-deep .mat-autocomplete-panel .mat-paginator{position:sticky;bottom:0}::ng-deep .mat-autocomplete-panel .mat-paginator .mat-paginator-container{padding:0}::ng-deep .mat-autocomplete-panel .mat-paginator .mat-paginator-container .mat-paginator-range-actions{align-items:baseline}::ng-deep .mat-autocomplete-panel .mat-paginator .mat-paginator-container .mat-paginator-range-actions .mat-paginator-range-label{margin:0 16px 0 24px}::ng-deep .mat-autocomplete-panel.table-autocomplete{max-height:400px}mat-spinner{margin-top:-9px;margin-right:6px}::ng-deep mat-form-field.mat-form-field-type-app-vd-chips .mat-form-field-infix{display:flex;align-items:center;flex-direction:row}::ng-deep mat-form-field.multiline .vd-chip-content{margin-top:-4px}\n"] }]
16509
+ args: [{ selector: 'vd-chips', providers: [{ provide: MatFormFieldControl, useExisting: VdChipsComponent }], template: "<mat-chip-grid #chipList [required]=\"required\" [disabled]=\"readonly\" matAutocompleteOrigin #origin=\"matAutocompleteOrigin\">\r\n\t<!-- #region Chips -->\r\n\t<ng-template let-chip let-first=\"first\" let-index=\"index\" ngFor [ngForOf]=\"chips\">\r\n\t\t<mat-basic-chip [removable]=\"!readonly\" (removed)=\"handleRemovedEvent()\" disableRipple>\r\n\t\t\t<span class=\"vd-chip-content\">\r\n\t\t\t\t<span *ngIf=\"!chipTemplate?.templateRef\">\r\n\t\t\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{ chip }}</span>\r\n\t\t\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: chip }\"></ng-template>\r\n\t\t\t\t</span>\r\n\t\t\t\t<ng-template *ngIf=\"chipTemplate?.templateRef\" [ngTemplateOutlet]=\"chipTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ chip: chip }\"></ng-template>\r\n\t\t\t</span>\r\n\t\t\t<ng-template let-button let-first=\"first\" ngFor [ngForOf]=\"suffixButtons\">\r\n\t\t\t\t<a mat-icon-button *ngIf=\"!button.hide || !button.hide(chips[0], context)\" (click)=\"$event.stopPropagation(); button.event && button.event(chips[0], context)\">\r\n\t\t\t\t\t<mat-icon>{{button.icon}}</mat-icon>\r\n\t\t\t\t</a>\r\n\t\t\t</ng-template>\r\n\t\t\t<a mat-icon-button *ngIf=\"onLaunch?.observers?.length > 0\" (click)=\"$event.stopPropagation(); handleLaunchClicked()\">\r\n\t\t\t\t<mat-icon>launch</mat-icon>\r\n\t\t\t</a>\r\n\t\t\t<a mat-icon-button *ngIf=\"!readonly\">\r\n\t\t\t\t<mat-icon matChipRemove>close</mat-icon>\r\n\t\t\t</a>\r\n\t\t</mat-basic-chip>\r\n\t</ng-template>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Search box -->\r\n\t<input matInput [hidden]=\"value && !empty\" placeholder=\"{{placeholder}}\" (focus)=\"connect()\" [readonly]=\"readonly\" [matChipInputFor]=\"chipList\" [matAutocomplete]=\"auto\" [matAutocompleteConnectedTo]=\"origin\" [formControl]=\"autoCompleteChipList\" #filterInput />\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Reset button -->\r\n\t<a mat-icon-button trailingIcon *ngIf=\"filterInput.value\" class=\"reset-input\" (click)=\"filterInput.value = ''\">\r\n\t\t<mat-icon>close</mat-icon>\r\n\t</a>\r\n\t<!-- #endregion -->\r\n\r\n\t<!-- #region Progress -->\r\n\t<!-- <mat-spinner diameter=\"18\" *ngIf=\"dataSource?.isLoading\"></mat-spinner> -->\r\n\t<!-- #endregion -->\r\n</mat-chip-grid>\r\n\r\n<!-- #region Autocomplete -->\r\n<mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"addChip($event.option.value, filterInput)\" class=\"{{autocompleteCssClass}}{{classType?' table-autocomplete':''}}\">\r\n\t<ng-template *ngIf=\"!classType && opened\" let-item let-first=\"first\" ngFor [ngForOf]=\"dataSource?.items\">\r\n\t\t<mat-option [value]=\"item\">\r\n\t\t\t<span *ngIf=\"!autocompleteOptionTemplate?.templateRef\">{{item}}</span>\r\n\t\t\t<ng-template *ngIf=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutlet]=\"autocompleteOptionTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ option: item }\"></ng-template>\r\n\t\t</mat-option>\r\n\t</ng-template>\r\n\t<ng-container *ngIf=\"classType && opened\">\r\n\t\t<mat-option hide=\"true\"></mat-option>\r\n\t\t<vd-dynamic-table [dataSource]=\"dataSource\" [classType]=\"classType\" (rowClick)=\"addChip($event, filterInput)\" matSort [sortActive]=\"sortActive||'id'\" [sortDirection]=\"sortDirection\"></vd-dynamic-table>\r\n\t</ng-container>\r\n\t<mat-paginator [length]=\"dataSource?.total\" [pageIndex]=\"dataSource?.pageIndex\" [pageSize]=\"dataSource?.pageSize\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons=\"true\" hidePageSize=\"true\"></mat-paginator>\r\n</mat-autocomplete>\r\n<!-- #endregion -->", styles: [":host ::ng-deep .mat-chip-list-wrapper{min-height:24px}:host ::ng-deep .mat-mdc-chip{display:flex;flex-direction:row;width:100%;padding:0 5px;justify-content:center}:host ::ng-deep .mat-mdc-chip.mat-chip-disabled{opacity:.6}:host ::ng-deep .mat-mdc-chip .vd-chip-content{flex-grow:1!important;font-weight:initial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;justify-content:center}:host ::ng-deep .mat-mdc-chip .mat-icon{cursor:pointer}:host ::ng-deep .mat-mdc-chip .vd-chip-launch{font-size:18px;position:absolute;right:4px;top:0;cursor:pointer}:host ::ng-deep .mat-mdc-chip .vd-chip-launch.removable{right:34px}:host ::ng-deep .mat-mdc-icon-button{display:inline-flex;justify-content:center;align-items:center;width:2em;height:2em;margin-top:-6px}:host ::ng-deep .mat-mdc-icon-button .mat-button-wrapper{line-height:20px}:host ::ng-deep .mat-mdc-icon-button .mat-button-wrapper .mat-icon{font-size:21px;line-height:21px}::ng-deep .mat-autocomplete-panel{margin-top:9px}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator{position:sticky;bottom:0}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator .mat-mdc-paginator-container{padding:0}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator .mat-mdc-paginator-container .mat-mdc-paginator-range-actions{align-items:baseline}::ng-deep .mat-autocomplete-panel .mat-mdc-paginator .mat-mdc-paginator-container .mat-mdc-paginator-range-actions .mat-mdc-paginator-range-label{margin:0 16px 0 24px}::ng-deep .mat-autocomplete-panel.table-autocomplete{max-height:400px}mat-spinner{margin-top:-9px;margin-right:6px}::ng-deep mat-form-field.mat-form-field-type-app-vd-chips .mat-form-field-infix{display:flex;align-items:center;flex-direction:row}::ng-deep mat-form-field.multiline .vd-chip-content{margin-top:-4px}\n"] }]
16401
16510
  }], ctorParameters: function () {
16402
16511
  return [{ type: i0.Injector }, { type: VdMediaService }, { type: i0.ChangeDetectorRef }, { type: i1.NgControl, decorators: [{
16403
16512
  type: Optional
@@ -16487,8 +16596,8 @@ const MATRIAL_DECLARATIONS = [
16487
16596
  ];
16488
16597
  class VdChipsModule {
16489
16598
  }
16490
- /** @nocollapse */ VdChipsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16491
- /** @nocollapse */ VdChipsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdChipsModule, declarations: [VdChipsComponent,
16599
+ /** @nocollapse */ VdChipsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16600
+ /** @nocollapse */ VdChipsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdChipsModule, declarations: [VdChipsComponent,
16492
16601
  VdAutocompleteOptionDirective,
16493
16602
  VdChipDirective], imports: [CommonModule,
16494
16603
  FormsModule,
@@ -16503,12 +16612,12 @@ class VdChipsModule {
16503
16612
  MatPaginatorModule], exports: [VdChipsComponent,
16504
16613
  VdAutocompleteOptionDirective,
16505
16614
  VdChipDirective] });
16506
- /** @nocollapse */ VdChipsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipsModule, imports: [CommonModule,
16615
+ /** @nocollapse */ VdChipsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipsModule, imports: [CommonModule,
16507
16616
  FormsModule,
16508
16617
  ReactiveFormsModule,
16509
16618
  VdTableModule,
16510
16619
  MATRIAL_DECLARATIONS] });
16511
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdChipsModule, decorators: [{
16620
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdChipsModule, decorators: [{
16512
16621
  type: NgModule,
16513
16622
  args: [{
16514
16623
  imports: [
@@ -16543,8 +16652,8 @@ const VD_DIALOGS_ENTRY_COMPONENTS = [
16543
16652
  ];
16544
16653
  class VdDialogsModule {
16545
16654
  }
16546
- /** @nocollapse */ VdDialogsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16547
- /** @nocollapse */ VdDialogsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdDialogsModule, declarations: [VdAlertDialogComponent,
16655
+ /** @nocollapse */ VdDialogsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16656
+ /** @nocollapse */ VdDialogsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdDialogsModule, declarations: [VdAlertDialogComponent,
16548
16657
  VdConfirmDialogComponent,
16549
16658
  VdPromptDialogComponent,
16550
16659
  VdDialogComponent,
@@ -16561,14 +16670,14 @@ class VdDialogsModule {
16561
16670
  VdDialogTitleDirective,
16562
16671
  VdDialogActionsDirective,
16563
16672
  VdDialogContentDirective] });
16564
- /** @nocollapse */ VdDialogsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogsModule, providers: [
16673
+ /** @nocollapse */ VdDialogsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogsModule, providers: [
16565
16674
  DIALOG_PROVIDER
16566
16675
  ], imports: [FormsModule,
16567
16676
  CommonModule,
16568
16677
  MatDialogModule,
16569
16678
  MatInputModule,
16570
16679
  MatButtonModule] });
16571
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdDialogsModule, decorators: [{
16680
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdDialogsModule, decorators: [{
16572
16681
  type: NgModule,
16573
16682
  args: [{
16574
16683
  imports: [
@@ -16751,7 +16860,7 @@ class VdFileInputComponent {
16751
16860
  * Method executed when a file is selected.
16752
16861
  */
16753
16862
  handleSelect($event) {
16754
- let file = $event === null || $event === void 0 ? void 0 : $event.target.files[0];
16863
+ let file = ($event === null || $event === void 0 ? void 0 : $event.target).files[0];
16755
16864
  if (file) {
16756
16865
  this.writeValue(file.name);
16757
16866
  this.onSelect.emit(file);
@@ -16823,39 +16932,39 @@ class VdFileInputComponent {
16823
16932
  this.fm.stopMonitoring(this._elementRef.nativeElement);
16824
16933
  }
16825
16934
  }
16826
- /** @nocollapse */ VdFileInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileInputComponent, deps: [{ token: i1.NgControl }, { token: i3$2.FocusMonitor }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
16827
- /** @nocollapse */ VdFileInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdFileInputComponent, selector: "[vd-file-input]", inputs: { accept: "accept", placeholder: "placeholder", required: "required", multiple: "multiple", disabled: "disabled", errorState: "errorState" }, outputs: { onSelect: "select", onClear: "clear" }, host: { properties: { "id": "this.id", "class.floating": "this.shouldLabelFloat", "attr.aria-describedby": "this.describedBy" } }, providers: [
16935
+ /** @nocollapse */ VdFileInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileInputComponent, deps: [{ token: i1.NgControl }, { token: i3$2.FocusMonitor }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
16936
+ /** @nocollapse */ VdFileInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdFileInputComponent, selector: "[vd-file-input]", inputs: { accept: "accept", placeholder: "placeholder", required: "required", multiple: "multiple", disabled: "disabled", errorState: "errorState" }, outputs: { onSelect: "select", onClear: "clear" }, host: { properties: { "id": "this.id", "class.floating": "this.shouldLabelFloat", "attr.aria-describedby": "this.describedBy" } }, providers: [
16828
16937
  { provide: MatFormFieldControl, useExisting: VdFileInputComponent }
16829
- ], viewQueries: [{ propertyName: "_inputElement", first: true, predicate: ["fileElement"], descendants: true, static: true }, { propertyName: "_fileInputElement", first: true, predicate: ["fileInput"], descendants: true, static: true }], ngImport: i0, template: `
16830
- <div layout="row" flex>
16831
- <input matInput #fileElement [(ngModel)]="value" (click)="fileInput.click()" readonly="true" [placeholder]="placeholder" [disabled]="disabled" [required]="required">
16832
- <input hidden type="file" [accept]="accept" #fileInput (change)="handleSelect($event)" />
16833
- <div class="btn-suffix">
16834
- <button type="button" mat-button *ngIf="!value" matSuffix mat-icon-button (click)="fileInput.click()">
16835
- <mat-icon>file_upload</mat-icon>
16836
- </button>
16837
- <button type="button" mat-button *ngIf="value" matSuffix mat-icon-button (click)="clear()">
16838
- <mat-icon>close</mat-icon>
16839
- </button>
16840
- </div>
16841
- </div>`, isInline: true, styles: [".btn-suffix .mat-button{position:absolute;right:0;top:0}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i11.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
16842
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileInputComponent, decorators: [{
16938
+ ], viewQueries: [{ propertyName: "_inputElement", first: true, predicate: ["fileElement"], descendants: true, static: true }, { propertyName: "_fileInputElement", first: true, predicate: ["fileInput"], descendants: true, static: true }], ngImport: i0, template: `
16939
+ <div layout="row" flex>
16940
+ <input matInput #fileElement [(ngModel)]="value" (click)="fileInput.click()" readonly="true" [placeholder]="placeholder" [disabled]="disabled" [required]="required">
16941
+ <input hidden type="file" [accept]="accept" #fileInput (change)="handleSelect($event)" />
16942
+ <div class="btn-suffix">
16943
+ <button type="button" mat-button *ngIf="!value" matSuffix mat-icon-button (click)="fileInput.click()">
16944
+ <mat-icon>file_upload</mat-icon>
16945
+ </button>
16946
+ <button type="button" mat-button *ngIf="value" matSuffix mat-icon-button (click)="clear()">
16947
+ <mat-icon>close</mat-icon>
16948
+ </button>
16949
+ </div>
16950
+ </div>`, isInline: true, styles: [".btn-suffix .mat-mdc-button{position:absolute;right:0;top:0}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
16951
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileInputComponent, decorators: [{
16843
16952
  type: Component,
16844
- args: [{ selector: '[vd-file-input]', template: `
16845
- <div layout="row" flex>
16846
- <input matInput #fileElement [(ngModel)]="value" (click)="fileInput.click()" readonly="true" [placeholder]="placeholder" [disabled]="disabled" [required]="required">
16847
- <input hidden type="file" [accept]="accept" #fileInput (change)="handleSelect($event)" />
16848
- <div class="btn-suffix">
16849
- <button type="button" mat-button *ngIf="!value" matSuffix mat-icon-button (click)="fileInput.click()">
16850
- <mat-icon>file_upload</mat-icon>
16851
- </button>
16852
- <button type="button" mat-button *ngIf="value" matSuffix mat-icon-button (click)="clear()">
16853
- <mat-icon>close</mat-icon>
16854
- </button>
16855
- </div>
16953
+ args: [{ selector: '[vd-file-input]', template: `
16954
+ <div layout="row" flex>
16955
+ <input matInput #fileElement [(ngModel)]="value" (click)="fileInput.click()" readonly="true" [placeholder]="placeholder" [disabled]="disabled" [required]="required">
16956
+ <input hidden type="file" [accept]="accept" #fileInput (change)="handleSelect($event)" />
16957
+ <div class="btn-suffix">
16958
+ <button type="button" mat-button *ngIf="!value" matSuffix mat-icon-button (click)="fileInput.click()">
16959
+ <mat-icon>file_upload</mat-icon>
16960
+ </button>
16961
+ <button type="button" mat-button *ngIf="value" matSuffix mat-icon-button (click)="clear()">
16962
+ <mat-icon>close</mat-icon>
16963
+ </button>
16964
+ </div>
16856
16965
  </div>`, providers: [
16857
16966
  { provide: MatFormFieldControl, useExisting: VdFileInputComponent }
16858
- ], styles: [".btn-suffix .mat-button{position:absolute;right:0;top:0}\n"] }]
16967
+ ], styles: [".btn-suffix .mat-mdc-button{position:absolute;right:0;top:0}\n"] }]
16859
16968
  }], ctorParameters: function () { return [{ type: i1.NgControl }, { type: i3$2.FocusMonitor }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { accept: [{
16860
16969
  type: Input
16861
16970
  }], onSelect: [{
@@ -16892,18 +17001,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
16892
17001
 
16893
17002
  class VdFileModule {
16894
17003
  }
16895
- /** @nocollapse */ VdFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16896
- /** @nocollapse */ VdFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdFileModule, declarations: [VdFileInputComponent], imports: [CommonModule,
17004
+ /** @nocollapse */ VdFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17005
+ /** @nocollapse */ VdFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdFileModule, declarations: [VdFileInputComponent], imports: [CommonModule,
16897
17006
  FormsModule,
16898
17007
  MatInputModule,
16899
17008
  MatIconModule,
16900
17009
  MatButtonModule], exports: [VdFileInputComponent] });
16901
- /** @nocollapse */ VdFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileModule, imports: [CommonModule,
17010
+ /** @nocollapse */ VdFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileModule, imports: [CommonModule,
16902
17011
  FormsModule,
16903
17012
  MatInputModule,
16904
17013
  MatIconModule,
16905
17014
  MatButtonModule] });
16906
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileModule, decorators: [{
17015
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileModule, decorators: [{
16907
17016
  type: NgModule,
16908
17017
  args: [{
16909
17018
  imports: [
@@ -16937,15 +17046,15 @@ class MatFormFieldReadonlyDirective {
16937
17046
  return false;
16938
17047
  }
16939
17048
  }
16940
- /** @nocollapse */ MatFormFieldReadonlyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MatFormFieldReadonlyDirective, deps: [{ token: i11.MatFormField }], target: i0.ɵɵFactoryTarget.Directive });
16941
- /** @nocollapse */ MatFormFieldReadonlyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: MatFormFieldReadonlyDirective, selector: "mat-form-field", host: { properties: { "class.mat-form-field-readonly": "isReadonlyInput()" } }, ngImport: i0 });
16942
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MatFormFieldReadonlyDirective, decorators: [{
17049
+ /** @nocollapse */ MatFormFieldReadonlyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MatFormFieldReadonlyDirective, deps: [{ token: i6$1.MatFormField }], target: i0.ɵɵFactoryTarget.Directive });
17050
+ /** @nocollapse */ MatFormFieldReadonlyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: MatFormFieldReadonlyDirective, selector: "mat-form-field", host: { properties: { "class.mat-form-field-readonly": "isReadonlyInput()" } }, ngImport: i0 });
17051
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MatFormFieldReadonlyDirective, decorators: [{
16943
17052
  type: Directive,
16944
17053
  args: [{
16945
17054
  selector: 'mat-form-field',
16946
17055
  host: { '[class.mat-form-field-readonly]': 'isReadonlyInput()' }
16947
17056
  }]
16948
- }], ctorParameters: function () { return [{ type: i11.MatFormField }]; } });
17057
+ }], ctorParameters: function () { return [{ type: i6$1.MatFormField }]; } });
16949
17058
 
16950
17059
  class EmptyStringResetDirective {
16951
17060
  /**
@@ -16959,9 +17068,9 @@ class EmptyStringResetDirective {
16959
17068
  return null;
16960
17069
  }
16961
17070
  }
16962
- /** @nocollapse */ EmptyStringResetDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EmptyStringResetDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
16963
- /** @nocollapse */ EmptyStringResetDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: EmptyStringResetDirective, selector: "[ngModel],[formControlName],[formControl]", providers: [{ provide: NG_VALIDATORS, useExisting: forwardRef((() => EmptyStringResetDirective)), multi: true }], ngImport: i0 });
16964
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EmptyStringResetDirective, decorators: [{
17071
+ /** @nocollapse */ EmptyStringResetDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EmptyStringResetDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17072
+ /** @nocollapse */ EmptyStringResetDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: EmptyStringResetDirective, selector: "[ngModel],[formControlName],[formControl]", providers: [{ provide: NG_VALIDATORS, useExisting: forwardRef((() => EmptyStringResetDirective)), multi: true }], ngImport: i0 });
17073
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EmptyStringResetDirective, decorators: [{
16965
17074
  type: Directive,
16966
17075
  args: [{
16967
17076
  selector: '[ngModel],[formControlName],[formControl]',
@@ -16977,9 +17086,9 @@ class VdEditorDirective extends CdkPortal {
16977
17086
  super(templateRef, viewContainerRef);
16978
17087
  }
16979
17088
  }
16980
- /** @nocollapse */ VdEditorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdEditorDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
16981
- /** @nocollapse */ VdEditorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdEditorDirective, selector: "[vd-editor]ng-template", usesInheritance: true, ngImport: i0 });
16982
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdEditorDirective, decorators: [{
17089
+ /** @nocollapse */ VdEditorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdEditorDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
17090
+ /** @nocollapse */ VdEditorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdEditorDirective, selector: "[vd-editor]ng-template", usesInheritance: true, ngImport: i0 });
17091
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdEditorDirective, decorators: [{
16983
17092
  type: Directive,
16984
17093
  args: [{ selector: '[vd-editor]ng-template' }]
16985
17094
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -16991,9 +17100,9 @@ class VdCodeDirective extends CdkPortal {
16991
17100
  super(templateRef, viewContainerRef);
16992
17101
  }
16993
17102
  }
16994
- /** @nocollapse */ VdCodeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCodeDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
16995
- /** @nocollapse */ VdCodeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdCodeDirective, selector: "[vd-code]ng-template", usesInheritance: true, ngImport: i0 });
16996
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCodeDirective, decorators: [{
17103
+ /** @nocollapse */ VdCodeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCodeDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
17104
+ /** @nocollapse */ VdCodeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdCodeDirective, selector: "[vd-code]ng-template", usesInheritance: true, ngImport: i0 });
17105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCodeDirective, decorators: [{
16997
17106
  type: Directive,
16998
17107
  args: [{ selector: '[vd-code]ng-template' }]
16999
17108
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -17005,9 +17114,9 @@ class VdFileDirective extends CdkPortal {
17005
17114
  super(templateRef, viewContainerRef);
17006
17115
  }
17007
17116
  }
17008
- /** @nocollapse */ VdFileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
17009
- /** @nocollapse */ VdFileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdFileDirective, selector: "[vd-file]ng-template", usesInheritance: true, ngImport: i0 });
17010
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFileDirective, decorators: [{
17117
+ /** @nocollapse */ VdFileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
17118
+ /** @nocollapse */ VdFileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdFileDirective, selector: "[vd-file]ng-template", usesInheritance: true, ngImport: i0 });
17119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFileDirective, decorators: [{
17011
17120
  type: Directive,
17012
17121
  args: [{ selector: '[vd-file]ng-template' }]
17013
17122
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -17019,9 +17128,9 @@ class VdCustomDirective extends CdkPortal {
17019
17128
  super(templateRef, viewContainerRef);
17020
17129
  }
17021
17130
  }
17022
- /** @nocollapse */ VdCustomDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCustomDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
17023
- /** @nocollapse */ VdCustomDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdCustomDirective, selector: "[vd-custom]ng-template", usesInheritance: true, ngImport: i0 });
17024
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdCustomDirective, decorators: [{
17131
+ /** @nocollapse */ VdCustomDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCustomDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
17132
+ /** @nocollapse */ VdCustomDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdCustomDirective, selector: "[vd-custom]ng-template", usesInheritance: true, ngImport: i0 });
17133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdCustomDirective, decorators: [{
17025
17134
  type: Directive,
17026
17135
  args: [{ selector: '[vd-custom]ng-template' }]
17027
17136
  }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
@@ -17159,11 +17268,11 @@ class VdGenericFormComponent {
17159
17268
  this.fieldGroups = (_a = this.formDefinition) === null || _a === void 0 ? void 0 : _a.fieldGroups;
17160
17269
  }
17161
17270
  }
17162
- /** @nocollapse */ VdGenericFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdGenericFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17163
- /** @nocollapse */ VdGenericFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdGenericFormComponent, selector: "vd-generic-form", inputs: { formGroup: "formGroup", classType: "classType", formDefinition: "formDefinition", fieldGroups: "fieldGroups", groupName: "groupName", fieldSets: "fieldSets", context: "context", debugValue: "debugValue", readonly: "readonly", separatorKeysCodes: "separatorKeysCodes" }, queries: [{ propertyName: "editorTemplate", first: true, predicate: VdEditorDirective, descendants: true }, { propertyName: "codeTemplate", first: true, predicate: VdCodeDirective, descendants: true }, { propertyName: "fileTemplate", first: true, predicate: VdFileDirective, descendants: true }, { propertyName: "customTemplate", first: true, predicate: VdCustomDirective, descendants: true }, { propertyName: "bottom", first: true, predicate: ["bottom"], descendants: true }, { propertyName: "customFields", first: true, predicate: ["customFields"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"formGroup && fieldRows\" [formGroup]=\"formGroup\">\r\n <!-- #region Fields -->\r\n <ng-container *ngFor=\"let fields of fieldRows; let i = index\">\r\n <div layout-gt-sm=\"row\" layout=\"column\">\r\n <ng-container *ngFor=\"let field of fields\" [ngSwitch]=\"field.type\">\r\n <!-- #region Error handling -->\r\n <ng-template #fieldErrors>\r\n <div *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</div>\r\n </ng-template>\r\n <!-- #endregion -->\r\n\r\n <ng-container *ngIf=\"!field.hide || !field.hide(formGroup?.value, formGroup, context)\">\r\n <ng-container *ngIf=\"field.wrapped\">\r\n <!-- #region Text input -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Text\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <input [type]=\"field.inputType\" [minlength]=\"field.minLength||null\" [maxlength]=\"field.maxLength||null\" [min]=\"field.min\" [max]=\"field.max\" matInput [formControlName]=\"field.name\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Textarea -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.TextArea\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <textarea matInput [formControlName]=\"field.name\" rows=\"field.rows||2\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></textarea>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Enum -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Enum\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [enum]=\"field.enumType\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdSelect -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdSelect\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [projection]=\"field.projection\" [mapper]=\"field.mapper\" [compareWith]=\"field.compareWith\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" (itemSelected)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (itemChange)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Chips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Chips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-chip-list #chipList [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-chip *ngFor=\"let chip of formGroup.controls[field.name]?.value\" (removed)=\"removeChip(field, chip)\" color=\"primary\" selectable=\"true\" selected>\r\n <span>{{chip}}</span>\r\n <button matChipRemove>\r\n <mat-icon>cancel</mat-icon>\r\n </button>\r\n </mat-chip>\r\n <input [placeholder]=\"field.header\" #chipInput [matChipInputFor]=\"chipList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matAutocomplete]=\"chipAutocomplete\" (input)=\"filterAutocomplete(field, chipInput)\" (matChipInputTokenEnd)=\"addChip(field, $event)\" autocomplete=\"off\">\r\n </mat-chip-list>\r\n <mat-autocomplete autoActiveFirstOption #chipAutocomplete=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\" (optionSelected)=\"autocompleteValueSelected(field, $event, chipInput)\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdChips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdChips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-chips #vdChip [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [searchField]=\"field.searchField\" [classType]=\"field.classType\" [projection]=\"field.projection\" [key]=\"field.optionValue\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [removable]=\"!field.clear\" [context]=\"context\" [suffixButtons]=\"field.suffixButtons\" [autocompleteCssClass]=\"field.autocompleteCssClass\" (initSelect)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (selected)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" (cleared)=\"field.clear && field.clear(formGroup?.value, formGroup, context);\" flex>\r\n <ng-template vd-chip let-chip=\"chip\" *ngIf=\"field.chipTemplate\">\r\n <div [outerHTML]=\"field.chipTemplate(chip, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-option=\"option\" *ngIf=\"field.autocompleteTemplate\">\r\n <div [outerHTML]=\"field.autocompleteTemplate(option, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-hint *ngIf=\"vdChip.emptyResult\" class=\"tc-red-400\" i18n=\"@@noResultsFound\">No results were found.</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Select -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Select\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-select [formControlName]=\"field.name\" [multiple]=\"field.multiple\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" flex>\r\n <mat-option *ngFor=\"let option of field.options\" [value]=\"option.id\">{{option.name}}</mat-option>\r\n </mat-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Autocomplete -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Autocomplete\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <input type=\"text\" matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" [matAutocomplete]=\"auto\" #autocompleteInput (input)=\"filterAutocomplete(field, autocompleteInput)\" autocomplete=\"off\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Date -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Date\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <input matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" autocomplete=\"off\" [matDatepicker]=\"datePicker\" [matDatepickerFilter]=\"field.dateFilter\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\"></mat-datepicker-toggle>\r\n <mat-datepicker #datePicker></mat-datepicker>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n </ng-container>\r\n\r\n <!-- #region Checkbox -->\r\n <div *ngSwitchCase=\"FormFieldType.Checkbox\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass || 'pad-bottom-xs'\" layout-margin appearance=\"outline\">\r\n <mat-checkbox [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">{{field.header}}</mat-checkbox>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Editor -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Editor\">\r\n <ng-template *ngIf=\"editorTemplate?.templateRef\" [ngTemplateOutlet]=\"editorTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Code -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Code\">\r\n <ng-template *ngIf=\"codeTemplate?.templateRef\" [ngTemplateOutlet]=\"codeTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region File -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.File\">\r\n <mat-form-field [attr.flex]=\"field.flex||0\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <div vd-file-input [formControlName]=\"field.name\" (select)=\"field.change && field.change($event, formGroup, context)\" [accept]=\"field.fileExtensions\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></div>\r\n </mat-form-field>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Custom\">\r\n <ng-template *ngIf=\"customTemplate?.templateRef\" [ngTemplateOutlet]=\"customTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- #region Template for custom fields -->\r\n <ng-container [ngTemplateOutlet]=\"customFields\" [ngTemplateOutletContext]=\"{formGroup: formGroup, row: fields[0]?.row + 1}\"></ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Form bottom -->\r\n <ng-container [ngTemplateOutlet]=\"bottom\" [ngTemplateOutletContext]=\"{formGroup: formGroup}\"></ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Debug value -->\r\n <code *ngIf=\"debugValue\">\r\n <pre>{{formGroup?.value | json}}</pre>\r\n </code>\r\n <!-- #endregion -->\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: DisableControlDirective, selector: "[disableControl]", inputs: ["disableControl"] }, { kind: "component", type: VdSelectComponent, selector: "vd-select", inputs: ["multiple", "disabled", "sorted", "textPrefix", "endpoint", "params", "projection", "enum", "key", "text", "prefix", "options", "filteredOptions", "filterable", "cache", "sortBy", "mapper", "compareWith", "searchField"], outputs: ["change", "itemChange", "selected", "itemSelected", "launch"] }, { kind: "directive", type: VdSelectOptionDirective, selector: "[vd-select-option]ng-template" }, { kind: "directive", type: VdSelectTriggerDirective, selector: "[vd-select-trigger]ng-template" }, { kind: "component", type: VdChipsComponent, selector: "vd-chips", inputs: ["classType", "chips", "endpoint", "params", "projection", "paginated", "context", "key", "searchField", "searchFields", "removable", "debounce", "autocompleteCssClass", "suffixButtons"], outputs: ["initSelect", "selected", "cleared", "launch", "chipFocus"] }, { kind: "directive", type: VdAutocompleteOptionDirective, selector: "[vd-autocomplete-option]ng-template" }, { kind: "directive", type: VdChipDirective, selector: "[vd-chip]ng-template" }, { kind: "component", type: VdFileInputComponent, selector: "[vd-file-input]", inputs: ["accept", "placeholder", "required", "multiple", "disabled", "errorState"], outputs: ["select", "clear"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i11.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i11.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i11.MatLabel, selector: "mat-label" }, { kind: "directive", type: i11.MatSuffix, selector: "[matSuffix]" }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i17.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i17.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i17.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i15.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i11$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i11$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i7.MatChipList, selector: "mat-chip-list", inputs: ["role", "aria-describedby", "errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { kind: "directive", type: i7.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "role", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "directive", type: MatFormFieldReadonlyDirective, selector: "mat-form-field" }, { kind: "directive", type: EmptyStringResetDirective, selector: "[ngModel],[formControlName],[formControl]" }, { kind: "pipe", type: i1$2.JsonPipe, name: "json" }, { kind: "pipe", type: FuncPipe, name: "func" }] });
17164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdGenericFormComponent, decorators: [{
17271
+ /** @nocollapse */ VdGenericFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdGenericFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17272
+ /** @nocollapse */ VdGenericFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdGenericFormComponent, selector: "vd-generic-form", inputs: { formGroup: "formGroup", classType: "classType", formDefinition: "formDefinition", fieldGroups: "fieldGroups", groupName: "groupName", fieldSets: "fieldSets", context: "context", debugValue: "debugValue", readonly: "readonly", separatorKeysCodes: "separatorKeysCodes" }, queries: [{ propertyName: "editorTemplate", first: true, predicate: VdEditorDirective, descendants: true }, { propertyName: "codeTemplate", first: true, predicate: VdCodeDirective, descendants: true }, { propertyName: "fileTemplate", first: true, predicate: VdFileDirective, descendants: true }, { propertyName: "customTemplate", first: true, predicate: VdCustomDirective, descendants: true }, { propertyName: "bottom", first: true, predicate: ["bottom"], descendants: true }, { propertyName: "customFields", first: true, predicate: ["customFields"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"formGroup && fieldRows\" [formGroup]=\"formGroup\">\r\n <!-- #region Fields -->\r\n <ng-container *ngFor=\"let fields of fieldRows; let i = index\">\r\n <div layout-gt-sm=\"row\" layout=\"column\">\r\n <ng-container *ngFor=\"let field of fields\" [ngSwitch]=\"field.type\">\r\n <ng-container *ngIf=\"!field.hide || !field.hide(formGroup?.value, formGroup, context)\">\r\n <ng-container *ngIf=\"field.wrapped\">\r\n <!-- #region Text input -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Text\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <input [type]=\"field.inputType\" [minlength]=\"field.minLength||null\" [maxlength]=\"field.maxLength||null\" [min]=\"field.min\" [max]=\"field.max\" matInput [formControlName]=\"field.name\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Textarea -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.TextArea\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <textarea matInput [formControlName]=\"field.name\" rows=\"field.rows||2\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></textarea>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Enum -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Enum\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [enum]=\"field.enumType\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [triggerCssClass]=\"field.triggerCssClass\" [triggerMode]=\"field.triggerMode\" layout=\"row\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdSelect -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdSelect\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [projection]=\"field.projection\" [mapper]=\"field.mapper\" [compareWith]=\"field.compareWith\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [triggerCssClass]=\"field.triggerCssClass\" [triggerMode]=\"field.triggerMode\" (itemSelected)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (itemChange)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" layout=\"row\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerMapper && field.multiple && field.triggerMode == 'chip'\">\r\n <span *ngFor=\"let item of trigger\" class=\"mat-mdc-chip mat-mdc-standard-chip mat-accent\">\r\n <span [innerHTML]=\"field.triggerMapper(item, formGroup.value, formGroup, context)\"></span>\r\n </span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Chips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Chips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-chip-grid #chipList [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-chip-row *ngFor=\"let chip of formGroup.controls[field.name]?.value\" (removed)=\"removeChip(field, chip)\" color=\"primary\" selectable=\"true\" selected>\r\n <span>{{chip}}</span>\r\n <button matChipRemove>\r\n <mat-icon>cancel</mat-icon>\r\n </button>\r\n </mat-chip-row>\r\n <input [placeholder]=\"field.header\" #chipInput [matChipInputFor]=\"chipList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matAutocomplete]=\"chipAutocomplete\" (input)=\"filterAutocomplete(field, chipInput)\" (matChipInputTokenEnd)=\"addChip(field, $event)\" autocomplete=\"off\">\r\n </mat-chip-grid>\r\n <mat-autocomplete autoActiveFirstOption #chipAutocomplete=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\" (optionSelected)=\"autocompleteValueSelected(field, $event, chipInput)\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdChips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdChips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-chips #vdChip [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [searchField]=\"field.searchField\" [classType]=\"field.classType\" [projection]=\"field.projection\" [key]=\"field.optionValue\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [removable]=\"!field.clear\" [context]=\"context\" [suffixButtons]=\"field.suffixButtons\" [autocompleteCssClass]=\"field.autocompleteCssClass\" (initSelect)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (selected)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" (cleared)=\"field.clear && field.clear(formGroup?.value, formGroup, context);\" layout=\"row\" flex>\r\n <ng-template vd-chip let-chip=\"chip\" *ngIf=\"field.chipTemplate\">\r\n <div [outerHTML]=\"field.chipTemplate(chip, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-option=\"option\" *ngIf=\"field.autocompleteTemplate\">\r\n <div [outerHTML]=\"field.autocompleteTemplate(option, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-hint *ngIf=\"vdChip.emptyResult\" class=\"tc-red-400\" i18n=\"@@noResultsFound\">No results were found.</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Select -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Select\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-select [formControlName]=\"field.name\" [multiple]=\"field.multiple\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" flex>\r\n <mat-option *ngFor=\"let option of field.options\" [value]=\"option.id\">{{option.name}}</mat-option>\r\n </mat-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Autocomplete -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Autocomplete\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <input type=\"text\" matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" [matAutocomplete]=\"auto\" #autocompleteInput (input)=\"filterAutocomplete(field, autocompleteInput)\" autocomplete=\"off\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Date -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Date\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <input matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" autocomplete=\"off\" [matDatepicker]=\"datePicker\" [matDatepickerFilter]=\"field.dateFilter\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\"></mat-datepicker-toggle>\r\n <mat-datepicker #datePicker></mat-datepicker>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n </ng-container>\r\n\r\n <!-- #region Checkbox -->\r\n <div *ngSwitchCase=\"FormFieldType.Checkbox\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\">\r\n <mat-checkbox [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">{{field.header}}</mat-checkbox>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Editor -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Editor\">\r\n <ng-template *ngIf=\"editorTemplate?.templateRef\" [ngTemplateOutlet]=\"editorTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Code -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Code\">\r\n <ng-template *ngIf=\"codeTemplate?.templateRef\" [ngTemplateOutlet]=\"codeTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region File -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.File\">\r\n <mat-form-field [attr.flex]=\"field.flex||0\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <div vd-file-input [formControlName]=\"field.name\" (select)=\"field.change && field.change($event, formGroup, context)\" [accept]=\"field.fileExtensions\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></div>\r\n </mat-form-field>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Custom\">\r\n <ng-template *ngIf=\"customTemplate?.templateRef\" [ngTemplateOutlet]=\"customTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- #region Template for custom fields -->\r\n <ng-container [ngTemplateOutlet]=\"customFields\" [ngTemplateOutletContext]=\"{formGroup: formGroup, row: fields[0]?.row + 1}\"></ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Form bottom -->\r\n <ng-container [ngTemplateOutlet]=\"bottom\" [ngTemplateOutletContext]=\"{formGroup: formGroup}\"></ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Debug value -->\r\n <code *ngIf=\"debugValue\">\r\n <pre>{{formGroup?.value | json}}</pre>\r\n </code>\r\n <!-- #endregion -->\r\n</div>", styles: ["vd-select ::ng-deep mat-select-trigger.chip .mat-mdc-chip{padding:12px;border-radius:100%;color:inherit}vd-select ::ng-deep mat-select-trigger.chip .mat-mdc-chip:not(:last-child){margin-right:6px}\n"], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: DisableControlDirective, selector: "[disableControl]", inputs: ["disableControl"] }, { kind: "component", type: VdSelectComponent, selector: "vd-select", inputs: ["multiple", "disabled", "sorted", "triggerCssClass", "triggerMode", "textPrefix", "endpoint", "params", "projection", "enum", "key", "text", "prefix", "options", "filteredOptions", "filterable", "cache", "sortBy", "mapper", "compareWith", "searchField"], outputs: ["change", "itemChange", "selected", "itemSelected", "launch"] }, { kind: "directive", type: VdSelectOptionDirective, selector: "[vd-select-option]ng-template" }, { kind: "directive", type: VdSelectTriggerDirective, selector: "[vd-select-trigger]ng-template" }, { kind: "component", type: VdChipsComponent, selector: "vd-chips", inputs: ["classType", "chips", "endpoint", "params", "projection", "paginated", "context", "key", "searchField", "searchFields", "removable", "debounce", "autocompleteCssClass", "suffixButtons"], outputs: ["initSelect", "selected", "cleared", "launch", "chipFocus"] }, { kind: "directive", type: VdAutocompleteOptionDirective, selector: "[vd-autocomplete-option]ng-template" }, { kind: "directive", type: VdChipDirective, selector: "[vd-chip]ng-template" }, { kind: "component", type: VdFileInputComponent, selector: "[vd-file-input]", inputs: ["accept", "placeholder", "required", "multiple", "disabled", "errorState"], outputs: ["select", "clear"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i6$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]" }, { kind: "component", type: i5$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i17.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i17.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i17.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i15.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i11.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i11.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i7.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i7.MatChipRow, selector: "mat-chip-row, mat-basic-chip-row", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "directive", type: MatFormFieldReadonlyDirective, selector: "mat-form-field" }, { kind: "directive", type: EmptyStringResetDirective, selector: "[ngModel],[formControlName],[formControl]" }, { kind: "pipe", type: i1$2.JsonPipe, name: "json" }, { kind: "pipe", type: FuncPipe, name: "func" }] });
17273
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdGenericFormComponent, decorators: [{
17165
17274
  type: Component,
17166
- args: [{ selector: 'vd-generic-form', template: "<div *ngIf=\"formGroup && fieldRows\" [formGroup]=\"formGroup\">\r\n <!-- #region Fields -->\r\n <ng-container *ngFor=\"let fields of fieldRows; let i = index\">\r\n <div layout-gt-sm=\"row\" layout=\"column\">\r\n <ng-container *ngFor=\"let field of fields\" [ngSwitch]=\"field.type\">\r\n <!-- #region Error handling -->\r\n <ng-template #fieldErrors>\r\n <div *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</div>\r\n </ng-template>\r\n <!-- #endregion -->\r\n\r\n <ng-container *ngIf=\"!field.hide || !field.hide(formGroup?.value, formGroup, context)\">\r\n <ng-container *ngIf=\"field.wrapped\">\r\n <!-- #region Text input -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Text\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <input [type]=\"field.inputType\" [minlength]=\"field.minLength||null\" [maxlength]=\"field.maxLength||null\" [min]=\"field.min\" [max]=\"field.max\" matInput [formControlName]=\"field.name\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Textarea -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.TextArea\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <textarea matInput [formControlName]=\"field.name\" rows=\"field.rows||2\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></textarea>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Enum -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Enum\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [enum]=\"field.enumType\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdSelect -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdSelect\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [projection]=\"field.projection\" [mapper]=\"field.mapper\" [compareWith]=\"field.compareWith\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" (itemSelected)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (itemChange)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Chips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Chips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-chip-list #chipList [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-chip *ngFor=\"let chip of formGroup.controls[field.name]?.value\" (removed)=\"removeChip(field, chip)\" color=\"primary\" selectable=\"true\" selected>\r\n <span>{{chip}}</span>\r\n <button matChipRemove>\r\n <mat-icon>cancel</mat-icon>\r\n </button>\r\n </mat-chip>\r\n <input [placeholder]=\"field.header\" #chipInput [matChipInputFor]=\"chipList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matAutocomplete]=\"chipAutocomplete\" (input)=\"filterAutocomplete(field, chipInput)\" (matChipInputTokenEnd)=\"addChip(field, $event)\" autocomplete=\"off\">\r\n </mat-chip-list>\r\n <mat-autocomplete autoActiveFirstOption #chipAutocomplete=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\" (optionSelected)=\"autocompleteValueSelected(field, $event, chipInput)\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdChips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdChips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-chips #vdChip [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [searchField]=\"field.searchField\" [classType]=\"field.classType\" [projection]=\"field.projection\" [key]=\"field.optionValue\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [removable]=\"!field.clear\" [context]=\"context\" [suffixButtons]=\"field.suffixButtons\" [autocompleteCssClass]=\"field.autocompleteCssClass\" (initSelect)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (selected)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" (cleared)=\"field.clear && field.clear(formGroup?.value, formGroup, context);\" flex>\r\n <ng-template vd-chip let-chip=\"chip\" *ngIf=\"field.chipTemplate\">\r\n <div [outerHTML]=\"field.chipTemplate(chip, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-option=\"option\" *ngIf=\"field.autocompleteTemplate\">\r\n <div [outerHTML]=\"field.autocompleteTemplate(option, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-hint *ngIf=\"vdChip.emptyResult\" class=\"tc-red-400\" i18n=\"@@noResultsFound\">No results were found.</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Select -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Select\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-select [formControlName]=\"field.name\" [multiple]=\"field.multiple\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" flex>\r\n <mat-option *ngFor=\"let option of field.options\" [value]=\"option.id\">{{option.name}}</mat-option>\r\n </mat-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Autocomplete -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Autocomplete\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <input type=\"text\" matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" [matAutocomplete]=\"auto\" #autocompleteInput (input)=\"filterAutocomplete(field, autocompleteInput)\" autocomplete=\"off\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Date -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Date\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <input matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" autocomplete=\"off\" [matDatepicker]=\"datePicker\" [matDatepickerFilter]=\"field.dateFilter\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\"></mat-datepicker-toggle>\r\n <mat-datepicker #datePicker></mat-datepicker>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error>\r\n <ng-container *ngTemplateOutlet=\"fieldErrors\"></ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n </ng-container>\r\n\r\n <!-- #region Checkbox -->\r\n <div *ngSwitchCase=\"FormFieldType.Checkbox\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass || 'pad-bottom-xs'\" layout-margin appearance=\"outline\">\r\n <mat-checkbox [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">{{field.header}}</mat-checkbox>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Editor -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Editor\">\r\n <ng-template *ngIf=\"editorTemplate?.templateRef\" [ngTemplateOutlet]=\"editorTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Code -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Code\">\r\n <ng-template *ngIf=\"codeTemplate?.templateRef\" [ngTemplateOutlet]=\"codeTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region File -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.File\">\r\n <mat-form-field [attr.flex]=\"field.flex||0\" layout-margin appearance=\"outline\">\r\n <mat-label>{{field.header}}</mat-label>\r\n <div vd-file-input [formControlName]=\"field.name\" (select)=\"field.change && field.change($event, formGroup, context)\" [accept]=\"field.fileExtensions\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></div>\r\n </mat-form-field>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Custom\">\r\n <ng-template *ngIf=\"customTemplate?.templateRef\" [ngTemplateOutlet]=\"customTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- #region Template for custom fields -->\r\n <ng-container [ngTemplateOutlet]=\"customFields\" [ngTemplateOutletContext]=\"{formGroup: formGroup, row: fields[0]?.row + 1}\"></ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Form bottom -->\r\n <ng-container [ngTemplateOutlet]=\"bottom\" [ngTemplateOutletContext]=\"{formGroup: formGroup}\"></ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Debug value -->\r\n <code *ngIf=\"debugValue\">\r\n <pre>{{formGroup?.value | json}}</pre>\r\n </code>\r\n <!-- #endregion -->\r\n</div>" }]
17275
+ args: [{ selector: 'vd-generic-form', template: "<div *ngIf=\"formGroup && fieldRows\" [formGroup]=\"formGroup\">\r\n <!-- #region Fields -->\r\n <ng-container *ngFor=\"let fields of fieldRows; let i = index\">\r\n <div layout-gt-sm=\"row\" layout=\"column\">\r\n <ng-container *ngFor=\"let field of fields\" [ngSwitch]=\"field.type\">\r\n <ng-container *ngIf=\"!field.hide || !field.hide(formGroup?.value, formGroup, context)\">\r\n <ng-container *ngIf=\"field.wrapped\">\r\n <!-- #region Text input -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Text\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <input [type]=\"field.inputType\" [minlength]=\"field.minLength||null\" [maxlength]=\"field.maxLength||null\" [min]=\"field.min\" [max]=\"field.max\" matInput [formControlName]=\"field.name\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Textarea -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.TextArea\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <textarea matInput [formControlName]=\"field.name\" rows=\"field.rows||2\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></textarea>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Enum -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Enum\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [enum]=\"field.enumType\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [triggerCssClass]=\"field.triggerCssClass\" [triggerMode]=\"field.triggerMode\" layout=\"row\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdSelect -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdSelect\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-select [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [projection]=\"field.projection\" [mapper]=\"field.mapper\" [compareWith]=\"field.compareWith\" [key]=\"field.optionValue\" [text]=\"field.optionText\" [multiple]=\"field.multiple\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [triggerCssClass]=\"field.triggerCssClass\" [triggerMode]=\"field.triggerMode\" (itemSelected)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (itemChange)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" layout=\"row\" flex>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerTemplate\">\r\n <span [innerHTML]=\"field.triggerTemplate(trigger, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n <ng-template vd-select-trigger let-trigger=\"trigger\" *ngIf=\"field.triggerMapper && field.multiple && field.triggerMode == 'chip'\">\r\n <span *ngFor=\"let item of trigger\" class=\"mat-mdc-chip mat-mdc-standard-chip mat-accent\">\r\n <span [innerHTML]=\"field.triggerMapper(item, formGroup.value, formGroup, context)\"></span>\r\n </span>\r\n </ng-template>\r\n <ng-template vd-select-option let-option=\"option\" *ngIf=\"field.optionTemplate\">\r\n <span [outerHTML]=\"field.optionTemplate(option, formGroup.value, formGroup, context)\"></span>\r\n </ng-template>\r\n </vd-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Chips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Chips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-chip-grid #chipList [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-chip-row *ngFor=\"let chip of formGroup.controls[field.name]?.value\" (removed)=\"removeChip(field, chip)\" color=\"primary\" selectable=\"true\" selected>\r\n <span>{{chip}}</span>\r\n <button matChipRemove>\r\n <mat-icon>cancel</mat-icon>\r\n </button>\r\n </mat-chip-row>\r\n <input [placeholder]=\"field.header\" #chipInput [matChipInputFor]=\"chipList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matAutocomplete]=\"chipAutocomplete\" (input)=\"filterAutocomplete(field, chipInput)\" (matChipInputTokenEnd)=\"addChip(field, $event)\" autocomplete=\"off\">\r\n </mat-chip-grid>\r\n <mat-autocomplete autoActiveFirstOption #chipAutocomplete=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\" (optionSelected)=\"autocompleteValueSelected(field, $event, chipInput)\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region VdChips -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.VdChips\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <vd-chips #vdChip [formControlName]=\"field.name\" [endpoint]=\"field.endpoint | func:formGroup.value:formGroup:context\" [params]=\"field.params | func:formGroup.value:formGroup:context\" [searchField]=\"field.searchField\" [classType]=\"field.classType\" [projection]=\"field.projection\" [key]=\"field.optionValue\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" [removable]=\"!field.clear\" [context]=\"context\" [suffixButtons]=\"field.suffixButtons\" [autocompleteCssClass]=\"field.autocompleteCssClass\" (initSelect)=\"field.itemSelect && field.itemSelect($event, formGroup?.value, formGroup, context);\" (selected)=\"field.itemChange && field.itemChange($event, formGroup?.value, formGroup, context);\" (cleared)=\"field.clear && field.clear(formGroup?.value, formGroup, context);\" layout=\"row\" flex>\r\n <ng-template vd-chip let-chip=\"chip\" *ngIf=\"field.chipTemplate\">\r\n <div [outerHTML]=\"field.chipTemplate(chip, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-option=\"option\" *ngIf=\"field.autocompleteTemplate\">\r\n <div [outerHTML]=\"field.autocompleteTemplate(option, formGroup.value, formGroup, context)\"></div>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-hint *ngIf=\"vdChip.emptyResult\" class=\"tc-red-400\" i18n=\"@@noResultsFound\">No results were found.</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Select -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Select\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <mat-select [formControlName]=\"field.name\" [multiple]=\"field.multiple\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\" flex>\r\n <mat-option *ngFor=\"let option of field.options\" [value]=\"option.id\">{{option.name}}</mat-option>\r\n </mat-select>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Autocomplete -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Autocomplete\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <input type=\"text\" matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" [matAutocomplete]=\"auto\" #autocompleteInput (input)=\"filterAutocomplete(field, autocompleteInput)\" autocomplete=\"off\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" [class]=\"field.autocompleteCssClass\">\r\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions[field.name]\" [value]=\"option.id\">\r\n {{option.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n <ng-container *ngFor=\"let suffixButton of field.suffixButtons\" (click)=\"suffixButton.event && suffixButton.event(formGroup?.value, context)\" matSuffix>\r\n <button type=\"button\" mat-icon-button *ngIf=\"!suffixButton.hide || !suffixButton.hide(formGroup?.value, context)\">\r\n <mat-icon>{{suffixButton.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Date -->\r\n <mat-form-field *ngSwitchCase=\"FormFieldType.Date\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <input matInput [formControlName]=\"field.name\" [min]=\"field.min\" [max]=\"field.max\" autocomplete=\"off\" [matDatepicker]=\"datePicker\" [matDatepickerFilter]=\"field.dateFilter\" [readonly]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">\r\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\"></mat-datepicker-toggle>\r\n <mat-datepicker #datePicker></mat-datepicker>\r\n <mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n <mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n </mat-form-field>\r\n <!-- #endregion -->\r\n </ng-container>\r\n\r\n <!-- #region Checkbox -->\r\n <div *ngSwitchCase=\"FormFieldType.Checkbox\" [attr.flex]=\"field.flex||0\" [class]=\"field.cssClass\">\r\n <mat-checkbox [formControlName]=\"field.name\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\">{{field.header}}</mat-checkbox>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Editor -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Editor\">\r\n <ng-template *ngIf=\"editorTemplate?.templateRef\" [ngTemplateOutlet]=\"editorTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Code -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Code\">\r\n <ng-template *ngIf=\"codeTemplate?.templateRef\" [ngTemplateOutlet]=\"codeTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region File -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.File\">\r\n <mat-form-field [attr.flex]=\"field.flex||0\" layout-margin>\r\n <mat-label>{{field.header}}</mat-label>\r\n <div vd-file-input [formControlName]=\"field.name\" (select)=\"field.change && field.change($event, formGroup, context)\" [accept]=\"field.fileExtensions\" [disableControl]=\"readonly || (field.readonly && field.readonly(formGroup?.value, formGroup, context))\"></div>\r\n </mat-form-field>\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Custom -->\r\n <ng-container *ngSwitchCase=\"FormFieldType.Custom\">\r\n <ng-template *ngIf=\"customTemplate?.templateRef\" [ngTemplateOutlet]=\"customTemplate?.templateRef\" [ngTemplateOutletContext]=\"{ field: field, formGroup: formGroup }\"></ng-template>\r\n </ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- #region Template for custom fields -->\r\n <ng-container [ngTemplateOutlet]=\"customFields\" [ngTemplateOutletContext]=\"{formGroup: formGroup, row: fields[0]?.row + 1}\"></ng-container>\r\n <!-- #endregion -->\r\n </ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Form bottom -->\r\n <ng-container [ngTemplateOutlet]=\"bottom\" [ngTemplateOutletContext]=\"{formGroup: formGroup}\"></ng-container>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Debug value -->\r\n <code *ngIf=\"debugValue\">\r\n <pre>{{formGroup?.value | json}}</pre>\r\n </code>\r\n <!-- #endregion -->\r\n</div>", styles: ["vd-select ::ng-deep mat-select-trigger.chip .mat-mdc-chip{padding:12px;border-radius:100%;color:inherit}vd-select ::ng-deep mat-select-trigger.chip .mat-mdc-chip:not(:last-child){margin-right:6px}\n"] }]
17167
17276
  }], propDecorators: { formGroup: [{
17168
17277
  type: Input
17169
17278
  }], classType: [{
@@ -17316,9 +17425,9 @@ class MatFormFieldEditorDirective extends _AbstractMatFormFieldBase {
17316
17425
  }
17317
17426
  }
17318
17427
  }
17319
- /** @nocollapse */ MatFormFieldEditorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MatFormFieldEditorDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgForm, optional: true }, { token: i1.FormGroupDirective, optional: true }, { token: i2.ErrorStateMatcher }, { token: NG_VALUE_ACCESSOR, self: true }, { token: i3$3.Platform }, { token: i4$3.AutofillMonitor }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
17320
- /** @nocollapse */ MatFormFieldEditorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: MatFormFieldEditorDirective, selector: "[tinyMatFormControl]", inputs: { disabled: "disabled", id: "id", placeholder: "placeholder", required: "required", value: "value", errorStateMatcher: "errorStateMatcher" }, outputs: { editorChange: "editorChange" }, host: { listeners: { "onInit": "onEditorInit($event)" }, properties: { "attr.id": "id", "attr.aria-describedby": "ariaDescribedby || null", "attr.aria-invalid": "errorState", "attr.aria-required": "required.toString()" } }, providers: [{ provide: MatFormFieldControl, useExisting: MatFormFieldEditorDirective }], usesInheritance: true, ngImport: i0 });
17321
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MatFormFieldEditorDirective, decorators: [{
17428
+ /** @nocollapse */ MatFormFieldEditorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MatFormFieldEditorDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgForm, optional: true }, { token: i1.FormGroupDirective, optional: true }, { token: i2.ErrorStateMatcher }, { token: NG_VALUE_ACCESSOR, self: true }, { token: i3$3.Platform }, { token: i4$3.AutofillMonitor }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
17429
+ /** @nocollapse */ MatFormFieldEditorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: MatFormFieldEditorDirective, selector: "[tinyMatFormControl]", inputs: { disabled: "disabled", id: "id", placeholder: "placeholder", required: "required", value: "value", errorStateMatcher: "errorStateMatcher" }, outputs: { editorChange: "editorChange" }, host: { listeners: { "onInit": "onEditorInit($event)" }, properties: { "attr.id": "id", "attr.aria-describedby": "ariaDescribedby || null", "attr.aria-invalid": "errorState", "attr.aria-required": "required.toString()" } }, providers: [{ provide: MatFormFieldControl, useExisting: MatFormFieldEditorDirective }], usesInheritance: true, ngImport: i0 });
17430
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MatFormFieldEditorDirective, decorators: [{
17322
17431
  type: Directive,
17323
17432
  args: [{
17324
17433
  selector: '[tinyMatFormControl]',
@@ -17339,7 +17448,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
17339
17448
  type: Optional
17340
17449
  }] }, { type: i1.FormGroupDirective, decorators: [{
17341
17450
  type: Optional
17342
- }] }, { type: i2.ErrorStateMatcher }, { type: i5$4.EditorComponent, decorators: [{
17451
+ }] }, { type: i2.ErrorStateMatcher }, { type: i5$5.EditorComponent, decorators: [{
17343
17452
  type: Self
17344
17453
  }, {
17345
17454
  type: Inject,
@@ -17412,9 +17521,9 @@ class EqualValidator {
17412
17521
  return null;
17413
17522
  }
17414
17523
  }
17415
- /** @nocollapse */ EqualValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EqualValidator, deps: [{ token: 'validateEqual', attribute: true }, { token: 'reverse', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
17416
- /** @nocollapse */ EqualValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: EqualValidator, selector: "[validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]", providers: [{ provide: NG_VALIDATORS, useExisting: forwardRef((() => EqualValidator)), multi: true }], ngImport: i0 });
17417
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: EqualValidator, decorators: [{
17524
+ /** @nocollapse */ EqualValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EqualValidator, deps: [{ token: 'validateEqual', attribute: true }, { token: 'reverse', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
17525
+ /** @nocollapse */ EqualValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: EqualValidator, selector: "[validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]", providers: [{ provide: NG_VALIDATORS, useExisting: forwardRef((() => EqualValidator)), multi: true }], ngImport: i0 });
17526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: EqualValidator, decorators: [{
17418
17527
  type: Directive,
17419
17528
  args: [{
17420
17529
  selector: '[validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]',
@@ -17449,9 +17558,9 @@ class NativeElementInjectorDirective {
17449
17558
  }
17450
17559
  }
17451
17560
  }
17452
- /** @nocollapse */ NativeElementInjectorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: NativeElementInjectorDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl }, { token: i1.NgModel, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
17453
- /** @nocollapse */ NativeElementInjectorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: NativeElementInjectorDirective, selector: "[ngModel]", ngImport: i0 });
17454
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: NativeElementInjectorDirective, decorators: [{
17561
+ /** @nocollapse */ NativeElementInjectorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NativeElementInjectorDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl }, { token: i1.NgModel, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
17562
+ /** @nocollapse */ NativeElementInjectorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: NativeElementInjectorDirective, selector: "[ngModel]", ngImport: i0 });
17563
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NativeElementInjectorDirective, decorators: [{
17455
17564
  type: Directive,
17456
17565
  args: [{ selector: '[ngModel]' }]
17457
17566
  }], ctorParameters: function () {
@@ -17507,9 +17616,9 @@ class UniqueValidatorDirective {
17507
17616
  }));
17508
17617
  }
17509
17618
  }
17510
- /** @nocollapse */ UniqueValidatorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: UniqueValidatorDirective, deps: [{ token: i1$6.HttpClient }, { token: 'unique', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
17511
- /** @nocollapse */ UniqueValidatorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: UniqueValidatorDirective, selector: "[unique]", inputs: { uniqueProperty: "uniqueProperty", uniqueId: "uniqueId", uniqueParams: "uniqueParams", invert: "invert" }, providers: [{ provide: NG_ASYNC_VALIDATORS, useExisting: UniqueValidatorDirective, multi: true }], ngImport: i0 });
17512
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: UniqueValidatorDirective, decorators: [{
17619
+ /** @nocollapse */ UniqueValidatorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: UniqueValidatorDirective, deps: [{ token: i1$6.HttpClient }, { token: 'unique', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
17620
+ /** @nocollapse */ UniqueValidatorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: UniqueValidatorDirective, selector: "[unique]", inputs: { uniqueProperty: "uniqueProperty", uniqueId: "uniqueId", uniqueParams: "uniqueParams", invert: "invert" }, providers: [{ provide: NG_ASYNC_VALIDATORS, useExisting: UniqueValidatorDirective, multi: true }], ngImport: i0 });
17621
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: UniqueValidatorDirective, decorators: [{
17513
17622
  type: Directive,
17514
17623
  args: [{
17515
17624
  selector: '[unique]',
@@ -17658,9 +17767,9 @@ class ValueAccessorBase extends MatFormFieldControl {
17658
17767
  this.stateChanges.complete();
17659
17768
  }
17660
17769
  }
17661
- /** @nocollapse */ ValueAccessorBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ValueAccessorBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });
17662
- /** @nocollapse */ ValueAccessorBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: ValueAccessorBase, host: { properties: { "attr.aria-describedby": "this.describedBy" } }, usesInheritance: true, ngImport: i0 });
17663
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ValueAccessorBase, decorators: [{
17770
+ /** @nocollapse */ ValueAccessorBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ValueAccessorBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });
17771
+ /** @nocollapse */ ValueAccessorBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: ValueAccessorBase, host: { properties: { "attr.aria-describedby": "this.describedBy" } }, usesInheritance: true, ngImport: i0 });
17772
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ValueAccessorBase, decorators: [{
17664
17773
  type: Directive
17665
17774
  }], propDecorators: { describedBy: [{
17666
17775
  type: HostBinding,
@@ -17682,8 +17791,8 @@ const DECLARATIONS$1 = [
17682
17791
  ];
17683
17792
  class VdFormsModule {
17684
17793
  }
17685
- /** @nocollapse */ VdFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17686
- /** @nocollapse */ VdFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdFormsModule, declarations: [EqualValidator,
17794
+ /** @nocollapse */ VdFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17795
+ /** @nocollapse */ VdFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdFormsModule, declarations: [EqualValidator,
17687
17796
  UniqueValidatorDirective,
17688
17797
  NativeElementInjectorDirective,
17689
17798
  MatFormFieldReadonlyDirective,
@@ -17722,7 +17831,7 @@ class VdFormsModule {
17722
17831
  VdCustomDirective,
17723
17832
  EmptyStringResetDirective,
17724
17833
  VdGenericFormComponent] });
17725
- /** @nocollapse */ VdFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFormsModule, imports: [CommonModule,
17834
+ /** @nocollapse */ VdFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFormsModule, imports: [CommonModule,
17726
17835
  VdCommonModule,
17727
17836
  VdSelectModule,
17728
17837
  VdChipsModule,
@@ -17741,7 +17850,7 @@ class VdFormsModule {
17741
17850
  MatNativeDateModule,
17742
17851
  MatAutocompleteModule,
17743
17852
  MatChipsModule] });
17744
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdFormsModule, decorators: [{
17853
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdFormsModule, decorators: [{
17745
17854
  type: NgModule,
17746
17855
  args: [{
17747
17856
  imports: [
@@ -17860,9 +17969,9 @@ class VdMediaToggleDirective {
17860
17969
  }
17861
17970
  }
17862
17971
  }
17863
- /** @nocollapse */ VdMediaToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaToggleDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: VdMediaService }], target: i0.ɵɵFactoryTarget.Directive });
17864
- /** @nocollapse */ VdMediaToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: VdMediaToggleDirective, selector: "[vdMediaToggle]", inputs: { query: ["vdMediaToggle", "query"], attributes: ["mediaAttributes", "attributes"], classes: ["mediaClasses", "classes"], styles: ["mediaStyles", "styles"] }, ngImport: i0 });
17865
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaToggleDirective, decorators: [{
17972
+ /** @nocollapse */ VdMediaToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaToggleDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: VdMediaService }], target: i0.ɵɵFactoryTarget.Directive });
17973
+ /** @nocollapse */ VdMediaToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: VdMediaToggleDirective, selector: "[vdMediaToggle]", inputs: { query: ["vdMediaToggle", "query"], attributes: ["mediaAttributes", "attributes"], classes: ["mediaClasses", "classes"], styles: ["mediaStyles", "styles"] }, ngImport: i0 });
17974
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaToggleDirective, decorators: [{
17866
17975
  type: Directive,
17867
17976
  args: [{
17868
17977
  selector: '[vdMediaToggle]',
@@ -17886,12 +17995,12 @@ const VD_MEDIA = [
17886
17995
  ];
17887
17996
  class VdMediaModule {
17888
17997
  }
17889
- /** @nocollapse */ VdMediaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17890
- /** @nocollapse */ VdMediaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdMediaModule, declarations: [VdMediaToggleDirective], imports: [CommonModule], exports: [VdMediaToggleDirective] });
17891
- /** @nocollapse */ VdMediaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaModule, providers: [
17998
+ /** @nocollapse */ VdMediaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17999
+ /** @nocollapse */ VdMediaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdMediaModule, declarations: [VdMediaToggleDirective], imports: [CommonModule], exports: [VdMediaToggleDirective] });
18000
+ /** @nocollapse */ VdMediaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaModule, providers: [
17892
18001
  MEDIA_PROVIDER,
17893
18002
  ], imports: [CommonModule] });
17894
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdMediaModule, decorators: [{
18003
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdMediaModule, decorators: [{
17895
18004
  type: NgModule,
17896
18005
  args: [{
17897
18006
  imports: [
@@ -17978,8 +18087,8 @@ class VdSearchInputComponent {
17978
18087
  this.onSearchDebounce.emit(value);
17979
18088
  }
17980
18089
  }
17981
- /** @nocollapse */ VdSearchInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchInputComponent, deps: [{ token: i1$7.Dir, optional: true }], target: i0.ɵɵFactoryTarget.Component });
17982
- /** @nocollapse */ VdSearchInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdSearchInputComponent, selector: "vd-search-input", inputs: { showUnderline: "showUnderline", debounce: "debounce", placeholder: "placeholder" }, outputs: { onSearchDebounce: "searchDebounce", onSearch: "search", onClear: "clear", onBlur: "blur" }, viewQueries: [{ propertyName: "_input", first: true, predicate: MatInput, descendants: true, static: true }], ngImport: i0, template: "<div class=\"vd-search-input\" layout=\"row\" layout-align=\"end center\">\r\n\t<mat-form-field [class.mat-hide-underline]=\"!showUnderline\" floatPlaceholder=\"never\" flex appearance=\"legacy\">\r\n\t\t<input matInput #searchElement type=\"search\" [(ngModel)]=\"value\" [placeholder]=\"placeholder\" (blur)=\"handleBlur()\" (search)=\"stopPropagation($event)\" (keyup.enter)=\"handleSearch($event)\" />\r\n\t</mat-form-field>\r\n\t<button mat-icon-button type=\"button\" [@searchState]=\"(searchElement.value ? 'show' : (isRTL ? 'hide-left' : 'hide-right'))\" (click)=\"clearSearch()\" flex=\"none\">\r\n\t\t<mat-icon>cancel</mat-icon>\r\n\t</button>\r\n</div>", styles: [".vd-search-input{overflow-x:hidden}.vd-search-input ::ng-deep mat-form-field.mat-hide-underline .mat-input-underline{display:none}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i11.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }], animations: [
18090
+ /** @nocollapse */ VdSearchInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchInputComponent, deps: [{ token: i1$7.Dir, optional: true }], target: i0.ɵɵFactoryTarget.Component });
18091
+ /** @nocollapse */ VdSearchInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdSearchInputComponent, selector: "vd-search-input", inputs: { showUnderline: "showUnderline", debounce: "debounce", placeholder: "placeholder" }, outputs: { onSearchDebounce: "searchDebounce", onSearch: "search", onClear: "clear", onBlur: "blur" }, viewQueries: [{ propertyName: "_input", first: true, predicate: MatInput, descendants: true, static: true }], ngImport: i0, template: "<div class=\"vd-search-input\" layout=\"row\" layout-align=\"end center\">\r\n\t<mat-form-field [class.mat-hide-underline]=\"!showUnderline\" floatPlaceholder=\"never\" flex>\r\n\t\t<input matInput #searchElement type=\"search\" [(ngModel)]=\"value\" [placeholder]=\"placeholder\" (blur)=\"handleBlur()\" (search)=\"stopPropagation($event)\" (keyup.enter)=\"handleSearch($event)\" />\r\n\t</mat-form-field>\r\n\t<button mat-icon-button type=\"button\" [@searchState]=\"(searchElement.value ? 'show' : (isRTL ? 'hide-left' : 'hide-right'))\" (click)=\"clearSearch()\" flex=\"none\">\r\n\t\t<mat-icon>cancel</mat-icon>\r\n\t</button>\r\n</div>", styles: [".vd-search-input{overflow-x:hidden}.vd-search-input ::ng-deep mat-form-field.mat-hide-underline .mat-input-underline{display:none}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }], animations: [
17983
18092
  trigger('searchState', [
17984
18093
  state('hide-left', style({
17985
18094
  transform: 'translateX(-150%)',
@@ -17997,7 +18106,7 @@ class VdSearchInputComponent {
17997
18106
  transition('show => *', animate('200ms ease-out')),
17998
18107
  ]),
17999
18108
  ] });
18000
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchInputComponent, decorators: [{
18109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchInputComponent, decorators: [{
18001
18110
  type: Component,
18002
18111
  args: [{ selector: 'vd-search-input', animations: [
18003
18112
  trigger('searchState', [
@@ -18016,7 +18125,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
18016
18125
  transition('* => show', animate('200ms ease-in')),
18017
18126
  transition('show => *', animate('200ms ease-out')),
18018
18127
  ]),
18019
- ], template: "<div class=\"vd-search-input\" layout=\"row\" layout-align=\"end center\">\r\n\t<mat-form-field [class.mat-hide-underline]=\"!showUnderline\" floatPlaceholder=\"never\" flex appearance=\"legacy\">\r\n\t\t<input matInput #searchElement type=\"search\" [(ngModel)]=\"value\" [placeholder]=\"placeholder\" (blur)=\"handleBlur()\" (search)=\"stopPropagation($event)\" (keyup.enter)=\"handleSearch($event)\" />\r\n\t</mat-form-field>\r\n\t<button mat-icon-button type=\"button\" [@searchState]=\"(searchElement.value ? 'show' : (isRTL ? 'hide-left' : 'hide-right'))\" (click)=\"clearSearch()\" flex=\"none\">\r\n\t\t<mat-icon>cancel</mat-icon>\r\n\t</button>\r\n</div>", styles: [".vd-search-input{overflow-x:hidden}.vd-search-input ::ng-deep mat-form-field.mat-hide-underline .mat-input-underline{display:none}\n"] }]
18128
+ ], template: "<div class=\"vd-search-input\" layout=\"row\" layout-align=\"end center\">\r\n\t<mat-form-field [class.mat-hide-underline]=\"!showUnderline\" floatPlaceholder=\"never\" flex>\r\n\t\t<input matInput #searchElement type=\"search\" [(ngModel)]=\"value\" [placeholder]=\"placeholder\" (blur)=\"handleBlur()\" (search)=\"stopPropagation($event)\" (keyup.enter)=\"handleSearch($event)\" />\r\n\t</mat-form-field>\r\n\t<button mat-icon-button type=\"button\" [@searchState]=\"(searchElement.value ? 'show' : (isRTL ? 'hide-left' : 'hide-right'))\" (click)=\"clearSearch()\" flex=\"none\">\r\n\t\t<mat-icon>cancel</mat-icon>\r\n\t</button>\r\n</div>", styles: [".vd-search-input{overflow-x:hidden}.vd-search-input ::ng-deep mat-form-field.mat-hide-underline .mat-input-underline{display:none}\n"] }]
18020
18129
  }], ctorParameters: function () {
18021
18130
  return [{ type: i1$7.Dir, decorators: [{
18022
18131
  type: Optional
@@ -18118,8 +18227,8 @@ class VdSearchBoxComponent {
18118
18227
  this.onClear.emit(undefined);
18119
18228
  }
18120
18229
  }
18121
- /** @nocollapse */ VdSearchBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18122
- /** @nocollapse */ VdSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: VdSearchBoxComponent, selector: "vd-search-box", inputs: { backIcon: "backIcon", showUnderline: "showUnderline", debounce: "debounce", alwaysVisible: "alwaysVisible", placeholder: "placeholder" }, outputs: { onSearchDebounce: "searchDebounce", onSearch: "search", onClear: "clear" }, viewQueries: [{ propertyName: "_searchInput", first: true, predicate: VdSearchInputComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"vd-search-box\" layout=\"row\" layout-align=\"end center\">\r\n\t<button mat-icon-button type=\"button\" class=\"vd-search-icon\" flex=\"none\" (click)=\"searchClicked()\">\r\n\t\t <mat-icon *ngIf=\"searchVisible && !alwaysVisible\">{{backIcon}}</mat-icon>\r\n\t\t <mat-icon *ngIf=\"!searchVisible || alwaysVisible\">search</mat-icon>\r\n\t\t</button>\r\n\t<vd-search-input #searchInput [@inputState]=\"alwaysVisible || searchVisible\" [debounce]=\"debounce\" [showUnderline]=\"showUnderline\"\r\n\t [placeholder]=\"placeholder\" (searchDebounce)=\"handleSearchDebounce($event)\" (search)=\"handleSearch($event)\" (clear)=\"handleClear(); toggleVisibility()\">\r\n\t</vd-search-input>\r\n</div>", styles: [":host{display:block}.vd-search-box vd-search-input{margin-left:12px}::ng-deep [dir=rtl] .vd-search-box vd-search-input{margin-right:12px;margin-left:0!important}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: VdSearchInputComponent, selector: "vd-search-input", inputs: ["showUnderline", "debounce", "placeholder"], outputs: ["searchDebounce", "search", "clear", "blur"] }], animations: [
18230
+ /** @nocollapse */ VdSearchBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18231
+ /** @nocollapse */ VdSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: VdSearchBoxComponent, selector: "vd-search-box", inputs: { backIcon: "backIcon", showUnderline: "showUnderline", debounce: "debounce", alwaysVisible: "alwaysVisible", placeholder: "placeholder" }, outputs: { onSearchDebounce: "searchDebounce", onSearch: "search", onClear: "clear" }, viewQueries: [{ propertyName: "_searchInput", first: true, predicate: VdSearchInputComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"vd-search-box\" layout=\"row\" layout-align=\"end center\">\r\n\t<button mat-icon-button type=\"button\" class=\"vd-search-icon\" flex=\"none\" (click)=\"searchClicked()\">\r\n\t\t <mat-icon *ngIf=\"searchVisible && !alwaysVisible\">{{backIcon}}</mat-icon>\r\n\t\t <mat-icon *ngIf=\"!searchVisible || alwaysVisible\">search</mat-icon>\r\n\t\t</button>\r\n\t<vd-search-input #searchInput [@inputState]=\"alwaysVisible || searchVisible\" [debounce]=\"debounce\" [showUnderline]=\"showUnderline\"\r\n\t [placeholder]=\"placeholder\" (searchDebounce)=\"handleSearchDebounce($event)\" (search)=\"handleSearch($event)\" (clear)=\"handleClear(); toggleVisibility()\">\r\n\t</vd-search-input>\r\n</div>", styles: [":host{display:block}.vd-search-box vd-search-input{margin-left:12px}::ng-deep [dir=rtl] .vd-search-box vd-search-input{margin-right:12px;margin-left:0!important}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: VdSearchInputComponent, selector: "vd-search-input", inputs: ["showUnderline", "debounce", "placeholder"], outputs: ["searchDebounce", "search", "clear", "blur"] }], animations: [
18123
18232
  trigger('inputState', [
18124
18233
  state('false', style({
18125
18234
  width: '0%',
@@ -18135,7 +18244,7 @@ class VdSearchBoxComponent {
18135
18244
  transition('1 => 0', animate('200ms ease-out')),
18136
18245
  ]),
18137
18246
  ] });
18138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchBoxComponent, decorators: [{
18247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchBoxComponent, decorators: [{
18139
18248
  type: Component,
18140
18249
  args: [{ selector: 'vd-search-box', animations: [
18141
18250
  trigger('inputState', [
@@ -18188,20 +18297,20 @@ const DECLARATIONS = [
18188
18297
  ];
18189
18298
  class VdSearchModule {
18190
18299
  }
18191
- /** @nocollapse */ VdSearchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18192
- /** @nocollapse */ VdSearchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: VdSearchModule, declarations: [VdSearchInputComponent,
18300
+ /** @nocollapse */ VdSearchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18301
+ /** @nocollapse */ VdSearchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: VdSearchModule, declarations: [VdSearchInputComponent,
18193
18302
  VdSearchBoxComponent], imports: [CommonModule,
18194
18303
  FormsModule,
18195
18304
  MatButtonModule,
18196
18305
  MatIconModule,
18197
18306
  MatInputModule], exports: [VdSearchInputComponent,
18198
18307
  VdSearchBoxComponent] });
18199
- /** @nocollapse */ VdSearchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchModule, imports: [CommonModule,
18308
+ /** @nocollapse */ VdSearchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchModule, imports: [CommonModule,
18200
18309
  FormsModule,
18201
18310
  MatButtonModule,
18202
18311
  MatIconModule,
18203
18312
  MatInputModule] });
18204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: VdSearchModule, decorators: [{
18313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: VdSearchModule, decorators: [{
18205
18314
  type: NgModule,
18206
18315
  args: [{
18207
18316
  imports: [