@valtimo/components 4.15.3-next-main.14 → 4.16.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.
- package/bundles/valtimo-components.umd.js +408 -302
- package/bundles/valtimo-components.umd.js.map +1 -1
- package/bundles/valtimo-components.umd.min.js +2 -2
- package/bundles/valtimo-components.umd.min.js.map +1 -1
- package/esm2015/lib/components/alert/alert.component.js +140 -0
- package/esm2015/lib/{topbar/topbar.module.js → components/alert/alert.module.js} +7 -11
- package/esm2015/lib/components/alert/alert.service.js +81 -0
- package/esm2015/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.js +160 -0
- package/esm2015/lib/{alert/alert.module.js → components/bpmn-js-diagram/bpmn-js-diagram.module.js} +6 -6
- package/esm2015/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.js +93 -0
- package/esm2015/lib/components/breadcrumb-navigation/breadcrumb-navigation.module.js +30 -0
- package/esm2015/lib/components/camunda/form/camunda-form.components.js +37 -0
- package/esm2015/lib/components/camunda/form/camunda-form.module.js +30 -0
- package/esm2015/lib/components/camunda/form/custom/camunda-custom-form.component.js +42 -0
- package/esm2015/lib/components/camunda/form/custom/camunda-custom-form.module.js +28 -0
- package/esm2015/lib/components/camunda/form/generated/camunda-generated-form.component.js +69 -0
- package/esm2015/lib/components/camunda/form/generated/camunda-generated-form.module.js +58 -0
- package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/boolean/camunda-boolean-formfield.component.js +3 -4
- package/esm2015/lib/components/camunda/form/generated/formfield/camunda-formfield-generator.directive.js +64 -0
- package/esm2015/lib/components/camunda/form/generated/formfield/camunda-formfield.service.js +66 -0
- package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.js +5 -3
- package/esm2015/lib/components/camunda/form/generated/formfield/date/camunda-date-formfield.component.js +66 -0
- package/esm2015/lib/components/camunda/form/generated/formfield/enum/camunda-enum-formfield.component.js +30 -0
- package/esm2015/lib/{menu/submenu-item-text.component.js → components/camunda/form/generated/formfield/formfield.model.js} +1 -18
- package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/long/camunda-long-formfield.component.js +3 -4
- package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/string/camunda-string-formfield.component.js +3 -4
- package/esm2015/lib/{camunda → components/camunda}/form/generated/formfield/textarea/camunda-textarea-formfield.component.js +3 -4
- package/esm2015/lib/components/camunda/form/generated/formfield/validation/camunda-formfield-validation.component.js +35 -0
- package/esm2015/lib/components/camunda/form/generated/formfield/validation/date.validators.js +60 -0
- package/esm2015/lib/{form-io/form-io-builder.component.js → components/card/card.component.js} +15 -18
- package/esm2015/lib/components/card/card.module.js +28 -0
- package/esm2015/lib/{camunda/form/generated/formfield/formfield.model.js → components/components.module.js} +7 -1
- package/esm2015/lib/{data-list → components/data-list}/data-list.component.js +2 -3
- package/esm2015/lib/components/data-list/data-list.module.js +28 -0
- package/esm2015/lib/components/dropzone/dropzone.component.js +143 -0
- package/esm2015/lib/components/dropzone/dropzone.module.js +32 -0
- package/esm2015/lib/components/field-auto-focus/field-auto-focus.directive.js +35 -0
- package/esm2015/lib/components/field-auto-focus/field-auto-focus.module.js +28 -0
- package/esm2015/lib/{view-content/type-converters/enumTypeConverter.js → components/file-size/file-size.module.js} +12 -8
- package/esm2015/lib/components/file-size/file-size.pipe.js +38 -0
- package/esm2015/lib/components/filter-sidebar/filter-sidebar.component.js +46 -0
- package/esm2015/lib/components/filter-sidebar/filter-sidebar.module.js +28 -0
- package/esm2015/lib/components/form-io/form-io-builder.component.js +38 -0
- package/esm2015/lib/components/form-io/form-io-uploader/form-io-uploader-edit-form.js +90 -0
- package/esm2015/lib/components/form-io/form-io-uploader/form-io-uploader.component.js +74 -0
- package/esm2015/lib/components/form-io/form-io-uploader/form-io-uploader.formio.js +26 -0
- package/esm2015/lib/components/form-io/form-io.component.js +163 -0
- package/esm2015/lib/components/form-io/form-io.module.js +56 -0
- package/esm2015/lib/components/form-io/formio-config.js +22 -0
- package/esm2015/lib/components/form-io/services/form-io-dom.service.js +23 -0
- package/esm2015/lib/components/form-io/services/form-io-state.service.js +24 -0
- package/esm2015/lib/components/left-sidebar/left-sidebar.component.js +114 -0
- package/esm2015/lib/components/left-sidebar/left-sidebar.module.js +30 -0
- package/esm2015/lib/components/list/ListFilterPipe.directive.js +31 -0
- package/esm2015/lib/components/list/list.component.js +179 -0
- package/esm2015/lib/components/list/list.module.js +33 -0
- package/esm2015/lib/components/menu/menu-item-text.component.js +38 -0
- package/esm2015/lib/components/menu/menu-routing.module.js +27 -0
- package/esm2015/lib/components/menu/menu.component.js +65 -0
- package/esm2015/lib/components/menu/menu.init.js +34 -0
- package/esm2015/lib/components/menu/menu.module.js +34 -0
- package/esm2015/lib/components/menu/menu.service.js +126 -0
- package/esm2015/lib/components/menu/submenu-item-text.component.js +33 -0
- package/esm2015/lib/{modal → components/modal}/modal.component.js +1 -1
- package/esm2015/lib/components/modal/modal.module.js +28 -0
- package/esm2015/lib/{page-header → components/page-header}/page-header.component.js +1 -1
- package/esm2015/lib/components/page-header/page-header.module.js +30 -0
- package/esm2015/lib/components/page-title/page-title.component.js +76 -0
- package/esm2015/lib/components/page-title/page-title.module.js +29 -0
- package/esm2015/lib/components/progress-bar/progress-bar.component.js +26 -0
- package/esm2015/lib/{bpmn-js-diagram/bpmn-js-diagram.module.js → components/progress-bar/progress-bar.module.js} +7 -9
- package/esm2015/lib/components/right-sidebar/right-sidebar.component.js +133 -0
- package/esm2015/lib/components/right-sidebar/right-sidebar.module.js +49 -0
- package/esm2015/lib/components/searchable-dropdown/searchable-dropdown.component.js +187 -0
- package/esm2015/lib/components/searchable-dropdown/searchable-dropdown.module.js +29 -0
- package/esm2015/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.js +52 -0
- package/esm2015/lib/components/searchable-dropdown-select/searchable-dropdown-select.module.js +30 -0
- package/esm2015/lib/{spinner → components/spinner}/spinner.component.js +2 -2
- package/esm2015/lib/components/spinner/spinner.module.js +30 -0
- package/esm2015/lib/components/timeline/timeline.component.js +29 -0
- package/esm2015/lib/{progress-bar/progress-bar.module.js → components/timeline/timeline.module.js} +8 -9
- package/esm2015/lib/{topbar → components/topbar}/topbar.component.js +2 -3
- package/esm2015/lib/components/topbar/topbar.module.js +29 -0
- package/esm2015/lib/components/uploader/uploader-drag-drop.directive.js +49 -0
- package/esm2015/lib/components/uploader/uploader.component.js +68 -0
- package/esm2015/lib/components/uploader/uploader.module.js +30 -0
- package/esm2015/lib/components/version/version.service.js +38 -0
- package/esm2015/lib/components/view-content/type-converters/booleanTypeConverter.js +29 -0
- package/esm2015/lib/components/view-content/type-converters/dateTypeConverter.js +30 -0
- package/esm2015/lib/components/view-content/type-converters/enumTypeConverter.js +24 -0
- package/esm2015/lib/components/view-content/type-converters/relatedFilesTypeConverter.js +24 -0
- package/esm2015/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.js +27 -0
- package/esm2015/lib/components/view-content/type-converters/stringTypeConverter.js +24 -0
- package/esm2015/lib/components/view-content/type-converters/type-converters.model.js +37 -0
- package/esm2015/lib/{view-content → components/view-content}/view-content.service.js +3 -3
- package/esm2015/lib/components/webcam/webcam.component.js +102 -0
- package/esm2015/lib/components/webcam/webcam.module.js +29 -0
- package/esm2015/lib/components/widget/widget.component.js +80 -0
- package/esm2015/lib/{file-size/file-size.module.js → components/widget/widget.module.js} +7 -9
- package/esm2015/lib/models/alert.model.js +30 -0
- package/esm2015/lib/models/form-io.model.js +30 -0
- package/esm2015/lib/models/index.js +24 -0
- package/esm2015/lib/models/pagination.model.js +1 -0
- package/esm2015/lib/models/searchable-dropdown.model.js +1 -0
- package/esm2015/lib/models/timeline.model.js +44 -0
- package/esm2015/lib/models/version.model.js +16 -0
- package/esm2015/public_api.js +67 -66
- package/esm2015/valtimo-components.js +23 -23
- package/fesm2015/valtimo-components.js +352 -303
- package/fesm2015/valtimo-components.js.map +1 -1
- package/lib/{alert → components/alert}/alert.component.d.ts +1 -1
- package/lib/{alert → components/alert}/alert.module.d.ts +0 -0
- package/lib/{alert → components/alert}/alert.service.d.ts +1 -1
- package/lib/{bpmn-js-diagram → components/bpmn-js-diagram}/bpmn-js-diagram.component.d.ts +0 -0
- package/lib/{bpmn-js-diagram → components/bpmn-js-diagram}/bpmn-js-diagram.module.d.ts +0 -0
- package/lib/{breadcrumb-navigation → components/breadcrumb-navigation}/breadcrumb-navigation.component.d.ts +0 -0
- package/lib/{breadcrumb-navigation → components/breadcrumb-navigation}/breadcrumb-navigation.module.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/camunda-form.components.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/camunda-form.module.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/custom/camunda-custom-form.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/custom/camunda-custom-form.module.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/camunda-generated-form.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/camunda-generated-form.module.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/boolean/camunda-boolean-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/camunda-formfield-generator.directive.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/camunda-formfield.service.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/date/camunda-date-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/enum/camunda-enum-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/formfield.model.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/long/camunda-long-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/string/camunda-string-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/textarea/camunda-textarea-formfield.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/validation/camunda-formfield-validation.component.d.ts +0 -0
- package/lib/{camunda → components/camunda}/form/generated/formfield/validation/date.validators.d.ts +0 -0
- package/lib/{card → components/card}/card.component.d.ts +0 -0
- package/lib/{card → components/card}/card.module.d.ts +0 -0
- package/lib/{components.module.d.ts → components/components.module.d.ts} +0 -0
- package/lib/{data-list → components/data-list}/data-list.component.d.ts +0 -0
- package/lib/{data-list → components/data-list}/data-list.module.d.ts +0 -0
- package/lib/{dropzone → components/dropzone}/dropzone.component.d.ts +0 -0
- package/lib/{dropzone → components/dropzone}/dropzone.module.d.ts +0 -0
- package/lib/{field-auto-focus → components/field-auto-focus}/field-auto-focus.directive.d.ts +0 -0
- package/lib/{field-auto-focus → components/field-auto-focus}/field-auto-focus.module.d.ts +0 -0
- package/lib/{file-size → components/file-size}/file-size.module.d.ts +0 -0
- package/lib/{file-size → components/file-size}/file-size.pipe.d.ts +0 -0
- package/lib/{filter-sidebar → components/filter-sidebar}/filter-sidebar.component.d.ts +0 -0
- package/lib/{filter-sidebar → components/filter-sidebar}/filter-sidebar.module.d.ts +0 -0
- package/lib/{form-io → components/form-io}/form-io-builder.component.d.ts +0 -0
- package/lib/{form-io → components/form-io}/form-io-uploader/form-io-uploader-edit-form.d.ts +0 -0
- package/lib/{form-io → components/form-io}/form-io-uploader/form-io-uploader.component.d.ts +1 -1
- package/lib/{form-io → components/form-io}/form-io-uploader/form-io-uploader.formio.d.ts +0 -0
- package/lib/{form-io → components/form-io}/form-io.component.d.ts +8 -5
- package/lib/{form-io → components/form-io}/form-io.module.d.ts +0 -0
- package/lib/{form-io → components/form-io}/formio-config.d.ts +0 -0
- package/lib/{form-io → components/form-io}/services/form-io-dom.service.d.ts +0 -0
- package/lib/{form-io → components/form-io}/services/form-io-state.service.d.ts +0 -0
- package/lib/{left-sidebar → components/left-sidebar}/left-sidebar.component.d.ts +0 -0
- package/lib/{left-sidebar → components/left-sidebar}/left-sidebar.module.d.ts +0 -0
- package/lib/{list → components/list}/ListFilterPipe.directive.d.ts +0 -0
- package/lib/{list → components/list}/list.component.d.ts +1 -1
- package/lib/{list → components/list}/list.module.d.ts +0 -0
- package/lib/{menu → components/menu}/menu-item-text.component.d.ts +1 -1
- package/lib/{menu → components/menu}/menu-routing.module.d.ts +0 -0
- package/lib/{menu → components/menu}/menu.component.d.ts +1 -1
- package/lib/{menu → components/menu}/menu.init.d.ts +0 -0
- package/lib/{menu → components/menu}/menu.module.d.ts +0 -0
- package/lib/{menu → components/menu}/menu.service.d.ts +1 -1
- package/lib/{menu → components/menu}/submenu-item-text.component.d.ts +1 -1
- package/lib/{modal → components/modal}/modal.component.d.ts +0 -0
- package/lib/{modal → components/modal}/modal.module.d.ts +0 -0
- package/lib/{page-header → components/page-header}/page-header.component.d.ts +0 -0
- package/lib/{page-header → components/page-header}/page-header.module.d.ts +0 -0
- package/lib/{page-title → components/page-title}/page-title.component.d.ts +0 -0
- package/lib/{page-title → components/page-title}/page-title.module.d.ts +0 -0
- package/lib/{progress-bar → components/progress-bar}/progress-bar.component.d.ts +0 -0
- package/lib/{progress-bar → components/progress-bar}/progress-bar.module.d.ts +0 -0
- package/lib/{right-sidebar → components/right-sidebar}/right-sidebar.component.d.ts +2 -1
- package/lib/{right-sidebar → components/right-sidebar}/right-sidebar.module.d.ts +0 -0
- package/lib/{searchable-dropdown → components/searchable-dropdown}/searchable-dropdown.component.d.ts +1 -1
- package/lib/{searchable-dropdown → components/searchable-dropdown}/searchable-dropdown.module.d.ts +0 -0
- package/lib/{searchable-dropdown-select → components/searchable-dropdown-select}/searchable-dropdown-select.component.d.ts +1 -1
- package/lib/{searchable-dropdown-select → components/searchable-dropdown-select}/searchable-dropdown-select.module.d.ts +0 -0
- package/lib/{spinner → components/spinner}/spinner.component.d.ts +0 -0
- package/lib/{spinner → components/spinner}/spinner.module.d.ts +0 -0
- package/lib/{timeline → components/timeline}/timeline.component.d.ts +1 -1
- package/lib/{timeline → components/timeline}/timeline.module.d.ts +0 -0
- package/lib/{topbar → components/topbar}/topbar.component.d.ts +0 -0
- package/lib/{topbar → components/topbar}/topbar.module.d.ts +0 -0
- package/lib/{uploader → components/uploader}/uploader-drag-drop.directive.d.ts +0 -0
- package/lib/{uploader → components/uploader}/uploader.component.d.ts +1 -2
- package/lib/{uploader → components/uploader}/uploader.module.d.ts +0 -0
- package/lib/{version → components/version}/version.service.d.ts +1 -1
- package/lib/{view-content → components/view-content}/type-converters/booleanTypeConverter.d.ts +0 -0
- package/lib/{view-content → components/view-content}/type-converters/dateTypeConverter.d.ts +0 -0
- package/lib/{view-content → components/view-content}/type-converters/enumTypeConverter.d.ts +0 -0
- package/lib/{view-content → components/view-content}/type-converters/relatedFilesTypeConverter.d.ts +0 -0
- package/lib/{view-content → components/view-content}/type-converters/stringReplaceUnderscoreTypeConverter.d.ts +0 -0
- package/lib/{view-content → components/view-content}/type-converters/stringTypeConverter.d.ts +0 -0
- package/lib/{view-content → components/view-content}/type-converters/type-converters.model.d.ts +0 -0
- package/lib/{view-content → components/view-content}/view-content.service.d.ts +0 -0
- package/lib/{webcam → components/webcam}/webcam.component.d.ts +0 -0
- package/lib/{webcam → components/webcam}/webcam.module.d.ts +0 -0
- package/lib/{widget → components/widget}/widget.component.d.ts +0 -0
- package/lib/{widget → components/widget}/widget.module.d.ts +0 -0
- package/lib/models/alert.model.d.ts +21 -0
- package/lib/models/form-io.model.d.ts +27 -0
- package/lib/models/index.d.ts +6 -0
- package/lib/models/pagination.model.d.ts +7 -0
- package/lib/models/searchable-dropdown.model.d.ts +5 -0
- package/lib/models/timeline.model.d.ts +23 -0
- package/lib/models/version.model.d.ts +4 -0
- package/package.json +1 -1
- package/public_api.d.ts +66 -65
- package/valtimo-components.d.ts +22 -22
- package/valtimo-components.metadata.json +1 -1
- package/esm2015/lib/alert/alert.component.js +0 -142
- package/esm2015/lib/alert/alert.service.js +0 -81
- package/esm2015/lib/bpmn-js-diagram/bpmn-js-diagram.component.js +0 -160
- package/esm2015/lib/breadcrumb-navigation/breadcrumb-navigation.component.js +0 -93
- package/esm2015/lib/breadcrumb-navigation/breadcrumb-navigation.module.js +0 -34
- package/esm2015/lib/camunda/form/camunda-form.components.js +0 -37
- package/esm2015/lib/camunda/form/camunda-form.module.js +0 -38
- package/esm2015/lib/camunda/form/custom/camunda-custom-form.component.js +0 -42
- package/esm2015/lib/camunda/form/custom/camunda-custom-form.module.js +0 -34
- package/esm2015/lib/camunda/form/generated/camunda-generated-form.component.js +0 -69
- package/esm2015/lib/camunda/form/generated/camunda-generated-form.module.js +0 -63
- package/esm2015/lib/camunda/form/generated/formfield/camunda-formfield-generator.directive.js +0 -64
- package/esm2015/lib/camunda/form/generated/formfield/camunda-formfield.service.js +0 -67
- package/esm2015/lib/camunda/form/generated/formfield/date/camunda-date-formfield.component.js +0 -66
- package/esm2015/lib/camunda/form/generated/formfield/enum/camunda-enum-formfield.component.js +0 -31
- package/esm2015/lib/camunda/form/generated/formfield/validation/camunda-formfield-validation.component.js +0 -36
- package/esm2015/lib/camunda/form/generated/formfield/validation/date.validators.js +0 -60
- package/esm2015/lib/card/card.component.js +0 -37
- package/esm2015/lib/card/card.module.js +0 -30
- package/esm2015/lib/components.module.js +0 -22
- package/esm2015/lib/data-list/data-list.module.js +0 -30
- package/esm2015/lib/dropzone/dropzone.component.js +0 -143
- package/esm2015/lib/dropzone/dropzone.module.js +0 -32
- package/esm2015/lib/field-auto-focus/field-auto-focus.directive.js +0 -35
- package/esm2015/lib/field-auto-focus/field-auto-focus.module.js +0 -32
- package/esm2015/lib/file-size/file-size.pipe.js +0 -45
- package/esm2015/lib/filter-sidebar/filter-sidebar.component.js +0 -46
- package/esm2015/lib/filter-sidebar/filter-sidebar.module.js +0 -30
- package/esm2015/lib/form-io/form-io-uploader/form-io-uploader-edit-form.js +0 -90
- package/esm2015/lib/form-io/form-io-uploader/form-io-uploader.component.js +0 -72
- package/esm2015/lib/form-io/form-io-uploader/form-io-uploader.formio.js +0 -26
- package/esm2015/lib/form-io/form-io.component.js +0 -158
- package/esm2015/lib/form-io/form-io.module.js +0 -56
- package/esm2015/lib/form-io/formio-config.js +0 -22
- package/esm2015/lib/form-io/services/form-io-dom.service.js +0 -23
- package/esm2015/lib/form-io/services/form-io-state.service.js +0 -24
- package/esm2015/lib/left-sidebar/left-sidebar.component.js +0 -114
- package/esm2015/lib/left-sidebar/left-sidebar.module.js +0 -34
- package/esm2015/lib/list/ListFilterPipe.directive.js +0 -35
- package/esm2015/lib/list/list.component.js +0 -177
- package/esm2015/lib/list/list.module.js +0 -33
- package/esm2015/lib/menu/menu-item-text.component.js +0 -36
- package/esm2015/lib/menu/menu-routing.module.js +0 -29
- package/esm2015/lib/menu/menu.component.js +0 -65
- package/esm2015/lib/menu/menu.init.js +0 -34
- package/esm2015/lib/menu/menu.module.js +0 -39
- package/esm2015/lib/menu/menu.service.js +0 -127
- package/esm2015/lib/modal/modal.module.js +0 -28
- package/esm2015/lib/page-header/page-header.module.js +0 -34
- package/esm2015/lib/page-title/page-title.component.js +0 -76
- package/esm2015/lib/page-title/page-title.module.js +0 -32
- package/esm2015/lib/progress-bar/progress-bar.component.js +0 -26
- package/esm2015/lib/right-sidebar/right-sidebar.component.js +0 -131
- package/esm2015/lib/right-sidebar/right-sidebar.module.js +0 -49
- package/esm2015/lib/searchable-dropdown/searchable-dropdown.component.js +0 -185
- package/esm2015/lib/searchable-dropdown/searchable-dropdown.module.js +0 -29
- package/esm2015/lib/searchable-dropdown-select/searchable-dropdown-select.component.js +0 -52
- package/esm2015/lib/searchable-dropdown-select/searchable-dropdown-select.module.js +0 -30
- package/esm2015/lib/spinner/spinner.module.js +0 -36
- package/esm2015/lib/timeline/timeline.component.js +0 -29
- package/esm2015/lib/timeline/timeline.module.js +0 -32
- package/esm2015/lib/uploader/uploader-drag-drop.directive.js +0 -49
- package/esm2015/lib/uploader/uploader.component.js +0 -70
- package/esm2015/lib/uploader/uploader.module.js +0 -33
- package/esm2015/lib/version/version.service.js +0 -38
- package/esm2015/lib/view-content/type-converters/booleanTypeConverter.js +0 -29
- package/esm2015/lib/view-content/type-converters/dateTypeConverter.js +0 -30
- package/esm2015/lib/view-content/type-converters/relatedFilesTypeConverter.js +0 -24
- package/esm2015/lib/view-content/type-converters/stringReplaceUnderscoreTypeConverter.js +0 -27
- package/esm2015/lib/view-content/type-converters/stringTypeConverter.js +0 -24
- package/esm2015/lib/view-content/type-converters/type-converters.model.js +0 -37
- package/esm2015/lib/webcam/webcam.component.js +0 -103
- package/esm2015/lib/webcam/webcam.module.js +0 -32
- package/esm2015/lib/widget/widget.component.js +0 -80
- package/esm2015/lib/widget/widget.module.js +0 -30
|
@@ -5,7 +5,7 @@ import * as momentImported from 'moment';
|
|
|
5
5
|
import { ChoicefieldService } from '@valtimo/choicefield';
|
|
6
6
|
import { RouterModule, NavigationEnd, Router, ActivatedRoute, PRIMARY_OUTLET, NavigationStart } from '@angular/router';
|
|
7
7
|
import { NGXLogger } from 'ngx-logger';
|
|
8
|
-
import { ConfigService } from '@valtimo/config';
|
|
8
|
+
import { ConfigService, HttpLoaderFactory } from '@valtimo/config';
|
|
9
9
|
import { BehaviorSubject, Observable, combineLatest, fromEvent, Subscription, Subject, timer, from } from 'rxjs';
|
|
10
10
|
import { DocumentService, DocumentModule } from '@valtimo/document';
|
|
11
11
|
import { UserProviderService } from '@valtimo/security';
|
|
@@ -13,17 +13,154 @@ import { NgbTooltipModule, NgbPaginationModule } from '@ng-bootstrap/ng-bootstra
|
|
|
13
13
|
import { TranslateModule, TranslateService, TranslateLoader } from '@ngx-translate/core';
|
|
14
14
|
import { HttpClient } from '@angular/common/http';
|
|
15
15
|
import { ContextService } from '@valtimo/context';
|
|
16
|
-
import { HttpLoaderFactory, S3Resource, Alert, AlertType } from '@valtimo/contract';
|
|
17
16
|
import { map, debounceTime, take, filter, switchMap } from 'rxjs/operators';
|
|
18
17
|
import { Title } from '@angular/platform-browser';
|
|
19
18
|
import * as BpmnJS from 'bpmn-js/dist/bpmn-navigated-viewer.production.min.js';
|
|
20
19
|
import { create } from 'heatmap.js-fixed/build/heatmap.js';
|
|
21
|
-
import { S3Service, UploadProviderService, DownloadService, ResourceModule } from '@valtimo/resource';
|
|
20
|
+
import { S3Resource, S3Service, UploadProviderService, DownloadService, ResourceModule } from '@valtimo/resource';
|
|
22
21
|
import { Formio, FormioModule, FormioAppConfig, createCustomFormioComponent, registerCustomFormioComponentWithClass } from 'angular-formio';
|
|
23
22
|
import jwt_decode from 'jwt-decode';
|
|
24
23
|
import * as Dropzone from 'dropzone';
|
|
25
24
|
import { NgxSpinnerModule } from 'ngx-spinner';
|
|
26
25
|
|
|
26
|
+
/*
|
|
27
|
+
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
28
|
+
*
|
|
29
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
30
|
+
* you may not use this file except in compliance with the License.
|
|
31
|
+
* You may obtain a copy of the License at
|
|
32
|
+
*
|
|
33
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
34
|
+
*
|
|
35
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
36
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
37
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
38
|
+
* See the License for the specific language governing permissions and
|
|
39
|
+
* limitations under the License.
|
|
40
|
+
*/
|
|
41
|
+
class Alert {
|
|
42
|
+
constructor(init) {
|
|
43
|
+
Object.assign(this, init);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
var AlertType;
|
|
47
|
+
(function (AlertType) {
|
|
48
|
+
AlertType[AlertType["Success"] = 0] = "Success";
|
|
49
|
+
AlertType[AlertType["Error"] = 1] = "Error";
|
|
50
|
+
AlertType[AlertType["Info"] = 2] = "Info";
|
|
51
|
+
AlertType[AlertType["Warning"] = 3] = "Warning";
|
|
52
|
+
AlertType[AlertType["Notification"] = 4] = "Notification";
|
|
53
|
+
AlertType[AlertType["ModalNotification"] = 5] = "ModalNotification";
|
|
54
|
+
})(AlertType || (AlertType = {}));
|
|
55
|
+
|
|
56
|
+
/*
|
|
57
|
+
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
58
|
+
*
|
|
59
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
60
|
+
* you may not use this file except in compliance with the License.
|
|
61
|
+
* You may obtain a copy of the License at
|
|
62
|
+
*
|
|
63
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
64
|
+
*
|
|
65
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
66
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
67
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
68
|
+
* See the License for the specific language governing permissions and
|
|
69
|
+
* limitations under the License.
|
|
70
|
+
*/
|
|
71
|
+
class AlertsOptionsImpl {
|
|
72
|
+
constructor(submitMessage) {
|
|
73
|
+
this.submitMessage = submitMessage;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
class FormioOptionsImpl {
|
|
77
|
+
constructor() { }
|
|
78
|
+
setAlertMessage(submitMessage) {
|
|
79
|
+
this.alerts = new AlertsOptionsImpl(submitMessage);
|
|
80
|
+
}
|
|
81
|
+
setHooks(beforeSubmit) {
|
|
82
|
+
this.hooks = { beforeSubmit: beforeSubmit };
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/*
|
|
87
|
+
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
88
|
+
*
|
|
89
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
90
|
+
* you may not use this file except in compliance with the License.
|
|
91
|
+
* You may obtain a copy of the License at
|
|
92
|
+
*
|
|
93
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
94
|
+
*
|
|
95
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
96
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
97
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
98
|
+
* See the License for the specific language governing permissions and
|
|
99
|
+
* limitations under the License.
|
|
100
|
+
*/
|
|
101
|
+
class TimelineItemImpl {
|
|
102
|
+
constructor(date, time, user, activity, summaryTranslationKey, summaryTranslationParams) {
|
|
103
|
+
this._date = date;
|
|
104
|
+
this._time = time;
|
|
105
|
+
this._user = user;
|
|
106
|
+
this._activity = activity;
|
|
107
|
+
this._summaryTranslationKey = summaryTranslationKey;
|
|
108
|
+
this._summaryTranslationParams = summaryTranslationParams;
|
|
109
|
+
}
|
|
110
|
+
get date() {
|
|
111
|
+
return this._date;
|
|
112
|
+
}
|
|
113
|
+
get time() {
|
|
114
|
+
return this._time;
|
|
115
|
+
}
|
|
116
|
+
get user() {
|
|
117
|
+
return this._user;
|
|
118
|
+
}
|
|
119
|
+
get activity() {
|
|
120
|
+
return this._activity;
|
|
121
|
+
}
|
|
122
|
+
get summaryTranslationKey() {
|
|
123
|
+
return this._summaryTranslationKey;
|
|
124
|
+
}
|
|
125
|
+
get summaryTranslationParams() {
|
|
126
|
+
return this._summaryTranslationParams;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/*
|
|
131
|
+
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
132
|
+
*
|
|
133
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
134
|
+
* you may not use this file except in compliance with the License.
|
|
135
|
+
* You may obtain a copy of the License at
|
|
136
|
+
*
|
|
137
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
138
|
+
*
|
|
139
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
140
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
141
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
142
|
+
* See the License for the specific language governing permissions and
|
|
143
|
+
* limitations under the License.
|
|
144
|
+
*/
|
|
145
|
+
|
|
146
|
+
/*
|
|
147
|
+
*
|
|
148
|
+
* * Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
149
|
+
* *
|
|
150
|
+
* * Licensed under EUPL, Version 1.2 (the "License");
|
|
151
|
+
* * you may not use this file except in compliance with the License.
|
|
152
|
+
* * You may obtain a copy of the License at
|
|
153
|
+
* *
|
|
154
|
+
* * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
155
|
+
* *
|
|
156
|
+
* * Unless required by applicable law or agreed to in writing, software
|
|
157
|
+
* * distributed under the License is distributed on an "AS IS" basis,
|
|
158
|
+
* * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
159
|
+
* * See the License for the specific language governing permissions and
|
|
160
|
+
* * limitations under the License.
|
|
161
|
+
*
|
|
162
|
+
*/
|
|
163
|
+
|
|
27
164
|
/*
|
|
28
165
|
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
29
166
|
*
|
|
@@ -50,7 +187,7 @@ class CamundaFormComponent {
|
|
|
50
187
|
CamundaFormComponent.decorators = [
|
|
51
188
|
{ type: Component, args: [{
|
|
52
189
|
selector: 'valtimo-camunda-form',
|
|
53
|
-
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=\"!componentName && submitted\">\n <valtimo-camunda-generated-form
|
|
190
|
+
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=\"!componentName && submitted\">\n <valtimo-camunda-generated-form\n *ngIf=\"formFields\"\n [formFields]=\"formFields\"\n (submitted)=\"onSubmitted($event)\"\n >\n </valtimo-camunda-generated-form>\n</ng-container>\n<ng-container *ngIf=\"componentName\">\n <valtimo-custom-form [componentName]=\"componentName\"></valtimo-custom-form>\n</ng-container>\n"
|
|
54
191
|
},] }
|
|
55
192
|
];
|
|
56
193
|
CamundaFormComponent.ctorParameters = () => [];
|
|
@@ -89,7 +226,7 @@ class CamundaCustomFormComponent {
|
|
|
89
226
|
CamundaCustomFormComponent.decorators = [
|
|
90
227
|
{ type: Component, args: [{
|
|
91
228
|
selector: 'valtimo-custom-form',
|
|
92
|
-
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-template #customFormContainer></ng-template>\n
|
|
229
|
+
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-template #customFormContainer></ng-template>\n",
|
|
93
230
|
styles: [""]
|
|
94
231
|
},] }
|
|
95
232
|
];
|
|
@@ -120,15 +257,9 @@ class CamundaCustomFormModule {
|
|
|
120
257
|
}
|
|
121
258
|
CamundaCustomFormModule.decorators = [
|
|
122
259
|
{ type: NgModule, args: [{
|
|
123
|
-
declarations: [
|
|
124
|
-
|
|
125
|
-
],
|
|
126
|
-
imports: [
|
|
127
|
-
CommonModule
|
|
128
|
-
],
|
|
129
|
-
exports: [
|
|
130
|
-
CamundaCustomFormComponent
|
|
131
|
-
]
|
|
260
|
+
declarations: [CamundaCustomFormComponent],
|
|
261
|
+
imports: [CommonModule],
|
|
262
|
+
exports: [CamundaCustomFormComponent],
|
|
132
263
|
},] }
|
|
133
264
|
];
|
|
134
265
|
|
|
@@ -161,8 +292,8 @@ function minDate(minDateIn) {
|
|
|
161
292
|
return {
|
|
162
293
|
minDate: {
|
|
163
294
|
minDate: momentMinDate.format(DATE_FORMAT),
|
|
164
|
-
actual: controlDate.format(DATE_FORMAT)
|
|
165
|
-
}
|
|
295
|
+
actual: controlDate.format(DATE_FORMAT),
|
|
296
|
+
},
|
|
166
297
|
};
|
|
167
298
|
}
|
|
168
299
|
else {
|
|
@@ -181,8 +312,8 @@ function maxDate(maxDateIn) {
|
|
|
181
312
|
return {
|
|
182
313
|
maxDate: {
|
|
183
314
|
maxDate: momentMaxDate.format(DATE_FORMAT),
|
|
184
|
-
actual: controlDate.format(DATE_FORMAT)
|
|
185
|
-
}
|
|
315
|
+
actual: controlDate.format(DATE_FORMAT),
|
|
316
|
+
},
|
|
186
317
|
};
|
|
187
318
|
}
|
|
188
319
|
else {
|
|
@@ -207,8 +338,7 @@ function maxDate(maxDateIn) {
|
|
|
207
338
|
* limitations under the License.
|
|
208
339
|
*/
|
|
209
340
|
class CamundaFormfieldService {
|
|
210
|
-
constructor() {
|
|
211
|
-
}
|
|
341
|
+
constructor() { }
|
|
212
342
|
isFormFieldDisabled(formField) {
|
|
213
343
|
return formField.validationConstraints.filter(vc => vc.name === 'readonly').length > 0;
|
|
214
344
|
}
|
|
@@ -249,7 +379,7 @@ class CamundaFormfieldService {
|
|
|
249
379
|
CamundaFormfieldService.ɵprov = ɵɵdefineInjectable({ factory: function CamundaFormfieldService_Factory() { return new CamundaFormfieldService(); }, token: CamundaFormfieldService, providedIn: "root" });
|
|
250
380
|
CamundaFormfieldService.decorators = [
|
|
251
381
|
{ type: Injectable, args: [{
|
|
252
|
-
providedIn: 'root'
|
|
382
|
+
providedIn: 'root',
|
|
253
383
|
},] }
|
|
254
384
|
];
|
|
255
385
|
CamundaFormfieldService.ctorParameters = () => [];
|
|
@@ -285,7 +415,7 @@ class CamundaGeneratedFormComponent {
|
|
|
285
415
|
this.formFields.forEach(formField => {
|
|
286
416
|
const control = new FormControl({
|
|
287
417
|
value: formField.defaultValue,
|
|
288
|
-
disabled: this.camundaFormFieldService.isFormFieldDisabled(formField)
|
|
418
|
+
disabled: this.camundaFormFieldService.isFormFieldDisabled(formField),
|
|
289
419
|
}, this.camundaFormFieldService.getValidatorTypes(formField));
|
|
290
420
|
group.addControl(formField.id, control);
|
|
291
421
|
});
|
|
@@ -306,7 +436,7 @@ class CamundaGeneratedFormComponent {
|
|
|
306
436
|
CamundaGeneratedFormComponent.decorators = [
|
|
307
437
|
{ type: Component, args: [{
|
|
308
438
|
selector: 'valtimo-camunda-generated-form',
|
|
309
|
-
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<form [formGroup]=\"formGroup\" (ngSubmit)=\"handleSubmit($event)\">\n <ng-container\n
|
|
439
|
+
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<form [formGroup]=\"formGroup\" (ngSubmit)=\"handleSubmit($event)\">\n <ng-container\n *ngFor=\"let formField of formFields\"\n valtimoCamundaFormfieldGenerator\n [formGroup]=\"formGroup\"\n [formField]=\"formField\"\n >\n <ng-content></ng-content>\n </ng-container>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-sm-12\">\n <div class=\"text-right\">\n <button\n class=\"btn btn-space btn-default float-left\"\n type=\"button\"\n (click)=\"back()\"\n id=\"back-button\"\n >\n Back\n </button>\n <button\n class=\"btn btn-space btn-secondary\"\n type=\"button\"\n (click)=\"reset()\"\n id=\"reset-button\"\n >\n Reset\n </button>\n <button\n class=\"btn btn-space btn-primary\"\n [disabled]=\"!formGroup.disabled && !formGroup.valid\"\n type=\"submit\"\n id=\"submit-button\"\n >\n Submit\n </button>\n </div>\n </div>\n </div>\n</form>\n"
|
|
310
440
|
},] }
|
|
311
441
|
];
|
|
312
442
|
CamundaGeneratedFormComponent.ctorParameters = () => [
|
|
@@ -335,13 +465,12 @@ CamundaGeneratedFormComponent.propDecorators = {
|
|
|
335
465
|
* limitations under the License.
|
|
336
466
|
*/
|
|
337
467
|
class CamundaStringFormfieldComponent {
|
|
338
|
-
constructor() {
|
|
339
|
-
}
|
|
468
|
+
constructor() { }
|
|
340
469
|
}
|
|
341
470
|
CamundaStringFormfieldComponent.decorators = [
|
|
342
471
|
{ type: Component, args: [{
|
|
343
472
|
selector: 'valtimo-camunda-string-formfield',
|
|
344
|
-
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <input
|
|
473
|
+
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <input\n id=\"{{ formField.id }}\"\n class=\"form-control\"\n type=\"text\"\n [attr.placeholder]=\"formField.defaultValue\"\n [formControlName]=\"formField.id\"\n />\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
345
474
|
},] }
|
|
346
475
|
];
|
|
347
476
|
CamundaStringFormfieldComponent.ctorParameters = () => [];
|
|
@@ -362,13 +491,12 @@ CamundaStringFormfieldComponent.ctorParameters = () => [];
|
|
|
362
491
|
* limitations under the License.
|
|
363
492
|
*/
|
|
364
493
|
class CamundaBooleanFormfieldComponent {
|
|
365
|
-
constructor() {
|
|
366
|
-
}
|
|
494
|
+
constructor() { }
|
|
367
495
|
}
|
|
368
496
|
CamundaBooleanFormfieldComponent.decorators = [
|
|
369
497
|
{ type: Component, args: [{
|
|
370
498
|
selector: 'valtimo-camunda-boolean-formfield',
|
|
371
|
-
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6 form-check mt-1\">\n <label for=\"yes_{{ formField.id }}\" class=\"custom-control custom-radio custom-control-inline\">\n <input\n class=\"custom-control-input\"\n id=\"yes_{{ formField.id }}\"\n type=\"radio\"\n [value]=\"true\"\n [formControlName]=\"formField.id\"/>\n <span class=\"custom-control-label custom-control-color\">Yes</span>\n </label>\n <label for=\"no_{{ formField.id }}\" class=\"custom-control custom-radio custom-control-inline\">\n <input\n class=\"custom-control-input\"\n id=\"no_{{ formField.id }}\"\n type=\"radio\"\n [value]=\"false\"\n [formControlName]=\"formField.id\"/>\n <span class=\"custom-control-label custom-control-color\">No</span>\n </label>\n <valtimo-camunda-formfield-validation
|
|
499
|
+
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6 form-check mt-1\">\n <label for=\"yes_{{ formField.id }}\" class=\"custom-control custom-radio custom-control-inline\">\n <input\n class=\"custom-control-input\"\n id=\"yes_{{ formField.id }}\"\n type=\"radio\"\n [value]=\"true\"\n [formControlName]=\"formField.id\"\n />\n <span class=\"custom-control-label custom-control-color\">Yes</span>\n </label>\n <label for=\"no_{{ formField.id }}\" class=\"custom-control custom-radio custom-control-inline\">\n <input\n class=\"custom-control-input\"\n id=\"no_{{ formField.id }}\"\n type=\"radio\"\n [value]=\"false\"\n [formControlName]=\"formField.id\"\n />\n <span class=\"custom-control-label custom-control-color\">No</span>\n </label>\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
372
500
|
},] }
|
|
373
501
|
];
|
|
374
502
|
CamundaBooleanFormfieldComponent.ctorParameters = () => [];
|
|
@@ -402,9 +530,9 @@ class CamundaDateFormfieldComponent {
|
|
|
402
530
|
componentIcon: '.mdi.mdi-calendar',
|
|
403
531
|
navIcons: {
|
|
404
532
|
rightIcon: 'mdi mdi-chevron-right',
|
|
405
|
-
leftIcon: 'mdi mdi-chevron-left'
|
|
533
|
+
leftIcon: 'mdi mdi-chevron-left',
|
|
406
534
|
},
|
|
407
|
-
format: 'dd-mm-yyyy'
|
|
535
|
+
format: 'dd-mm-yyyy',
|
|
408
536
|
};
|
|
409
537
|
}
|
|
410
538
|
ngAfterViewInit() {
|
|
@@ -421,7 +549,7 @@ class CamundaDateFormfieldComponent {
|
|
|
421
549
|
$(this.INPUT_SELECTOR).datetimepicker(this.datePickerOptions);
|
|
422
550
|
$(this.INPUT_SELECTOR).on('changeDate', function (e) {
|
|
423
551
|
formGroup.patchValue({
|
|
424
|
-
[formField.id]: moment$1(e.date.valueOf()).format('DD/MM/YYYY')
|
|
552
|
+
[formField.id]: moment$1(e.date.valueOf()).format('DD/MM/YYYY'),
|
|
425
553
|
});
|
|
426
554
|
});
|
|
427
555
|
}
|
|
@@ -429,7 +557,7 @@ class CamundaDateFormfieldComponent {
|
|
|
429
557
|
CamundaDateFormfieldComponent.decorators = [
|
|
430
558
|
{ type: Component, args: [{
|
|
431
559
|
selector: 'valtimo-camunda-date-formfield',
|
|
432
|
-
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6 pt1\">\n <input\n type=\"input\"\n class=\"form-control\"\n data-min-view=\"2\"\n id=\"{{ formField.id }}\"\n autocomplete=\"off\"\n [formControlName]=\"formField.id\"/>\n <valtimo-camunda-formfield-validation
|
|
560
|
+
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6 pt1\">\n <input\n type=\"input\"\n class=\"form-control\"\n data-min-view=\"2\"\n id=\"{{ formField.id }}\"\n autocomplete=\"off\"\n [formControlName]=\"formField.id\"\n />\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
433
561
|
},] }
|
|
434
562
|
];
|
|
435
563
|
CamundaDateFormfieldComponent.ctorParameters = () => [
|
|
@@ -452,13 +580,12 @@ CamundaDateFormfieldComponent.ctorParameters = () => [
|
|
|
452
580
|
* limitations under the License.
|
|
453
581
|
*/
|
|
454
582
|
class CamundaLongFormfieldComponent {
|
|
455
|
-
constructor() {
|
|
456
|
-
}
|
|
583
|
+
constructor() { }
|
|
457
584
|
}
|
|
458
585
|
CamundaLongFormfieldComponent.decorators = [
|
|
459
586
|
{ type: Component, args: [{
|
|
460
587
|
selector: 'valtimo-camunda-long-formfield',
|
|
461
|
-
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <input
|
|
588
|
+
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <input\n id=\"{{ formField.id }}\"\n class=\"form-control\"\n type=\"number\"\n [attr.placeholder]=\"formField.defaultValue\"\n [formControlName]=\"formField.id\"\n />\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
462
589
|
},] }
|
|
463
590
|
];
|
|
464
591
|
CamundaLongFormfieldComponent.ctorParameters = () => [];
|
|
@@ -479,8 +606,7 @@ CamundaLongFormfieldComponent.ctorParameters = () => [];
|
|
|
479
606
|
* limitations under the License.
|
|
480
607
|
*/
|
|
481
608
|
class CamundaEnumFormfieldComponent {
|
|
482
|
-
constructor() {
|
|
483
|
-
}
|
|
609
|
+
constructor() { }
|
|
484
610
|
ngOnInit() {
|
|
485
611
|
this.valueKeys = Object.keys(this.formField.type.values);
|
|
486
612
|
}
|
|
@@ -488,7 +614,7 @@ class CamundaEnumFormfieldComponent {
|
|
|
488
614
|
CamundaEnumFormfieldComponent.decorators = [
|
|
489
615
|
{ type: Component, args: [{
|
|
490
616
|
selector: 'valtimo-camunda-enum-formfield',
|
|
491
|
-
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 class=\"form-group row\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <select
|
|
617
|
+
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 class=\"form-group row\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <select class=\"form-control\" id=\"{{ formField.id }}\" [formControlName]=\"formField.id\">\n <option selected=\"selected\" value=\"\"></option>\n <option *ngFor=\"let key of valueKeys\" [value]=\"key\" id=\"option_{{ key }}\">\n {{ formField.type.values[key] }}\n </option>\n </select>\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
492
618
|
},] }
|
|
493
619
|
];
|
|
494
620
|
CamundaEnumFormfieldComponent.ctorParameters = () => [];
|
|
@@ -509,13 +635,12 @@ CamundaEnumFormfieldComponent.ctorParameters = () => [];
|
|
|
509
635
|
* limitations under the License.
|
|
510
636
|
*/
|
|
511
637
|
class CamundaTextareaFormfieldComponent {
|
|
512
|
-
constructor() {
|
|
513
|
-
}
|
|
638
|
+
constructor() { }
|
|
514
639
|
}
|
|
515
640
|
CamundaTextareaFormfieldComponent.decorators = [
|
|
516
641
|
{ type: Component, args: [{
|
|
517
642
|
selector: 'valtimo-camunda-textarea-formfield',
|
|
518
|
-
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <textarea
|
|
643
|
+
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 class=\"form-group row\" *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <textarea\n id=\"{{ formField.id }}\"\n class=\"form-control\"\n [attr.placeholder]=\"formField.defaultValue\"\n [formControlName]=\"formField.id\"\n ></textarea>\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
519
644
|
},] }
|
|
520
645
|
];
|
|
521
646
|
CamundaTextareaFormfieldComponent.ctorParameters = () => [];
|
|
@@ -541,7 +666,9 @@ class CamundaChoicefieldFormfieldComponent {
|
|
|
541
666
|
this.choicefieldValues = [];
|
|
542
667
|
}
|
|
543
668
|
ngOnInit() {
|
|
544
|
-
this.choicefieldService
|
|
669
|
+
this.choicefieldService
|
|
670
|
+
.getChoiceFieldValuesByName(this.formField.properties['choicefield'])
|
|
671
|
+
.subscribe(data => {
|
|
545
672
|
this.choicefieldValues = data;
|
|
546
673
|
});
|
|
547
674
|
}
|
|
@@ -549,7 +676,7 @@ class CamundaChoicefieldFormfieldComponent {
|
|
|
549
676
|
CamundaChoicefieldFormfieldComponent.decorators = [
|
|
550
677
|
{ type: Component, args: [{
|
|
551
678
|
selector: 'valtimo-camunda-choicefield-formfield',
|
|
552
|
-
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 class=\"form-group row\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <select
|
|
679
|
+
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 class=\"form-group row\" [formGroup]=\"formGroup\">\n <label for=\"{{ formField.id }}\" class=\"col-12 col-sm-3 col-form-label text-sm-right\">\n {{ formField.label }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <select class=\"form-control\" id=\"{{ formField.id }}\" [formControlName]=\"formField.id\">\n <option selected=\"selected\" value=\"\"></option>\n <ng-container *ngFor=\"let choicefieldValue of choicefieldValues\">\n <option\n *ngIf=\"!choicefieldValue.deprecated\"\n [value]=\"choicefieldValue.value\"\n id=\"option_{{ choicefieldValue.value }}\"\n >\n {{ choicefieldValue.name }}\n </option>\n </ng-container>\n </select>\n <valtimo-camunda-formfield-validation [formGroup]=\"formGroup\" [formField]=\"formField\">\n </valtimo-camunda-formfield-validation>\n </div>\n</div>\n"
|
|
553
680
|
},] }
|
|
554
681
|
];
|
|
555
682
|
CamundaChoicefieldFormfieldComponent.ctorParameters = () => [
|
|
@@ -582,7 +709,7 @@ class CamundaFormfieldGeneratorDirective {
|
|
|
582
709
|
long: CamundaLongFormfieldComponent,
|
|
583
710
|
enum: CamundaEnumFormfieldComponent,
|
|
584
711
|
textarea: CamundaTextareaFormfieldComponent,
|
|
585
|
-
choicefield: CamundaChoicefieldFormfieldComponent
|
|
712
|
+
choicefield: CamundaChoicefieldFormfieldComponent,
|
|
586
713
|
};
|
|
587
714
|
}
|
|
588
715
|
ngOnInit() {
|
|
@@ -599,7 +726,7 @@ class CamundaFormfieldGeneratorDirective {
|
|
|
599
726
|
}
|
|
600
727
|
CamundaFormfieldGeneratorDirective.decorators = [
|
|
601
728
|
{ type: Directive, args: [{
|
|
602
|
-
selector: '[valtimoCamundaFormfieldGenerator]'
|
|
729
|
+
selector: '[valtimoCamundaFormfieldGenerator]',
|
|
603
730
|
},] }
|
|
604
731
|
];
|
|
605
732
|
CamundaFormfieldGeneratorDirective.ctorParameters = () => [
|
|
@@ -627,8 +754,7 @@ CamundaFormfieldGeneratorDirective.propDecorators = {
|
|
|
627
754
|
* limitations under the License.
|
|
628
755
|
*/
|
|
629
756
|
class CamundaFormfieldValidationComponent {
|
|
630
|
-
constructor() {
|
|
631
|
-
}
|
|
757
|
+
constructor() { }
|
|
632
758
|
ngOnInit() {
|
|
633
759
|
this.formControl = this.formGroup.get(this.formField.id);
|
|
634
760
|
}
|
|
@@ -636,7 +762,7 @@ class CamundaFormfieldValidationComponent {
|
|
|
636
762
|
CamundaFormfieldValidationComponent.decorators = [
|
|
637
763
|
{ type: Component, args: [{
|
|
638
764
|
selector: 'valtimo-camunda-formfield-validation',
|
|
639
|
-
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<ul
|
|
765
|
+
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<ul\n class=\"parsley-errors-list filled\"\n *ngIf=\"formControl.invalid && (formControl.dirty || formControl.touched)\"\n>\n <li *ngIf=\"formControl.errors.required\">This field is required.</li>\n <li *ngIf=\"formControl.errors.minlength\">\n This field should be more than {{ formControl.errors.minlength.requiredLength }} characters.\n </li>\n <li *ngIf=\"formControl.errors.maxlength\">\n This field cannot be more than {{ formControl.errors.maxlength.requiredLength }} characters.\n </li>\n <li *ngIf=\"formControl.errors.min\">\n This field should be more than {{ formControl.errors.min.min }}.\n </li>\n <li *ngIf=\"formControl.errors.max\">\n This field should be less or equal to {{ formControl.errors.max.max }}.\n </li>\n <li *ngIf=\"formControl.errors.minDate\">\n This field should be more than {{ formControl.errors.minDate.minDate }}.\n </li>\n <li *ngIf=\"formControl.errors.maxDate\">\n This field should be less or equal to {{ formControl.errors.maxDate.maxDate }}.\n </li>\n</ul>\n"
|
|
640
766
|
},] }
|
|
641
767
|
];
|
|
642
768
|
CamundaFormfieldValidationComponent.ctorParameters = () => [];
|
|
@@ -674,15 +800,10 @@ CamundaGeneratedFormModule.decorators = [
|
|
|
674
800
|
CamundaTextareaFormfieldComponent,
|
|
675
801
|
CamundaChoicefieldFormfieldComponent,
|
|
676
802
|
CamundaFormfieldValidationComponent,
|
|
677
|
-
CamundaGeneratedFormComponent
|
|
678
|
-
],
|
|
679
|
-
imports: [
|
|
680
|
-
CommonModule,
|
|
681
|
-
ReactiveFormsModule
|
|
682
|
-
],
|
|
683
|
-
exports: [
|
|
684
|
-
CamundaGeneratedFormComponent
|
|
803
|
+
CamundaGeneratedFormComponent,
|
|
685
804
|
],
|
|
805
|
+
imports: [CommonModule, ReactiveFormsModule],
|
|
806
|
+
exports: [CamundaGeneratedFormComponent],
|
|
686
807
|
entryComponents: [
|
|
687
808
|
CamundaStringFormfieldComponent,
|
|
688
809
|
CamundaBooleanFormfieldComponent,
|
|
@@ -690,8 +811,8 @@ CamundaGeneratedFormModule.decorators = [
|
|
|
690
811
|
CamundaLongFormfieldComponent,
|
|
691
812
|
CamundaEnumFormfieldComponent,
|
|
692
813
|
CamundaTextareaFormfieldComponent,
|
|
693
|
-
CamundaChoicefieldFormfieldComponent
|
|
694
|
-
]
|
|
814
|
+
CamundaChoicefieldFormfieldComponent,
|
|
815
|
+
],
|
|
695
816
|
},] }
|
|
696
817
|
];
|
|
697
818
|
|
|
@@ -714,17 +835,9 @@ class CamundaFormModule {
|
|
|
714
835
|
}
|
|
715
836
|
CamundaFormModule.decorators = [
|
|
716
837
|
{ type: NgModule, args: [{
|
|
717
|
-
declarations: [
|
|
718
|
-
|
|
719
|
-
],
|
|
720
|
-
imports: [
|
|
721
|
-
CommonModule,
|
|
722
|
-
CamundaGeneratedFormModule,
|
|
723
|
-
CamundaCustomFormModule
|
|
724
|
-
],
|
|
725
|
-
exports: [
|
|
726
|
-
CamundaFormComponent
|
|
727
|
-
]
|
|
838
|
+
declarations: [CamundaFormComponent],
|
|
839
|
+
imports: [CommonModule, CamundaGeneratedFormModule, CamundaCustomFormModule],
|
|
840
|
+
exports: [CamundaFormComponent],
|
|
728
841
|
},] }
|
|
729
842
|
];
|
|
730
843
|
|
|
@@ -744,8 +857,7 @@ CamundaFormModule.decorators = [
|
|
|
744
857
|
* limitations under the License.
|
|
745
858
|
*/
|
|
746
859
|
class TopbarComponent {
|
|
747
|
-
constructor() {
|
|
748
|
-
}
|
|
860
|
+
constructor() { }
|
|
749
861
|
}
|
|
750
862
|
TopbarComponent.decorators = [
|
|
751
863
|
{ type: Component, args: [{
|
|
@@ -776,11 +888,8 @@ class TopbarModule {
|
|
|
776
888
|
TopbarModule.decorators = [
|
|
777
889
|
{ type: NgModule, args: [{
|
|
778
890
|
declarations: [TopbarComponent],
|
|
779
|
-
imports: [
|
|
780
|
-
|
|
781
|
-
RouterModule
|
|
782
|
-
],
|
|
783
|
-
exports: [TopbarComponent]
|
|
891
|
+
imports: [CommonModule, RouterModule],
|
|
892
|
+
exports: [TopbarComponent],
|
|
784
893
|
},] }
|
|
785
894
|
];
|
|
786
895
|
|
|
@@ -825,7 +934,7 @@ class MenuService {
|
|
|
825
934
|
menuItems.push(menuItem);
|
|
826
935
|
});
|
|
827
936
|
menuItems = this.sortMenuItems(menuItems);
|
|
828
|
-
this.appendDossierSubMenuItems(menuItems).subscribe(value => menuItems = this.applyMenuRoleSecurity(value));
|
|
937
|
+
this.appendDossierSubMenuItems(menuItems).subscribe(value => (menuItems = this.applyMenuRoleSecurity(value)));
|
|
829
938
|
return menuItems;
|
|
830
939
|
}
|
|
831
940
|
sortMenuItems(menuItems) {
|
|
@@ -837,13 +946,12 @@ class MenuService {
|
|
|
837
946
|
return new Observable(subscriber => {
|
|
838
947
|
this.logger.debug('appendDossierSubMenuItems');
|
|
839
948
|
this.documentService.getAllDefinitions().subscribe(definitions => {
|
|
840
|
-
const dossierMenuItems = definitions.content
|
|
841
|
-
.map((definition, index) => ({
|
|
949
|
+
const dossierMenuItems = definitions.content.map((definition, index) => ({
|
|
842
950
|
link: ['/dossiers/' + definition.id.name],
|
|
843
951
|
title: definition.schema.title,
|
|
844
952
|
iconClass: 'icon mdi mdi-dot-circle',
|
|
845
953
|
sequence: index,
|
|
846
|
-
show: true
|
|
954
|
+
show: true,
|
|
847
955
|
}));
|
|
848
956
|
this.logger.debug('found dossierMenuItems', dossierMenuItems);
|
|
849
957
|
const menuItemIndex = menuItems.findIndex(({ title }) => title === 'Dossiers');
|
|
@@ -890,7 +998,7 @@ class MenuService {
|
|
|
890
998
|
MenuService.ɵprov = ɵɵdefineInjectable({ factory: function MenuService_Factory() { return new MenuService(ɵɵinject(ConfigService), ɵɵinject(DocumentService), ɵɵinject(UserProviderService), ɵɵinject(NGXLogger)); }, token: MenuService, providedIn: "root" });
|
|
891
999
|
MenuService.decorators = [
|
|
892
1000
|
{ type: Injectable, args: [{
|
|
893
|
-
providedIn: 'root'
|
|
1001
|
+
providedIn: 'root',
|
|
894
1002
|
},] }
|
|
895
1003
|
];
|
|
896
1004
|
MenuService.ctorParameters = () => [
|
|
@@ -920,10 +1028,8 @@ class MenuRoutingModule {
|
|
|
920
1028
|
}
|
|
921
1029
|
MenuRoutingModule.decorators = [
|
|
922
1030
|
{ type: NgModule, args: [{
|
|
923
|
-
imports: [
|
|
924
|
-
|
|
925
|
-
],
|
|
926
|
-
exports: [RouterModule]
|
|
1031
|
+
imports: [RouterModule.forChild(routes)],
|
|
1032
|
+
exports: [RouterModule],
|
|
927
1033
|
},] }
|
|
928
1034
|
];
|
|
929
1035
|
|
|
@@ -951,7 +1057,7 @@ class MenuComponent {
|
|
|
951
1057
|
}
|
|
952
1058
|
ngOnInit() {
|
|
953
1059
|
this.openRouterSubscription();
|
|
954
|
-
this.menuItemSubscription = this.menuService.menuItems$.subscribe(value => this.menuItems = value);
|
|
1060
|
+
this.menuItemSubscription = this.menuService.menuItems$.subscribe(value => (this.menuItems = value));
|
|
955
1061
|
}
|
|
956
1062
|
ngOnDestroy() {
|
|
957
1063
|
this.routerSubscription.unsubscribe();
|
|
@@ -1010,11 +1116,13 @@ MenuItemTextComponent.decorators = [
|
|
|
1010
1116
|
{ type: Component, args: [{
|
|
1011
1117
|
selector: 'valtimo-menu-item-text',
|
|
1012
1118
|
template: `
|
|
1013
|
-
<i
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1119
|
+
<i
|
|
1120
|
+
class="{{ menuItem.iconClass }}"
|
|
1121
|
+
container="body"
|
|
1122
|
+
placement="right"
|
|
1123
|
+
ngbTooltip="{{ menuItem.title | translate }}"
|
|
1124
|
+
autoClose="true"
|
|
1125
|
+
>
|
|
1018
1126
|
</i>
|
|
1019
1127
|
<span>{{ menuItem.title | translate }}</span>
|
|
1020
1128
|
`
|
|
@@ -1046,7 +1154,7 @@ SubmenuItemTextComponent.decorators = [
|
|
|
1046
1154
|
selector: 'valtimo-submenu-item-text',
|
|
1047
1155
|
template: `
|
|
1048
1156
|
<span [ngClass]="submenuItem.textClass">
|
|
1049
|
-
|
|
1157
|
+
{{ submenuItem.title | translate }}
|
|
1050
1158
|
<ng-container *ngIf="!submenuItem.link">></ng-container>
|
|
1051
1159
|
</span>
|
|
1052
1160
|
`
|
|
@@ -1076,14 +1184,9 @@ class MenuModule {
|
|
|
1076
1184
|
MenuModule.decorators = [
|
|
1077
1185
|
{ type: NgModule, args: [{
|
|
1078
1186
|
declarations: [MenuComponent, MenuItemTextComponent, SubmenuItemTextComponent],
|
|
1079
|
-
imports: [
|
|
1080
|
-
CommonModule,
|
|
1081
|
-
RouterModule,
|
|
1082
|
-
NgbTooltipModule,
|
|
1083
|
-
TranslateModule
|
|
1084
|
-
],
|
|
1187
|
+
imports: [CommonModule, RouterModule, NgbTooltipModule, TranslateModule],
|
|
1085
1188
|
exports: [MenuComponent],
|
|
1086
|
-
providers: []
|
|
1189
|
+
providers: [],
|
|
1087
1190
|
},] }
|
|
1088
1191
|
];
|
|
1089
1192
|
|
|
@@ -1147,7 +1250,7 @@ class VersionService {
|
|
|
1147
1250
|
VersionService.ɵprov = ɵɵdefineInjectable({ factory: function VersionService_Factory() { return new VersionService(ɵɵinject(HttpClient)); }, token: VersionService, providedIn: "root" });
|
|
1148
1251
|
VersionService.decorators = [
|
|
1149
1252
|
{ type: Injectable, args: [{
|
|
1150
|
-
providedIn: 'root'
|
|
1253
|
+
providedIn: 'root',
|
|
1151
1254
|
},] }
|
|
1152
1255
|
];
|
|
1153
1256
|
VersionService.ctorParameters = () => [
|
|
@@ -1187,7 +1290,7 @@ class RightSidebarComponent {
|
|
|
1187
1290
|
'emailNotificationOnThursday',
|
|
1188
1291
|
'emailNotificationOnFriday',
|
|
1189
1292
|
'emailNotificationOnSaturday',
|
|
1190
|
-
'emailNotificationOnSunday'
|
|
1293
|
+
'emailNotificationOnSunday',
|
|
1191
1294
|
];
|
|
1192
1295
|
this.settingsForm = this.formBuilder.group({
|
|
1193
1296
|
taskNotifications: new FormControl(false),
|
|
@@ -1198,13 +1301,15 @@ class RightSidebarComponent {
|
|
|
1198
1301
|
emailNotificationOnThursday: new FormControl(false),
|
|
1199
1302
|
emailNotificationOnFriday: new FormControl(false),
|
|
1200
1303
|
emailNotificationOnSaturday: new FormControl(false),
|
|
1201
|
-
emailNotificationOnSunday: new FormControl(false)
|
|
1304
|
+
emailNotificationOnSunday: new FormControl(false),
|
|
1202
1305
|
});
|
|
1203
1306
|
this.getUserSettings();
|
|
1204
1307
|
}
|
|
1205
1308
|
loadContextSwitch() {
|
|
1206
|
-
combineLatest([
|
|
1207
|
-
.
|
|
1309
|
+
combineLatest([
|
|
1310
|
+
this.contextService.getUserContexts(),
|
|
1311
|
+
this.contextService.getUserContextActive(),
|
|
1312
|
+
]).subscribe(([userContexts, userContextActive]) => {
|
|
1208
1313
|
this.userContextActive = userContextActive;
|
|
1209
1314
|
this.userContexts = userContexts;
|
|
1210
1315
|
});
|
|
@@ -1262,7 +1367,7 @@ class RightSidebarComponent {
|
|
|
1262
1367
|
RightSidebarComponent.decorators = [
|
|
1263
1368
|
{ type: Component, args: [{
|
|
1264
1369
|
selector: 'valtimo-right-sidebar',
|
|
1265
|
-
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<nav class=\"be-right-sidebar\">\n <div class=\"sb-content\">\n <div class=\"tab-navigation\">\n <ul class=\"nav nav-tabs nav-justified\" role=\"tablist\">\n <li class=\"nav-item\" role=\"presentation\">\n <a
|
|
1370
|
+
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<nav class=\"be-right-sidebar\">\n <div class=\"sb-content\">\n <div class=\"tab-navigation\">\n <ul class=\"nav nav-tabs nav-justified\" role=\"tablist\">\n <li class=\"nav-item\" role=\"presentation\">\n <a\n class=\"nav-link active\"\n href=\"#account\"\n aria-controls=\"account\"\n role=\"tab\"\n data-toggle=\"tab\"\n translate=\"account.title\"\n ></a>\n </li>\n <li class=\"nav-item\" role=\"presentation\">\n <a\n class=\"nav-link\"\n (click)=\"loadUserSettingsTab()\"\n href=\"#settings\"\n aria-controls=\"settings\"\n role=\"tab\"\n data-toggle=\"tab\"\n translate=\"settings.title\"\n ></a>\n </li>\n </ul>\n </div>\n <div class=\"tab-panel\">\n <div class=\"tab-content\">\n <!-- account -->\n <div class=\"tab-pane tab-account active\" id=\"account\" role=\"tabpanel\">\n <div class=\"p-3 be-scroller-settings\" *ngIf=\"userIdentity\">\n <div class=\"content\">\n <div class=\"category-title border-0 m-0\">\n <div class=\"p-0 text-muted\">\n <dl class=\"row mb-0\">\n <dt class=\"col-sm-3\">Email</dt>\n <dd class=\"col-sm-9 mb-0 text-bold\">{{ userIdentity.email }}</dd>\n <ng-container *ngIf=\"userIdentity.username\">\n <dt class=\"col-sm-3\">Username</dt>\n <dd class=\"col-sm-9 mb-0 text-bold\">{{ userIdentity.username }}</dd>\n </ng-container>\n <dt class=\"col-sm-3\">Name</dt>\n <dd class=\"col-sm-9 mb-0 text-bold\">\n {{ userIdentity.firstName + ' ' + userIdentity.lastName }}\n </dd>\n </dl>\n </div>\n </div>\n <!-- context switch -->\n <ul class=\"settings-list\" *ngIf=\"userContexts?.length > 1\">\n <li ngbTooltip=\"{{ 'settings.context.title' | translate }}\">\n <select\n class=\"form-control\"\n #contextSelect\n (change)=\"setUserContext(+contextSelect.value)\"\n >\n <option\n *ngFor=\"let context of userContexts\"\n [value]=\"context.id\"\n [selected]=\"context.id === userContextActive.id\"\n >\n {{ context.name }}\n </option>\n </select>\n </li>\n </ul>\n <ul class=\"list-group list-group-flush m-0\">\n <li class=\"bg-transparent list-group-item px-0\">\n <a\n href=\"https://docs.valtimo.nl\"\n target=\"_blank\"\n class=\"d-block\"\n translate=\"account.links.help\"\n ></a>\n </li>\n <li class=\"bg-transparent list-group-item px-0\">\n <a\n href=\"https://www.valtimo.nl/feedback/\"\n target=\"_blank\"\n class=\"d-block\"\n translate=\"account.links.feedback\"\n ></a>\n </li>\n <li class=\"bg-transparent list-group-item px-0\">\n <a\n href=\"https://forum.valtimo.nl\"\n target=\"_blank\"\n class=\"d-block\"\n translate=\"account.links.forum\"\n ></a>\n </li>\n <li class=\"bg-transparent list-group-item px-0\">\n <a\n href=\"javascript:void(0)\"\n class=\"d-block\"\n (click)=\"logout()\"\n translate=\"account.links.signOut\"\n ></a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n\n <!-- settings -->\n <div class=\"tab-pane tab-settings\" id=\"settings\" role=\"tabpanel\">\n <div class=\"p-3 be-scroller-settings\">\n <div class=\"content\">\n <span class=\"category-title\" translate=\"settings.language.title\"></span>\n <ul class=\"settings-list\">\n <li>\n <select\n class=\"form-control\"\n #langSelect\n (change)=\"updateUserLanguage(langSelect.value)\"\n >\n <option\n *ngFor=\"let lang of translate.getLangs()\"\n [value]=\"lang\"\n [selected]=\"lang === translate.currentLang\"\n >\n {{ 'settings.language.options.' + lang | translate }}\n </option>\n </select>\n </li>\n </ul>\n\n <form [formGroup]=\"settingsForm\">\n <span class=\"category-title\" translate=\"settings.notification.title\"></span>\n <ul class=\"settings-list m-0\">\n <li>\n <div class=\"switch-button switch-button-sm switch-button-success\">\n <input\n type=\"checkbox\"\n formControlName=\"taskNotifications\"\n id=\"taskNotifications\"\n (ngModelChange)=\"onSettingsSubmit()\"\n /><span> <label for=\"taskNotifications\"></label></span>\n </div>\n <span class=\"name\" translate=\"settings.notification.taskNotifications\"></span>\n <div\n class=\"text-muted info-text\"\n translate=\"settings.notification.taskNotificationsIntro\"\n ></div>\n </li>\n\n <li>\n <div class=\"switch-button switch-button-sm switch-button-success\">\n <input\n type=\"checkbox\"\n formControlName=\"emailNotifications\"\n id=\"emailNotifications\"\n (ngModelChange)=\"onSettingsSubmit()\"\n /><span> <label for=\"emailNotifications\"></label></span>\n </div>\n <span class=\"name\" translate=\"settings.notification.emailNotifications\"></span>\n <div\n class=\"text-muted info-text\"\n translate=\"settings.notification.emailNotificationsIntro\"\n ></div>\n </li>\n </ul>\n\n <div *ngIf=\"settingsForm.value.emailNotifications\">\n <ul class=\"settings-list\">\n <li *ngFor=\"let frequency of frequencies\">\n <div class=\"switch-button switch-button-sm switch-button-success\">\n <input\n type=\"checkbox\"\n formControlName=\"{{ frequency }}\"\n id=\"{{ frequency }}\"\n (ngModelChange)=\"onSettingsSubmit()\"\n /><span> <label for=\"{{ frequency }}\"></label></span>\n </div>\n <span class=\"name\">{{\n 'settings.notification.' + frequency | translate\n }}</span>\n </li>\n </ul>\n </div>\n </form>\n\n <div class=\"version-holder\">\n <span class=\"category-title\" translate=\"settings.version.title\"></span>\n <ul class=\"settings-list\">\n <li *ngIf=\"build\">\n <div class=\"name\">{{ build.title }}</div>\n <div class=\"text-muted\">{{ build.version }}</div>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</nav>\n",
|
|
1266
1371
|
styles: [".be-scroller-settings{padding-bottom:150px!important}.version-holder{background-color:#f8f9fa;bottom:0;position:fixed;width:259px}.info-text{line-height:1em!important;margin-bottom:15px;padding-right:70px}"]
|
|
1267
1372
|
},] }
|
|
1268
1373
|
];
|
|
@@ -1306,12 +1411,12 @@ RightSidebarModule.decorators = [
|
|
|
1306
1411
|
loader: {
|
|
1307
1412
|
provide: TranslateLoader,
|
|
1308
1413
|
useFactory: ɵ0,
|
|
1309
|
-
deps: [HttpClient]
|
|
1310
|
-
}
|
|
1414
|
+
deps: [HttpClient],
|
|
1415
|
+
},
|
|
1311
1416
|
}),
|
|
1312
|
-
NgbTooltipModule
|
|
1417
|
+
NgbTooltipModule,
|
|
1313
1418
|
],
|
|
1314
|
-
exports: [RightSidebarComponent]
|
|
1419
|
+
exports: [RightSidebarComponent],
|
|
1315
1420
|
},] }
|
|
1316
1421
|
];
|
|
1317
1422
|
|
|
@@ -1411,7 +1516,7 @@ class LeftSidebarComponent {
|
|
|
1411
1516
|
LeftSidebarComponent.decorators = [
|
|
1412
1517
|
{ type: Component, args: [{
|
|
1413
1518
|
selector: 'valtimo-left-sidebar',
|
|
1414
|
-
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<ng-container *ngIf=\"{isResizing: isResizing$ | async} as obs\">\n <div\n class=\"be-left-sidebar\"\n [style.width.px]=\"menuIsOpen ? (menuWidth$ | async) : null\"\n [ngClass]=\"{'no-transition': obs.isResizing}\"\n >\n <div class=\"left-sidebar-wrapper\">\n <a class=\"left-sidebar-toggle\" href=\"javascript:void(0);\"><valtimo-page-title></valtimo-page-title></a>\n <div class=\"progress-widget\" style=\"padding: 20px 0\">\n <ul class=\"sidebar-elements\">\n <li>\n <a\n #toggleButton\n class=\"be-toggle-left-sidebar\"\n href=\"javascript:void(0);\"\n [title]=\"menuTooltipText$ | async\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n width=\"1em\"\n height=\"1em\"\n style=\"-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg)\"\n viewBox=\"0 0 24 24\"\n transform=\"rotate(360)\"\n >\n <path [ngClass]=\"menuIsOpen ? 'd-1' : 'd-1-flipped'\" />\n <path [ngClass]=\"menuIsOpen ? 'd-2' : 'd-2-flipped'\" />\n <path [ngClass]=\"menuIsOpen ? 'd-3' : 'd-3-flipped'\" />\n <path [ngClass]=\"menuIsOpen ? 'd-4' : 'd-4-flipped'\" />\n </svg>\n <span>{{ toggleMenuText$ | async }}</span>\n </a>\n </li>\n </ul>\n </div>\n <div class=\"left-sidebar-spacer\">\n <div class=\"left-sidebar-scroll\">\n <div class=\"left-sidebar-content\">\n <valtimo-menu></valtimo-menu>\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"resize-border\"\n (mouseenter)=\"enterBorder()\"\n (mouseleave)=\"leaveBorder()\"\n (mousedown)=\"resizeBorderClick($event)\"\n [ngClass]=\"{'resize-hover': (mouseIsOnResizeBorder$ | async) || obs.isResizing}\"\n ></div>\n </div>\n</ng-container>\n",
|
|
1519
|
+
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<ng-container *ngIf=\"{isResizing: isResizing$ | async} as obs\">\n <div\n class=\"be-left-sidebar\"\n [style.width.px]=\"menuIsOpen ? (menuWidth$ | async) : null\"\n [ngClass]=\"{'no-transition': obs.isResizing}\"\n >\n <div class=\"left-sidebar-wrapper\">\n <a class=\"left-sidebar-toggle\" href=\"javascript:void(0);\"\n ><valtimo-page-title></valtimo-page-title\n ></a>\n <div class=\"progress-widget\" style=\"padding: 20px 0\">\n <ul class=\"sidebar-elements\">\n <li>\n <a\n #toggleButton\n class=\"be-toggle-left-sidebar\"\n href=\"javascript:void(0);\"\n [title]=\"menuTooltipText$ | async\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n width=\"1em\"\n height=\"1em\"\n style=\"-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg)\"\n viewBox=\"0 0 24 24\"\n transform=\"rotate(360)\"\n >\n <path [ngClass]=\"menuIsOpen ? 'd-1' : 'd-1-flipped'\" />\n <path [ngClass]=\"menuIsOpen ? 'd-2' : 'd-2-flipped'\" />\n <path [ngClass]=\"menuIsOpen ? 'd-3' : 'd-3-flipped'\" />\n <path [ngClass]=\"menuIsOpen ? 'd-4' : 'd-4-flipped'\" />\n </svg>\n <span>{{ toggleMenuText$ | async }}</span>\n </a>\n </li>\n </ul>\n </div>\n <div class=\"left-sidebar-spacer\">\n <div class=\"left-sidebar-scroll\">\n <div class=\"left-sidebar-content\">\n <valtimo-menu></valtimo-menu>\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"resize-border\"\n (mouseenter)=\"enterBorder()\"\n (mouseleave)=\"leaveBorder()\"\n (mousedown)=\"resizeBorderClick($event)\"\n [ngClass]=\"{'resize-hover': (mouseIsOnResizeBorder$ | async) || obs.isResizing}\"\n ></div>\n </div>\n</ng-container>\n",
|
|
1415
1520
|
styles: ["@media screen and (max-width:767px){.be-left-sidebar{width:100%!important}}.be-left-sidebar .left-sidebar-toggle{padding:20px}.be-left-sidebar .left-sidebar-toggle:before{font-size:1.615rem}.be-left-sidebar .sidebar-elements>li>a.be-toggle-left-sidebar{align-items:center;display:flex;height:32px}.be-left-sidebar .left-sidebar-content{padding-top:20px}.be-toggle-left-sidebar svg{height:auto;margin-right:7px;min-width:21px;overflow:visible}.be-toggle-left-sidebar svg path{fill:#696969;transition:.27s ease}.resize-border{background-color:#ff5800;cursor:col-resize;height:100%;margin-right:-3px;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease;width:3px}.resize-hover{opacity:.7}.no-transition{transition:none}.d-1{d:path(\"M3 18v-2h13v2z\")}.d-1-flipped{d:path(\"M3 18v-2h11v2z\")}.d-2{d:path(\"M3 13v-2h10v2H3\")}.d-2-flipped{d:path(\"M3 13v-2h12v2H3\")}.d-3{d:path(\"M3 6h13v2H3V6\")}.d-3-flipped{d:path(\"M3 6h11v2H3V6\")}.d-4{d:path(\"M21 15.61L19.59 17l-5.01-5 5.01-5L21 8.39 17.44 12 21 15.61\")}.d-4-flipped{d:path(\"M15.58 15.61L16.99 17 22 12l-5.01-5-1.41 1.39L19.14 12l-3.56 3.61\")}"]
|
|
1416
1521
|
},] }
|
|
1417
1522
|
];
|
|
@@ -1471,7 +1576,7 @@ class PageTitleComponent {
|
|
|
1471
1576
|
this.setTitle();
|
|
1472
1577
|
this.routerSub = this.router.events
|
|
1473
1578
|
.pipe(filter(event => event instanceof NavigationEnd))
|
|
1474
|
-
.subscribe(
|
|
1579
|
+
.subscribe(event => {
|
|
1475
1580
|
this.setTitle();
|
|
1476
1581
|
});
|
|
1477
1582
|
}
|
|
@@ -1514,11 +1619,8 @@ class PageTitleModule {
|
|
|
1514
1619
|
PageTitleModule.decorators = [
|
|
1515
1620
|
{ type: NgModule, args: [{
|
|
1516
1621
|
declarations: [PageTitleComponent],
|
|
1517
|
-
imports: [
|
|
1518
|
-
|
|
1519
|
-
TranslateModule
|
|
1520
|
-
],
|
|
1521
|
-
exports: [PageTitleComponent]
|
|
1622
|
+
imports: [CommonModule, TranslateModule],
|
|
1623
|
+
exports: [PageTitleComponent],
|
|
1522
1624
|
},] }
|
|
1523
1625
|
];
|
|
1524
1626
|
|
|
@@ -1542,12 +1644,8 @@ class LeftSidebarModule {
|
|
|
1542
1644
|
LeftSidebarModule.decorators = [
|
|
1543
1645
|
{ type: NgModule, args: [{
|
|
1544
1646
|
declarations: [LeftSidebarComponent],
|
|
1545
|
-
imports: [
|
|
1546
|
-
|
|
1547
|
-
MenuModule,
|
|
1548
|
-
PageTitleModule
|
|
1549
|
-
],
|
|
1550
|
-
exports: [LeftSidebarComponent]
|
|
1647
|
+
imports: [CommonModule, MenuModule, PageTitleModule],
|
|
1648
|
+
exports: [LeftSidebarComponent],
|
|
1551
1649
|
},] }
|
|
1552
1650
|
];
|
|
1553
1651
|
|
|
@@ -1599,7 +1697,7 @@ class BooleanTypeConverter {
|
|
|
1599
1697
|
return value ? 'Yes' : 'No';
|
|
1600
1698
|
}
|
|
1601
1699
|
else {
|
|
1602
|
-
return value ?
|
|
1700
|
+
return value ? definition.enum[0] || 'Yes' : definition.enum[1] || 'No';
|
|
1603
1701
|
}
|
|
1604
1702
|
}
|
|
1605
1703
|
}
|
|
@@ -1736,7 +1834,7 @@ const TYPE_CONVERTERS = [
|
|
|
1736
1834
|
dateTypeConverter,
|
|
1737
1835
|
enumTypeConverter,
|
|
1738
1836
|
stringReplaceUnderscoreTypeConverter,
|
|
1739
|
-
relatedFilesTypeConverter
|
|
1837
|
+
relatedFilesTypeConverter,
|
|
1740
1838
|
];
|
|
1741
1839
|
|
|
1742
1840
|
/*
|
|
@@ -1762,7 +1860,7 @@ class ViewContentService {
|
|
|
1762
1860
|
}
|
|
1763
1861
|
get(value, definition) {
|
|
1764
1862
|
if (!definition.viewType) {
|
|
1765
|
-
definition.viewType = typeof
|
|
1863
|
+
definition.viewType = typeof value;
|
|
1766
1864
|
}
|
|
1767
1865
|
if (typeof this.converters[definition.viewType] !== 'undefined') {
|
|
1768
1866
|
return this.converters[definition.viewType].convert(value, definition);
|
|
@@ -1781,7 +1879,7 @@ class ViewContentService {
|
|
|
1781
1879
|
ViewContentService.ɵprov = ɵɵdefineInjectable({ factory: function ViewContentService_Factory() { return new ViewContentService(); }, token: ViewContentService, providedIn: "root" });
|
|
1782
1880
|
ViewContentService.decorators = [
|
|
1783
1881
|
{ type: Injectable, args: [{
|
|
1784
|
-
providedIn: 'root'
|
|
1882
|
+
providedIn: 'root',
|
|
1785
1883
|
},] }
|
|
1786
1884
|
];
|
|
1787
1885
|
ViewContentService.ctorParameters = () => [];
|
|
@@ -1815,7 +1913,7 @@ class ListComponent {
|
|
|
1815
1913
|
this.regExpStringRemoveUnderscore = /_/g;
|
|
1816
1914
|
this.sort$ = new BehaviorSubject({
|
|
1817
1915
|
state: { name: '', direction: 'DESC' },
|
|
1818
|
-
isSorting: false
|
|
1916
|
+
isSorting: false,
|
|
1819
1917
|
});
|
|
1820
1918
|
this.viewListAs = localStorage.getItem('viewListAs') || 'table';
|
|
1821
1919
|
}
|
|
@@ -1872,7 +1970,7 @@ class ListComponent {
|
|
|
1872
1970
|
item.listItemFields = this.fields.map(field => ({
|
|
1873
1971
|
key: field.key,
|
|
1874
1972
|
label: field.label,
|
|
1875
|
-
value: this.resolveObject(field, item)
|
|
1973
|
+
value: this.resolveObject(field, item),
|
|
1876
1974
|
}));
|
|
1877
1975
|
});
|
|
1878
1976
|
}
|
|
@@ -1883,7 +1981,9 @@ class ListComponent {
|
|
|
1883
1981
|
resolveObject(definition, obj) {
|
|
1884
1982
|
const definitionKey = definition.key;
|
|
1885
1983
|
const customPropString = '$.';
|
|
1886
|
-
const key = definitionKey.includes(customPropString)
|
|
1984
|
+
const key = definitionKey.includes(customPropString)
|
|
1985
|
+
? definitionKey.split(customPropString)[1]
|
|
1986
|
+
: definitionKey;
|
|
1887
1987
|
const resolvedObjValue = key.split('.').reduce(function (prev, curr) {
|
|
1888
1988
|
return prev ? prev[curr] : null;
|
|
1889
1989
|
}, obj || self);
|
|
@@ -1932,7 +2032,7 @@ ListComponent.PAGINATION_SIZE = 'PaginationSize';
|
|
|
1932
2032
|
ListComponent.decorators = [
|
|
1933
2033
|
{ type: Component, args: [{
|
|
1934
2034
|
selector: 'valtimo-list',
|
|
1935
|
-
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 *ngIf=\"(items?.length > 0 && fields?.length > 0) || header\">\n <div\n class=\"d-flex align-items-center search-holder bg-light\"\n [ngClass]=\"{'pb-4 pt-4': !header}\"\n *ngIf=\"isSearchable || viewMode || header\"\n >\n <div class=\"align-self-start\">\n <ng-content select=\"[header]\"></ng-content>\n </div>\n\n <div class=\"ml-auto row\">\n <input
|
|
2035
|
+
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 *ngIf=\"(items?.length > 0 && fields?.length > 0) || header\">\n <div\n class=\"d-flex align-items-center search-holder bg-light\"\n [ngClass]=\"{'pb-4 pt-4': !header}\"\n *ngIf=\"isSearchable || viewMode || header\"\n >\n <div class=\"align-self-start\">\n <ng-content select=\"[header]\"></ng-content>\n </div>\n\n <div class=\"ml-auto row\">\n <input\n *ngIf=\"isSearchable\"\n class=\"form-control col-sm-8\"\n type=\"text\"\n placeholder=\"Search...\"\n #searchBox\n />\n\n <div\n class=\"switch-view-holder btn-group col-sm-4 mt-1 mt-sm-0\"\n role=\"group\"\n *ngIf=\"viewMode\"\n >\n <button\n class=\"btn\"\n [ngClass]=\"viewListAs === 'table' ? 'btn-primary' : 'btn-default'\"\n (click)=\"switchView('table')\"\n >\n <i class=\"mdi mdi-view-headline\"></i>\n </button>\n <button\n class=\"btn\"\n [ngClass]=\"viewListAs === 'tile' ? 'btn-primary' : 'btn-default'\"\n (click)=\"switchView('tile')\"\n >\n <i class=\"mdi mdi-view-module\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <ng-content select=\"[tabs]\"></ng-content>\n\n <div *ngIf=\"items?.length > 0 && fields?.length > 0\">\n <div class=\"table-responsive noSwipe\" *ngIf=\"!viewMode || viewListAs === 'table'\">\n <table class=\"table table-striped table-hover m-0\" *ngIf=\"sort$ | async as sort\">\n <thead>\n <tr>\n <th\n *ngFor=\"let field of fields\"\n (click)=\"handleFieldClick(field.key, field.sortable)\"\n [ngClass]=\"{\n sortable: field.sortable,\n 'is-being-sorted': field.key === sort.state.name && sort.isSorting,\n ascending: sort.state.direction === 'ASC'\n }\"\n >\n {{ field.label }}\n </th>\n <th *ngFor=\"let action of actions\">\n {{ action.columnName }}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n [ngClass]=\"{'click-able': this.rowClicked.observers.length > 0}\"\n *ngFor=\"let item of items | listFilter: searchModel\"\n (click)=\"onClickRow(item)\"\n >\n <td class=\"align-top\" *ngFor=\"let listItemField of item.listItemFields\">\n {{ listItemField.value || '-' }}\n </td>\n <td class=\"align-top\" *ngFor=\"let action of actions\">\n <i\n style=\"cursor: pointer\"\n [ngClass]=\"action.iconClass\"\n (click)=\"action.callback(item)\"\n ></i>\n </td>\n </tr>\n <tr>\n <td *ngIf=\"(items | listFilter: searchModel).length === 0\" [colSpan]=\"fields.length\">\n {{ 'list.noMatchingItems' | translate }}<i>\"{{ searchModel }}\"</i>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <div class=\"container-fluid\" *ngIf=\"viewMode && viewListAs === 'tile'\">\n <div class=\"row p-2\">\n <div\n class=\"col-12 col-sm-6 col-xl-4 p-2\"\n *ngFor=\"let item of items | listFilter: searchModel\"\n (click)=\"onClickRow(item)\"\n >\n <div class=\"click-able tile-holder p-4\">\n <dl class=\"row mb-0\" *ngFor=\"let listItemField of item.listItemFields\">\n <dt class=\"col-12 col-md-5 text-xl-right\">{{ listItemField.label }}</dt>\n <dd class=\"col-12 col-md-7\">{{ listItemField.value || '-' }}</dd>\n </dl>\n </div>\n </div>\n <div class=\"col-12\" *ngIf=\"(items | listFilter: searchModel).length === 0\">\n {{ 'list.noMatchingItems' | translate }}<i>\"{{ searchModel }}\"</i>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"pagination-holder bg-light px-4 pt-4 pb-2 overflow-auto row mr-0 ml-0\"\n *ngIf=\"pagination && items?.length > 0 && fields?.length > 0\"\n >\n <div class=\"float-left page-count col-4\">\n <strong>{{\n 'list.currentPage' | translate: {current: pagination.page, total: getTotalPageCount()}\n }}</strong>\n <br />\n {{\n pagination.collectionSize === 1\n ? ('list.showingResult' | translate: {number: (items | listFilter: searchModel).length})\n : ('list.showingResults'\n | translate\n : {\n number: (items | listFilter: searchModel).length,\n total: pagination.collectionSize\n })\n }}\n </div>\n <div class=\"col-4 text-center\">\n {{ 'list.show' | translate }}\n <select [(ngModel)]=\"pagination.size\" (ngModelChange)=\"setPaginationSize($event)\">\n <option [ngValue]=\"10\">10</option>\n <option [ngValue]=\"25\">25</option>\n <option [ngValue]=\"50\">50</option>\n <option [ngValue]=\"100\">100</option>\n </select>\n {{ 'list.entries' | translate }}\n </div>\n <div class=\"col-4\">\n <ngb-pagination\n *ngIf=\"pagination.collectionSize > pagination.size\"\n class=\"float-right\"\n [collectionSize]=\"pagination.collectionSize\"\n [(page)]=\"pagination.page\"\n [pageSize]=\"pagination.size\"\n [maxSize]=\"pagination.maxPaginationItemSize\"\n [rotate]=\"true\"\n (pageChange)=\"onClickPagination(pagination.page)\"\n ></ngb-pagination>\n </div>\n </div>\n\n <div id=\"no-results\" class=\"p-5\" *ngIf=\"items?.length === 0\">\n {{ 'list.noResults' | translate }}\n </div>\n\n <div id=\"no-field-definitions\" class=\"p-5\" *ngIf=\"items?.length > 0 && fields?.length === 0\">\n {{ 'list.noFieldDefinitions' | translate }}\n </div>\n</div>\n",
|
|
1936
2036
|
styles: ["@charset \"UTF-8\";\n/*!\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 */.table{table-layout:fixed}.click-able{cursor:pointer}.pagination-holder{border-top:1px solid #dee2e6}.search-holder{border-bottom:1px solid #dee2e6;height:80px;padding-left:18px;padding-right:18px}.switch-view-holder i{font-size:1.8rem;line-height:1.2rem;margin-top:9px}.tile-holder{background-color:#f5f5f5;border:1px solid transparent}.tile-holder:hover{background-color:#eee;border:1px solid #dee2e6}.page-count{margin-bottom:1rem}td:first-child,th:first-child{padding-left:25px}th.sortable{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:pointer;user-select:none}th.sortable:after{content:\" \uF0DD\";font-family:Font Awesome\\ 5 Free;margin:auto 0 auto 5px;opacity:0;position:absolute;transition:all .15s ease}th.sortable.is-being-sorted.ascending:after{transform:rotate(-180deg)}th.sortable:hover:after{opacity:.5}th.sortable.is-being-sorted:after{opacity:1}"]
|
|
1937
2037
|
},] }
|
|
1938
2038
|
];
|
|
@@ -1979,16 +2079,12 @@ class ListFilterPipe {
|
|
|
1979
2079
|
if (!filterText) {
|
|
1980
2080
|
return list;
|
|
1981
2081
|
}
|
|
1982
|
-
return list.filter(item => Object.keys(item).some(k => item[k] != null &&
|
|
1983
|
-
item[k]
|
|
1984
|
-
.toString()
|
|
1985
|
-
.toLowerCase()
|
|
1986
|
-
.includes(filterText.toLowerCase())));
|
|
2082
|
+
return list.filter(item => Object.keys(item).some(k => item[k] != null && item[k].toString().toLowerCase().includes(filterText.toLowerCase())));
|
|
1987
2083
|
}
|
|
1988
2084
|
}
|
|
1989
2085
|
ListFilterPipe.decorators = [
|
|
1990
2086
|
{ type: Pipe, args: [{
|
|
1991
|
-
name: 'listFilter'
|
|
2087
|
+
name: 'listFilter',
|
|
1992
2088
|
},] }
|
|
1993
2089
|
];
|
|
1994
2090
|
|
|
@@ -2012,13 +2108,12 @@ ListFilterPipe.decorators = [
|
|
|
2012
2108
|
*/
|
|
2013
2109
|
class CardComponent {
|
|
2014
2110
|
constructor() { }
|
|
2015
|
-
ngOnInit() {
|
|
2016
|
-
}
|
|
2111
|
+
ngOnInit() { }
|
|
2017
2112
|
}
|
|
2018
2113
|
CardComponent.decorators = [
|
|
2019
2114
|
{ type: Component, args: [{
|
|
2020
2115
|
selector: 'valtimo-card',
|
|
2021
|
-
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 class=\"card card-border-color card-border-color-primary\">\n <div *ngIf=\"title || subtitle\"class=\"card-header card-header-divider\">\n <span *ngIf=\"title\">{{title}}</span>\n <span *ngIf=\"subtitle\" class=\"card-subtitle\">{{subtitle}}</span>\n </div>\n <div class=\"card-body\">\n <ng-content></ng-content>\n </div>\n</div>\n",
|
|
2116
|
+
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 class=\"card card-border-color card-border-color-primary\">\n <div *ngIf=\"title || subtitle\" class=\"card-header card-header-divider\">\n <span *ngIf=\"title\">{{ title }}</span>\n <span *ngIf=\"subtitle\" class=\"card-subtitle\">{{ subtitle }}</span>\n </div>\n <div class=\"card-body\">\n <ng-content></ng-content>\n </div>\n</div>\n",
|
|
2022
2117
|
styles: [""]
|
|
2023
2118
|
},] }
|
|
2024
2119
|
];
|
|
@@ -2048,10 +2143,8 @@ class CardModule {
|
|
|
2048
2143
|
CardModule.decorators = [
|
|
2049
2144
|
{ type: NgModule, args: [{
|
|
2050
2145
|
declarations: [CardComponent],
|
|
2051
|
-
imports: [
|
|
2052
|
-
|
|
2053
|
-
],
|
|
2054
|
-
exports: [CardComponent]
|
|
2146
|
+
imports: [CommonModule],
|
|
2147
|
+
exports: [CardComponent],
|
|
2055
2148
|
},] }
|
|
2056
2149
|
];
|
|
2057
2150
|
|
|
@@ -2076,7 +2169,7 @@ ListModule.decorators = [
|
|
|
2076
2169
|
{ type: NgModule, args: [{
|
|
2077
2170
|
declarations: [ListComponent, ListFilterPipe],
|
|
2078
2171
|
imports: [CommonModule, CardModule, NgbPaginationModule, FormsModule, TranslateModule],
|
|
2079
|
-
exports: [ListComponent, ListFilterPipe]
|
|
2172
|
+
exports: [ListComponent, ListFilterPipe],
|
|
2080
2173
|
},] }
|
|
2081
2174
|
];
|
|
2082
2175
|
|
|
@@ -2136,7 +2229,7 @@ class BreadcrumbNavigationComponent {
|
|
|
2136
2229
|
this.routerSub = this.router.events
|
|
2137
2230
|
.pipe(filter(event => event instanceof NavigationEnd))
|
|
2138
2231
|
.pipe(map(() => this.route))
|
|
2139
|
-
.pipe(map(
|
|
2232
|
+
.pipe(map(route => {
|
|
2140
2233
|
while (route.firstChild) {
|
|
2141
2234
|
route = route.firstChild;
|
|
2142
2235
|
}
|
|
@@ -2157,7 +2250,7 @@ class BreadcrumbNavigationComponent {
|
|
|
2157
2250
|
url: snapshot.url.join('/'),
|
|
2158
2251
|
path: snapshot.routeConfig.path,
|
|
2159
2252
|
label: snapshot.data['title'],
|
|
2160
|
-
params: snapshot.params
|
|
2253
|
+
params: snapshot.params,
|
|
2161
2254
|
};
|
|
2162
2255
|
this.generateBreadcrumbs(activeRoute);
|
|
2163
2256
|
}
|
|
@@ -2165,14 +2258,14 @@ class BreadcrumbNavigationComponent {
|
|
|
2165
2258
|
generateBreadcrumbs(activeBreadcrumb) {
|
|
2166
2259
|
this.breadcrumbs = [];
|
|
2167
2260
|
this.router.config.map(routerConfig => {
|
|
2168
|
-
if (activeBreadcrumb.path.indexOf(routerConfig.path + '/') === 0
|
|
2169
|
-
|
|
2170
|
-
|
|
2261
|
+
if (activeBreadcrumb.path.indexOf(routerConfig.path + '/') === 0 &&
|
|
2262
|
+
activeBreadcrumb.path !== routerConfig.path &&
|
|
2263
|
+
routerConfig.path !== '') {
|
|
2171
2264
|
const parentRoute = {
|
|
2172
2265
|
url: routerConfig.path.replace(/:(.+?)\b/g, (_, p1) => activeBreadcrumb.params[p1]),
|
|
2173
2266
|
path: routerConfig.path,
|
|
2174
2267
|
label: routerConfig.data['title'],
|
|
2175
|
-
params: activeBreadcrumb.params
|
|
2268
|
+
params: activeBreadcrumb.params,
|
|
2176
2269
|
};
|
|
2177
2270
|
const exist = this.breadcrumbs.findIndex(item => item.url === parentRoute.url);
|
|
2178
2271
|
if (exist === -1) {
|
|
@@ -2217,12 +2310,8 @@ class BreadcrumbNavigationModule {
|
|
|
2217
2310
|
BreadcrumbNavigationModule.decorators = [
|
|
2218
2311
|
{ type: NgModule, args: [{
|
|
2219
2312
|
declarations: [BreadcrumbNavigationComponent],
|
|
2220
|
-
imports: [
|
|
2221
|
-
|
|
2222
|
-
RouterModule,
|
|
2223
|
-
TranslateModule
|
|
2224
|
-
],
|
|
2225
|
-
exports: [BreadcrumbNavigationComponent]
|
|
2313
|
+
imports: [CommonModule, RouterModule, TranslateModule],
|
|
2314
|
+
exports: [BreadcrumbNavigationComponent],
|
|
2226
2315
|
},] }
|
|
2227
2316
|
];
|
|
2228
2317
|
|
|
@@ -2246,12 +2335,8 @@ class PageHeaderModule {
|
|
|
2246
2335
|
PageHeaderModule.decorators = [
|
|
2247
2336
|
{ type: NgModule, args: [{
|
|
2248
2337
|
declarations: [PageHeaderComponent],
|
|
2249
|
-
imports: [
|
|
2250
|
-
|
|
2251
|
-
PageTitleModule,
|
|
2252
|
-
BreadcrumbNavigationModule
|
|
2253
|
-
],
|
|
2254
|
-
exports: [PageHeaderComponent]
|
|
2338
|
+
imports: [CommonModule, PageTitleModule, BreadcrumbNavigationModule],
|
|
2339
|
+
exports: [PageHeaderComponent],
|
|
2255
2340
|
},] }
|
|
2256
2341
|
];
|
|
2257
2342
|
|
|
@@ -2317,7 +2402,7 @@ class WidgetComponent {
|
|
|
2317
2402
|
WidgetComponent.decorators = [
|
|
2318
2403
|
{ type: Component, args: [{
|
|
2319
2404
|
selector: 'valtimo-widget',
|
|
2320
|
-
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 class=\"card card-border card-contrast {{ cardClassName }}\">\n <div class=\"card-header {{ contrastClass }} {{ dividerClass }}\"
|
|
2405
|
+
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 class=\"card card-border card-contrast {{ cardClassName }}\">\n <div class=\"card-header {{ contrastClass }} {{ dividerClass }}\" *ngIf=\"title || subtitle\">\n <div class=\"row\">\n <div class=\"col-7\" [ngClass]=\"{clickable: collapseAble}\" (click)=\"toggleContent()\">\n <!-- Title -->\n <div *ngIf=\"title\" class=\"text-truncate\">{{ title }}</div>\n <!-- Sub title -->\n <div *ngIf=\"subtitle\" class=\"card-subtitle text-truncate\">{{ subtitle }}</div>\n </div>\n\n <!-- Tools-->\n <div class=\"tools col-5 text-right\">\n <!-- Collapse content -->\n <a\n class=\"icon mdi\"\n *ngIf=\"collapseAble\"\n [ngClass]=\"{'mdi-chevron-up': isCollapsed, 'mdi-chevron-down': !isCollapsed}\"\n (click)=\"toggleContent()\"\n ></a>\n </div>\n </div>\n </div>\n <!-- content -->\n <div [hidden]=\"!isCollapsed\">\n <ng-content></ng-content>\n </div>\n</div>\n",
|
|
2321
2406
|
styles: [".card-contrast .card-header{padding:20px!important}.card-subtitle{margin-bottom:0}.card-full,.card-full .card-subtitle,.card-full .tools .icon{color:#6b6b6b!important}.card-full-warning,.card-full-warning .card-subtitle,.card-full-warning .tools .icon{color:#343a40!important}.card-full-danger,.card-full-danger .card-subtitle,.card-full-danger .tools .icon,.card-full-dark,.card-full-dark .card-subtitle,.card-full-dark .tools .icon,.card-full-info,.card-full-info .card-subtitle,.card-full-info .tools .icon,.card-full-primary,.card-full-primary .card-subtitle,.card-full-primary .tools .icon,.card-full-success,.card-full-success .card-subtitle,.card-full-success .tools .icon{color:#fff!important}.card-contrast .card-body{padding-top:15px}.card-body{padding:15px 20px}.pie-label{font-size:16px!important}.widget.widget-tile svg.ngx-charts{margin-left:-1.5rem!important}svg.ngx-charts{margin:0;padding:0}"]
|
|
2322
2407
|
},] }
|
|
2323
2408
|
];
|
|
@@ -2354,10 +2439,8 @@ class WidgetModule {
|
|
|
2354
2439
|
WidgetModule.decorators = [
|
|
2355
2440
|
{ type: NgModule, args: [{
|
|
2356
2441
|
declarations: [WidgetComponent],
|
|
2357
|
-
imports: [
|
|
2358
|
-
|
|
2359
|
-
],
|
|
2360
|
-
exports: [WidgetComponent]
|
|
2442
|
+
imports: [CommonModule],
|
|
2443
|
+
exports: [WidgetComponent],
|
|
2361
2444
|
},] }
|
|
2362
2445
|
];
|
|
2363
2446
|
|
|
@@ -2388,7 +2471,7 @@ class FieldAutoFocusDirective {
|
|
|
2388
2471
|
}
|
|
2389
2472
|
FieldAutoFocusDirective.decorators = [
|
|
2390
2473
|
{ type: Directive, args: [{
|
|
2391
|
-
selector: '[valtimoFieldAutoFocus]'
|
|
2474
|
+
selector: '[valtimoFieldAutoFocus]',
|
|
2392
2475
|
},] }
|
|
2393
2476
|
];
|
|
2394
2477
|
FieldAutoFocusDirective.ctorParameters = () => [
|
|
@@ -2415,12 +2498,8 @@ class FieldAutoFocusModule {
|
|
|
2415
2498
|
FieldAutoFocusModule.decorators = [
|
|
2416
2499
|
{ type: NgModule, args: [{
|
|
2417
2500
|
declarations: [FieldAutoFocusDirective],
|
|
2418
|
-
exports: [
|
|
2419
|
-
|
|
2420
|
-
],
|
|
2421
|
-
imports: [
|
|
2422
|
-
CommonModule
|
|
2423
|
-
]
|
|
2501
|
+
exports: [FieldAutoFocusDirective],
|
|
2502
|
+
imports: [CommonModule],
|
|
2424
2503
|
},] }
|
|
2425
2504
|
];
|
|
2426
2505
|
|
|
@@ -2493,15 +2572,15 @@ class BpmnJsDiagramComponent {
|
|
|
2493
2572
|
}
|
|
2494
2573
|
if (inputData) {
|
|
2495
2574
|
Object.keys(inputData).forEach(key => {
|
|
2496
|
-
const diagramContainer = this.el.nativeElement.querySelector('svg')
|
|
2497
|
-
.
|
|
2575
|
+
const diagramContainer = this.el.nativeElement.querySelector('svg').getBoundingClientRect(), diagramElm = this.el.nativeElement
|
|
2576
|
+
.querySelector(`g[data-element-id=${key}]`)
|
|
2498
2577
|
.getBoundingClientRect();
|
|
2499
2578
|
this.setMax(key);
|
|
2500
2579
|
this.heatPoints.data.push({
|
|
2501
2580
|
x: Math.round(diagramElm.x - diagramContainer.x + diagramElm.width / 2),
|
|
2502
2581
|
y: Math.round(diagramElm.y - diagramContainer.y + diagramElm.height / 2),
|
|
2503
2582
|
value: inputData[key][valueKey],
|
|
2504
|
-
radius: diagramElm.width / 2
|
|
2583
|
+
radius: diagramElm.width / 2,
|
|
2505
2584
|
});
|
|
2506
2585
|
if (inputData[key].count > 0) {
|
|
2507
2586
|
this.addCounterActiveOverlays(key, inputData);
|
|
@@ -2525,27 +2604,27 @@ class BpmnJsDiagramComponent {
|
|
|
2525
2604
|
overlays.add(key, {
|
|
2526
2605
|
position: {
|
|
2527
2606
|
bottom: -10,
|
|
2528
|
-
left: 0
|
|
2607
|
+
left: 0,
|
|
2529
2608
|
},
|
|
2530
2609
|
show: {
|
|
2531
2610
|
minZoom: 0,
|
|
2532
|
-
maxZoom: 5.0
|
|
2611
|
+
maxZoom: 5.0,
|
|
2533
2612
|
},
|
|
2534
|
-
html: `<span class="badge badge-pill badge-primary">${inputData[key].count}</span
|
|
2613
|
+
html: `<span class="badge badge-pill badge-primary">${inputData[key].count}</span>`,
|
|
2535
2614
|
});
|
|
2536
2615
|
}
|
|
2537
2616
|
showHeatmap() {
|
|
2538
2617
|
this.heatMapInstance = create({
|
|
2539
2618
|
radius: 54,
|
|
2540
|
-
blur: .
|
|
2541
|
-
maxOpacity: .4,
|
|
2619
|
+
blur: 0.7,
|
|
2620
|
+
maxOpacity: 0.4,
|
|
2542
2621
|
minOpacity: 0,
|
|
2543
|
-
container: this.el.nativeElement
|
|
2622
|
+
container: this.el.nativeElement,
|
|
2544
2623
|
});
|
|
2545
2624
|
this.heatMapInstance.setData({
|
|
2546
2625
|
min: this.min,
|
|
2547
2626
|
max: this.max,
|
|
2548
|
-
data: this.heatPoints.data
|
|
2627
|
+
data: this.heatPoints.data,
|
|
2549
2628
|
});
|
|
2550
2629
|
}
|
|
2551
2630
|
clearHeatmap() {
|
|
@@ -2567,7 +2646,7 @@ class BpmnJsDiagramComponent {
|
|
|
2567
2646
|
BpmnJsDiagramComponent.decorators = [
|
|
2568
2647
|
{ type: Component, args: [{
|
|
2569
2648
|
selector: 'valtimo-bpmn-js-diagram',
|
|
2570
|
-
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 class=\"p-4\" *ngIf=\"heatmapDuration || heatmapCount\">\n <div class=\"switch-button switch-button-sm switch-button-success\">\n <input
|
|
2649
|
+
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 class=\"p-4\" *ngIf=\"heatmapDuration || heatmapCount\">\n <div class=\"switch-button switch-button-sm switch-button-success\">\n <input\n type=\"checkbox\"\n id=\"toggleHeatmap\"\n [checked]=\"heatmapMode\"\n (click)=\"toggleHeatmap()\"\n /><span> <label for=\"toggleHeatmap\"></label></span>\n </div>\n</div>\n\n<div #ref class=\"diagram-container\"></div>\n\n<div *ngIf=\"historicActivityInstances\" class=\"p-4 text-center legenda-holder\">\n <span\n ><div class=\"legenda highlight-overlay-past\"></div>\n Executed tasks</span\n >\n <span class=\"ml-3\"\n ><div class=\"legenda highlight-overlay-current\"></div>\n Current tasks</span\n >\n</div>\n\n<div *ngIf=\"heatmapDuration || heatmapCount\" class=\"p-4 text-center legenda-holder\">\n <span\n ><span class=\"badge badge-pill badge-primary\">N</span> Amount of currently active\n instances of this task.</span\n >\n <span\n > | Red/yellow/green orbs: The amount of times the task is executed in\n comparison to the other tasks.</span\n >\n</div>\n",
|
|
2571
2650
|
styles: [""]
|
|
2572
2651
|
},] }
|
|
2573
2652
|
];
|
|
@@ -2601,10 +2680,8 @@ class BpmnJsDiagramModule {
|
|
|
2601
2680
|
BpmnJsDiagramModule.decorators = [
|
|
2602
2681
|
{ type: NgModule, args: [{
|
|
2603
2682
|
declarations: [BpmnJsDiagramComponent],
|
|
2604
|
-
imports: [
|
|
2605
|
-
|
|
2606
|
-
],
|
|
2607
|
-
exports: [BpmnJsDiagramComponent]
|
|
2683
|
+
imports: [CommonModule],
|
|
2684
|
+
exports: [BpmnJsDiagramComponent],
|
|
2608
2685
|
},] }
|
|
2609
2686
|
];
|
|
2610
2687
|
|
|
@@ -2628,7 +2705,7 @@ class TimelineComponent {
|
|
|
2628
2705
|
TimelineComponent.decorators = [
|
|
2629
2706
|
{ type: Component, args: [{
|
|
2630
2707
|
selector: 'valtimo-timeline',
|
|
2631
|
-
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\"
|
|
2708
|
+
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",
|
|
2632
2709
|
styles: [""]
|
|
2633
2710
|
},] }
|
|
2634
2711
|
];
|
|
@@ -2656,11 +2733,8 @@ class TimelineModule {
|
|
|
2656
2733
|
TimelineModule.decorators = [
|
|
2657
2734
|
{ type: NgModule, args: [{
|
|
2658
2735
|
declarations: [TimelineComponent],
|
|
2659
|
-
imports: [
|
|
2660
|
-
|
|
2661
|
-
TranslateModule,
|
|
2662
|
-
],
|
|
2663
|
-
exports: [TimelineComponent]
|
|
2736
|
+
imports: [CommonModule, TranslateModule],
|
|
2737
|
+
exports: [TimelineComponent],
|
|
2664
2738
|
},] }
|
|
2665
2739
|
];
|
|
2666
2740
|
|
|
@@ -2750,10 +2824,8 @@ class FilterSidebarModule {
|
|
|
2750
2824
|
FilterSidebarModule.decorators = [
|
|
2751
2825
|
{ type: NgModule, args: [{
|
|
2752
2826
|
declarations: [FilterSidebarComponent],
|
|
2753
|
-
imports: [
|
|
2754
|
-
|
|
2755
|
-
],
|
|
2756
|
-
exports: [FilterSidebarComponent]
|
|
2827
|
+
imports: [CommonModule],
|
|
2828
|
+
exports: [FilterSidebarComponent],
|
|
2757
2829
|
},] }
|
|
2758
2830
|
];
|
|
2759
2831
|
|
|
@@ -2780,8 +2852,7 @@ class UploaderComponent {
|
|
|
2780
2852
|
this.resourceRegistered = new EventEmitter();
|
|
2781
2853
|
this.showFileList = true;
|
|
2782
2854
|
}
|
|
2783
|
-
ngOnInit() {
|
|
2784
|
-
}
|
|
2855
|
+
ngOnInit() { }
|
|
2785
2856
|
onFileFieldChange(files) {
|
|
2786
2857
|
for (const file of files) {
|
|
2787
2858
|
this.uploadFile(file);
|
|
@@ -2811,7 +2882,7 @@ class UploaderComponent {
|
|
|
2811
2882
|
UploaderComponent.decorators = [
|
|
2812
2883
|
{ type: Component, args: [{
|
|
2813
2884
|
selector: 'valtimo-uploader',
|
|
2814
|
-
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
|
|
2885
|
+
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 class=\"upload-file-container p-5\"\n (click)=\"fileInput.click()\"\n valtimoUploaderDragDrop\n (fileDropped)=\"onFileFieldChange($event)\"\n>\n <span class=\"align-middle\"><i class=\"fa fa-cloud-upload fa-4x\"></i></span>\n <input hidden type=\"file\" #fileInput (change)=\"onFileFieldChange($event.target.files)\" multiple />\n</div>\n<div *ngIf=\"showFileList\">\n <div class=\"files-list px-3 py-2\" *ngFor=\"let resource of resources\">\n <p class=\"m-0\">\n <strong>{{ resource.name }}</strong\n ><br />\n {{ resource.sizeInBytes | filesize }}\n </p>\n <button class=\"delete-file\" (click)=\"deleteResource(resource)\">\n <i class=\"fa fa-trash text-danger\"></i>\n </button>\n </div>\n</div>\n",
|
|
2815
2886
|
styles: [".upload-file-container{background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:100px;border:2px dashed #d5d8de;color:#d5d8de;margin:0 0 1rem;text-align:center}.upload-file-container i.mdi-cloud-upload{font-size:5em}.upload-file-container:hover{cursor:pointer;opacity:.8}.files-list{background:#fff;border:1px solid #bdc0c7;display:flex;font-size:1em;justify-content:space-between;margin:1rem auto;padding:5px}.files-list .delete-file{background:transparent;border:none;cursor:pointer}.files-list .delete-file i{font-size:1.5em}"]
|
|
2816
2887
|
},] }
|
|
2817
2888
|
];
|
|
@@ -2862,7 +2933,7 @@ class UploaderDragDropDirective {
|
|
|
2862
2933
|
}
|
|
2863
2934
|
UploaderDragDropDirective.decorators = [
|
|
2864
2935
|
{ type: Directive, args: [{
|
|
2865
|
-
selector: '[valtimoUploaderDragDrop]'
|
|
2936
|
+
selector: '[valtimoUploaderDragDrop]',
|
|
2866
2937
|
},] }
|
|
2867
2938
|
];
|
|
2868
2939
|
UploaderDragDropDirective.propDecorators = {
|
|
@@ -2889,14 +2960,7 @@ UploaderDragDropDirective.propDecorators = {
|
|
|
2889
2960
|
*/
|
|
2890
2961
|
class FileSizePipe {
|
|
2891
2962
|
constructor() {
|
|
2892
|
-
this.units = [
|
|
2893
|
-
'bytes',
|
|
2894
|
-
'KB',
|
|
2895
|
-
'MB',
|
|
2896
|
-
'GB',
|
|
2897
|
-
'TB',
|
|
2898
|
-
'PB'
|
|
2899
|
-
];
|
|
2963
|
+
this.units = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB'];
|
|
2900
2964
|
}
|
|
2901
2965
|
transform(bytes = 0, precision = 2) {
|
|
2902
2966
|
if (isNaN(parseFloat(String(bytes))) || !isFinite(bytes)) {
|
|
@@ -2912,7 +2976,7 @@ class FileSizePipe {
|
|
|
2912
2976
|
}
|
|
2913
2977
|
FileSizePipe.decorators = [
|
|
2914
2978
|
{ type: Pipe, args: [{
|
|
2915
|
-
name: 'filesize'
|
|
2979
|
+
name: 'filesize',
|
|
2916
2980
|
},] }
|
|
2917
2981
|
];
|
|
2918
2982
|
|
|
@@ -2936,10 +3000,8 @@ class FileSizeModule {
|
|
|
2936
3000
|
FileSizeModule.decorators = [
|
|
2937
3001
|
{ type: NgModule, args: [{
|
|
2938
3002
|
declarations: [FileSizePipe],
|
|
2939
|
-
imports: [
|
|
2940
|
-
|
|
2941
|
-
],
|
|
2942
|
-
exports: [FileSizePipe]
|
|
3003
|
+
imports: [CommonModule],
|
|
3004
|
+
exports: [FileSizePipe],
|
|
2943
3005
|
},] }
|
|
2944
3006
|
];
|
|
2945
3007
|
|
|
@@ -2963,11 +3025,8 @@ class UploaderModule {
|
|
|
2963
3025
|
UploaderModule.decorators = [
|
|
2964
3026
|
{ type: NgModule, args: [{
|
|
2965
3027
|
declarations: [UploaderComponent, UploaderDragDropDirective],
|
|
2966
|
-
imports: [
|
|
2967
|
-
|
|
2968
|
-
FileSizeModule
|
|
2969
|
-
],
|
|
2970
|
-
exports: [UploaderComponent, UploaderDragDropDirective]
|
|
3028
|
+
imports: [CommonModule, FileSizeModule],
|
|
3029
|
+
exports: [UploaderComponent, UploaderDragDropDirective],
|
|
2971
3030
|
},] }
|
|
2972
3031
|
];
|
|
2973
3032
|
|
|
@@ -3067,11 +3126,9 @@ class AlertComponent {
|
|
|
3067
3126
|
this.alerts = [];
|
|
3068
3127
|
this.autoCloseInMS = 5000;
|
|
3069
3128
|
}
|
|
3070
|
-
ngOnInit() {
|
|
3071
|
-
}
|
|
3129
|
+
ngOnInit() { }
|
|
3072
3130
|
ngAfterContentInit() {
|
|
3073
|
-
this.subscription = this.alertService.onAlert()
|
|
3074
|
-
.subscribe(alert => {
|
|
3131
|
+
this.subscription = this.alertService.onAlert().subscribe(alert => {
|
|
3075
3132
|
if (!alert.message) {
|
|
3076
3133
|
// clear alerts when an empty alert is received
|
|
3077
3134
|
this.alerts = [];
|
|
@@ -3177,7 +3234,7 @@ class AlertComponent {
|
|
|
3177
3234
|
AlertComponent.decorators = [
|
|
3178
3235
|
{ type: Component, args: [{
|
|
3179
3236
|
selector: 'valtimo-alert',
|
|
3180
|
-
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 *ngFor=\"let alert of alerts\" class=\"{{cssClass(alert)}} rounded-0 m-0 alert-dismissable\">\n
|
|
3237
|
+
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 *ngFor=\"let alert of alerts\" class=\"{{ cssClass(alert) }} rounded-0 m-0 alert-dismissable\">\n <div *ngIf=\"inModal(alert)\">\n <!-- Modal -->\n <div class=\"modal fade\" id=\"modalNotification\" tabindex=\"-1\" role=\"dialog\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-body p-0\">\n <button class=\"close\" type=\"button\" (click)=\"removeAlert(alert)\">\n <span class=\"mdi mdi-close\" aria-hidden=\"true\"></span>\n </button>\n <div class=\"icon\">\n <span class=\"{{ alert.iconClass || cssIconClass(alert) }}\"></span>\n </div>\n <div class=\"message\">\n <div [innerHTML]=\"alert.message\"></div>\n </div>\n </div>\n <div class=\"modal-footer pt-0\" *ngIf=\"alert.confirmations?.length\">\n <button\n class=\"{{ confirmation.class }} mr-2\"\n *ngFor=\"let confirmation of alert.confirmations\"\n (click)=\"alertConfirm(alert, confirmation.value)\"\n >\n {{ confirmation.label }}\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"!inModal(alert)\" class=\"alert-block\">\n <div class=\"icon\"><span class=\"{{ alert.iconClass || cssIconClass(alert) }}\"></span></div>\n <div class=\"message\">\n <div [innerHTML]=\"alert.message\"></div>\n <div class=\"mt-3\" *ngIf=\"alert.confirmations?.length\">\n <button\n class=\"{{ confirmation.class }} mr-2\"\n *ngFor=\"let confirmation of alert.confirmations\"\n (click)=\"alertConfirm(alert, confirmation.value)\"\n >\n {{ confirmation.label }}\n </button>\n </div>\n </div>\n <button class=\"close\" type=\"button\" (click)=\"removeAlert(alert)\">\n <span class=\"mdi mdi-close\" aria-hidden=\"true\"></span>\n </button>\n </div>\n</div>\n",
|
|
3181
3238
|
styles: [".alert-block{display:flex;flex-direction:row;justify-content:space-between}.alert-block .message{width:100%}.alert-block .icon{align-items:center;display:flex}.alert .message{font-size:1.1rem!important;line-height:1.5rem!important;padding:2rem 5rem 2rem 2rem!important}.alert .close{color:#fff!important;opacity:1!important;padding:2rem 2rem 0 0!important;right:0!important}.alert .icon{padding-left:2rem!important}.alert-warning{color:#404040!important}.alert-light .close,.alert-warning .close{color:#404040!important;opacity:1!important}"]
|
|
3182
3239
|
},] }
|
|
3183
3240
|
];
|
|
@@ -3206,7 +3263,7 @@ AlertModule.decorators = [
|
|
|
3206
3263
|
{ type: NgModule, args: [{
|
|
3207
3264
|
imports: [CommonModule],
|
|
3208
3265
|
declarations: [AlertComponent],
|
|
3209
|
-
exports: [AlertComponent]
|
|
3266
|
+
exports: [AlertComponent],
|
|
3210
3267
|
},] }
|
|
3211
3268
|
];
|
|
3212
3269
|
|
|
@@ -3227,8 +3284,7 @@ AlertModule.decorators = [
|
|
|
3227
3284
|
*/
|
|
3228
3285
|
class DataListComponent {
|
|
3229
3286
|
constructor() { }
|
|
3230
|
-
ngOnInit() {
|
|
3231
|
-
}
|
|
3287
|
+
ngOnInit() { }
|
|
3232
3288
|
}
|
|
3233
3289
|
DataListComponent.decorators = [
|
|
3234
3290
|
{ type: Component, args: [{
|
|
@@ -3263,10 +3319,8 @@ class DataListModule {
|
|
|
3263
3319
|
DataListModule.decorators = [
|
|
3264
3320
|
{ type: NgModule, args: [{
|
|
3265
3321
|
declarations: [DataListComponent],
|
|
3266
|
-
imports: [
|
|
3267
|
-
|
|
3268
|
-
],
|
|
3269
|
-
exports: [DataListComponent]
|
|
3322
|
+
imports: [CommonModule],
|
|
3323
|
+
exports: [DataListComponent],
|
|
3270
3324
|
},] }
|
|
3271
3325
|
];
|
|
3272
3326
|
|
|
@@ -3308,21 +3362,22 @@ FormIoStateService.decorators = [
|
|
|
3308
3362
|
* limitations under the License.
|
|
3309
3363
|
*/
|
|
3310
3364
|
class FormioComponent {
|
|
3311
|
-
constructor(userProviderService, logger, stateService, route) {
|
|
3365
|
+
constructor(userProviderService, logger, stateService, route, translateService) {
|
|
3312
3366
|
this.userProviderService = userProviderService;
|
|
3313
3367
|
this.logger = logger;
|
|
3314
3368
|
this.stateService = stateService;
|
|
3315
3369
|
this.route = route;
|
|
3370
|
+
this.translateService = translateService;
|
|
3316
3371
|
this.submission = {};
|
|
3317
3372
|
this.submit = new EventEmitter();
|
|
3318
3373
|
this.change = new EventEmitter();
|
|
3319
3374
|
this.refreshForm = new EventEmitter();
|
|
3320
3375
|
this.errors = [];
|
|
3376
|
+
this.currentLanguage$ = new BehaviorSubject(this.translateService.currentLang);
|
|
3321
3377
|
}
|
|
3322
3378
|
ngOnInit() {
|
|
3323
3379
|
const documentDefinitionName = this.route.snapshot.paramMap.get('documentDefinitionName');
|
|
3324
3380
|
const formDefinition = this.form;
|
|
3325
|
-
this.loadUserLanguageSetting();
|
|
3326
3381
|
this.formDefinition = formDefinition;
|
|
3327
3382
|
this.errors = [];
|
|
3328
3383
|
if (this.formHasLegacyUpload(formDefinition)) {
|
|
@@ -3332,11 +3387,11 @@ class FormioComponent {
|
|
|
3332
3387
|
this.stateService.setDocumentDefinitionName(documentDefinitionName);
|
|
3333
3388
|
}
|
|
3334
3389
|
this.subscribeFormRefresh();
|
|
3390
|
+
this.openLanguageSubscription();
|
|
3335
3391
|
}
|
|
3336
3392
|
ngOnChanges(changes) {
|
|
3337
3393
|
const currentForm = changes.form.currentValue;
|
|
3338
3394
|
this.formDefinition = currentForm;
|
|
3339
|
-
this.loadUserLanguageSetting();
|
|
3340
3395
|
this.reloadForm();
|
|
3341
3396
|
if (this.formHasLegacyUpload(currentForm)) {
|
|
3342
3397
|
this.setInitialToken();
|
|
@@ -3347,17 +3402,14 @@ class FormioComponent {
|
|
|
3347
3402
|
}
|
|
3348
3403
|
}
|
|
3349
3404
|
ngOnDestroy() {
|
|
3405
|
+
var _a, _b;
|
|
3350
3406
|
this.unsubscribeFormRefresh();
|
|
3351
|
-
|
|
3352
|
-
|
|
3353
|
-
}
|
|
3354
|
-
}
|
|
3355
|
-
loadUserLanguageSetting() {
|
|
3356
|
-
this.language = localStorage.getItem('langKey') || '';
|
|
3407
|
+
(_a = this.tokenRefreshTimerSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
3408
|
+
(_b = this.languageSubscription) === null || _b === void 0 ? void 0 : _b.unsubscribe();
|
|
3357
3409
|
}
|
|
3358
3410
|
reloadForm() {
|
|
3359
3411
|
this.refreshForm.emit({
|
|
3360
|
-
form: this.formDefinition
|
|
3412
|
+
form: this.formDefinition,
|
|
3361
3413
|
});
|
|
3362
3414
|
}
|
|
3363
3415
|
showErrors(errors) {
|
|
@@ -3406,7 +3458,7 @@ class FormioComponent {
|
|
|
3406
3458
|
}
|
|
3407
3459
|
subscribeFormRefresh() {
|
|
3408
3460
|
if (this.formRefresh$) {
|
|
3409
|
-
this.formRefreshSubscription = this.formRefresh$.subscribe(
|
|
3461
|
+
this.formRefreshSubscription = this.formRefresh$.subscribe(refreshValue => {
|
|
3410
3462
|
if (refreshValue) {
|
|
3411
3463
|
this.refreshForm.emit(refreshValue);
|
|
3412
3464
|
}
|
|
@@ -3418,11 +3470,16 @@ class FormioComponent {
|
|
|
3418
3470
|
this.formRefreshSubscription.unsubscribe();
|
|
3419
3471
|
}
|
|
3420
3472
|
}
|
|
3473
|
+
openLanguageSubscription() {
|
|
3474
|
+
this.languageSubscription = this.translateService.stream('key').subscribe(() => {
|
|
3475
|
+
this.currentLanguage$.next(this.translateService.currentLang);
|
|
3476
|
+
});
|
|
3477
|
+
}
|
|
3421
3478
|
}
|
|
3422
3479
|
FormioComponent.decorators = [
|
|
3423
3480
|
{ type: Component, args: [{
|
|
3424
3481
|
selector: 'valtimo-form-io',
|
|
3425
|
-
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 *ngIf=\"errors.length > 0\" class=\"alert alert-danger pt-5 pb-5 mb-2\">\n <ol>\n <li *ngFor=\"let error of errors\">\n {{error}}\n </li>\n </ol>\n </div>\n <formio
|
|
3482
|
+
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 *ngIf=\"errors.length > 0\" class=\"alert alert-danger pt-5 pb-5 mb-2\">\n <ol>\n <li *ngFor=\"let error of errors\">\n {{ error }}\n </li>\n </ol>\n </div>\n <formio\n [submission]=\"submission\"\n [form]=\"formDefinition\"\n [refresh]=\"refreshForm\"\n [options]=\"options\"\n [language]=\"currentLanguage$ | async\"\n (submit)=\"onSubmit($event)\"\n (ready)=\"formReady($event)\"\n (change)=\"onChange($event)\"\n ></formio>\n</div>\n",
|
|
3426
3483
|
styles: [""]
|
|
3427
3484
|
},] }
|
|
3428
3485
|
];
|
|
@@ -3430,7 +3487,8 @@ FormioComponent.ctorParameters = () => [
|
|
|
3430
3487
|
{ type: UserProviderService },
|
|
3431
3488
|
{ type: NGXLogger },
|
|
3432
3489
|
{ type: FormIoStateService },
|
|
3433
|
-
{ type: ActivatedRoute }
|
|
3490
|
+
{ type: ActivatedRoute },
|
|
3491
|
+
{ type: TranslateService }
|
|
3434
3492
|
];
|
|
3435
3493
|
FormioComponent.propDecorators = {
|
|
3436
3494
|
form: [{ type: Input }],
|
|
@@ -3460,8 +3518,7 @@ class FormioBuilderComponent {
|
|
|
3460
3518
|
constructor() {
|
|
3461
3519
|
this.change = new EventEmitter();
|
|
3462
3520
|
}
|
|
3463
|
-
ngOnInit() {
|
|
3464
|
-
}
|
|
3521
|
+
ngOnInit() { }
|
|
3465
3522
|
onChange(event) {
|
|
3466
3523
|
this.change.emit(event);
|
|
3467
3524
|
}
|
|
@@ -3469,7 +3526,7 @@ class FormioBuilderComponent {
|
|
|
3469
3526
|
FormioBuilderComponent.decorators = [
|
|
3470
3527
|
{ type: Component, args: [{
|
|
3471
3528
|
selector: 'valtimo-form-io-builder',
|
|
3472
|
-
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 <form-builder [form]=\"form\" (change)=\"onChange($event)\"
|
|
3529
|
+
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 <form-builder [form]=\"form\" (change)=\"onChange($event)\"></form-builder>\n</div>\n",
|
|
3473
3530
|
styles: [""]
|
|
3474
3531
|
},] }
|
|
3475
3532
|
];
|
|
@@ -3498,7 +3555,7 @@ const AppConfig = {
|
|
|
3498
3555
|
appUrl: 'http://localhost:4200',
|
|
3499
3556
|
apiUrl: 'http://localhost:4200',
|
|
3500
3557
|
icons: 'fontawesome',
|
|
3501
|
-
formOnly: false
|
|
3558
|
+
formOnly: false,
|
|
3502
3559
|
};
|
|
3503
3560
|
|
|
3504
3561
|
class FormIoDomService {
|
|
@@ -3506,7 +3563,7 @@ class FormIoDomService {
|
|
|
3506
3563
|
this.stateService = stateService;
|
|
3507
3564
|
}
|
|
3508
3565
|
toggleSubmitButton(disabled) {
|
|
3509
|
-
this.stateService.currentForm$.pipe(take(1)).subscribe(
|
|
3566
|
+
this.stateService.currentForm$.pipe(take(1)).subscribe(form => {
|
|
3510
3567
|
const button = form.formioElement.nativeElement
|
|
3511
3568
|
.getElementsByClassName('formio-component-submit')[0]
|
|
3512
3569
|
.getElementsByClassName('btn-primary')[0];
|
|
@@ -3540,15 +3597,17 @@ class FormIoUploaderComponent {
|
|
|
3540
3597
|
}
|
|
3541
3598
|
}
|
|
3542
3599
|
downloadFile(resourceFile) {
|
|
3543
|
-
this.uploadProviderService
|
|
3600
|
+
this.uploadProviderService
|
|
3601
|
+
.getResource(resourceFile.data.resourceId)
|
|
3602
|
+
.subscribe((resource) => {
|
|
3544
3603
|
this.downloadService.downloadFile(resource.url, resource.resource.name);
|
|
3545
3604
|
});
|
|
3546
3605
|
}
|
|
3547
3606
|
fileSelected(file) {
|
|
3548
3607
|
this.domService.toggleSubmitButton(true);
|
|
3549
3608
|
this.uploading$.next(true);
|
|
3550
|
-
this.stateService.documentDefinitionName$.pipe(take(1)).subscribe(
|
|
3551
|
-
this.uploadProviderService.uploadFile(file, name).subscribe(
|
|
3609
|
+
this.stateService.documentDefinitionName$.pipe(take(1)).subscribe(name => {
|
|
3610
|
+
this.uploadProviderService.uploadFile(file, name).subscribe(result => {
|
|
3552
3611
|
this.domService.toggleSubmitButton(false);
|
|
3553
3612
|
this.uploading$.next(false);
|
|
3554
3613
|
this._value.push(result);
|
|
@@ -3565,7 +3624,7 @@ class FormIoUploaderComponent {
|
|
|
3565
3624
|
FormIoUploaderComponent.decorators = [
|
|
3566
3625
|
{ type: Component, args: [{
|
|
3567
3626
|
selector: 'valtimo-formio-uploader',
|
|
3568
|
-
template: "<valtimo-dropzone\n
|
|
3627
|
+
template: "<valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"null\"\n [disabled]=\"disabled\"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"hideTitle\"\n [maxFileSize]=\"maxFileSize\"\n [showMaxFileSize]=\"!hideMaxFileSize\"\n [subtitle]=\"subtitle\"\n [title]=\"title\"\n [camera]=\"camera\"\n [uploading]=\"uploading$ | async\"\n></valtimo-dropzone>\n\n<div class=\"file-preview\" *ngFor=\"let resource of _value\">\n <div class=\"file-preview-name\">\n <a href=\"#\" (click)=\"downloadFile(resource)\">\n {{ resource.originalName }}\n </a>\n </div>\n <div class=\"file-preview-size\">\n <span>\n {{ resource.size | filesize }}\n </span>\n </div>\n <div class=\"file-preview-delete\" *ngIf=\"!disabled\">\n <a (click)=\"deleteFile(resource.data.resourceId)\">\n <i class=\"icon fa fa-trash\"></i>\n </a>\n </div>\n</div>\n",
|
|
3569
3628
|
styles: [".progress-bar-container{padding:15px 20px}::ng-deep .formio-component-valtimo-file .btn-secondary,::ng-deep .formio-component-valtimo-file .formio-button-add-another{display:none}::ng-deep .formio-component-valtimo-file td{border:none;padding:0!important}::ng-deep .formio-component-valtimo-file .table{border:none;border-collapse:collapse;margin:10px 0}.dropzone-container{margin-bottom:12px}.file-preview{border:1px solid #dee2e6;display:flex;margin-top:-1px}.file-preview div{padding:12px 10px}.file-preview .file-preview-name{width:65%}.file-preview .file-preview-size{width:35%}.file-preview .icon{color:#a1a1a1;cursor:pointer;font-size:1.3846rem;line-height:18px}.file-preview .icon:hover{color:grey}"]
|
|
3570
3629
|
},] }
|
|
3571
3630
|
];
|
|
@@ -3617,13 +3676,13 @@ class DropzoneComponent {
|
|
|
3617
3676
|
this.error$ = new BehaviorSubject('');
|
|
3618
3677
|
this.errorMessagesStrings = {
|
|
3619
3678
|
tooBig: 'too big',
|
|
3620
|
-
wrongType: 'this type'
|
|
3679
|
+
wrongType: 'this type',
|
|
3621
3680
|
};
|
|
3622
3681
|
this.errorMessage$ = combineLatest([
|
|
3623
3682
|
this.error$,
|
|
3624
3683
|
this.translateService.stream('dropzone.error.generic'),
|
|
3625
3684
|
this.translateService.stream('dropzone.error.tooBig'),
|
|
3626
|
-
this.translateService.stream('dropzone.error.wrongType')
|
|
3685
|
+
this.translateService.stream('dropzone.error.wrongType'),
|
|
3627
3686
|
]).pipe(map(([dropzoneError, generic, tooBig, wrongType]) => {
|
|
3628
3687
|
const strings = this.errorMessagesStrings;
|
|
3629
3688
|
if (dropzoneError) {
|
|
@@ -3675,7 +3734,7 @@ class DropzoneComponent {
|
|
|
3675
3734
|
accept: file => {
|
|
3676
3735
|
this.dropzone.removeAllFiles();
|
|
3677
3736
|
this.setFile(file);
|
|
3678
|
-
}
|
|
3737
|
+
},
|
|
3679
3738
|
});
|
|
3680
3739
|
this.setDropzoneEvents();
|
|
3681
3740
|
}
|
|
@@ -3701,7 +3760,7 @@ class DropzoneComponent {
|
|
|
3701
3760
|
DropzoneComponent.decorators = [
|
|
3702
3761
|
{ type: Component, args: [{
|
|
3703
3762
|
selector: 'valtimo-dropzone',
|
|
3704
|
-
template: "<form #dropzone [ngClass]=\"{
|
|
3763
|
+
template: "<form #dropzone [ngClass]=\"{disabled: disabled || uploading}\" class=\"dropzone dz-clickable\">\n <div class=\"dz-message\">\n <div class=\"icon\"><span class=\"mdi mdi-cloud-upload\"></span></div>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n <ng-container *ngIf=\"uploading\">\n <ng-container *ngTemplateOutlet=\"progressBar\"></ng-container>\n </ng-container>\n <div class=\"dropzone-mobile-trigger needsclick\"></div>\n </div>\n <button\n (click)=\"showCamera()\"\n *ngIf=\"camera\"\n type=\"button\"\n class=\"btn btn-primary px-3 webcam-button\"\n >\n <i class=\"fa fa-camera\" aria-hidden=\"true\"></i>\n </button>\n <ng-container *ngIf=\"showingCamera$ | async\">\n <ng-container *ngTemplateOutlet=\"webcam\"></ng-container>\n </ng-container>\n</form>\n\n<ng-template #body>\n <h2 *ngIf=\"!hideTitle\" class=\"mb-4 mt-2\">{{ title || ('dropzone.drop' | translate) }}</h2>\n <span *ngIf=\"subtitle\" class=\"note mb-3\">{{ subtitle }}</span>\n <span *ngIf=\"showMaxFileSize\" class=\"note mb-3 small-font\"\n >{{ 'dropzone.maxFileSize' | translate }}<b>{{ maxFileSize }}mb</b></span\n >\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\n</ng-template>\n\n<ng-template #preview>\n <ng-container\n *ngIf=\"{\n errorMessage: errorMessage$ | async,\n externalError: externalError$ | async,\n file: file$ | async\n } as obs\"\n >\n <ng-container *ngIf=\"obs.externalError || obs.errorMessage\">\n <div class=\"alert alert-danger mt-2 mb-0\">\n <div class=\"message\">\n {{ obs.externalError || obs.errorMessage }}\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!hideFilePreview && obs.file && !obs.externalError && !obs.errorMessage\">\n <div class=\"file\">\n <i class=\"icon mdi mdi-file-text mr-2\"></i>\n <span class=\"note\">{{ obs.file.name }}</span>\n <span class=\"note file-size\">- {{ obs.file.size | filesize: 2 }}</span>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #progressBar>\n <div class=\"progress-bar-container\">\n <valtimo-progress-bar></valtimo-progress-bar>\n </div>\n</ng-template>\n\n<ng-template #webcam>\n <valtimo-webcam (imageSaved)=\"webcamImageSaved($event)\"></valtimo-webcam>\n</ng-template>\n",
|
|
3705
3764
|
styles: ["form.dropzone{padding:30px 20px}form.dropzone h2{font-size:2rem;text-align:center}form.dropzone.disabled{cursor:default;opacity:.7;pointer-events:none}form.dropzone.preview{border:none;padding:15px 20px}.dz-message{align-items:center;display:flex;flex-direction:column}.dropzone-mobile-trigger{cursor:pointer}.alert-light{align-items:center;display:flex}form.dropzone .mdi{background-color:transparent;border-radius:0;display:inline-block;height:auto;margin-bottom:0;padding:0;width:auto}form.dropzone .message{padding:1.385rem 2.1542rem}.file{align-items:center;display:flex;flex-direction:row;font-size:1.5rem}.small-font{color:#959595;font-size:1rem}.file-size{margin-left:5px}.progress-bar-container{bottom:0;height:auto;position:absolute;width:100%}.webcam-button{position:absolute;right:10px;top:10px}"]
|
|
3706
3765
|
},] }
|
|
3707
3766
|
];
|
|
@@ -3745,7 +3804,7 @@ class ProgressBarComponent {
|
|
|
3745
3804
|
ProgressBarComponent.decorators = [
|
|
3746
3805
|
{ type: Component, args: [{
|
|
3747
3806
|
selector: 'valtimo-progress-bar',
|
|
3748
|
-
template: "<div class=\"progress\" style=\"position: relative
|
|
3807
|
+
template: "<div class=\"progress\" style=\"position: relative\">\n <div class=\"progress-bar progress-bar-striped indeterminate\"></div>\n</div>\n",
|
|
3749
3808
|
styles: [".progress-bar.indeterminate{-webkit-animation:progress-indeterminate 3s linear infinite;animation:progress-indeterminate 3s linear infinite;position:relative}@-webkit-keyframes progress-indeterminate{0%{left:-25%;width:25%}to{left:100%;width:25%}}@keyframes progress-indeterminate{0%{left:-25%;width:25%}to{left:100%;width:25%}}"]
|
|
3750
3809
|
},] }
|
|
3751
3810
|
];
|
|
@@ -3770,10 +3829,8 @@ class ProgressBarModule {
|
|
|
3770
3829
|
ProgressBarModule.decorators = [
|
|
3771
3830
|
{ type: NgModule, args: [{
|
|
3772
3831
|
declarations: [ProgressBarComponent],
|
|
3773
|
-
imports: [
|
|
3774
|
-
|
|
3775
|
-
],
|
|
3776
|
-
exports: [ProgressBarComponent]
|
|
3832
|
+
imports: [CommonModule],
|
|
3833
|
+
exports: [ProgressBarComponent],
|
|
3777
3834
|
},] }
|
|
3778
3835
|
];
|
|
3779
3836
|
|
|
@@ -3805,8 +3862,7 @@ class WebcamComponent {
|
|
|
3805
3862
|
this.toggleFade();
|
|
3806
3863
|
});
|
|
3807
3864
|
if (navigator.mediaDevices.getUserMedia) {
|
|
3808
|
-
navigator.mediaDevices.getUserMedia({ video: true })
|
|
3809
|
-
.then((stream) => {
|
|
3865
|
+
navigator.mediaDevices.getUserMedia({ video: true }).then(stream => {
|
|
3810
3866
|
video.srcObject = stream;
|
|
3811
3867
|
this.stream$.next(stream);
|
|
3812
3868
|
});
|
|
@@ -3836,9 +3892,9 @@ class WebcamComponent {
|
|
|
3836
3892
|
return false;
|
|
3837
3893
|
}
|
|
3838
3894
|
stopStream() {
|
|
3839
|
-
this.stream$.pipe(take(1)).subscribe(
|
|
3895
|
+
this.stream$.pipe(take(1)).subscribe(mediaStream => {
|
|
3840
3896
|
if (mediaStream) {
|
|
3841
|
-
mediaStream.getTracks().forEach(
|
|
3897
|
+
mediaStream.getTracks().forEach(stream => stream.stop());
|
|
3842
3898
|
}
|
|
3843
3899
|
});
|
|
3844
3900
|
}
|
|
@@ -3869,7 +3925,7 @@ class WebcamComponent {
|
|
|
3869
3925
|
WebcamComponent.decorators = [
|
|
3870
3926
|
{ type: Component, args: [{
|
|
3871
3927
|
selector: 'valtimo-webcam',
|
|
3872
|
-
template: "<div
|
|
3928
|
+
template: "<div\n (click)=\"close(false)\"\n *ngIf=\"{picture: picture$ | async, stream: stream$ | async} as obs\"\n [ngClass]=\"{showing: showing$ | async}\"\n class=\"webcam-overlay\"\n>\n <div (click)=\"(false); $event.stopPropagation()\" class=\"inner-container\">\n <div class=\"webcam-container modal-content\">\n <div class=\"video-container\">\n <video autoplay=\"true\" id=\"videoElement\"></video>\n <canvas id=\"canvas\"></canvas>\n <img *ngIf=\"obs.picture?.uri\" [src]=\"obs.picture?.uri\" />\n </div>\n <div class=\"button-container\">\n <div class=\"picture-btn\">\n <button\n (click)=\"captureImage()\"\n [disabled]=\"obs.picture?.file || !obs.stream\"\n class=\"btn btn-primary btn-lg\"\n >\n <i class=\"fa fa-camera\"></i>{{ 'webcam.takePicture' | translate }}\n </button>\n </div>\n <div class=\"new-btn\">\n <button (click)=\"clearImage()\" [disabled]=\"!obs.picture?.file\" class=\"btn btn-primary\">\n <i class=\"fa fa-undo\"></i>{{ 'webcam.redo' | translate }}\n </button>\n </div>\n <div class=\"save-btn\">\n <button (click)=\"close()\" [disabled]=\"!obs.picture?.file\" class=\"btn btn-primary\">\n <i class=\"fa fa-save\"></i>{{ 'webcam.save' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class=\"modal-header\">\n <button (click)=\"close(false)\" aria-label=\"Close\" class=\"close\"><span>\u00D7</span></button>\n </div>\n </div>\n</div>\n",
|
|
3873
3929
|
styles: [".webcam-overlay{align-items:center;background-color:rgba(0,0,0,.65);display:flex;height:100%;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:opacity .15s linear;width:100%;z-index:9999}.showing{opacity:1}.webcam-container{padding:20px}.button-container{align-items:center;display:flex;height:30px;justify-content:space-evenly;margin-bottom:10px;margin-top:20px}.button-container i{margin-right:5px}.new-btn,.picture-btn,.save-btn{display:flex;justify-content:center;position:absolute}.new-btn,.save-btn{width:calc(50% - 65px)}.picture-btn{left:0;width:100%}.new-btn{left:0}.save-btn{right:0}.modal-header{color:grey;margin-top:35px;padding:0;position:absolute;right:-18px;top:0}.close{color:grey}.inner-container{position:relative}.video-container{height:495px;overflow:hidden}.video-container img,.video-container video{height:495px;position:absolute;width:660px}.video-container img{-o-object-fit:cover;object-fit:cover}#canvas{display:none}"]
|
|
3874
3930
|
},] }
|
|
3875
3931
|
];
|
|
@@ -3897,11 +3953,8 @@ class WebcamModule {
|
|
|
3897
3953
|
WebcamModule.decorators = [
|
|
3898
3954
|
{ type: NgModule, args: [{
|
|
3899
3955
|
declarations: [WebcamComponent],
|
|
3900
|
-
imports: [
|
|
3901
|
-
|
|
3902
|
-
TranslateModule
|
|
3903
|
-
],
|
|
3904
|
-
exports: [WebcamComponent]
|
|
3956
|
+
imports: [CommonModule, TranslateModule],
|
|
3957
|
+
exports: [WebcamComponent],
|
|
3905
3958
|
},] }
|
|
3906
3959
|
];
|
|
3907
3960
|
|
|
@@ -3926,7 +3979,7 @@ DropzoneModule.decorators = [
|
|
|
3926
3979
|
{ type: NgModule, args: [{
|
|
3927
3980
|
declarations: [DropzoneComponent],
|
|
3928
3981
|
imports: [CommonModule, TranslateModule, FileSizeModule, ProgressBarModule, WebcamModule],
|
|
3929
|
-
exports: [DropzoneComponent]
|
|
3982
|
+
exports: [DropzoneComponent],
|
|
3930
3983
|
},] }
|
|
3931
3984
|
];
|
|
3932
3985
|
|
|
@@ -3958,14 +4011,14 @@ FormIoModule.decorators = [
|
|
|
3958
4011
|
DocumentModule,
|
|
3959
4012
|
FileSizeModule,
|
|
3960
4013
|
ResourceModule,
|
|
3961
|
-
RouterModule
|
|
4014
|
+
RouterModule,
|
|
3962
4015
|
],
|
|
3963
4016
|
declarations: [FormioComponent, FormioBuilderComponent, FormIoUploaderComponent],
|
|
3964
4017
|
exports: [FormioComponent, FormioBuilderComponent, FormIoUploaderComponent],
|
|
3965
4018
|
providers: [
|
|
3966
4019
|
FormIoStateService,
|
|
3967
4020
|
FormIoDomService,
|
|
3968
|
-
{ provide: FormioAppConfig, useValue: ɵ0$1 }
|
|
4021
|
+
{ provide: FormioAppConfig, useValue: ɵ0$1 },
|
|
3969
4022
|
],
|
|
3970
4023
|
},] }
|
|
3971
4024
|
];
|
|
@@ -4038,7 +4091,7 @@ ModalModule.decorators = [
|
|
|
4038
4091
|
{ type: NgModule, args: [{
|
|
4039
4092
|
declarations: [ModalComponent],
|
|
4040
4093
|
imports: [CommonModule],
|
|
4041
|
-
exports: [ModalComponent]
|
|
4094
|
+
exports: [ModalComponent],
|
|
4042
4095
|
},] }
|
|
4043
4096
|
];
|
|
4044
4097
|
|
|
@@ -4071,7 +4124,7 @@ class SpinnerComponent {
|
|
|
4071
4124
|
SpinnerComponent.decorators = [
|
|
4072
4125
|
{ type: Component, args: [{
|
|
4073
4126
|
selector: 'valtimo-spinner',
|
|
4074
|
-
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\">{{
|
|
4127
|
+
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",
|
|
4075
4128
|
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}"]
|
|
4076
4129
|
},] }
|
|
4077
4130
|
];
|
|
@@ -4106,14 +4159,8 @@ class SpinnerModule {
|
|
|
4106
4159
|
SpinnerModule.decorators = [
|
|
4107
4160
|
{ type: NgModule, args: [{
|
|
4108
4161
|
declarations: [SpinnerComponent],
|
|
4109
|
-
exports: [
|
|
4110
|
-
|
|
4111
|
-
],
|
|
4112
|
-
imports: [
|
|
4113
|
-
CommonModule,
|
|
4114
|
-
NgxSpinnerModule,
|
|
4115
|
-
TranslateModule
|
|
4116
|
-
]
|
|
4162
|
+
exports: [SpinnerComponent],
|
|
4163
|
+
imports: [CommonModule, NgxSpinnerModule, TranslateModule],
|
|
4117
4164
|
},] }
|
|
4118
4165
|
];
|
|
4119
4166
|
|
|
@@ -4199,7 +4246,7 @@ class SearchableDropdownComponent {
|
|
|
4199
4246
|
.pipe(take(1))
|
|
4200
4247
|
.subscribe(([mouseOnList, items, focusedId]) => {
|
|
4201
4248
|
const length = items.length;
|
|
4202
|
-
const focusedIndex = items.findIndex(
|
|
4249
|
+
const focusedIndex = items.findIndex(item => item.id === focusedId);
|
|
4203
4250
|
const code = event.code;
|
|
4204
4251
|
const shiftKey = event.shiftKey;
|
|
4205
4252
|
const down = 'ArrowDown';
|
|
@@ -4231,7 +4278,8 @@ class SearchableDropdownComponent {
|
|
|
4231
4278
|
}
|
|
4232
4279
|
// handle moving up in the list with up arrow up or shift+tab
|
|
4233
4280
|
}
|
|
4234
|
-
else if ((code === up || (code === tab && shiftKey)) &&
|
|
4281
|
+
else if ((code === up || (code === tab && shiftKey)) &&
|
|
4282
|
+
focusedId !== this.searchId) {
|
|
4235
4283
|
// move to previous item if focus is not on the first item in the list
|
|
4236
4284
|
if (focusedIndex > 0) {
|
|
4237
4285
|
this.focusedItemId$.next(items[focusedIndex - 1].id);
|
|
@@ -4247,16 +4295,17 @@ class SearchableDropdownComponent {
|
|
|
4247
4295
|
});
|
|
4248
4296
|
}
|
|
4249
4297
|
openSearchSubscription() {
|
|
4250
|
-
this.searchSubscription = this.searchTerm.valueChanges.subscribe(
|
|
4251
|
-
this.focusedItemId$.pipe(take(1)).subscribe(
|
|
4298
|
+
this.searchSubscription = this.searchTerm.valueChanges.subscribe(searchTerm => {
|
|
4299
|
+
this.focusedItemId$.pipe(take(1)).subscribe(focusedItemId => {
|
|
4252
4300
|
if (!searchTerm) {
|
|
4253
4301
|
this.filteredItems$.next(this.items);
|
|
4254
4302
|
}
|
|
4255
4303
|
else {
|
|
4256
|
-
const filteredItems = this.items.filter(
|
|
4304
|
+
const filteredItems = this.items.filter(item => item.text.toUpperCase().includes(searchTerm.toUpperCase()));
|
|
4257
4305
|
this.filteredItems$.next(filteredItems);
|
|
4258
4306
|
// move focus to search box if filtered list length is 0 or previously focused item is not in filtered list anymore
|
|
4259
|
-
if (filteredItems.length === 0 ||
|
|
4307
|
+
if (filteredItems.length === 0 ||
|
|
4308
|
+
!filteredItems.some(item => item.id === focusedItemId)) {
|
|
4260
4309
|
this.resetFocus();
|
|
4261
4310
|
}
|
|
4262
4311
|
}
|
|
@@ -4268,8 +4317,8 @@ class SearchableDropdownComponent {
|
|
|
4268
4317
|
});
|
|
4269
4318
|
}
|
|
4270
4319
|
scrollButtonIntoView(id) {
|
|
4271
|
-
this.filteredItems$.pipe(take(1)).subscribe(
|
|
4272
|
-
const focusItemIndex = items.findIndex(
|
|
4320
|
+
this.filteredItems$.pipe(take(1)).subscribe(items => {
|
|
4321
|
+
const focusItemIndex = items.findIndex(item => item.id === id);
|
|
4273
4322
|
const focusedButton = this.buttons.toArray()[focusItemIndex];
|
|
4274
4323
|
if (focusedButton) {
|
|
4275
4324
|
focusedButton.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
@@ -4280,7 +4329,7 @@ class SearchableDropdownComponent {
|
|
|
4280
4329
|
SearchableDropdownComponent.decorators = [
|
|
4281
4330
|
{ type: Component, args: [{
|
|
4282
4331
|
selector: 'valtimo-searchable-dropdown',
|
|
4283
|
-
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
|
|
4332
|
+
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",
|
|
4284
4333
|
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}"]
|
|
4285
4334
|
},] }
|
|
4286
4335
|
];
|
|
@@ -4319,7 +4368,7 @@ SearchableDropdownModule.decorators = [
|
|
|
4319
4368
|
{ type: NgModule, args: [{
|
|
4320
4369
|
declarations: [SearchableDropdownComponent],
|
|
4321
4370
|
imports: [CommonModule, ReactiveFormsModule],
|
|
4322
|
-
exports: [SearchableDropdownComponent]
|
|
4371
|
+
exports: [SearchableDropdownComponent],
|
|
4323
4372
|
},] }
|
|
4324
4373
|
];
|
|
4325
4374
|
|
|
@@ -4345,7 +4394,7 @@ const formIoUploaderEditForm = () => ({
|
|
|
4345
4394
|
tooltip: 'The name of this field in the API endpoint.',
|
|
4346
4395
|
validate: {
|
|
4347
4396
|
required: true,
|
|
4348
|
-
}
|
|
4397
|
+
},
|
|
4349
4398
|
},
|
|
4350
4399
|
{
|
|
4351
4400
|
type: 'textfield',
|
|
@@ -4409,7 +4458,7 @@ const formIoUploaderEditForm = () => ({
|
|
|
4409
4458
|
validate: {
|
|
4410
4459
|
required: false,
|
|
4411
4460
|
},
|
|
4412
|
-
}
|
|
4461
|
+
},
|
|
4413
4462
|
],
|
|
4414
4463
|
});
|
|
4415
4464
|
|
|
@@ -4467,7 +4516,7 @@ class SearchableDropdownSelectComponent {
|
|
|
4467
4516
|
SearchableDropdownSelectComponent.decorators = [
|
|
4468
4517
|
{ type: Component, args: [{
|
|
4469
4518
|
selector: 'valtimo-searchable-dropdown-select',
|
|
4470
|
-
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
|
|
4519
|
+
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",
|
|
4471
4520
|
styles: [".selected-text{margin:0}.clear-icon{font-size:13px}"]
|
|
4472
4521
|
},] }
|
|
4473
4522
|
];
|
|
@@ -4508,7 +4557,7 @@ SearchableDropdownSelectModule.decorators = [
|
|
|
4508
4557
|
{ type: NgModule, args: [{
|
|
4509
4558
|
declarations: [SearchableDropdownSelectComponent],
|
|
4510
4559
|
imports: [CommonModule, ReactiveFormsModule, SearchableDropdownModule],
|
|
4511
|
-
exports: [SearchableDropdownSelectComponent]
|
|
4560
|
+
exports: [SearchableDropdownSelectComponent],
|
|
4512
4561
|
},] }
|
|
4513
4562
|
];
|
|
4514
4563
|
|
|
@@ -4532,5 +4581,5 @@ SearchableDropdownSelectModule.decorators = [
|
|
|
4532
4581
|
* Generated bundle index. Do not edit.
|
|
4533
4582
|
*/
|
|
4534
4583
|
|
|
4535
|
-
export { AlertComponent, AlertModule, AlertService, BpmnJsDiagramComponent, BpmnJsDiagramModule, BreadcrumbNavigationComponent, BreadcrumbNavigationModule, CamundaFormComponent, CamundaFormModule, CardComponent, CardModule, ComponentsModule, DataListComponent, DataListModule, DropzoneComponent, DropzoneModule, FieldAutoFocusDirective, FieldAutoFocusModule, FileSizeModule, FileSizePipe, FilterSidebarComponent, FilterSidebarModule, FormIoModule, FormIoUploaderComponent, FormioBuilderComponent, FormioComponent, LeftSidebarComponent, LeftSidebarModule, ListComponent, ListFilterPipe, ListModule, MenuModule, MenuRoutingModule, MenuService, ModalComponent, ModalModule, PageHeaderComponent, PageHeaderModule, PageTitleComponent, PageTitleModule, ProgressBarComponent, ProgressBarModule, RightSidebarComponent, RightSidebarModule, SearchableDropdownComponent, SearchableDropdownModule, SearchableDropdownSelectComponent, SearchableDropdownSelectModule, SpinnerModule, TimelineComponent, TimelineModule, TopbarComponent, TopbarModule, UploaderComponent, UploaderDragDropDirective, UploaderModule, ViewContentService, WebcamComponent, WebcamModule, WidgetComponent, WidgetModule, customUploaderType, menuInitializer, registerFormioUploadComponent, ɵ0, CamundaGeneratedFormModule as ɵa, CamundaStringFormfieldComponent as ɵb, CamundaBooleanFormfieldComponent as ɵc, CamundaDateFormfieldComponent as ɵd, CamundaFormfieldService as ɵe, CamundaFormfieldGeneratorDirective as ɵf, CamundaLongFormfieldComponent as ɵg, CamundaEnumFormfieldComponent as ɵh, CamundaTextareaFormfieldComponent as ɵi, CamundaChoicefieldFormfieldComponent as ɵj, CamundaFormfieldValidationComponent as ɵk, CamundaGeneratedFormComponent as ɵl, CamundaCustomFormModule as ɵm, CamundaCustomFormComponent as ɵn, MenuComponent as ɵo, MenuItemTextComponent as ɵp, SubmenuItemTextComponent as ɵq, VersionService as ɵr, FormIoStateService as ɵs, FormIoDomService as ɵt, AppConfig as ɵu, SpinnerComponent as ɵv };
|
|
4584
|
+
export { Alert, AlertComponent, AlertModule, AlertService, AlertType, AlertsOptionsImpl, BpmnJsDiagramComponent, BpmnJsDiagramModule, BreadcrumbNavigationComponent, BreadcrumbNavigationModule, CamundaFormComponent, CamundaFormModule, CardComponent, CardModule, ComponentsModule, DataListComponent, DataListModule, DropzoneComponent, DropzoneModule, FieldAutoFocusDirective, FieldAutoFocusModule, FileSizeModule, FileSizePipe, FilterSidebarComponent, FilterSidebarModule, FormIoModule, FormIoUploaderComponent, FormioBuilderComponent, FormioComponent, FormioOptionsImpl, LeftSidebarComponent, LeftSidebarModule, ListComponent, ListFilterPipe, ListModule, MenuModule, MenuRoutingModule, MenuService, ModalComponent, ModalModule, PageHeaderComponent, PageHeaderModule, PageTitleComponent, PageTitleModule, ProgressBarComponent, ProgressBarModule, RightSidebarComponent, RightSidebarModule, SearchableDropdownComponent, SearchableDropdownModule, SearchableDropdownSelectComponent, SearchableDropdownSelectModule, SpinnerModule, TimelineComponent, TimelineItemImpl, TimelineModule, TopbarComponent, TopbarModule, UploaderComponent, UploaderDragDropDirective, UploaderModule, ViewContentService, WebcamComponent, WebcamModule, WidgetComponent, WidgetModule, customUploaderType, menuInitializer, registerFormioUploadComponent, ɵ0, CamundaGeneratedFormModule as ɵa, CamundaStringFormfieldComponent as ɵb, CamundaBooleanFormfieldComponent as ɵc, CamundaDateFormfieldComponent as ɵd, CamundaFormfieldService as ɵe, CamundaFormfieldGeneratorDirective as ɵf, CamundaLongFormfieldComponent as ɵg, CamundaEnumFormfieldComponent as ɵh, CamundaTextareaFormfieldComponent as ɵi, CamundaChoicefieldFormfieldComponent as ɵj, CamundaFormfieldValidationComponent as ɵk, CamundaGeneratedFormComponent as ɵl, CamundaCustomFormModule as ɵm, CamundaCustomFormComponent as ɵn, MenuComponent as ɵo, MenuItemTextComponent as ɵp, SubmenuItemTextComponent as ɵq, VersionService as ɵr, FormIoStateService as ɵs, FormIoDomService as ɵt, AppConfig as ɵu, SpinnerComponent as ɵv };
|
|
4536
4585
|
//# sourceMappingURL=valtimo-components.js.map
|