@valtimo/components 4.15.3-next-main.16 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/bundles/valtimo-components.umd.js +4904 -4735
  2. package/bundles/valtimo-components.umd.js.map +1 -1
  3. package/bundles/valtimo-components.umd.min.js +2 -2
  4. package/bundles/valtimo-components.umd.min.js.map +1 -1
  5. package/esm2015/lib/components/alert/alert.component.js +140 -0
  6. package/esm2015/lib/components/alert/alert.module.js +28 -0
  7. package/esm2015/lib/components/alert/alert.service.js +81 -0
  8. package/esm2015/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.js +160 -0
  9. package/esm2015/lib/{data-list/data-list.module.js → components/bpmn-js-diagram/bpmn-js-diagram.module.js} +28 -28
  10. package/esm2015/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.js +93 -0
  11. package/esm2015/lib/components/breadcrumb-navigation/breadcrumb-navigation.module.js +30 -0
  12. package/esm2015/lib/{camunda → components/camunda}/form/camunda-form.components.js +37 -37
  13. package/esm2015/lib/components/camunda/form/camunda-form.module.js +30 -0
  14. package/esm2015/lib/components/camunda/form/custom/camunda-custom-form.component.js +42 -0
  15. package/esm2015/lib/components/camunda/form/custom/camunda-custom-form.module.js +28 -0
  16. package/esm2015/lib/components/camunda/form/generated/camunda-generated-form.component.js +69 -0
  17. package/esm2015/lib/components/camunda/form/generated/camunda-generated-form.module.js +58 -0
  18. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/boolean/camunda-boolean-formfield.component.js +27 -27
  19. package/esm2015/lib/components/camunda/form/generated/formfield/camunda-formfield-generator.directive.js +64 -0
  20. package/esm2015/lib/components/camunda/form/generated/formfield/camunda-formfield.service.js +66 -0
  21. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.js +40 -40
  22. package/esm2015/lib/components/camunda/form/generated/formfield/date/camunda-date-formfield.component.js +66 -0
  23. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/enum/camunda-enum-formfield.component.js +30 -30
  24. package/esm2015/lib/components/camunda/form/generated/formfield/formfield.model.js +16 -0
  25. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/long/camunda-long-formfield.component.js +27 -27
  26. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/string/camunda-string-formfield.component.js +27 -27
  27. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/textarea/camunda-textarea-formfield.component.js +27 -27
  28. package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/validation/camunda-formfield-validation.component.js +35 -35
  29. package/esm2015/lib/components/camunda/form/generated/formfield/validation/date.validators.js +60 -0
  30. package/esm2015/lib/{card → components/card}/card.component.js +36 -36
  31. package/esm2015/lib/components/card/card.module.js +28 -0
  32. package/esm2015/lib/components/components.module.js +22 -0
  33. package/esm2015/lib/{data-list → components/data-list}/data-list.component.js +33 -33
  34. package/esm2015/lib/components/data-list/data-list.module.js +28 -0
  35. package/esm2015/lib/components/dropzone/dropzone.component.js +142 -0
  36. package/esm2015/lib/components/dropzone/dropzone.module.js +32 -0
  37. package/esm2015/lib/components/field-auto-focus/field-auto-focus.directive.js +35 -0
  38. package/esm2015/lib/components/field-auto-focus/field-auto-focus.module.js +28 -0
  39. package/esm2015/lib/components/file-size/file-size.module.js +28 -0
  40. package/esm2015/lib/components/file-size/file-size.pipe.js +38 -0
  41. package/esm2015/lib/components/filter-sidebar/filter-sidebar.component.js +46 -0
  42. package/esm2015/lib/components/filter-sidebar/filter-sidebar.module.js +28 -0
  43. package/esm2015/lib/components/form-io/form-io-builder.component.js +38 -0
  44. package/esm2015/lib/components/form-io/form-io-uploader/form-io-uploader-edit-form.js +90 -0
  45. package/esm2015/lib/components/form-io/form-io-uploader/form-io-uploader.component.js +74 -0
  46. package/esm2015/lib/components/form-io/form-io-uploader/form-io-uploader.formio.js +26 -0
  47. package/esm2015/lib/components/form-io/form-io.component.js +163 -0
  48. package/esm2015/lib/components/form-io/form-io.module.js +56 -0
  49. package/esm2015/lib/components/form-io/formio-config.js +22 -0
  50. package/esm2015/lib/components/form-io/services/form-io-dom.service.js +23 -0
  51. package/esm2015/lib/components/form-io/services/form-io-state.service.js +24 -0
  52. package/esm2015/lib/components/left-sidebar/left-sidebar.component.js +114 -0
  53. package/esm2015/lib/components/left-sidebar/left-sidebar.module.js +30 -0
  54. package/esm2015/lib/components/list/ListFilterPipe.directive.js +31 -0
  55. package/esm2015/lib/components/list/list.component.js +179 -0
  56. package/esm2015/lib/components/list/list.module.js +33 -0
  57. package/esm2015/lib/components/menu/menu-item-text.component.js +38 -0
  58. package/esm2015/lib/components/menu/menu-routing.module.js +27 -0
  59. package/esm2015/lib/components/menu/menu.component.js +65 -0
  60. package/esm2015/lib/components/menu/menu.init.js +34 -0
  61. package/esm2015/lib/components/menu/menu.module.js +34 -0
  62. package/esm2015/lib/components/menu/menu.service.js +126 -0
  63. package/esm2015/lib/components/menu/submenu-item-text.component.js +33 -0
  64. package/esm2015/lib/{modal → components/modal}/modal.component.js +48 -48
  65. package/esm2015/lib/components/modal/modal.module.js +28 -0
  66. package/esm2015/lib/{page-header → components/page-header}/page-header.component.js +29 -29
  67. package/esm2015/lib/components/page-header/page-header.module.js +30 -0
  68. package/esm2015/lib/components/page-title/page-title.component.js +76 -0
  69. package/esm2015/lib/components/page-title/page-title.module.js +29 -0
  70. package/esm2015/lib/components/progress-bar/progress-bar.component.js +26 -0
  71. package/esm2015/lib/components/progress-bar/progress-bar.module.js +28 -0
  72. package/esm2015/lib/{right-sidebar → components/right-sidebar}/right-sidebar.component.js +133 -133
  73. package/esm2015/lib/components/right-sidebar/right-sidebar.module.js +49 -0
  74. package/esm2015/lib/components/searchable-dropdown/searchable-dropdown.component.js +187 -0
  75. package/esm2015/lib/components/searchable-dropdown/searchable-dropdown.module.js +29 -0
  76. package/esm2015/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.js +52 -0
  77. package/esm2015/lib/components/searchable-dropdown-select/searchable-dropdown-select.module.js +30 -0
  78. package/esm2015/lib/{spinner → components/spinner}/spinner.component.js +45 -45
  79. package/esm2015/lib/components/spinner/spinner.module.js +30 -0
  80. package/esm2015/lib/{timeline → components/timeline}/timeline.component.js +29 -29
  81. package/esm2015/lib/{modal/modal.module.js → components/timeline/timeline.module.js} +29 -28
  82. package/esm2015/lib/{topbar → components/topbar}/topbar.component.js +28 -28
  83. package/esm2015/lib/components/topbar/topbar.module.js +29 -0
  84. package/esm2015/lib/components/uploader/uploader-drag-drop.directive.js +49 -0
  85. package/esm2015/lib/components/uploader/uploader.component.js +68 -0
  86. package/esm2015/lib/components/uploader/uploader.module.js +30 -0
  87. package/esm2015/lib/components/version/version.service.js +38 -0
  88. package/esm2015/lib/components/view-content/type-converters/booleanTypeConverter.js +29 -0
  89. package/esm2015/lib/components/view-content/type-converters/dateTypeConverter.js +30 -0
  90. package/esm2015/lib/components/view-content/type-converters/enumTypeConverter.js +24 -0
  91. package/esm2015/lib/components/view-content/type-converters/relatedFilesTypeConverter.js +24 -0
  92. package/esm2015/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.js +27 -0
  93. package/esm2015/lib/components/view-content/type-converters/stringTypeConverter.js +24 -0
  94. package/esm2015/lib/components/view-content/type-converters/type-converters.model.js +37 -0
  95. package/esm2015/lib/components/view-content/view-content.service.js +51 -0
  96. package/esm2015/lib/components/webcam/webcam.component.js +102 -0
  97. package/esm2015/lib/components/webcam/webcam.module.js +29 -0
  98. package/esm2015/lib/components/widget/widget.component.js +80 -0
  99. package/esm2015/lib/components/widget/widget.module.js +28 -0
  100. package/esm2015/lib/models/alert.model.js +30 -0
  101. package/esm2015/lib/models/form-io.model.js +30 -0
  102. package/esm2015/lib/models/index.js +24 -0
  103. package/esm2015/lib/models/pagination.model.js +1 -0
  104. package/esm2015/lib/models/searchable-dropdown.model.js +1 -0
  105. package/esm2015/lib/models/timeline.model.js +44 -0
  106. package/esm2015/lib/models/version.model.js +16 -0
  107. package/esm2015/public_api.js +85 -84
  108. package/esm2015/valtimo-components.js +27 -27
  109. package/fesm2015/valtimo-components.js +4353 -4217
  110. package/fesm2015/valtimo-components.js.map +1 -1
  111. package/lib/{alert → components/alert}/alert.component.d.ts +21 -21
  112. package/lib/{alert → components/alert}/alert.module.d.ts +2 -2
  113. package/lib/{alert → components/alert}/alert.service.d.ts +21 -21
  114. package/lib/{bpmn-js-diagram → components/bpmn-js-diagram}/bpmn-js-diagram.component.d.ts +27 -27
  115. package/lib/{bpmn-js-diagram → components/bpmn-js-diagram}/bpmn-js-diagram.module.d.ts +2 -2
  116. package/lib/{breadcrumb-navigation → components/breadcrumb-navigation}/breadcrumb-navigation.component.d.ts +14 -14
  117. package/lib/{breadcrumb-navigation → components/breadcrumb-navigation}/breadcrumb-navigation.module.d.ts +2 -2
  118. package/lib/{camunda → components/camunda}/form/camunda-form.components.d.ts +9 -9
  119. package/lib/{camunda → components/camunda}/form/camunda-form.module.d.ts +2 -2
  120. package/lib/{camunda → components/camunda}/form/custom/camunda-custom-form.component.d.ts +8 -8
  121. package/lib/{camunda → components/camunda}/form/custom/camunda-custom-form.module.d.ts +2 -2
  122. package/lib/{camunda → components/camunda}/form/generated/camunda-generated-form.component.d.ts +19 -19
  123. package/lib/{camunda → components/camunda}/form/generated/camunda-generated-form.module.d.ts +2 -2
  124. package/lib/{camunda → components/camunda}/form/generated/formfield/boolean/camunda-boolean-formfield.component.d.ts +7 -7
  125. package/lib/{camunda → components/camunda}/form/generated/formfield/camunda-formfield-generator.directive.d.ts +13 -13
  126. package/lib/{camunda → components/camunda}/form/generated/formfield/camunda-formfield.service.d.ts +7 -7
  127. package/lib/{camunda → components/camunda}/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts +12 -12
  128. package/lib/{camunda → components/camunda}/form/generated/formfield/date/camunda-date-formfield.component.d.ts +14 -14
  129. package/lib/{camunda → components/camunda}/form/generated/formfield/enum/camunda-enum-formfield.component.d.ts +10 -10
  130. package/lib/{camunda → components/camunda}/form/generated/formfield/formfield.model.d.ts +20 -20
  131. package/lib/{camunda → components/camunda}/form/generated/formfield/long/camunda-long-formfield.component.d.ts +7 -7
  132. package/lib/{camunda → components/camunda}/form/generated/formfield/string/camunda-string-formfield.component.d.ts +7 -7
  133. package/lib/{camunda → components/camunda}/form/generated/formfield/textarea/camunda-textarea-formfield.component.d.ts +7 -7
  134. package/lib/{camunda → components/camunda}/form/generated/formfield/validation/camunda-formfield-validation.component.d.ts +10 -10
  135. package/lib/{camunda → components/camunda}/form/generated/formfield/validation/date.validators.d.ts +3 -3
  136. package/lib/{card → components/card}/card.component.d.ts +16 -16
  137. package/lib/{card → components/card}/card.module.d.ts +2 -2
  138. package/lib/{components.module.d.ts → components/components.module.d.ts} +2 -2
  139. package/lib/{data-list → components/data-list}/data-list.component.d.ts +7 -7
  140. package/lib/{data-list → components/data-list}/data-list.module.d.ts +2 -2
  141. package/lib/{dropzone → components/dropzone}/dropzone.component.d.ts +38 -38
  142. package/lib/{dropzone → components/dropzone}/dropzone.module.d.ts +2 -2
  143. package/lib/{field-auto-focus → components/field-auto-focus}/field-auto-focus.directive.d.ts +6 -6
  144. package/lib/{field-auto-focus → components/field-auto-focus}/field-auto-focus.module.d.ts +2 -2
  145. package/lib/{file-size → components/file-size}/file-size.module.d.ts +2 -2
  146. package/lib/{file-size → components/file-size}/file-size.pipe.d.ts +5 -5
  147. package/lib/{filter-sidebar → components/filter-sidebar}/filter-sidebar.component.d.ts +8 -8
  148. package/lib/{filter-sidebar → components/filter-sidebar}/filter-sidebar.module.d.ts +2 -2
  149. package/lib/{form-io → components/form-io}/form-io-builder.component.d.ts +8 -8
  150. package/lib/{form-io → components/form-io}/form-io-uploader/form-io-uploader-edit-form.d.ts +61 -61
  151. package/lib/{form-io → components/form-io}/form-io-uploader/form-io-uploader.component.d.ts +29 -29
  152. package/lib/{form-io → components/form-io}/form-io-uploader/form-io-uploader.formio.d.ts +3 -3
  153. package/lib/{form-io → components/form-io}/form-io.component.d.ts +47 -47
  154. package/lib/{form-io → components/form-io}/form-io.module.d.ts +2 -2
  155. package/lib/{form-io → components/form-io}/formio-config.d.ts +6 -6
  156. package/lib/{form-io → components/form-io}/services/form-io-dom.service.d.ts +6 -6
  157. package/lib/{form-io → components/form-io}/services/form-io-state.service.d.ts +10 -10
  158. package/lib/{left-sidebar → components/left-sidebar}/left-sidebar.component.d.ts +34 -34
  159. package/lib/{left-sidebar → components/left-sidebar}/left-sidebar.module.d.ts +2 -2
  160. package/lib/{list → components/list}/ListFilterPipe.directive.d.ts +4 -4
  161. package/lib/{list → components/list}/list.component.d.ts +43 -43
  162. package/lib/{list → components/list}/list.module.d.ts +2 -2
  163. package/lib/{menu → components/menu}/menu-item-text.component.d.ts +4 -4
  164. package/lib/{menu → components/menu}/menu-routing.module.d.ts +2 -2
  165. package/lib/{menu → components/menu}/menu.component.d.ts +18 -18
  166. package/lib/{menu → components/menu}/menu.init.d.ts +3 -3
  167. package/lib/{menu → components/menu}/menu.module.d.ts +2 -2
  168. package/lib/{menu → components/menu}/menu.service.d.ts +23 -23
  169. package/lib/{menu → components/menu}/submenu-item-text.component.d.ts +4 -4
  170. package/lib/{modal → components/modal}/modal.component.d.ts +12 -12
  171. package/lib/{modal → components/modal}/modal.module.d.ts +2 -2
  172. package/lib/{page-header → components/page-header}/page-header.component.d.ts +5 -5
  173. package/lib/{page-header → components/page-header}/page-header.module.d.ts +2 -2
  174. package/lib/{page-title → components/page-title}/page-title.component.d.ts +19 -19
  175. package/lib/{page-title → components/page-title}/page-title.module.d.ts +2 -2
  176. package/lib/{progress-bar → components/progress-bar}/progress-bar.component.d.ts +2 -2
  177. package/lib/{progress-bar → components/progress-bar}/progress-bar.module.d.ts +2 -2
  178. package/lib/{right-sidebar → components/right-sidebar}/right-sidebar.component.d.ts +35 -34
  179. package/lib/{right-sidebar → components/right-sidebar}/right-sidebar.module.d.ts +2 -2
  180. package/lib/{searchable-dropdown → components/searchable-dropdown}/searchable-dropdown.component.d.ts +39 -39
  181. package/lib/{searchable-dropdown → components/searchable-dropdown}/searchable-dropdown.module.d.ts +2 -2
  182. package/lib/{searchable-dropdown-select → components/searchable-dropdown-select}/searchable-dropdown-select.component.d.ts +19 -19
  183. package/lib/{searchable-dropdown-select → components/searchable-dropdown-select}/searchable-dropdown-select.module.d.ts +2 -2
  184. package/lib/{spinner → components/spinner}/spinner.component.d.ts +10 -10
  185. package/lib/{spinner → components/spinner}/spinner.module.d.ts +2 -2
  186. package/lib/{timeline → components/timeline}/timeline.component.d.ts +4 -4
  187. package/lib/{timeline → components/timeline}/timeline.module.d.ts +2 -2
  188. package/lib/{topbar → components/topbar}/topbar.component.d.ts +3 -3
  189. package/lib/{topbar → components/topbar}/topbar.module.d.ts +2 -2
  190. package/lib/{uploader → components/uploader}/uploader-drag-drop.directive.d.ts +7 -7
  191. package/lib/{uploader → components/uploader}/uploader.component.d.ts +14 -15
  192. package/lib/{uploader → components/uploader}/uploader.module.d.ts +2 -2
  193. package/lib/{version → components/version}/version.service.d.ts +8 -8
  194. package/lib/{view-content → components/view-content}/type-converters/booleanTypeConverter.d.ts +5 -5
  195. package/lib/{view-content → components/view-content}/type-converters/dateTypeConverter.d.ts +5 -5
  196. package/lib/{view-content → components/view-content}/type-converters/enumTypeConverter.d.ts +5 -5
  197. package/lib/{view-content → components/view-content}/type-converters/relatedFilesTypeConverter.d.ts +5 -5
  198. package/lib/{view-content → components/view-content}/type-converters/stringReplaceUnderscoreTypeConverter.d.ts +6 -6
  199. package/lib/{view-content → components/view-content}/type-converters/stringTypeConverter.d.ts +5 -5
  200. package/lib/{view-content → components/view-content}/type-converters/type-converters.model.d.ts +5 -5
  201. package/lib/{view-content → components/view-content}/view-content.service.d.ts +8 -8
  202. package/lib/{webcam → components/webcam}/webcam.component.d.ts +20 -20
  203. package/lib/{webcam → components/webcam}/webcam.module.d.ts +2 -2
  204. package/lib/{widget → components/widget}/widget.component.d.ts +28 -28
  205. package/lib/{widget → components/widget}/widget.module.d.ts +2 -2
  206. package/lib/models/alert.model.d.ts +21 -0
  207. package/lib/models/form-io.model.d.ts +27 -0
  208. package/lib/models/index.d.ts +6 -0
  209. package/lib/models/pagination.model.d.ts +7 -0
  210. package/lib/models/searchable-dropdown.model.d.ts +5 -0
  211. package/lib/models/timeline.model.d.ts +23 -0
  212. package/lib/models/version.model.d.ts +4 -0
  213. package/package.json +2 -2
  214. package/public_api.d.ts +66 -65
  215. package/valtimo-components.d.ts +26 -26
  216. package/valtimo-components.metadata.json +1 -1
  217. package/esm2015/lib/alert/alert.component.js +0 -140
  218. package/esm2015/lib/alert/alert.module.js +0 -28
  219. package/esm2015/lib/alert/alert.service.js +0 -81
  220. package/esm2015/lib/bpmn-js-diagram/bpmn-js-diagram.component.js +0 -160
  221. package/esm2015/lib/bpmn-js-diagram/bpmn-js-diagram.module.js +0 -28
  222. package/esm2015/lib/breadcrumb-navigation/breadcrumb-navigation.component.js +0 -93
  223. package/esm2015/lib/breadcrumb-navigation/breadcrumb-navigation.module.js +0 -30
  224. package/esm2015/lib/camunda/form/camunda-form.module.js +0 -30
  225. package/esm2015/lib/camunda/form/custom/camunda-custom-form.component.js +0 -42
  226. package/esm2015/lib/camunda/form/custom/camunda-custom-form.module.js +0 -28
  227. package/esm2015/lib/camunda/form/generated/camunda-generated-form.component.js +0 -69
  228. package/esm2015/lib/camunda/form/generated/camunda-generated-form.module.js +0 -58
  229. package/esm2015/lib/camunda/form/generated/formfield/camunda-formfield-generator.directive.js +0 -64
  230. package/esm2015/lib/camunda/form/generated/formfield/camunda-formfield.service.js +0 -66
  231. package/esm2015/lib/camunda/form/generated/formfield/date/camunda-date-formfield.component.js +0 -66
  232. package/esm2015/lib/camunda/form/generated/formfield/formfield.model.js +0 -16
  233. package/esm2015/lib/camunda/form/generated/formfield/validation/date.validators.js +0 -60
  234. package/esm2015/lib/card/card.module.js +0 -28
  235. package/esm2015/lib/components.module.js +0 -22
  236. package/esm2015/lib/dropzone/dropzone.component.js +0 -143
  237. package/esm2015/lib/dropzone/dropzone.module.js +0 -32
  238. package/esm2015/lib/field-auto-focus/field-auto-focus.directive.js +0 -35
  239. package/esm2015/lib/field-auto-focus/field-auto-focus.module.js +0 -28
  240. package/esm2015/lib/file-size/file-size.module.js +0 -28
  241. package/esm2015/lib/file-size/file-size.pipe.js +0 -38
  242. package/esm2015/lib/filter-sidebar/filter-sidebar.component.js +0 -46
  243. package/esm2015/lib/filter-sidebar/filter-sidebar.module.js +0 -28
  244. package/esm2015/lib/form-io/form-io-builder.component.js +0 -38
  245. package/esm2015/lib/form-io/form-io-uploader/form-io-uploader-edit-form.js +0 -90
  246. package/esm2015/lib/form-io/form-io-uploader/form-io-uploader.component.js +0 -74
  247. package/esm2015/lib/form-io/form-io-uploader/form-io-uploader.formio.js +0 -26
  248. package/esm2015/lib/form-io/form-io.component.js +0 -163
  249. package/esm2015/lib/form-io/form-io.module.js +0 -56
  250. package/esm2015/lib/form-io/formio-config.js +0 -22
  251. package/esm2015/lib/form-io/services/form-io-dom.service.js +0 -23
  252. package/esm2015/lib/form-io/services/form-io-state.service.js +0 -24
  253. package/esm2015/lib/left-sidebar/left-sidebar.component.js +0 -114
  254. package/esm2015/lib/left-sidebar/left-sidebar.module.js +0 -30
  255. package/esm2015/lib/list/ListFilterPipe.directive.js +0 -31
  256. package/esm2015/lib/list/list.component.js +0 -179
  257. package/esm2015/lib/list/list.module.js +0 -33
  258. package/esm2015/lib/menu/menu-item-text.component.js +0 -38
  259. package/esm2015/lib/menu/menu-routing.module.js +0 -27
  260. package/esm2015/lib/menu/menu.component.js +0 -65
  261. package/esm2015/lib/menu/menu.init.js +0 -34
  262. package/esm2015/lib/menu/menu.module.js +0 -34
  263. package/esm2015/lib/menu/menu.service.js +0 -126
  264. package/esm2015/lib/menu/submenu-item-text.component.js +0 -33
  265. package/esm2015/lib/page-header/page-header.module.js +0 -30
  266. package/esm2015/lib/page-title/page-title.component.js +0 -76
  267. package/esm2015/lib/page-title/page-title.module.js +0 -29
  268. package/esm2015/lib/progress-bar/progress-bar.component.js +0 -26
  269. package/esm2015/lib/progress-bar/progress-bar.module.js +0 -28
  270. package/esm2015/lib/right-sidebar/right-sidebar.module.js +0 -49
  271. package/esm2015/lib/searchable-dropdown/searchable-dropdown.component.js +0 -187
  272. package/esm2015/lib/searchable-dropdown/searchable-dropdown.module.js +0 -29
  273. package/esm2015/lib/searchable-dropdown-select/searchable-dropdown-select.component.js +0 -52
  274. package/esm2015/lib/searchable-dropdown-select/searchable-dropdown-select.module.js +0 -30
  275. package/esm2015/lib/spinner/spinner.module.js +0 -30
  276. package/esm2015/lib/timeline/timeline.module.js +0 -29
  277. package/esm2015/lib/topbar/topbar.module.js +0 -29
  278. package/esm2015/lib/uploader/uploader-drag-drop.directive.js +0 -49
  279. package/esm2015/lib/uploader/uploader.component.js +0 -69
  280. package/esm2015/lib/uploader/uploader.module.js +0 -30
  281. package/esm2015/lib/version/version.service.js +0 -38
  282. package/esm2015/lib/view-content/type-converters/booleanTypeConverter.js +0 -29
  283. package/esm2015/lib/view-content/type-converters/dateTypeConverter.js +0 -30
  284. package/esm2015/lib/view-content/type-converters/enumTypeConverter.js +0 -24
  285. package/esm2015/lib/view-content/type-converters/relatedFilesTypeConverter.js +0 -24
  286. package/esm2015/lib/view-content/type-converters/stringReplaceUnderscoreTypeConverter.js +0 -27
  287. package/esm2015/lib/view-content/type-converters/stringTypeConverter.js +0 -24
  288. package/esm2015/lib/view-content/type-converters/type-converters.model.js +0 -37
  289. package/esm2015/lib/view-content/view-content.service.js +0 -51
  290. package/esm2015/lib/webcam/webcam.component.js +0 -102
  291. package/esm2015/lib/webcam/webcam.module.js +0 -29
  292. package/esm2015/lib/widget/widget.component.js +0 -80
  293. package/esm2015/lib/widget/widget.module.js +0 -28
@@ -0,0 +1,187 @@
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Component, EventEmitter, HostListener, Input, Output, QueryList, ViewChildren, } from '@angular/core';
17
+ import { FormControl } from '@angular/forms';
18
+ import { BehaviorSubject, combineLatest, fromEvent } from 'rxjs';
19
+ import { debounceTime, take } from 'rxjs/operators';
20
+ export class SearchableDropdownComponent {
21
+ constructor() {
22
+ this.width = 250;
23
+ this.itemSelected = new EventEmitter();
24
+ this.searchId = 'search';
25
+ this.searchTerm = new FormControl('');
26
+ this.focusedItemId$ = new BehaviorSubject(this.searchId);
27
+ this.open$ = new BehaviorSubject(false);
28
+ this.filteredItems$ = new BehaviorSubject(undefined);
29
+ this.wasInside = false;
30
+ this.mouseOnList$ = new BehaviorSubject(false);
31
+ }
32
+ clickInside() {
33
+ this.wasInside = true;
34
+ }
35
+ clickout() {
36
+ if (!this.wasInside) {
37
+ this.closeDropdown();
38
+ }
39
+ this.wasInside = false;
40
+ }
41
+ ngOnInit() {
42
+ this.openKeysSubscription();
43
+ this.openSearchSubscription();
44
+ }
45
+ ngOnChanges(changes) {
46
+ const itemChanges = changes.items;
47
+ const currenItems = itemChanges.currentValue;
48
+ if (itemChanges && !itemChanges.previousValue && currenItems) {
49
+ this.filteredItems$.next(currenItems);
50
+ }
51
+ }
52
+ ngOnDestroy() {
53
+ this.keySubscription.unsubscribe();
54
+ this.searchSubscription.unsubscribe();
55
+ }
56
+ openDropdown() {
57
+ this.open$.next(true);
58
+ }
59
+ hoverOverButton(id) {
60
+ this.focusedItemId$.next(id);
61
+ }
62
+ mouseEnterList() {
63
+ this.mouseOnList$.next(true);
64
+ }
65
+ mouseLeaveList() {
66
+ this.mouseOnList$.next(false);
67
+ }
68
+ resetFocus() {
69
+ this.focusedItemId$.next(this.searchId);
70
+ }
71
+ submit(id) {
72
+ this.itemSelected.emit(id);
73
+ }
74
+ closeDropdown() {
75
+ this.searchTerm.setValue('');
76
+ this.resetFocus();
77
+ this.open$.next(false);
78
+ }
79
+ openKeysSubscription() {
80
+ this.keySubscription = fromEvent(document, 'keyup')
81
+ .pipe(debounceTime(50))
82
+ .subscribe((event) => {
83
+ combineLatest([this.mouseOnList$, this.filteredItems$, this.focusedItemId$])
84
+ .pipe(take(1))
85
+ .subscribe(([mouseOnList, items, focusedId]) => {
86
+ const length = items.length;
87
+ const focusedIndex = items.findIndex(item => item.id === focusedId);
88
+ const code = event.code;
89
+ const shiftKey = event.shiftKey;
90
+ const down = 'ArrowDown';
91
+ const tab = 'Tab';
92
+ const up = 'ArrowUp';
93
+ const enter = 'Enter';
94
+ const escape = 'Escape';
95
+ // close dropdown on pressing escape
96
+ if (code === escape) {
97
+ this.closeDropdown();
98
+ }
99
+ // submit item when focus is on an item in the list and enter is pressed
100
+ if (code === enter && focusedId !== this.searchId) {
101
+ this.submit(focusedId);
102
+ }
103
+ // only handle tab or arrow keypresses when items are shown and the mouse is not on the list
104
+ if (length > 0 && !mouseOnList) {
105
+ // handle moving down in the list with arrow down or tab
106
+ if (code === down || (code === tab && !shiftKey)) {
107
+ // move focus to first item in the list when focus is on search box
108
+ if (focusedId === this.searchId) {
109
+ this.focusedItemId$.next(items[0].id);
110
+ this.scrollButtonIntoView(focusedId);
111
+ // move focus to next item in the list if focus is not on last item
112
+ }
113
+ else if (focusedIndex + 1 < length) {
114
+ this.focusedItemId$.next(items[focusedIndex + 1].id);
115
+ this.scrollButtonIntoView(focusedId);
116
+ }
117
+ // handle moving up in the list with up arrow up or shift+tab
118
+ }
119
+ else if ((code === up || (code === tab && shiftKey)) &&
120
+ focusedId !== this.searchId) {
121
+ // move to previous item if focus is not on the first item in the list
122
+ if (focusedIndex > 0) {
123
+ this.focusedItemId$.next(items[focusedIndex - 1].id);
124
+ this.scrollButtonIntoView(focusedId);
125
+ // move focus to search box if focus is on first item in the list
126
+ }
127
+ else {
128
+ this.resetFocus();
129
+ }
130
+ }
131
+ }
132
+ });
133
+ });
134
+ }
135
+ openSearchSubscription() {
136
+ this.searchSubscription = this.searchTerm.valueChanges.subscribe(searchTerm => {
137
+ this.focusedItemId$.pipe(take(1)).subscribe(focusedItemId => {
138
+ if (!searchTerm) {
139
+ this.filteredItems$.next(this.items);
140
+ }
141
+ else {
142
+ const filteredItems = this.items.filter(item => item.text.toUpperCase().includes(searchTerm.toUpperCase()));
143
+ this.filteredItems$.next(filteredItems);
144
+ // move focus to search box if filtered list length is 0 or previously focused item is not in filtered list anymore
145
+ if (filteredItems.length === 0 ||
146
+ !filteredItems.some(item => item.id === focusedItemId)) {
147
+ this.resetFocus();
148
+ }
149
+ }
150
+ // move scrolling button into view to end of queue, so that DOM can be updated first
151
+ setTimeout(() => {
152
+ this.scrollButtonIntoView(focusedItemId);
153
+ });
154
+ });
155
+ });
156
+ }
157
+ scrollButtonIntoView(id) {
158
+ this.filteredItems$.pipe(take(1)).subscribe(items => {
159
+ const focusItemIndex = items.findIndex(item => item.id === id);
160
+ const focusedButton = this.buttons.toArray()[focusItemIndex];
161
+ if (focusedButton) {
162
+ focusedButton.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
163
+ }
164
+ });
165
+ }
166
+ }
167
+ SearchableDropdownComponent.decorators = [
168
+ { type: Component, args: [{
169
+ selector: 'valtimo-searchable-dropdown',
170
+ template: "<ng-container *ngIf=\"buttonText && items\">\n <ng-container [ngTemplateOutlet]=\"(open$ | async) ? opened : closed\"> </ng-container>\n</ng-container>\n\n<ng-template #closed>\n <ng-container *ngIf=\"style === 'button' || !style\">\n <button\n class=\"btn btn-primary btn-sm dropdown-size\"\n (click)=\"openDropdown()\"\n [style.width.px]=\"width\"\n >\n {{ buttonText }}\n </button>\n </ng-container>\n <ng-container *ngIf=\"style === 'underlinedText'\">\n <h5 class=\"underline-button\" (click)=\"openDropdown()\" [style.width.px]=\"width\">\n <b>\n {{ buttonText }}\n </b>\n </h5>\n </ng-container>\n</ng-template>\n\n<ng-template #opened>\n <div class=\"dropdown-container\" [style.width.px]=\"width\">\n <div class=\"dropdown-size search\" [style.width.px]=\"width\">\n <input\n #search\n [ngClass]=\"{disabled: disabled}\"\n [placeholder]=\"searchText\"\n [formControl]=\"searchTerm\"\n />\n {{ search.focus() }}\n </div>\n <div class=\"dropdown-list\" (mouseenter)=\"mouseEnterList()\" (mouseleave)=\"mouseLeaveList()\">\n <ng-container *ngIf=\"filteredItems$ | async as filteredItems\">\n <ng-container\n *ngIf=\"\n filteredItems.length > 0 && focusedItemId$ | async as focusedItemId;\n else noResults\n \"\n >\n <button\n #button\n *ngFor=\"let item of filteredItems\"\n [ngClass]=\"{focus: focusedItemId === item.id, disabled: disabled}\"\n class=\"dropdown-button dropdown-size\"\n (click)=\"submit(item.id)\"\n (mouseenter)=\"hoverOverButton(item.id)\"\n (mouseleave)=\"resetFocus()\"\n [style.width.px]=\"width\"\n >\n <span class=\"dropdown-button-text\">\n {{ item.text }}\n </span>\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n <ng-container [ngTemplateOutlet]=\"space\"> </ng-container>\n</ng-template>\n\n<ng-template #noResults>\n <div class=\"dropdown-button dropdown-size disabled\" [style.width.px]=\"width\">\n <span class=\"dropdown-button-text\">{{ noResultsText }}</span>\n </div>\n</ng-template>\n\n<ng-template #space>\n <div *ngIf=\"style === 'button' || !style\" class=\"dropdown-size\" [style.width.px]=\"width\"></div>\n <h5 *ngIf=\"style === 'underlinedText'\" class=\"underline-button\"><b>-</b></h5>\n</ng-template>\n",
171
+ styles: [".dropdown-size{height:34px;width:250px}.underline-button{cursor:pointer;text-decoration:underline;width:250px}.dropdown-container{background-color:#fff;border:1px solid #e3e3e3;border-radius:3px;box-shadow:0 0 6px 0 rgba(0,0,0,.12);display:flex;flex-direction:column;max-height:300px;overflow:hidden;padding:7px 0;position:fixed;width:250px;z-index:999}.dropdown-list{list-style:none;margin:0;overflow:auto;overflow-x:hidden;padding:0;z-index:9999}.search{align-items:center;border-bottom:1px solid #dee2e6;display:flex;flex-shrink:0;height:44px;padding:8px 24px}.search input{padding:0;width:100%}.dropdown-button,.search input,.search input:focus{border:none;outline:none}.dropdown-button{align-items:center;background-color:#fff;color:#504e4e;cursor:pointer;display:flex;font-size:1rem;font-weight:400;padding:8px 24px}.dropdown-button.focus{background-color:#f5f5f5}.dropdown-button-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.disabled{color:#959595;cursor:default;pointer-events:none}"]
172
+ },] }
173
+ ];
174
+ SearchableDropdownComponent.propDecorators = {
175
+ style: [{ type: Input }],
176
+ items: [{ type: Input }],
177
+ buttonText: [{ type: Input }],
178
+ searchText: [{ type: Input }],
179
+ noResultsText: [{ type: Input }],
180
+ disabled: [{ type: Input }],
181
+ width: [{ type: Input }],
182
+ itemSelected: [{ type: Output }],
183
+ buttons: [{ type: ViewChildren, args: ['button',] }],
184
+ clickInside: [{ type: HostListener, args: ['click',] }],
185
+ clickout: [{ type: HostListener, args: ['document:click',] }]
186
+ };
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL3RtcC9qZW5raW5zLTNmZjNhMTlhL3dvcmtzcGFjZS9yb250ZW5kX2xpYnJhcmllc18tX3JlbGVhc2VfbWFpbi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc2VhcmNoYWJsZS1kcm9wZG93bi9zZWFyY2hhYmxlLWRyb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUNOLFNBQVMsRUFFVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBZSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUMsWUFBWSxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBT2xELE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFZVyxVQUFLLEdBQUcsR0FBRyxDQUFDO1FBRVgsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSTNCLGFBQVEsR0FBRyxRQUFRLENBQUM7UUFFNUIsZUFBVSxHQUFHLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWpDLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQVMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTVELFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUU1QyxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFzQixTQUFTLENBQUMsQ0FBQztRQUV0RSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBTVQsaUJB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QUFLO3lCQUNMLEtBQUs7eUJBQ0wsS0FBSzs0QkFDTCxLQUFLO3VCQUNMLEtBQUs7b0JBQ0wsS0FBSzsyQkFFTCxNQUFNO3NCQUVOLFlBQVksU0FBQyxRQUFROzBCQW9CckIsWUFBWSxTQUFDLE9BQU87dUJBS3BCLFlBQVksU0FBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Ryb3Bkb3duQnV0dG9uU3R5bGUsIERyb3Bkb3duSXRlbX0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmcm9tRXZlbnQsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlYm91bmNlVGltZSwgdGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLXNlYXJjaGFibGUtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoYWJsZS1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaGFibGUtZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoYWJsZURyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHN0eWxlOiBEcm9wZG93bkJ1dHRvblN0eWxlO1xuICBASW5wdXQoKSBpdGVtczogQXJyYXk8RHJvcGRvd25JdGVtPjtcbiAgQElucHV0KCkgYnV0dG9uVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBzZWFyY2hUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIG5vUmVzdWx0c1RleHQ6IHN0cmluZztcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHdpZHRoID0gMjUwO1xuXG4gIEBPdXRwdXQoKSBpdGVtU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZHJlbignYnV0dG9uJykgYnV0dG9uczogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgc2VhcmNoSWQgPSAnc2VhcmNoJztcblxuICByZWFkb25seSBzZWFyY2hUZXJtID0gbmV3IEZvcm1Db250cm9sKCcnKTtcblxuICByZWFkb25seSBmb2N1c2VkSXRlbUlkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih0aGlzLnNlYXJjaElkKTtcblxuICByZWFkb25seSBvcGVuJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGZpbHRlcmVkSXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxEcm9wZG93bkl0ZW0+Pih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgd2FzSW5zaWRlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBrZXlTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIHNlYXJjaFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbW91c2VPbkxpc3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBjbGlja0luc2lkZSgpIHtcbiAgICB0aGlzLndhc0luc2lkZSA9IHRydWU7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycpXG4gIGNsaWNrb3V0KCkge1xuICAgIGlmICghdGhpcy53YXNJbnNpZGUpIHtcbiAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgIH1cbiAgICB0aGlzLndhc0luc2lkZSA9IGZhbHNlO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuS2V5c1N1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMub3BlblNlYXJjaFN1YnNjcmlwdGlvbigpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW1DaGFuZ2VzID0gY2hhbmdlcy5pdGVtcztcbiAgICBjb25zdCBjdXJyZW5JdGVtcyA9IGl0ZW1DaGFuZ2VzLmN1cnJlbnRWYWx1ZTtcbiAgICBpZiAoaXRlbUNoYW5nZXMgJiYgIWl0ZW1DaGFuZ2VzLnByZXZpb3VzVmFsdWUgJiYgY3VycmVuSXRlbXMpIHtcbiAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQubmV4dChjdXJyZW5JdGVtcyk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5rZXlTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnNlYXJjaFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgb3BlbkRyb3Bkb3duKCk6IHZvaWQge1xuICAgIHRoaXMub3BlbiQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIGhvdmVyT3ZlckJ1dHRvbihpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c2VkSXRlbUlkJC5uZXh0KGlkKTtcbiAgfVxuXG4gIG1vdXNlRW50ZXJMaXN0KCk6IHZvaWQge1xuICAgIHRoaXMubW91c2VPbkxpc3QkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBtb3VzZUxlYXZlTGlzdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vdXNlT25MaXN0JC5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIHJlc2V0Rm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c2VkSXRlbUlkJC5uZXh0KHRoaXMuc2VhcmNoSWQpO1xuICB9XG5cbiAgc3VibWl0KGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1TZWxlY3RlZC5lbWl0KGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VEcm9wZG93bigpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaFRlcm0uc2V0VmFsdWUoJycpO1xuICAgIHRoaXMucmVzZXRGb2N1cygpO1xuICAgIHRoaXMub3BlbiQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5LZXlzU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMua2V5U3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMubW91c2VPbkxpc3QkLCB0aGlzLmZpbHRlcmVkSXRlbXMkLCB0aGlzLmZvY3VzZWRJdGVtSWQkXSlcbiAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKFttb3VzZU9uTGlzdCwgaXRlbXMsIGZvY3VzZWRJZF0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IGl0ZW1zLmxlbmd0aDtcbiAgICAgICAgICAgIGNvbnN0IGZvY3VzZWRJbmRleCA9IGl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IGZvY3VzZWRJZCk7XG4gICAgICAgICAgICBjb25zdCBjb2RlID0gZXZlbnQuY29kZTtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0S2V5ID0gZXZlbnQuc2hpZnRLZXk7XG4gICAgICAgICAgICBjb25zdCBkb3duID0gJ0Fycm93RG93bic7XG4gICAgICAgICAgICBjb25zdCB0YWIgPSAnVGFiJztcbiAgICAgICAgICAgIGNvbnN0IHVwID0gJ0Fycm93VXAnO1xuICAgICAgICAgICAgY29uc3QgZW50ZXIgPSAnRW50ZXInO1xuICAgICAgICAgICAgY29uc3QgZXNjYXBlID0gJ0VzY2FwZSc7XG5cbiAgICAgICAgICAgIC8vIGNsb3NlIGRyb3Bkb3duIG9uIHByZXNzaW5nIGVzY2FwZVxuICAgICAgICAgICAgaWYgKGNvZGUgPT09IGVzY2FwZSkge1xuICAgICAgICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gc3VibWl0IGl0ZW0gd2hlbiBmb2N1cyBpcyBvbiBhbiBpdGVtIGluIHRoZSBsaXN0IGFuZCBlbnRlciBpcyBwcmVzc2VkXG4gICAgICAgICAgICBpZiAoY29kZSA9PT0gZW50ZXIgJiYgZm9jdXNlZElkICE9PSB0aGlzLnNlYXJjaElkKSB7XG4gICAgICAgICAgICAgIHRoaXMuc3VibWl0KGZvY3VzZWRJZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIG9ubHkgaGFuZGxlIHRhYiBvciBhcnJvdyBrZXlwcmVzc2VzIHdoZW4gaXRlbXMgYXJlIHNob3duIGFuZCB0aGUgbW91c2UgaXMgbm90IG9uIHRoZSBsaXN0XG4gICAgICAgICAgICBpZiAobGVuZ3RoID4gMCAmJiAhbW91c2VPbkxpc3QpIHtcbiAgICAgICAgICAgICAgLy8gaGFuZGxlIG1vdmluZyBkb3duIGluIHRoZSBsaXN0IHdpdGggYXJyb3cgZG93biBvciB0YWJcbiAgICAgICAgICAgICAgaWYgKGNvZGUgPT09IGRvd24gfHwgKGNvZGUgPT09IHRhYiAmJiAhc2hpZnRLZXkpKSB7XG4gICAgICAgICAgICAgICAgLy8gbW92ZSBmb2N1cyB0byBmaXJzdCBpdGVtIGluIHRoZSBsaXN0IHdoZW4gZm9jdXMgaXMgb24gc2VhcmNoIGJveFxuICAgICAgICAgICAgICAgIGlmIChmb2N1c2VkSWQgPT09IHRoaXMuc2VhcmNoSWQpIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNlZEl0ZW1JZCQubmV4dChpdGVtc1swXS5pZCk7XG4gICAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbEJ1dHRvbkludG9WaWV3KGZvY3VzZWRJZCk7XG4gICAgICAgICAgICAgICAgICAvLyBtb3ZlIGZvY3VzIHRvIG5leHQgaXRlbSBpbiB0aGUgbGlzdCBpZiBmb2N1cyBpcyBub3Qgb24gbGFzdCBpdGVtXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmb2N1c2VkSW5kZXggKyAxIDwgbGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWRJdGVtSWQkLm5leHQoaXRlbXNbZm9jdXNlZEluZGV4ICsgMV0uaWQpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxCdXR0b25JbnRvVmlldyhmb2N1c2VkSWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBoYW5kbGUgbW92aW5nIHVwIGluIHRoZSBsaXN0IHdpdGggdXAgYXJyb3cgdXAgb3Igc2hpZnQrdGFiXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgKGNvZGUgPT09IHVwIHx8IChjb2RlID09PSB0YWIgJiYgc2hpZnRLZXkpKSAmJlxuICAgICAgICAgICAgICAgIGZvY3VzZWRJZCAhPT0gdGhpcy5zZWFyY2hJZFxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAvLyBtb3ZlIHRvIHByZXZpb3VzIGl0ZW0gaWYgZm9jdXMgaXMgbm90IG9uIHRoZSBmaXJzdCBpdGVtIGluIHRoZSBsaXN0XG4gICAgICAgICAgICAgICAgaWYgKGZvY3VzZWRJbmRleCA+IDApIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNlZEl0ZW1JZCQubmV4dChpdGVtc1tmb2N1c2VkSW5kZXggLSAxXS5pZCk7XG4gICAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbEJ1dHRvbkludG9WaWV3KGZvY3VzZWRJZCk7XG4gICAgICAgICAgICAgICAgICAvLyBtb3ZlIGZvY3VzIHRvIHNlYXJjaCBib3ggaWYgZm9jdXMgaXMgb24gZmlyc3QgaXRlbSBpbiB0aGUgbGlzdFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnJlc2V0Rm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuU2VhcmNoU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoU3Vic2NyaXB0aW9uID0gdGhpcy5zZWFyY2hUZXJtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoc2VhcmNoVGVybSA9PiB7XG4gICAgICB0aGlzLmZvY3VzZWRJdGVtSWQkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGZvY3VzZWRJdGVtSWQgPT4ge1xuICAgICAgICBpZiAoIXNlYXJjaFRlcm0pIHtcbiAgICAgICAgICB0aGlzLmZpbHRlcmVkSXRlbXMkLm5leHQodGhpcy5pdGVtcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgZmlsdGVyZWRJdGVtcyA9IHRoaXMuaXRlbXMuZmlsdGVyKGl0ZW0gPT5cbiAgICAgICAgICAgIGl0ZW0udGV4dC50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0udG9VcHBlckNhc2UoKSlcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgdGhpcy5maWx0ZXJlZEl0ZW1zJC5uZXh0KGZpbHRlcmVkSXRlbXMpO1xuXG4gICAgICAgICAgLy8gbW92ZSBmb2N1cyB0byBzZWFyY2ggYm94IGlmIGZpbHRlcmVkIGxpc3QgbGVuZ3RoIGlzIDAgb3IgcHJldmlvdXNseSBmb2N1c2VkIGl0ZW0gaXMgbm90IGluIGZpbHRlcmVkIGxpc3QgYW55bW9yZVxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGZpbHRlcmVkSXRlbXMubGVuZ3RoID09PSAwIHx8XG4gICAgICAgICAgICAhZmlsdGVyZWRJdGVtcy5zb21lKGl0ZW0gPT4gaXRlbS5pZCA9PT0gZm9jdXNlZEl0ZW1JZClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXRGb2N1cygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIG1vdmUgc2Nyb2xsaW5nIGJ1dHRvbiBpbnRvIHZpZXcgdG8gZW5kIG9mIHF1ZXVlLCBzbyB0aGF0IERPTSBjYW4gYmUgdXBkYXRlZCBmaXJzdFxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNjcm9sbEJ1dHRvbkludG9WaWV3KGZvY3VzZWRJdGVtSWQpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzY3JvbGxCdXR0b25JbnRvVmlldyhpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5maWx0ZXJlZEl0ZW1zJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShpdGVtcyA9PiB7XG4gICAgICBjb25zdCBmb2N1c0l0ZW1JbmRleCA9IGl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IGlkKTtcbiAgICAgIGNvbnN0IGZvY3VzZWRCdXR0b24gPSB0aGlzLmJ1dHRvbnMudG9BcnJheSgpW2ZvY3VzSXRlbUluZGV4XTtcblxuICAgICAgaWYgKGZvY3VzZWRCdXR0b24pIHtcbiAgICAgICAgZm9jdXNlZEJ1dHRvbi5uYXRpdmVFbGVtZW50LnNjcm9sbEludG9WaWV3KHtiZWhhdmlvcjogJ3Ntb290aCcsIGJsb2NrOiAnY2VudGVyJ30pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,29 @@
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { CommonModule } from '@angular/common';
17
+ import { NgModule } from '@angular/core';
18
+ import { ReactiveFormsModule } from '@angular/forms';
19
+ import { SearchableDropdownComponent } from './searchable-dropdown.component';
20
+ export class SearchableDropdownModule {
21
+ }
22
+ SearchableDropdownModule.decorators = [
23
+ { type: NgModule, args: [{
24
+ declarations: [SearchableDropdownComponent],
25
+ imports: [CommonModule, ReactiveFormsModule],
26
+ exports: [SearchableDropdownComponent],
27
+ },] }
28
+ ];
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS1kcm9wZG93bi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiL3RtcC9qZW5raW5zLTNmZjNhMTlhL3dvcmtzcGFjZS9yb250ZW5kX2xpYnJhcmllc18tX3JlbGVhc2VfbWFpbi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc2VhcmNoYWJsZS1kcm9wZG93bi9zZWFyY2hhYmxlLWRyb3Bkb3duLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBTzVFLE1BQU0sT0FBTyx3QkFBd0I7OztZQUxwQyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsMkJBQTJCLENBQUM7Z0JBQzNDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQztnQkFDNUMsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7YUFDdkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1NlYXJjaGFibGVEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi9zZWFyY2hhYmxlLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NlYXJjaGFibGVEcm9wZG93bkNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICBleHBvcnRzOiBbU2VhcmNoYWJsZURyb3Bkb3duQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoYWJsZURyb3Bkb3duTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
17
+ export class SearchableDropdownSelectComponent {
18
+ constructor() {
19
+ this.width = 250;
20
+ this.itemSelected = new EventEmitter();
21
+ this.clearSelection = new EventEmitter();
22
+ }
23
+ onSelect(id) {
24
+ this.itemSelected.emit(id);
25
+ }
26
+ onClearSelection() {
27
+ this.clearSelection.emit();
28
+ }
29
+ }
30
+ SearchableDropdownSelectComponent.decorators = [
31
+ { type: Component, args: [{
32
+ selector: 'valtimo-searchable-dropdown-select',
33
+ template: "<valtimo-searchable-dropdown\n *ngIf=\"!hasSelection; else selection\"\n [style]=\"style\"\n [items]=\"items\"\n [buttonText]=\"buttonText\"\n [searchText]=\"searchText\"\n [noResultsText]=\"noResultsText\"\n [disabled]=\"disabled\"\n [width]=\"width\"\n (itemSelected)=\"onSelect($event)\"\n>\n</valtimo-searchable-dropdown>\n\n<ng-template #selection>\n <div\n class=\"d-flex flex-row align-items-center\"\n [style.height.px]=\"style === 'button' ? 34 : null\"\n >\n <h5 class=\"selected-text\">\n {{ selectedText }} <b>{{ selectedTextValue }}</b>\n </h5>\n <button\n type=\"button\"\n class=\"close p-0 m-0 ml-2 d-flex text-danger\"\n aria-label=\"Close\"\n (click)=\"onClearSelection()\"\n [title]=\"clearSelectionButtonTitle\"\n >\n <i class=\"clear-icon fa fa-times text-danger\"></i>\n </button>\n </div>\n</ng-template>\n",
34
+ styles: [".selected-text{margin:0}.clear-icon{font-size:13px}"]
35
+ },] }
36
+ ];
37
+ SearchableDropdownSelectComponent.propDecorators = {
38
+ style: [{ type: Input }],
39
+ items: [{ type: Input }],
40
+ buttonText: [{ type: Input }],
41
+ searchText: [{ type: Input }],
42
+ noResultsText: [{ type: Input }],
43
+ disabled: [{ type: Input }],
44
+ selectedText: [{ type: Input }],
45
+ selectedTextValue: [{ type: Input }],
46
+ clearSelectionButtonTitle: [{ type: Input }],
47
+ hasSelection: [{ type: Input }],
48
+ width: [{ type: Input }],
49
+ itemSelected: [{ type: Output }],
50
+ clearSelection: [{ type: Output }]
51
+ };
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS1kcm9wZG93bi1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii90bXAvamVua2lucy0zZmYzYTE5YS93b3Jrc3BhY2Uvcm9udGVuZF9saWJyYXJpZXNfLV9yZWxlYXNlX21haW4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3NlYXJjaGFibGUtZHJvcGRvd24tc2VsZWN0L3NlYXJjaGFibGUtZHJvcGRvd24tc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFRckUsTUFBTSxPQUFPLGlDQUFpQztJQUw5QztRQWdCVyxVQUFLLEdBQUcsR0FBRyxDQUFDO1FBRVgsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQVNoRCxDQUFDO0lBUEMsUUFBUSxDQUFDLEVBQVU7UUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQzs7O1lBM0JGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsb0NBQW9DO2dCQUM5Qyw2NEJBQTBEOzthQUUzRDs7O29CQUVFLEtBQUs7b0JBQ0wsS0FBSzt5QkFDTCxLQUFLO3lCQUNMLEtBQUs7NEJBQ0wsS0FBSzt1QkFDTCxLQUFLOzJCQUNMLEtBQUs7Z0NBQ0wsS0FBSzt3Q0FDTCxLQUFLOzJCQUNMLEtBQUs7b0JBQ0wsS0FBSzsyQkFFTCxNQUFNOzZCQUNOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RHJvcGRvd25CdXR0b25TdHlsZSwgRHJvcGRvd25JdGVtfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLXNlYXJjaGFibGUtZHJvcGRvd24tc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaGFibGUtZHJvcGRvd24tc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoYWJsZS1kcm9wZG93bi1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoYWJsZURyb3Bkb3duU2VsZWN0Q29tcG9uZW50IHtcbiAgQElucHV0KCkgc3R5bGU6IERyb3Bkb3duQnV0dG9uU3R5bGU7XG4gIEBJbnB1dCgpIGl0ZW1zOiBBcnJheTxEcm9wZG93bkl0ZW0+O1xuICBASW5wdXQoKSBidXR0b25UZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNlYXJjaFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgbm9SZXN1bHRzVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgc2VsZWN0ZWRUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNlbGVjdGVkVGV4dFZhbHVlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsZWFyU2VsZWN0aW9uQnV0dG9uVGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgaGFzU2VsZWN0aW9uOiBib29sZWFuO1xuICBASW5wdXQoKSB3aWR0aCA9IDI1MDtcblxuICBAT3V0cHV0KCkgaXRlbVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2xlYXJTZWxlY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgb25TZWxlY3QoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuaXRlbVNlbGVjdGVkLmVtaXQoaWQpO1xuICB9XG5cbiAgb25DbGVhclNlbGVjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyU2VsZWN0aW9uLmVtaXQoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,30 @@
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { CommonModule } from '@angular/common';
17
+ import { NgModule } from '@angular/core';
18
+ import { ReactiveFormsModule } from '@angular/forms';
19
+ import { SearchableDropdownSelectComponent } from './searchable-dropdown-select.component';
20
+ import { SearchableDropdownModule } from '../searchable-dropdown/searchable-dropdown.module';
21
+ export class SearchableDropdownSelectModule {
22
+ }
23
+ SearchableDropdownSelectModule.decorators = [
24
+ { type: NgModule, args: [{
25
+ declarations: [SearchableDropdownSelectComponent],
26
+ imports: [CommonModule, ReactiveFormsModule, SearchableDropdownModule],
27
+ exports: [SearchableDropdownSelectComponent],
28
+ },] }
29
+ ];
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS1kcm9wZG93bi1zZWxlY3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Ii90bXAvamVua2lucy0zZmYzYTE5YS93b3Jrc3BhY2Uvcm9udGVuZF9saWJyYXJpZXNfLV9yZWxlYXNlX21haW4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3NlYXJjaGFibGUtZHJvcGRvd24tc2VsZWN0L3NlYXJjaGFibGUtZHJvcGRvd24tc2VsZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBTzNGLE1BQU0sT0FBTyw4QkFBOEI7OztZQUwxQyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsaUNBQWlDLENBQUM7Z0JBQ2pELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSx3QkFBd0IsQ0FBQztnQkFDdEUsT0FBTyxFQUFFLENBQUMsaUNBQWlDLENBQUM7YUFDN0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1NlYXJjaGFibGVEcm9wZG93blNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi9zZWFyY2hhYmxlLWRyb3Bkb3duLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtTZWFyY2hhYmxlRHJvcGRvd25Nb2R1bGV9IGZyb20gJy4uL3NlYXJjaGFibGUtZHJvcGRvd24vc2VhcmNoYWJsZS1kcm9wZG93bi5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTZWFyY2hhYmxlRHJvcGRvd25TZWxlY3RDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBTZWFyY2hhYmxlRHJvcGRvd25Nb2R1bGVdLFxuICBleHBvcnRzOiBbU2VhcmNoYWJsZURyb3Bkb3duU2VsZWN0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoYWJsZURyb3Bkb3duU2VsZWN0TW9kdWxlIHt9XG4iXX0=
@@ -1,45 +1,45 @@
1
- /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, Input } from '@angular/core';
17
- export class SpinnerComponent {
18
- constructor() {
19
- this.useBootstrapSpinner = true;
20
- this.type = 'ball-clip-rotate';
21
- this.size = 'medium';
22
- this.color = 'currentColor';
23
- this.bdColor = 'rgba(0,0,0,0)';
24
- this.fullScreen = false;
25
- this.noMarginTop = false;
26
- }
27
- }
28
- SpinnerComponent.decorators = [
29
- { type: Component, args: [{
30
- selector: 'valtimo-spinner',
31
- template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"useBootstrapSpinner; else ngxSpinner\">\n <div class=\"spinner-container\" [ngClass]=\"{'no-margin-top': noMarginTop}\">\n <div class=\"spinner-border text-primary\" role=\"status\">\n <span class=\"sr-only\">{{ 'interface.loading' | translate }}</span>\n </div>\n </div>\n</ng-container>\n\n<ng-template #ngxSpinner>\n <ngx-spinner\n [bdColor]=\"bdColor\"\n [fullScreen]=\"fullScreen\"\n [name]=\"name\"\n [color]=\"color\"\n [size]=\"size\"\n [type]=\"type\"\n >\n </ngx-spinner>\n</ng-template>\n",
32
- styles: ["/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.spinner-container{display:flex;justify-content:center;margin-top:30px;width:100%}.spinner-container.no-margin-top{margin-top:0}"]
33
- },] }
34
- ];
35
- SpinnerComponent.propDecorators = {
36
- useBootstrapSpinner: [{ type: Input }],
37
- name: [{ type: Input }],
38
- type: [{ type: Input }],
39
- size: [{ type: Input }],
40
- color: [{ type: Input }],
41
- bdColor: [{ type: Input }],
42
- fullScreen: [{ type: Input }],
43
- noMarginTop: [{ type: Input }]
44
- };
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovV29ya3NwYWNlL3ZhbHRpbW8vdmFsdGltby1mcm9udGVuZC1saWJyYXJpZXMvcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zcGlubmVyL3NwaW5uZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFPL0MsTUFBTSxPQUFPLGdCQUFnQjtJQUw3QjtRQU1XLHdCQUFtQixHQUFHLElBQUksQ0FBQztRQUUzQixTQUFJLEdBQUcsa0JBQWtCLENBQUM7UUFDMUIsU0FBSSxHQUFHLFFBQVEsQ0FBQztRQUNoQixVQUFLLEdBQUcsY0FBYyxDQUFDO1FBQ3ZCLFlBQU8sR0FBRyxlQUFlLENBQUM7UUFDMUIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixnQkFBVyxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDOzs7WUFkQSxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsdXNDQUF1Qzs7YUFFeEM7OztrQ0FFRSxLQUFLO21CQUNMLEtBQUs7bUJBQ0wsS0FBSzttQkFDTCxLQUFLO29CQUNMLEtBQUs7c0JBQ0wsS0FBSzt5QkFDTCxLQUFLOzBCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLXNwaW5uZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc3Bpbm5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NwaW5uZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU3Bpbm5lckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHVzZUJvb3RzdHJhcFNwaW5uZXIgPSB0cnVlO1xuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHR5cGUgPSAnYmFsbC1jbGlwLXJvdGF0ZSc7XG4gIEBJbnB1dCgpIHNpemUgPSAnbWVkaXVtJztcbiAgQElucHV0KCkgY29sb3IgPSAnY3VycmVudENvbG9yJztcbiAgQElucHV0KCkgYmRDb2xvciA9ICdyZ2JhKDAsMCwwLDApJztcbiAgQElucHV0KCkgZnVsbFNjcmVlbiA9IGZhbHNlO1xuICBASW5wdXQoKSBub01hcmdpblRvcCA9IGZhbHNlO1xufVxuIl19
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Component, Input } from '@angular/core';
17
+ export class SpinnerComponent {
18
+ constructor() {
19
+ this.useBootstrapSpinner = true;
20
+ this.type = 'ball-clip-rotate';
21
+ this.size = 'medium';
22
+ this.color = 'currentColor';
23
+ this.bdColor = 'rgba(0,0,0,0)';
24
+ this.fullScreen = false;
25
+ this.noMarginTop = false;
26
+ }
27
+ }
28
+ SpinnerComponent.decorators = [
29
+ { type: Component, args: [{
30
+ selector: 'valtimo-spinner',
31
+ template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"useBootstrapSpinner; else ngxSpinner\">\n <div class=\"spinner-container\" [ngClass]=\"{'no-margin-top': noMarginTop}\">\n <div class=\"spinner-border text-primary\" role=\"status\">\n <span class=\"sr-only\">{{ 'interface.loading' | translate }}</span>\n </div>\n </div>\n</ng-container>\n\n<ng-template #ngxSpinner>\n <ngx-spinner\n [bdColor]=\"bdColor\"\n [fullScreen]=\"fullScreen\"\n [name]=\"name\"\n [color]=\"color\"\n [size]=\"size\"\n [type]=\"type\"\n >\n </ngx-spinner>\n</ng-template>\n",
32
+ styles: ["/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.spinner-container{display:flex;justify-content:center;margin-top:30px;width:100%}.spinner-container.no-margin-top{margin-top:0}"]
33
+ },] }
34
+ ];
35
+ SpinnerComponent.propDecorators = {
36
+ useBootstrapSpinner: [{ type: Input }],
37
+ name: [{ type: Input }],
38
+ type: [{ type: Input }],
39
+ size: [{ type: Input }],
40
+ color: [{ type: Input }],
41
+ bdColor: [{ type: Input }],
42
+ fullScreen: [{ type: Input }],
43
+ noMarginTop: [{ type: Input }]
44
+ };
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL3RtcC9qZW5raW5zLTNmZjNhMTlhL3dvcmtzcGFjZS9yb250ZW5kX2xpYnJhcmllc18tX3JlbGVhc2VfbWFpbi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc3Bpbm5lci9zcGlubmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBTy9DLE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFNVyx3QkFBbUIsR0FBRyxJQUFJLENBQUM7UUFFM0IsU0FBSSxHQUFHLGtCQUFrQixDQUFDO1FBQzFCLFNBQUksR0FBRyxRQUFRLENBQUM7UUFDaEIsVUFBSyxHQUFHLGNBQWMsQ0FBQztRQUN2QixZQUFPLEdBQUcsZUFBZSxDQUFDO1FBQzFCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQzs7O1lBZEEsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLHVzQ0FBdUM7O2FBRXhDOzs7a0NBRUUsS0FBSzttQkFDTCxLQUFLO21CQUNMLEtBQUs7bUJBQ0wsS0FBSztvQkFDTCxLQUFLO3NCQUNMLEtBQUs7eUJBQ0wsS0FBSzswQkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1zcGlubmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NwaW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zcGlubmVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNwaW5uZXJDb21wb25lbnQge1xuICBASW5wdXQoKSB1c2VCb290c3RyYXBTcGlubmVyID0gdHJ1ZTtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSB0eXBlID0gJ2JhbGwtY2xpcC1yb3RhdGUnO1xuICBASW5wdXQoKSBzaXplID0gJ21lZGl1bSc7XG4gIEBJbnB1dCgpIGNvbG9yID0gJ2N1cnJlbnRDb2xvcic7XG4gIEBJbnB1dCgpIGJkQ29sb3IgPSAncmdiYSgwLDAsMCwwKSc7XG4gIEBJbnB1dCgpIGZ1bGxTY3JlZW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbm9NYXJnaW5Ub3AgPSBmYWxzZTtcbn1cbiJdfQ==
@@ -0,0 +1,30 @@
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { NgModule } from '@angular/core';
17
+ import { CommonModule } from '@angular/common';
18
+ import { SpinnerComponent } from './spinner.component';
19
+ import { NgxSpinnerModule } from 'ngx-spinner';
20
+ import { TranslateModule } from '@ngx-translate/core';
21
+ export class SpinnerModule {
22
+ }
23
+ SpinnerModule.decorators = [
24
+ { type: NgModule, args: [{
25
+ declarations: [SpinnerComponent],
26
+ exports: [SpinnerComponent],
27
+ imports: [CommonModule, NgxSpinnerModule, TranslateModule],
28
+ },] }
29
+ ];
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiL3RtcC9qZW5raW5zLTNmZjNhMTlhL3dvcmtzcGFjZS9yb250ZW5kX2xpYnJhcmllc18tX3JlbGVhc2VfbWFpbi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc3Bpbm5lci9zcGlubmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OztZQUx6QixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQUMzQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDO2FBQzNEIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7U3Bpbm5lckNvbXBvbmVudH0gZnJvbSAnLi9zcGlubmVyLmNvbXBvbmVudCc7XG5pbXBvcnQge05neFNwaW5uZXJNb2R1bGV9IGZyb20gJ25neC1zcGlubmVyJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU3Bpbm5lckNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtTcGlubmVyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTmd4U3Bpbm5lck1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU3Bpbm5lck1vZHVsZSB7fVxuIl19
@@ -1,29 +1,29 @@
1
- /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, Input } from '@angular/core';
17
- export class TimelineComponent {
18
- }
19
- TimelineComponent.decorators = [
20
- { type: Component, args: [{
21
- selector: 'valtimo-timeline',
22
- template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div>\n <div id=\"no-results\" class=\"p-5\" *ngIf=\"items?.length === 0\">No result found</div>\n <div class=\"pb-5\" *ngIf=\"items?.length > 0\">\n <ul class=\"timeline mb-0 py-5\">\n <li class=\"timeline-item status-done\" *ngFor=\"let item of items\">\n <div class=\"timeline-date\">\n <span>{{ item.date }}</span>\n </div>\n <div class=\"timeline-content mt-1\">\n <div class=\"timeline-header p-0\">\n <span class=\"timeline-time\">{{ item.time }}</span>\n <span class=\"timeline-author\">{{ item.user }}</span>\n <br />\n <p class=\"timeline-activity\">{{ item.activity }}</p>\n <div class=\"timeline-summary\">\n <p\n [innerHTML]=\"item.summaryTranslationKey | translate: item.summaryTranslationParams\"\n ></p>\n </div>\n </div>\n </div>\n </li>\n </ul>\n </div>\n</div>\n",
23
- styles: [""]
24
- },] }
25
- ];
26
- TimelineComponent.propDecorators = {
27
- items: [{ type: Input }]
28
- };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1dvcmtzcGFjZS92YWx0aW1vL3ZhbHRpbW8tZnJvbnRlbmQtbGlicmFyaWVzL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvIiwic291cmNlcyI6WyJsaWIvdGltZWxpbmUvdGltZWxpbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFRL0MsTUFBTSxPQUFPLGlCQUFpQjs7O1lBTDdCLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1Qiw4bERBQXdDOzthQUV6Qzs7O29CQUVFLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUaW1lbGluZUl0ZW19IGZyb20gJ0B2YWx0aW1vL2NvbnRyYWN0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby10aW1lbGluZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90aW1lbGluZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RpbWVsaW5lLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGltZWxpbmVDb21wb25lbnQge1xuICBASW5wdXQoKSBpdGVtczogQXJyYXk8VGltZWxpbmVJdGVtPjtcbn1cbiJdfQ==
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Component, Input } from '@angular/core';
17
+ export class TimelineComponent {
18
+ }
19
+ TimelineComponent.decorators = [
20
+ { type: Component, args: [{
21
+ selector: 'valtimo-timeline',
22
+ template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div>\n <div id=\"no-results\" class=\"p-5\" *ngIf=\"items?.length === 0\">No result found</div>\n <div class=\"pb-5\" *ngIf=\"items?.length > 0\">\n <ul class=\"timeline mb-0 py-5\">\n <li class=\"timeline-item status-done\" *ngFor=\"let item of items\">\n <div class=\"timeline-date\">\n <span>{{ item.date }}</span>\n </div>\n <div class=\"timeline-content mt-1\">\n <div class=\"timeline-header p-0\">\n <span class=\"timeline-time\">{{ item.time }}</span>\n <span class=\"timeline-author\">{{ item.user }}</span>\n <br />\n <p class=\"timeline-activity\">{{ item.activity }}</p>\n <div class=\"timeline-summary\">\n <p\n [innerHTML]=\"item.summaryTranslationKey | translate: item.summaryTranslationParams\"\n ></p>\n </div>\n </div>\n </div>\n </li>\n </ul>\n </div>\n</div>\n",
23
+ styles: [""]
24
+ },] }
25
+ ];
26
+ TimelineComponent.propDecorators = {
27
+ items: [{ type: Input }]
28
+ };
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii90bXAvamVua2lucy0zZmYzYTE5YS93b3Jrc3BhY2Uvcm9udGVuZF9saWJyYXJpZXNfLV9yZWxlYXNlX21haW4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBUS9DLE1BQU0sT0FBTyxpQkFBaUI7OztZQUw3QixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsOGxEQUF3Qzs7YUFFekM7OztvQkFFRSxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VGltZWxpbmVJdGVtfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLXRpbWVsaW5lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbWVsaW5lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGltZWxpbmUuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUaW1lbGluZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW1zOiBBcnJheTxUaW1lbGluZUl0ZW0+O1xufVxuIl19