You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampipes.apache.org by ze...@apache.org on 2020/04/15 16:48:50 UTC

[incubator-streampipes] branch STREAMPIPES-79 updated (70401ab -> 149db7c)

This is an automated email from the ASF dual-hosted git repository.

zehnder pushed a change to branch STREAMPIPES-79
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git.


    from 70401ab  Change select keys to select properties to display timestamp in table
     add 6d3c5b2  STREAMPIPES-96: Consider schema requirements in widget selection
     add fd2d430  STREAMPIPES-98: Improve validation of dashboard widget settings
     add c27b3d1  Refactor NotificationsModule to Angular 9 module
     add b914db7  Fix layout of dashboard component
     add 072c57a  Fix create new adapters
     add 5be3b76  Change type check in adapter creation
     add fd8bba6  Merge branch 'dev' of github.com:apache/incubator-streampipes into dev
     add b7b703e  Fix bug in build file of UI
     add 2647a62  Add query to sort notifications by timestamp
     add e9b1a11  Create new CouchDB view at installation time
     add 6edf151  Improve iconbar behaviour
     add d782270  Modify notification topic
     add bd28614  Update unread notifications in iconbar
     add 2fbe136  Modify SecretsController
     add e35e382  Fix date picker in data explorer
     add 8447709  Merge branch 'dev' of github.com:apache/incubator-streampipes into dev
     add a475f4d  Add pick-date to package.json
     add 6262da1  Merge branch 'dev' of github.com:apache/incubator-streampipes into dev
     add 2ebe46a  Add NotificationItem import to Toolbar template
     add cc76009  Fix bug in TsonLd deserializer
     add 6b5c69f  STREAMPIPES-58: Show measurement unit in single value visualizations
     add 966f50f  Add explicit annotation to DomainConceptController
     add c1d19e9  STREAMPIPES-102: Pipeline Element config updates via UI add key entry to consul
     add 100f8e1  Merge branch 'dev' of github.com:apache/incubator-streampipes into dev
     add b1d4280  Add new websocket connector to asset dashboard
     add e8f9cea  Connect: Sort event properties by name in GuessSchema editor
     add 99a05fb  Fixing archetype for JVM
     add 11dbe2f  Remove unneeded maven repos from archetype poms
     add bce3723  Fix jvm sinks archetype for new release
     add 180a176  Remove supported formats from flink sink archetype
     add aba7efc  Add streampipes-messaging-mqtt module
     add cfa1372  remove Thread.sleep in ActiveMQPublisher
     add 4c3d6cb  Merge branch 'dev' of github.com:apache/incubator-streampipes into dev
     add e31e043  Merge branch 'dev' of github.com:apache/incubator-streampipes into dev
     add d7a2aea  Add dialog components of 'time series labeling tool'
     add 88921c1  Add module for 'timeseries labeling tool'
     add 5ad0662  Add labeling tool module to imports in data explorer module
     add 16511c6  Add 'timeseries labeling tool' to linechart component
     add 8915711  Add TODOs related to loading and saving labels to linechart component
     add 350989e  Add mocked label categories and labels
     add 2bb4a1c  Merge pull request #12 from EbiDa/timeseries-labeling-tool
     add 82d6ecc  Add keeping the labeling mode active after entering it per button click
     add b0a0708  Merge pull request #13 from EbiDa/timeseries-labeling-tool
     add 974958a  Add feature to select all fields in dashboard table widget
     add 5976698  Use visualization name as default value for widget title in dashboard
     add 7434684  Pipeline editor: Clear pipeline element filter when element type is changed
     add f2bcd7f  Add restrictedEditMode for more flexible modification of pipeline element options
     add 172028f  Delay trigger of mapping property selection
     new 8ae8d14  Merge branch 'dev' into STREAMPIPES-79
     new 149db7c  Fix css for data explorer

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  15 --
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  20 +-
 .../src/main/java/config/Config.java               |  18 ++
 .../src/main/java/config/ConfigKeys.java           |  18 ++
 .../src/main/java/main/Init.java                   |  18 ++
 .../__packageName__/__classNamePrefix__.java       |  25 +-
 .../__classNamePrefix__Controller.java             |  20 +-
 .../__classNamePrefix__Parameters.java             |  18 ++
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  15 --
 .../__classNamePrefix__Controller.java             |   2 -
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  20 +-
 .../sink/__packageName__/__classNamePrefix__.java  |   7 +-
 .../__classNamePrefix__Controller.java             |   2 -
 .../src/main/resources/archetype-resources/pom.xml |  15 --
 pom.xml                                            |   7 +
 .../backend/StreamPipesResourceConfig.java         |  45 ++--
 streampipes-measurement-units/pom.xml              |  11 +
 .../streampipes/units/test/TestUnitProvider.java   |  30 ++-
 .../test/java/org/streampipes/units/test/Test.java |  54 ----
 .../java/org/streampipes/units/test/Test2.java     |  49 ----
 .../messaging/jms/ActiveMQPublisher.java           |   6 -
 streampipes-messaging-mqtt/pom.xml                 |  46 ++++
 .../messaging/mqtt/AbstractMqttConnector.java      |  51 ++--
 .../streampipes/messaging/mqtt/MqttConsumer.java   |  62 +++++
 .../streampipes/messaging/mqtt/MqttPublisher.java  |  69 ++++++
 .../streampipes/messaging/mqtt/SpMqttProtocol.java |  53 ++--
 .../messaging/mqtt/SpMqttProtocolFactory.java      |  54 ++--
 .../org/apache/streampipes/model/Notification.java |  18 ++
 .../streampipes/model/NotificationCount.java       |  33 +--
 .../model/base/InvocableStreamPipesEntity.java     |  12 +
 .../model/grounding/MqttTransportProtocol.java     |  61 +++++
 .../model/grounding/TransportProtocol.java         |   4 +-
 .../manager/setup/CouchDbInstallationStep.java     |  31 ++-
 .../rest/api/IMeasurementUnitResource.java         |  17 +-
 .../apache/streampipes/rest/api/INotification.java |   4 +-
 .../apache/streampipes/rest/impl/ConsulConfig.java |   5 +-
 .../rest/impl/MeasurementUnitResource.java         |  41 +++
 .../apache/streampipes/rest/impl/Notification.java |  16 +-
 .../rest/notifications/NotificationListener.java   |   2 +-
 .../jsonld/CustomAnnotationProvider.java           |   4 +-
 .../storage/api/INotificationStorage.java          |   5 +-
 .../couchdb/impl/NotificationStorageImpl.java      |  48 +++-
 .../apache/streampipes/vocabulary/StreamPipes.java |   3 +
 .../wrapper/context/RuntimeContext.java            |   2 +
 .../context/SpEventProcessorRuntimeContext.java    |   9 +-
 .../wrapper/context/SpEventSinkRuntimeContext.java |   6 +-
 .../wrapper/context/SpRuntimeContext.java          |  11 +-
 .../runtime/EventProcessorRuntimeParams.java       |   3 +-
 .../params/runtime/EventSinkRuntimeParams.java     |   3 +-
 ui/deployment/app.module.mst                       |   2 -
 ui/deployment/appng5.module.mst                    |   4 +
 ui/deployment/state.config.mst                     |   3 +-
 ui/deployment/toolbar.controller.mst               |  53 ++--
 ui/package.json                                    |   2 +-
 .../app-asset-monitoring.component.html            |   2 +-
 .../app-asset-monitoring.component.ts              |   1 +
 .../app-asset-monitoring.module.ts                 |  11 +
 .../create-asset/create-asset.component.ts         |   8 +-
 .../services/websocket.service.ts                  |  19 +-
 ui/src/app/connect/model/DataStreamDescription.ts  |   2 +-
 .../connect/new-adapter/new-adapter.component.ts   | 186 +++++++-------
 .../event-schema/event-schema.component.ts         |   3 +
 .../app/connect/schema-editor/model/EventSchema.ts |  14 +-
 .../static-color-picker.component.ts               |   1 +
 .../static-mapping-nary.component.html             |  13 +-
 ...nent.css => static-mapping-nary.component.scss} |   1 +
 .../static-mapping-nary.component.ts               |  43 +++-
 .../static-mapping-unary.component.ts              |   9 +
 .../static-one-of-input.component.html             |   2 +-
 .../static-one-of-input.component.ts               |  18 +-
 .../measurement-unit/MeasurementUnit.ts}           |  14 +-
 .../label-selection/label-selection.component.css} |   1 +
 .../label-selection/label-selection.component.html |  44 ++--
 .../label-selection/label-selection.component.ts   |  61 +++++
 .../point-selection-info.component.css}            |   1 +
 .../point-selection-info.component.html}           |  19 +-
 .../point-selection-info.component.ts}             |  37 ++-
 .../change-chartmode/change-chartmode.dialog.css}  |  20 +-
 .../change-chartmode/change-chartmode.dialog.html} |  15 +-
 .../change-chartmode/change-chartmode.dialog.ts}   |  28 +--
 .../dialogs/labeling/labeling.dialog.css}          |  27 +-
 .../dialogs/labeling/labeling.dialog.html          |  36 +++
 .../dialogs/labeling/labeling.dialog.ts            |  41 +--
 .../labeling-tool/labeling-tool.module.ts          |  90 +++++++
 .../labeling-tool/services/color.service.ts}       |  25 +-
 ui/src/app/core/working.state.config.ts            |   2 +-
 .../components/grid/dashboard-grid.component.css   |   6 +
 .../components/panel/dashboard-panel.component.css |   6 +
 .../panel/dashboard-panel.component.html           |   6 +-
 .../widgets/area/area-widget.component.ts          |   5 +-
 .../components/widgets/base/base-config.ts         |   8 +
 .../widgets/base/base-ngx-charts-widget.ts         |   5 +-
 .../widgets/base/base-ngx-line-charts-widget.ts    |   5 +-
 .../components/widgets/base/base-widget.ts         |   2 +
 .../widgets/gauge/gauge-widget.component.ts        |   5 +-
 .../widgets/html/html-widget.component.ts          |   5 +-
 .../widgets/image/image-widget.component.ts        |   5 +-
 .../widgets/line/line-widget.component.ts          |   5 +-
 .../dashboard/components/widgets/map/map-config.ts |   2 +-
 .../components/widgets/map/map-widget.component.ts |   5 +-
 .../components/widgets/number/number-config.ts     |   2 +-
 .../widgets/number/number-widget.component.css     |  13 +
 .../widgets/number/number-widget.component.html    |  11 +-
 .../widgets/number/number-widget.component.ts      |  22 +-
 .../components/widgets/raw/raw-widget.component.ts |   5 +-
 .../components/widgets/table/table-config.ts       |   3 +-
 .../widgets/table/table-widget.component.ts        |   5 +-
 .../widgets/trafficlight/traffic-light-config.ts   |   4 +-
 .../trafficlight/traffic-light-widget.component.ts |   5 +-
 ui/src/app/dashboard/dashboard.component.css       |   9 +
 ui/src/app/dashboard/dashboard.component.html      |   2 +-
 .../add-visualization-dialog.component.html        |   6 +-
 ...css => add-visualization-dialog.component.scss} |   0
 .../add-visualization-dialog.component.ts          |  31 ++-
 .../dashboard/registry/widget-config-builder.ts    |  12 +-
 ui/src/app/dashboard/registry/widget-registry.ts   |  12 +
 .../sdk/extractor/static-property-extractor.ts     |  15 +-
 .../app/dashboard/sdk/matching/schema-match.ts}    |  24 +-
 ui/src/app/dashboard/services/dashboard.service.ts |  12 +-
 .../data-explorer-dashboard-grid.component.css     |   6 +
 .../data-explorer-dashboard-panel.component.css    |   6 +
 .../data-explorer-dashboard-panel.component.html   |   2 +-
 .../linechart/lineChart.component.html             |   8 +-
 .../linechart/lineChart.component.ts               | 276 ++++++++++++++++++++-
 .../data-explorer-v2.component.css                 |  11 +-
 .../data-explorer-v2.component.html                |   5 +-
 .../data-explorer-v2/data-explorer-v2.module.ts    |   6 +-
 ui/src/app/data-explorer/data-explorer.module.ts   |  81 +++---
 .../customize/customize-dialog.component.ts        |   3 +-
 .../customize/customize-dialog.tmpl.html           |  12 +-
 .../customoutput/customoutput.component.ts         |   3 +-
 .../components/customoutput/customoutput.tmpl.html |  21 +-
 .../property-selection.component.ts                |   3 +-
 .../propertyselection/property-selection.tmpl.html |   3 +-
 .../domainconcept/domainconcept.controller.ts      |   4 +-
 .../components/fileupload/fileupload.component.ts  |   3 +-
 .../components/fileupload/fileupload.tmpl.html     |   8 +-
 .../mappingnary/mappingnary.component.ts           |   3 +-
 .../components/mappingnary/mappingnary.tmpl.html   |   6 +-
 .../mappingunary/mappingunary.component.ts         |   1 +
 .../mappingunary/mappingunary.controller.ts        |   8 +-
 .../components/mappingunary/mappingunary.tmpl.html |   5 +-
 .../editor/components/oneof/oneof.controller.ts    |   5 +
 .../pipeline-element-icon-stand.component.ts       |   3 +-
 .../pipeline-element-icon-stand.controller.ts      |  10 +-
 .../pipeline-element-icon-stand.tmpl.html          |   4 +-
 .../pipeline-element-options.controller.ts         |   3 +-
 .../pipeline-element-options.tmpl.html             |   2 +-
 .../components/pipeline/pipeline.controller.ts     |   2 +-
 .../replaceoutput/replaceoutput.component.ts       |   3 +-
 .../replaceoutput/replaceoutput.tmpl.html          |   2 +-
 .../editor/components/secret/secret.controller.ts  |   4 +
 .../customize.controller.ts                        |   9 +-
 .../customizeElementDialog.tmpl.html               |  22 +-
 ui/src/app/editor/editor.controller.ts             |  29 ++-
 ui/src/app/editor/editor.html                      |   4 +-
 .../services/editor-dialog-manager.service.ts      |   5 +-
 ui/src/app/layout/layout.module.ts                 |   1 +
 .../components/notification-item.component.html}   |  15 +-
 .../components/notification-item.component.scss}   |  42 +++-
 .../components/notification-item.component.ts}     |  33 ++-
 .../model/notifications.model.ts}                  |  27 +-
 .../app/notifications/notifications.component.html |  69 ++++++
 .../app/notifications/notifications.component.scss | 123 +++++++++
 .../app/notifications/notifications.component.ts   | 177 +++++++++++++
 .../app/notifications/notifications.controller.ts  |  65 -----
 ui/src/app/notifications/notifications.html        |  72 ------
 ui/src/app/notifications/notifications.module.ts   |  54 +++-
 .../notifications/service/notifications.service.ts |  63 +++++
 .../notifications/utils/notifications.utils.ts}    |  24 +-
 ui/src/app/platform-services/tsonld/tsonld.ts      |  55 ++--
 ui/src/app/services/notification-count-service.ts  |  66 +++++
 ui/src/app/services/rest-api.service.ts            |   4 +
 ui/src/app/services/services.module.ts             |   2 +
 ui/src/assets/templates/iconbar.html               |  16 +-
 ui/src/assets/templates/navbar.html                |   2 +-
 ui/src/assets/templates/streampipes.html           |  10 +-
 ui/src/index.html                                  |   2 +-
 ui/src/scss/sp/buttons.scss                        |   6 +
 ui/src/scss/sp/main.scss                           |   2 +-
 188 files changed, 2636 insertions(+), 1190 deletions(-)
 delete mode 100644 archetypes/streampipes-archetype-pe-processors-flink/src/main/resources/archetype-resources/deployment/docker-compose.yml
 delete mode 100644 archetypes/streampipes-archetype-pe-processors-flink/src/main/resources/archetype-resources/deployment/system
 delete mode 100644 archetypes/streampipes-archetype-pe-processors-jvm/src/main/resources/archetype-resources/deployment/docker-compose.yml
 delete mode 100644 archetypes/streampipes-archetype-pe-processors-jvm/src/main/resources/archetype-resources/deployment/system
 delete mode 100644 archetypes/streampipes-archetype-pe-sinks-flink/src/main/resources/archetype-resources/deployment/docker-compose.yml
 delete mode 100644 archetypes/streampipes-archetype-pe-sinks-flink/src/main/resources/archetype-resources/deployment/system
 delete mode 100644 archetypes/streampipes-archetype-pe-sinks-jvm/src/main/resources/archetype-resources/deployment/docker-compose.yml
 delete mode 100644 archetypes/streampipes-archetype-pe-sinks-jvm/src/main/resources/archetype-resources/deployment/system
 copy ui/src/app/dashboard/components/widgets/raw/raw-widget.component.css => streampipes-measurement-units/src/test/java/org/apache/streampipes/units/test/TestUnitProvider.java (64%)
 delete mode 100644 streampipes-measurement-units/src/test/java/org/streampipes/units/test/Test.java
 delete mode 100644 streampipes-measurement-units/src/test/java/org/streampipes/units/test/Test2.java
 create mode 100644 streampipes-messaging-mqtt/pom.xml
 copy ui/src/app/dashboard/components/widgets/trafficlight/traffic-light-widget.component.css => streampipes-messaging-mqtt/src/main/java/org/apache/streampipes/messaging/mqtt/AbstractMqttConnector.java (50%)
 create mode 100644 streampipes-messaging-mqtt/src/main/java/org/apache/streampipes/messaging/mqtt/MqttConsumer.java
 create mode 100644 streampipes-messaging-mqtt/src/main/java/org/apache/streampipes/messaging/mqtt/MqttPublisher.java
 copy ui/src/app/dashboard/components/widgets/trafficlight/traffic-light-widget.component.css => streampipes-messaging-mqtt/src/main/java/org/apache/streampipes/messaging/mqtt/SpMqttProtocol.java (50%)
 copy ui/src/app/dashboard/components/widgets/trafficlight/traffic-light-widget.component.css => streampipes-messaging-mqtt/src/main/java/org/apache/streampipes/messaging/mqtt/SpMqttProtocolFactory.java (52%)
 copy ui/src/app/dashboard/components/widgets/raw/raw-widget.component.css => streampipes-model/src/main/java/org/apache/streampipes/model/NotificationCount.java (71%)
 create mode 100644 streampipes-model/src/main/java/org/apache/streampipes/model/grounding/MqttTransportProtocol.java
 copy ui/src/app/dashboard/components/widgets/map/map-widget.component.css => streampipes-rest/src/main/java/org/apache/streampipes/rest/api/IMeasurementUnitResource.java (81%)
 create mode 100644 streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/MeasurementUnitResource.java
 rename ui/src/app/connect/static-properties/static-mapping-nary/{static-mapping-nary.component.css => static-mapping-nary.component.scss} (95%)
 copy ui/src/app/{dashboard/components/widgets/area/area-widget.component.css => core-model/measurement-unit/MeasurementUnit.ts} (75%)
 copy ui/src/app/{app-container/view/view.component.css => core-ui/linechart/labeling-tool/components/label-selection/label-selection.component.css} (97%)
 copy .gitlab/issue_templates/bug.md => ui/src/app/core-ui/linechart/labeling-tool/components/label-selection/label-selection.component.html (50%)
 create mode 100644 ui/src/app/core-ui/linechart/labeling-tool/components/label-selection/label-selection.component.ts
 copy ui/src/app/{app-container/view/view.component.css => core-ui/linechart/labeling-tool/components/point-selection-info/point-selection-info.component.css} (97%)
 copy ui/src/app/{app-transport-monitoring/components/dashboard-image/dashboard-image.component.html => core-ui/linechart/labeling-tool/components/point-selection-info/point-selection-info.component.html} (70%)
 copy ui/src/app/{app-transport-monitoring/components/dashboard-item/dashboard-item.component.ts => core-ui/linechart/labeling-tool/components/point-selection-info/point-selection-info.component.ts} (53%)
 copy ui/src/app/{dashboard/components/widgets/image/image-widget.component.css => core-ui/linechart/labeling-tool/dialogs/change-chartmode/change-chartmode.dialog.css} (75%)
 copy ui/src/app/{sensors/components/general/advanced-settings.tmpl.html => core-ui/linechart/labeling-tool/dialogs/change-chartmode/change-chartmode.dialog.html} (72%)
 copy ui/src/app/{app-transport-monitoring/components/dashboard-status/dashboard-status.component.ts => core-ui/linechart/labeling-tool/dialogs/change-chartmode/change-chartmode.dialog.ts} (62%)
 copy ui/src/app/{dashboard/components/widgets/image/image-widget.component.css => core-ui/linechart/labeling-tool/dialogs/labeling/labeling.dialog.css} (68%)
 create mode 100644 ui/src/app/core-ui/linechart/labeling-tool/dialogs/labeling/labeling.dialog.html
 copy streampipes-sdk/src/main/java/org/apache/streampipes/sdk/helpers/Groundings.java => ui/src/app/core-ui/linechart/labeling-tool/dialogs/labeling/labeling.dialog.ts (51%)
 create mode 100644 ui/src/app/core-ui/linechart/labeling-tool/labeling-tool.module.ts
 copy ui/src/app/{data-explorer-v2/services/refresh-dashboard.service.ts => core-ui/linechart/labeling-tool/services/color.service.ts} (60%)
 rename ui/src/app/dashboard/dialogs/add-widget/{add-visualization-dialog.component.css => add-visualization-dialog.component.scss} (100%)
 copy ui/{webpack.partial.base.js => src/app/dashboard/sdk/matching/schema-match.ts} (67%)
 copy ui/src/app/{dashboard/components/standalone/standalone-dashboard.component.html => notifications/components/notification-item.component.html} (73%)
 copy ui/src/app/{dashboard/components/standalone/standalone-dashboard.component.css => notifications/components/notification-item.component.scss} (57%)
 copy ui/{webpack.partial.base.js => src/app/notifications/components/notification-item.component.ts} (56%)
 copy ui/src/app/{dashboard/components/widgets/html/html-widget.component.css => notifications/model/notifications.model.ts} (64%)
 create mode 100644 ui/src/app/notifications/notifications.component.html
 create mode 100644 ui/src/app/notifications/notifications.component.scss
 create mode 100644 ui/src/app/notifications/notifications.component.ts
 delete mode 100644 ui/src/app/notifications/notifications.controller.ts
 delete mode 100644 ui/src/app/notifications/notifications.html
 create mode 100644 ui/src/app/notifications/service/notifications.service.ts
 copy ui/{webpack.partial.base.js => src/app/notifications/utils/notifications.utils.ts} (62%)
 create mode 100644 ui/src/app/services/notification-count-service.ts


[incubator-streampipes] 02/02: Fix css for data explorer

Posted by ze...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

zehnder pushed a commit to branch STREAMPIPES-79
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git

commit 149db7ce2842bac45032d9e729a709c54169c4a3
Author: Philipp Zehnder <ze...@fzi.de>
AuthorDate: Wed Apr 15 18:48:25 2020 +0200

    Fix css for data explorer
---
 ui/package.json                                               |  4 +---
 .../grid/data-explorer-dashboard-grid.component.css           |  6 ++++++
 .../panel/data-explorer-dashboard-panel.component.css         |  6 ++++++
 .../panel/data-explorer-dashboard-panel.component.html        |  2 +-
 ui/src/app/data-explorer-v2/data-explorer-v2.component.css    | 11 ++++++++++-
 ui/src/app/data-explorer-v2/data-explorer-v2.component.html   |  5 ++---
 ui/src/app/data-explorer-v2/data-explorer-v2.module.ts        |  6 ++----
 7 files changed, 28 insertions(+), 12 deletions(-)

diff --git a/ui/package.json b/ui/package.json
index 610daf1..a509626 100644
--- a/ui/package.json
+++ b/ui/package.json
@@ -98,11 +98,9 @@
     "shepherd.js": "2.4.0",
     "slick-carousel": "1.6.0",
     "systemjs": "^0.21.6",
-    "tslib": "^1.10.0",
-    "ng-pick-datetime": "^7.0.0",
-    "trix": "0.10.1",
     "tslib": "^1.11.1",
     "ng-pick-datetime": "^7.0.0",
+    "trix": "0.10.1",
     "zone.js": "~0.10.2"
   },
   "devDependencies": {
diff --git a/ui/src/app/data-explorer-v2/components/grid/data-explorer-dashboard-grid.component.css b/ui/src/app/data-explorer-v2/components/grid/data-explorer-dashboard-grid.component.css
index 6368cea..791a047 100644
--- a/ui/src/app/data-explorer-v2/components/grid/data-explorer-dashboard-grid.component.css
+++ b/ui/src/app/data-explorer-v2/components/grid/data-explorer-dashboard-grid.component.css
@@ -22,4 +22,10 @@ gridster ::ng-deep {
 
 gridster.edit ::ng-deep {
     background: #d3d3d3;
+}
+
+gridster.scrollVertical ::ng-deep {
+    min-height: 100%;
+    display: flex;
+    flex: 1 1 100%;
 }
\ No newline at end of file
diff --git a/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.css b/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.css
index 1faa4d1..178a2de 100644
--- a/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.css
+++ b/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.css
@@ -23,3 +23,9 @@
 .h-100 {
     height:100%;
 }
+
+.dashboard-grid {
+    display:flex;
+    flex-direction: column;
+    flex: 1 1 100%;
+}
diff --git a/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.html b/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.html
index 119ca8b..76ba569 100644
--- a/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.html
+++ b/ui/src/app/data-explorer-v2/components/panel/data-explorer-dashboard-panel.component.html
@@ -34,5 +34,5 @@
             [viewDateRange]="viewDateRange"
             (updateCallback)="updateAndQueueItemForDeletion($event)"
             (deleteCallback)="removeAndQueueItemForDeletion($event)"
-            class="h-100"></sp-data-explorer-dashboard-grid>
+            class="h-100 dashboard-grid"></sp-data-explorer-dashboard-grid>
 </div>
\ No newline at end of file
diff --git a/ui/src/app/data-explorer-v2/data-explorer-v2.component.css b/ui/src/app/data-explorer-v2/data-explorer-v2.component.css
index 7eaab26..1837aff 100644
--- a/ui/src/app/data-explorer-v2/data-explorer-v2.component.css
+++ b/ui/src/app/data-explorer-v2/data-explorer-v2.component.css
@@ -18,4 +18,13 @@
 
 .mr-20 {
     margin-right:20px;
-}
\ No newline at end of file
+}
+
+.dashboard-panel {
+    height: 100%;
+    flex-direction: column;
+    box-sizing: border-box;
+    display: flex;
+    flex: 1 1 100%;
+    overflow-y: auto;
+}
diff --git a/ui/src/app/data-explorer-v2/data-explorer-v2.component.html b/ui/src/app/data-explorer-v2/data-explorer-v2.component.html
index 678e218..00c5b19 100644
--- a/ui/src/app/data-explorer-v2/data-explorer-v2.component.html
+++ b/ui/src/app/data-explorer-v2/data-explorer-v2.component.html
@@ -39,7 +39,7 @@
         </div>
     </div>
 
-    <div class="fixed-height page-container-padding-inner" fxLayout="column" fxFlex="100" *ngIf="dashboardsLoaded">
+    <div class="page-container-padding-inner" fxLayout="column" fxFlex="100" *ngIf="dashboardsLoaded">
         <sp-data-explorer-dashboard-overview (selectDashboardEmitter)="openDashboard($event)"
                                              (reloadDashboardsEmitter)="getDashboards()"
                                              [dataViewDashboards]="dataViewDashboards"
@@ -50,8 +50,7 @@
                                           [(editMode)]="editMode"
                                           [dashboard]="selectedDataViewDashboard"
                                           [viewDateRange]="viewDateRange"
-                                          style="height:100%;" *ngIf="dashboardTabSelected">
-
+                                          class="dashboard-panel" *ngIf="dashboardTabSelected">
         </sp-data-explorer-dashboard-panel>
     </div>
 </div>
diff --git a/ui/src/app/data-explorer-v2/data-explorer-v2.module.ts b/ui/src/app/data-explorer-v2/data-explorer-v2.module.ts
index 81bbd05..10d2fc1 100644
--- a/ui/src/app/data-explorer-v2/data-explorer-v2.module.ts
+++ b/ui/src/app/data-explorer-v2/data-explorer-v2.module.ts
@@ -44,8 +44,8 @@ import { DataExplorerDashboardPanelComponent } from './components/panel/data-exp
 import { TimeRangeSelectorComponent } from './components/time-selector/timeRangeSelector.component';
 import { DataExplorerDashboardWidgetComponent } from './components/widget/data-explorer-dashboard-widget.component';
 import { LineChartWidgetComponent } from './components/widgets/line-chart/line-chart-widget.component';
-import { DataDownloadDialog } from './components/widgets/old-explorer-widget/datadownloadDialog/dataDownload.dialog';
-import { OldExplorerComponent } from './components/widgets/old-explorer-widget/old-explorer.component';
+// import { DataDownloadDialog } from './components/widgets/old-explorer-widget/datadownloadDialog/dataDownload.dialog';
+// import { OldExplorerComponent } from './components/widgets/old-explorer-widget/old-explorer.component';
 import { TableWidgetComponent } from './components/widgets/table/table-widget.component';
 import { LoadDataSpinnerComponent } from './components/widgets/utils/load-data-spinner/load-data-spinner.component';
 import { NoDataInDateRangeComponent } from './components/widgets/utils/no-data/no-data-in-date-range.component';
@@ -108,9 +108,7 @@ export const MY_NATIVE_FORMATS = {
     DataExplorerEditDataViewDialogComponent,
     TableWidgetComponent,
     LineChartWidgetComponent,
-    DataDownloadDialog,
     TimeRangeSelectorComponent,
-    OldExplorerComponent,
     NoDataInDateRangeComponent,
     LoadDataSpinnerComponent,
     SelectPropertiesComponent


[incubator-streampipes] 01/02: Merge branch 'dev' into STREAMPIPES-79

Posted by ze...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

zehnder pushed a commit to branch STREAMPIPES-79
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git

commit 8ae8d1462d52485fbc9c5c1cbe077093225d4a40
Merge: 70401ab 172028f
Author: Philipp Zehnder <ze...@fzi.de>
AuthorDate: Wed Apr 15 15:50:17 2020 +0200

    Merge branch 'dev' into STREAMPIPES-79

 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  15 --
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  20 +-
 .../src/main/java/config/Config.java               |  18 ++
 .../src/main/java/config/ConfigKeys.java           |  18 ++
 .../src/main/java/main/Init.java                   |  18 ++
 .../__packageName__/__classNamePrefix__.java       |  25 +-
 .../__classNamePrefix__Controller.java             |  20 +-
 .../__classNamePrefix__Parameters.java             |  18 ++
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  15 --
 .../__classNamePrefix__Controller.java             |   2 -
 .../deployment/docker-compose.yml                  |  13 -
 .../archetype-resources/deployment/system          |  11 -
 .../src/main/resources/archetype-resources/pom.xml |  20 +-
 .../sink/__packageName__/__classNamePrefix__.java  |   7 +-
 .../__classNamePrefix__Controller.java             |   2 -
 .../src/main/resources/archetype-resources/pom.xml |  15 --
 pom.xml                                            |   7 +
 .../backend/StreamPipesResourceConfig.java         |  45 ++--
 streampipes-measurement-units/pom.xml              |  11 +
 .../streampipes/units/test/TestUnitProvider.java   |  34 +++
 .../test/java/org/streampipes/units/test/Test.java |  54 ----
 .../java/org/streampipes/units/test/Test2.java     |  49 ----
 .../messaging/jms/ActiveMQPublisher.java           |   6 -
 streampipes-messaging-mqtt/pom.xml                 |  46 ++++
 .../messaging/mqtt/AbstractMqttConnector.java      |  41 +++
 .../streampipes/messaging/mqtt/MqttConsumer.java   |  62 +++++
 .../streampipes/messaging/mqtt/MqttPublisher.java  |  69 ++++++
 .../streampipes/messaging/mqtt/SpMqttProtocol.java |  43 ++++
 .../messaging/mqtt/SpMqttProtocolFactory.java      |  40 +++
 .../org/apache/streampipes/model/Notification.java |  18 ++
 .../streampipes/model/NotificationCount.java       |  37 +++
 .../model/base/InvocableStreamPipesEntity.java     |  12 +
 .../model/grounding/MqttTransportProtocol.java     |  61 +++++
 .../model/grounding/TransportProtocol.java         |   4 +-
 .../manager/setup/CouchDbInstallationStep.java     |  31 ++-
 .../rest/api/IMeasurementUnitResource.java         |  24 ++
 .../apache/streampipes/rest/api/INotification.java |   4 +-
 .../apache/streampipes/rest/impl/ConsulConfig.java |   5 +-
 .../rest/impl/MeasurementUnitResource.java         |  41 +++
 .../apache/streampipes/rest/impl/Notification.java |  16 +-
 .../rest/notifications/NotificationListener.java   |   2 +-
 .../jsonld/CustomAnnotationProvider.java           |   4 +-
 .../storage/api/INotificationStorage.java          |   5 +-
 .../couchdb/impl/NotificationStorageImpl.java      |  48 +++-
 .../apache/streampipes/vocabulary/StreamPipes.java |   3 +
 .../wrapper/context/RuntimeContext.java            |   2 +
 .../context/SpEventProcessorRuntimeContext.java    |   9 +-
 .../wrapper/context/SpEventSinkRuntimeContext.java |   6 +-
 .../wrapper/context/SpRuntimeContext.java          |  11 +-
 .../runtime/EventProcessorRuntimeParams.java       |   3 +-
 .../params/runtime/EventSinkRuntimeParams.java     |   3 +-
 ui/deployment/app.module.mst                       |   2 -
 ui/deployment/appng5.module.mst                    |   4 +
 ui/deployment/state.config.mst                     |   3 +-
 ui/deployment/toolbar.controller.mst               |  53 ++--
 ui/package.json                                    |   2 +
 .../app-asset-monitoring.component.html            |   2 +-
 .../app-asset-monitoring.component.ts              |   1 +
 .../app-asset-monitoring.module.ts                 |  11 +
 .../create-asset/create-asset.component.ts         |   8 +-
 .../services/websocket.service.ts                  |  19 +-
 ui/src/app/connect/model/DataStreamDescription.ts  |   2 +-
 .../connect/new-adapter/new-adapter.component.ts   | 186 +++++++-------
 .../event-schema/event-schema.component.ts         |   3 +
 .../app/connect/schema-editor/model/EventSchema.ts |  14 +-
 .../static-color-picker.component.ts               |   1 +
 .../static-mapping-nary.component.html             |  13 +-
 ...nent.css => static-mapping-nary.component.scss} |   1 +
 .../static-mapping-nary.component.ts               |  43 +++-
 .../static-mapping-unary.component.ts              |   9 +
 .../static-one-of-input.component.html             |   2 +-
 .../static-one-of-input.component.ts               |  18 +-
 .../core-model/measurement-unit/MeasurementUnit.ts |  30 +++
 .../label-selection/label-selection.component.css} |   4 +-
 .../label-selection.component.html}                |  22 +-
 .../label-selection/label-selection.component.ts   |  61 +++++
 .../point-selection-info.component.css}            |   4 +-
 .../point-selection-info.component.html}           |  19 +-
 .../point-selection-info.component.ts}             |  48 ++--
 .../change-chartmode/change-chartmode.dialog.css}  |  16 +-
 .../change-chartmode/change-chartmode.dialog.html} |  17 +-
 .../change-chartmode/change-chartmode.dialog.ts}   |  33 ++-
 .../dialogs/labeling/labeling.dialog.css}          |  30 +--
 .../dialogs/labeling/labeling.dialog.html          |  36 +++
 .../dialogs/labeling/labeling.dialog.ts            |  52 ++++
 .../labeling-tool/labeling-tool.module.ts          |  90 +++++++
 .../labeling-tool/services/color.service.ts}       |  41 ++-
 ui/src/app/core/working.state.config.ts            |   2 +-
 .../components/grid/dashboard-grid.component.css   |   6 +
 .../components/panel/dashboard-panel.component.css |   6 +
 .../panel/dashboard-panel.component.html           |   6 +-
 .../widgets/area/area-widget.component.ts          |   5 +-
 .../components/widgets/base/base-config.ts         |   8 +
 .../widgets/base/base-ngx-charts-widget.ts         |   5 +-
 .../widgets/base/base-ngx-line-charts-widget.ts    |   5 +-
 .../components/widgets/base/base-widget.ts         |   2 +
 .../widgets/gauge/gauge-widget.component.ts        |   5 +-
 .../widgets/html/html-widget.component.ts          |   5 +-
 .../widgets/image/image-widget.component.ts        |   5 +-
 .../widgets/line/line-widget.component.ts          |   5 +-
 .../dashboard/components/widgets/map/map-config.ts |   2 +-
 .../components/widgets/map/map-widget.component.ts |   5 +-
 .../components/widgets/number/number-config.ts     |   2 +-
 .../widgets/number/number-widget.component.css     |  13 +
 .../widgets/number/number-widget.component.html    |  11 +-
 .../widgets/number/number-widget.component.ts      |  22 +-
 .../components/widgets/raw/raw-widget.component.ts |   5 +-
 .../components/widgets/table/table-config.ts       |   3 +-
 .../widgets/table/table-widget.component.ts        |   5 +-
 .../widgets/trafficlight/traffic-light-config.ts   |   4 +-
 .../trafficlight/traffic-light-widget.component.ts |   5 +-
 ui/src/app/dashboard/dashboard.component.css       |   9 +
 ui/src/app/dashboard/dashboard.component.html      |   2 +-
 .../add-visualization-dialog.component.html        |   6 +-
 ...css => add-visualization-dialog.component.scss} |   0
 .../add-visualization-dialog.component.ts          |  31 ++-
 .../dashboard/registry/widget-config-builder.ts    |  12 +-
 ui/src/app/dashboard/registry/widget-registry.ts   |  12 +
 .../sdk/extractor/static-property-extractor.ts     |  15 +-
 ui/src/app/dashboard/sdk/matching/schema-match.ts  |  30 +++
 ui/src/app/dashboard/services/dashboard.service.ts |  12 +-
 .../linechart/lineChart.component.html             |   8 +-
 .../linechart/lineChart.component.ts               | 276 ++++++++++++++++++++-
 ui/src/app/data-explorer/data-explorer.module.ts   |  81 +++---
 .../customize/customize-dialog.component.ts        |   3 +-
 .../customize/customize-dialog.tmpl.html           |  12 +-
 .../customoutput/customoutput.component.ts         |   3 +-
 .../components/customoutput/customoutput.tmpl.html |  21 +-
 .../property-selection.component.ts                |   3 +-
 .../propertyselection/property-selection.tmpl.html |   3 +-
 .../domainconcept/domainconcept.controller.ts      |   4 +-
 .../components/fileupload/fileupload.component.ts  |   3 +-
 .../components/fileupload/fileupload.tmpl.html     |   8 +-
 .../mappingnary/mappingnary.component.ts           |   3 +-
 .../components/mappingnary/mappingnary.tmpl.html   |   6 +-
 .../mappingunary/mappingunary.component.ts         |   1 +
 .../mappingunary/mappingunary.controller.ts        |   8 +-
 .../components/mappingunary/mappingunary.tmpl.html |   5 +-
 .../editor/components/oneof/oneof.controller.ts    |   5 +
 .../pipeline-element-icon-stand.component.ts       |   3 +-
 .../pipeline-element-icon-stand.controller.ts      |  10 +-
 .../pipeline-element-icon-stand.tmpl.html          |   4 +-
 .../pipeline-element-options.controller.ts         |   3 +-
 .../pipeline-element-options.tmpl.html             |   2 +-
 .../components/pipeline/pipeline.controller.ts     |   2 +-
 .../replaceoutput/replaceoutput.component.ts       |   3 +-
 .../replaceoutput/replaceoutput.tmpl.html          |   2 +-
 .../editor/components/secret/secret.controller.ts  |   4 +
 .../customize.controller.ts                        |   9 +-
 .../customizeElementDialog.tmpl.html               |  22 +-
 ui/src/app/editor/editor.controller.ts             |  29 ++-
 ui/src/app/editor/editor.html                      |   4 +-
 .../services/editor-dialog-manager.service.ts      |   5 +-
 ui/src/app/layout/layout.module.ts                 |   1 +
 .../components/notification-item.component.html    |  28 +++
 .../components/notification-item.component.scss    |  55 ++++
 .../components/notification-item.component.ts      |  39 +++
 .../app/notifications/model/notifications.model.ts |  39 +++
 .../app/notifications/notifications.component.html |  69 ++++++
 .../app/notifications/notifications.component.scss | 123 +++++++++
 .../app/notifications/notifications.component.ts   | 177 +++++++++++++
 .../app/notifications/notifications.controller.ts  |  65 -----
 ui/src/app/notifications/notifications.html        |  72 ------
 ui/src/app/notifications/notifications.module.ts   |  54 +++-
 .../notifications/service/notifications.service.ts |  63 +++++
 .../app/notifications/utils/notifications.utils.ts |  30 +++
 ui/src/app/platform-services/tsonld/tsonld.ts      |  55 ++--
 ui/src/app/services/notification-count-service.ts  |  66 +++++
 ui/src/app/services/rest-api.service.ts            |   4 +
 ui/src/app/services/services.module.ts             |   2 +
 ui/src/assets/templates/iconbar.html               |  16 +-
 ui/src/assets/templates/navbar.html                |   2 +-
 ui/src/assets/templates/streampipes.html           |  10 +-
 ui/src/index.html                                  |   2 +-
 ui/src/scss/sp/buttons.scss                        |   6 +
 ui/src/scss/sp/main.scss                           |   2 +-
 182 files changed, 2910 insertions(+), 961 deletions(-)

diff --cc streampipes-backend/src/main/java/org/apache/streampipes/backend/StreamPipesResourceConfig.java
index a783813,b8bf526..e5b4868
--- a/streampipes-backend/src/main/java/org/apache/streampipes/backend/StreamPipesResourceConfig.java
+++ b/streampipes-backend/src/main/java/org/apache/streampipes/backend/StreamPipesResourceConfig.java
@@@ -97,32 -114,12 +116,21 @@@ public class StreamPipesResourceConfig 
      register(SemanticEventProcessingAgent.class);
      register(SemanticEventProducer.class);
      register(Setup.class);
-     register(VirtualSensor.class);
-     register(Visualization.class);
-     register(RdfEndpoint.class);
-     register(ApplicationLink.class);
-     register(User.class);
-     register(ConsulConfig.class);
-     register(DataStream.class);
-     register(ContainerProvidedOptions.class);
      register(StreamPipesLogs.class);
-     register(PipelineTemplate.class);
-     register(Couchdb.class);
-     register(InternalPipelineTemplates.class);
-     register(PipelineElementRuntimeInfo.class);
+     register(User.class);
      register(Version.class);
 +    register(PipelineElementAsset.class);
 +    register(DataLakeDashboard.class);
 +    register(DataLakeWidgetResource.class);
 +    register(DataLakeResourceV3.class);
 +    register(DataLakeNoUserResourceV3.class);
 +    register(PipelineElementFile.class);
 +    register(FileServingResource.class);
 +    register(DashboardWidget.class);
 +    register(Dashboard.class);
+     register(VirtualSensor.class);
+     register(Visualization.class);
      register(VisualizablePipeline.class);
-     register(PipelineCache.class);
- 
  
      // Serializers
      register(GsonWithIdProvider.class);
diff --cc streampipes-vocabulary/src/main/java/org/apache/streampipes/vocabulary/StreamPipes.java
index 58980d1,9970a6b..054ab0e
--- a/streampipes-vocabulary/src/main/java/org/apache/streampipes/vocabulary/StreamPipes.java
+++ b/streampipes-vocabulary/src/main/java/org/apache/streampipes/vocabulary/StreamPipes.java
@@@ -377,13 -378,7 +379,14 @@@ public class StreamPipes 
    public static final String DASHBOARD_WIDGET_DATA_CONFIG = NS + "DashboardWidgetDataConfig" ;
    public static final String COLOR_PICKER_STATIC_PROPERTY = NS + "ColorPickerStaticProperty";
    public static final String SELECTED_COLOR = NS + "hasSelectedColor";
 +
 +  public static final String DATA_EXPLORER_WIDGET_MODEL = NS + "DataExplorerWidgetModel";
 +  public static final String DATA_LAKE_MEASURE = NS + "DataLakeMeasure";
 +  public static final String HAS_DATA_LAKE_MEASURE = NS + "hasDataLakeMeasure";
 +  public static final String HAS_MEASUREMENT_NAME = NS + "hasMeasurementName";
 +  public static final String HAS_EVENT_SCHEMA = NS + "hasEventSchema";
    public static final String HAS_WIDGET_ICON_NAME = NS + "hasWidgetIconName";
    public static final String HAS_WIDGET_DESCRIPTION = NS + "hasWidgetDescription";
 +  public static final String HAS_SELECTED_KEYS = NS + "hasSelectedKeys";
+   public static final String CORRESPONDING_USER = NS + "hasCorrespondingUser";
  }
diff --cc ui/package.json
index abd79c3,91234fd..610daf1
--- a/ui/package.json
+++ b/ui/package.json
@@@ -98,9 -98,9 +98,11 @@@
      "shepherd.js": "2.4.0",
      "slick-carousel": "1.6.0",
      "systemjs": "^0.21.6",
+     "tslib": "^1.10.0",
+     "ng-pick-datetime": "^7.0.0",
      "trix": "0.10.1",
 +    "tslib": "^1.11.1",
 +    "ng-pick-datetime": "^7.0.0",
      "zone.js": "~0.10.2"
    },
    "devDependencies": {
diff --cc ui/src/app/dashboard/dialogs/add-widget/add-visualization-dialog.component.ts
index b022565,a142d61..0b9ed79
--- a/ui/src/app/dashboard/dialogs/add-widget/add-visualization-dialog.component.ts
+++ b/ui/src/app/dashboard/dialogs/add-widget/add-visualization-dialog.component.ts
@@@ -16,20 -16,23 +16,22 @@@
   *
   */
  
 -import {Component, Inject} from "@angular/core";
 -import {MAT_DIALOG_DATA, MatDialogRef} from "@angular/material/dialog";
 -import {DashboardService} from "../../services/dashboard.service";
 -import {ElementIconText} from "../../../services/get-element-icon-text.service";
 -import {WidgetRegistry} from "../../registry/widget-registry";
 -import {MappingPropertyUnary} from "../../../connect/model/MappingPropertyUnary";
 -import {MappingPropertyGenerator} from "../../sdk/matching/mapping-property-generator";
 -import {EventProperty} from "../../../connect/schema-editor/model/EventProperty";
 -import {EventSchema} from "../../../connect/schema-editor/model/EventSchema";
 -import {DashboardWidget} from "../../../core-model/dashboard/DashboardWidget";
 -import {DashboardWidgetSettings} from "../../../core-model/dashboard/DashboardWidgetSettings";
 -import {VisualizablePipeline} from "../../../core-model/dashboard/VisualizablePipeline";
 -import {Dashboard} from "../../models/dashboard.model";
 -import {MappingPropertyNary} from "../../../connect/model/MappingPropertyNary";
 -import {ConfigurationInfo} from "../../../connect/model/message/ConfigurationInfo";
 -import {FreeTextStaticProperty} from "../../../connect/model/FreeTextStaticProperty";
 -import {WidgetConfigBuilder} from "../../registry/widget-config-builder";
 +import { Component, Inject } from '@angular/core';
 +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
++import { FreeTextStaticProperty } from '../../../connect/model/FreeTextStaticProperty';
 +import { MappingPropertyNary } from '../../../connect/model/MappingPropertyNary';
 +import { MappingPropertyUnary } from '../../../connect/model/MappingPropertyUnary';
 +import { EventProperty } from '../../../connect/schema-editor/model/EventProperty';
 +import { EventSchema } from '../../../connect/schema-editor/model/EventSchema';
 +import { DashboardWidget } from '../../../core-model/dashboard/DashboardWidget';
 +import { DashboardWidgetSettings } from '../../../core-model/dashboard/DashboardWidgetSettings';
 +import { VisualizablePipeline } from '../../../core-model/dashboard/VisualizablePipeline';
 +import { ElementIconText } from '../../../services/get-element-icon-text.service';
 +import { Dashboard } from '../../models/dashboard.model';
++import { WidgetConfigBuilder } from '../../registry/widget-config-builder';
 +import { WidgetRegistry } from '../../registry/widget-registry';
 +import { MappingPropertyGenerator } from '../../sdk/matching/mapping-property-generator';
 +import { DashboardService } from '../../services/dashboard.service';
  
  @Component({
      selector: 'add-visualization-dialog-component',
@@@ -61,9 -64,11 +63,11 @@@ export class AddVisualizationDialogComp
      dashboard: Dashboard;
  
      selectedType: any;
 -    page: any = "select-pipeline";
 +    page: any = 'select-pipeline';
      dialogTitle: string;
  
+     configValid: boolean;
+ 
  
      constructor(
          public dialogRef: MatDialogRef<AddVisualizationDialogComponent>,
@@@ -83,15 -88,10 +87,10 @@@
                          this.visualizablePipelines.push(vis);
                          this.sortPipeline();
                      });
--                })
-             });
- 
-             this.availableWidgets = WidgetRegistry.getAvailableWidgetTemplates()
-             this.availableWidgets.sort((a, b) => {
-                 return a.widgetLabel < b.widgetLabel ? -1 : 1;
++                });
              });
          } else {
--            this.dialogTitle = "Edit widget";
++            this.dialogTitle = 'Edit widget';
              this.selectedPipeline = this.data.pipeline;
              this.selectedWidget = this.data.widget.dashboardWidgetSettings;
              this.page = 'configure-widget';
@@@ -125,8 -125,8 +124,7 @@@
      }
  
      getTabCss(page) {
-         if (page == this.page) { return 'md-fab md-accent'; }
-         else { return 'md-fab md-accent wizard-inactive'; }
 -        if (page == this.page) return "md-fab md-accent";
 -        else return "md-fab md-accent wizard-inactive";
++        if (page == this.page) { return 'md-fab md-accent'; } else { return 'md-fab md-accent wizard-inactive'; }
      }
  
      selectPipeline(vis) {
@@@ -138,9 -138,12 +136,12 @@@
          this.selectedWidget = widget;
          this.selectedWidget.config.forEach(sp => {
              if (sp instanceof MappingPropertyUnary || sp instanceof MappingPropertyNary) {
 -                let requirement: EventProperty = this.findRequirement(this.selectedWidget.requiredSchema, sp.internalName);
 +                const requirement: EventProperty = this.findRequirement(this.selectedWidget.requiredSchema, sp.internalName);
                  sp.mapsFromOptions = new MappingPropertyGenerator(requirement, this.selectedPipeline.schema.eventProperties).computeMatchingProperties();
              }
+             if (sp instanceof FreeTextStaticProperty && sp.internalName === WidgetConfigBuilder.TITLE_KEY) {
+                 sp.value = this.selectedPipeline.visualizationName;
+             }
          });
          this.next();
      }
@@@ -184,4 -191,10 +189,10 @@@
          return this.elementIconText.getElementIconText(s);
      }
  
+     validConfiguration(valid: boolean) {
+         setTimeout(() => {
+             this.configValid = this.selectedWidget.config.every(sp => sp.isValid);
+         });
+     }
+ 
 -}
 +}
diff --cc ui/src/app/data-explorer-v2/components/widgets/old-explorer-widget/explorer-visualisations/linechart/lineChart.component.ts
index ee949b3,3f3f015..1a8bc3e
--- a/ui/src/app/data-explorer-v2/components/widgets/old-explorer-widget/explorer-visualisations/linechart/lineChart.component.ts
+++ b/ui/src/app/data-explorer-v2/components/widgets/old-explorer-widget/explorer-visualisations/linechart/lineChart.component.ts
@@@ -16,10 -16,15 +16,13 @@@
   *
   */
  
- import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';
- import { DataResult } from '../../../../core-model/datalake/DataResult';
- import { GroupedDataResult } from '../../../../core-model/datalake/GroupedDataResult';
+ import { Component, EventEmitter, OnChanges, Output, Renderer2, SimpleChanges } from '@angular/core';
+ import { MatDialog } from '@angular/material/dialog';
+ import { PlotlyService } from 'angular-plotly.js';
 -import { DataResult } from '../../core-model/datalake/DataResult';
 -import { GroupedDataResult } from '../../core-model/datalake/GroupedDataResult';
 -import { BaseChartComponent } from '../chart/baseChart.component';
 -import { ChangeChartmodeDialog } from './labeling-tool/dialogs/change-chartmode/change-chartmode.dialog';
 -import { LabelingDialog } from './labeling-tool/dialogs/labeling/labeling.dialog';
 -import { ColorService } from './labeling-tool/services/color.service';
++import { DataResult } from '../../../../../../core-model/datalake/DataResult';
++import { GroupedDataResult } from '../../../../../../core-model/datalake/GroupedDataResult';
++import { ColorService } from '../../../../../../core-ui/linechart/labeling-tool/services/color.service';
 +import { BaseVisualisationComponent } from '../base/baseVisualisation.component';
  
  
  @Component({
diff --cc ui/src/app/data-explorer/data-explorer.module.ts
index 0a6d6a5,0096d53..ae4eb74
--- a/ui/src/app/data-explorer/data-explorer.module.ts
+++ b/ui/src/app/data-explorer/data-explorer.module.ts
@@@ -26,25 -26,26 +26,25 @@@ import { CdkTableModule } from '@angula
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
  import { MatSnackBarModule } from '@angular/material/snack-bar';
+ import {
+     OWL_DATE_TIME_FORMATS,
+     OwlDateTimeModule,
+     OwlNativeDateTimeModule
+ } from '@danielmoncada/angular-datetime-picker';
  import { DatalakeRestService } from '../core-services/datalake/datalake-rest.service';
  import { CoreUiModule } from '../core-ui/core-ui.module';
+ import { LabelingToolModule } from '../core-ui/linechart/labeling-tool/labeling-tool.module';
  import { CustomMaterialModule } from '../CustomMaterial/custom-material.module';
- import { DataDownloadDialog } from './explorer-widget/datadownloadDialog/dataDownload.dialog';
 -import { DataDownloadDialog } from './explorer/datadownloadDialog/dataDownload.dialog';
 -import { ExplorerComponent } from './explorer/explorer.component';
 -
 +import { ExplorerComponent } from './explorer-widget/explorer.component';
- 
- import { OWL_DATE_TIME_FORMATS, OwlDateTimeModule, OwlNativeDateTimeModule } from '@danielmoncada/angular-datetime-picker';
- import { PlotlyViaWindowModule } from 'angular-plotly.js';
- import { LineChartComponent } from './explorer-widget/explorer-visualisations/linechart/lineChart.component';
- import { TableComponent } from './explorer-widget/explorer-visualisations/table/table.component';
- import { TimeRangeSelectorComponent } from './time-selector/timeRangeSelector.component';
++import { DataDownloadDialog } from './explorer-widget/datadownloadDialog/dataDownload.dialog';
  
  export const MY_NATIVE_FORMATS = {
 -    fullPickerInput: {year: 'numeric', month: 'numeric', day: 'numeric', hour: 'numeric', minute: 'numeric', hour12: false},
 -    datePickerInput: {year: 'numeric', month: 'numeric', day: 'numeric', hour12: false},
 -    timePickerInput: {hour: 'numeric', minute: 'numeric', hour12: false},
 -    monthYearLabel: {year: 'numeric', month: 'short', hour12: false},
 -    dateA11yLabel: {year: 'numeric', month: 'long', day: 'numeric', hour12: false},
 -    monthYearA11yLabel: {year: 'numeric', month: 'long', hour12: false},
 +  fullPickerInput: {year: 'numeric', month: 'numeric', day: 'numeric', hour: 'numeric', minute: 'numeric', hour12: false},
 +  datePickerInput: {year: 'numeric', month: 'numeric', day: 'numeric', hour12: false},
 +  timePickerInput: {hour: 'numeric', minute: 'numeric', hour12: false},
 +  monthYearLabel: {year: 'numeric', month: 'short', hour12: false},
 +  dateA11yLabel: {year: 'numeric', month: 'long', day: 'numeric', hour12: false},
 +  monthYearA11yLabel: {year: 'numeric', month: 'long', hour12: false},
  };
  
  @NgModule({