[ASTERIXDB-2222][UI] Move dashboard to own module Change-Id: I34b48f4747cb762b0ba7a55008bcb0a026261d23 Reviewed-on: https://asterix-gerrit.ics.uci.edu/2262 Sonar-Qube: Jenkins <[email protected]> Integration-Tests: Jenkins <[email protected]> Reviewed-by: Michael Blow <[email protected]> Tested-by: Jenkins <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/asterixdb/repo Commit: http://git-wip-us.apache.org/repos/asf/asterixdb/commit/a7e8dbe3 Tree: http://git-wip-us.apache.org/repos/asf/asterixdb/tree/a7e8dbe3 Diff: http://git-wip-us.apache.org/repos/asf/asterixdb/diff/a7e8dbe3 Branch: refs/heads/master Commit: a7e8dbe34249941bfdcba1ab7b086f733155be35 Parents: 3316bde Author: Ian Maxon <[email protected]> Authored: Fri Jan 5 17:13:36 2018 -0800 Committer: Michael Blow <[email protected]> Committed: Mon Jan 8 10:05:27 2018 -0800 ---------------------------------------------------------------------- asterixdb/asterix-app/pom.xml | 5 + .../http/server/QueryWebInterfaceServlet.java | 80 ---- .../main/resources/dashboard/.angular-cli.json | 69 --- .../src/main/resources/dashboard/.editorconfig | 25 -- .../src/main/resources/dashboard/.gitignore | 47 --- .../src/main/resources/dashboard/README.md | 47 --- .../resources/dashboard/e2e/app.e2e-spec.ts | 27 -- .../src/main/resources/dashboard/e2e/app.po.ts | 24 -- .../resources/dashboard/e2e/tsconfig.e2e.json | 27 -- .../src/main/resources/dashboard/karma.conf.js | 47 --- .../src/main/resources/dashboard/package.json | 60 --- .../main/resources/dashboard/protractor.conf.js | 41 -- .../main/resources/dashboard/proxy.config.js | 23 - .../dashboard/src/app/app-config.service.ts | 75 ---- .../dashboard/src/app/app.component.html | 15 - .../dashboard/src/app/app.component.scss | 14 - .../dashboard/src/app/app.component.ts | 31 -- .../resources/dashboard/src/app/app.module.ts | 121 ------ .../src/app/dashboard/appbar.component.html | 45 -- .../src/app/dashboard/appbar.component.scss | 62 --- .../src/app/dashboard/appbar.component.ts | 25 -- .../src/app/dashboard/apptab.component.html | 23 - .../src/app/dashboard/apptab.component.scss | 26 -- .../src/app/dashboard/apptab.component.ts | 25 -- .../metadata/codemirror-metadata.component.scss | 27 -- .../metadata/codemirror-metadata.component.ts | 244 ----------- .../dataset-create-dialog.component.html | 14 - .../dataset-create-dialog.component.scss | 18 - .../dataset-drop-dialog.component.html | 26 -- .../dataset-drop-dialog.component.scss | 18 - .../datasets-collection/datasets.component.html | 112 ----- .../datasets-collection/datasets.component.scss | 415 ------------------- .../datasets-collection/datasets.component.ts | 231 ----------- .../datatype-create-dialog.component.html | 14 - .../datatype-create-dialog.component.scss | 18 - .../datatype-drop-dialog.component.html | 26 -- .../datatype-drop-dialog.component.scss | 18 - .../datatypes.component.html | 70 ---- .../datatypes.component.scss | 267 ------------ .../datatypes-collection/datatypes.component.ts | 220 ---------- .../dataverses-create-dialog.component.html | 27 -- .../dataverses-create-dialog.component.scss | 18 - .../dataverses-drop-dialog.component.html | 26 -- .../dataverses-drop-dialog.component.scss | 18 - .../dataverses.component.html | 77 ---- .../dataverses.component.scss | 259 ------------ .../dataverses.component.ts | 234 ----------- .../index-create-dialog.component.html | 14 - .../index-create-dialog.component.scss | 18 - .../index-drop-dialog.component.html | 26 -- .../index-drop-dialog.component.scss | 18 - .../indexes-collection/indexes.component.html | 94 ----- .../indexes-collection/indexes.component.scss | 398 ------------------ .../indexes-collection/indexes.component.ts | 230 ---------- .../metadata/input-metadata.component.html | 31 -- .../metadata/input-metadata.component.scss | 78 ---- .../metadata/input-metadata.component.ts | 111 ----- .../metadata/metadata-container.component.html | 36 -- .../metadata/metadata-container.component.scss | 56 --- .../metadata/metadata-container.component.ts | 41 -- .../dashboard/query/codemirror.component.scss | 23 - .../app/dashboard/query/codemirror.component.ts | 237 ----------- .../app/dashboard/query/input.component.html | 28 -- .../app/dashboard/query/input.component.scss | 82 ---- .../src/app/dashboard/query/input.component.ts | 90 ---- .../app/dashboard/query/metadata.component.html | 44 -- .../app/dashboard/query/metadata.component.scss | 97 ----- .../app/dashboard/query/metadata.component.ts | 209 ---------- .../src/app/dashboard/query/ouput.component.ts | 278 ------------- .../app/dashboard/query/output.component.html | 68 --- .../app/dashboard/query/output.component.scss | 169 -------- .../query/query-container.component.html | 24 -- .../query/query-container.component.scss | 82 ---- .../query/query-container.component.ts | 74 ---- .../src/main/resources/dashboard/src/app/db.ts | 23 - .../dashboard/src/app/material.module.ts | 105 ----- .../src/app/shared/actions/app.actions.ts | 33 -- .../src/app/shared/actions/dataset.actions.ts | 130 ------ .../src/app/shared/actions/datatype.actions.ts | 122 ------ .../src/app/shared/actions/dataverse.actions.ts | 119 ------ .../src/app/shared/actions/index.actions.ts | 119 ------ .../src/app/shared/actions/metadata.actions.ts | 46 -- .../src/app/shared/actions/query.actions.ts | 71 ---- .../src/app/shared/effects/dataset.effects.ts | 65 --- .../src/app/shared/effects/datatype.effects.ts | 63 --- .../src/app/shared/effects/dataverse.effects.ts | 63 --- .../src/app/shared/effects/index.effects.ts | 63 --- .../src/app/shared/effects/metadata.effects.ts | 41 -- .../src/app/shared/effects/query.effects.ts | 53 --- .../src/app/shared/models/asterixDB.model.ts | 112 ----- .../dashboard/src/app/shared/pipes/keys.pipe.ts | 25 -- .../app/shared/pipes/objectArrayType.pipe.ts | 23 - .../src/app/shared/pipes/objectType.pipe.ts | 21 - .../src/app/shared/reducers/app.reducer.ts | 73 ---- .../src/app/shared/reducers/dataset.reducer.ts | 177 -------- .../src/app/shared/reducers/datatype.reducer.ts | 167 -------- .../app/shared/reducers/dataverse.reducer.ts | 171 -------- .../src/app/shared/reducers/index.reducer.ts | 167 -------- .../dashboard/src/app/shared/reducers/index.ts | 49 --- .../src/app/shared/reducers/metadata.reducer.ts | 56 --- .../shared/reducers/query-metadata.reducer.ts | 96 ----- .../src/app/shared/reducers/query.reducer.ts | 97 ----- .../src/app/shared/services/app-core.service.ts | 38 -- .../shared/services/async-metadata.service.ts | 120 ------ .../app/shared/services/async-query.service.ts | 190 --------- .../dashboard/src/assets/asterixdb_tm.png | Bin 93615 -> 0 bytes .../src/environments/environment.prod.ts | 16 - .../dashboard/src/environments/environment.ts | 21 - .../main/resources/dashboard/src/favicon.ico | Bin 1150 -> 0 bytes .../src/main/resources/dashboard/src/index.html | 30 -- .../src/main/resources/dashboard/src/main.scss | 29 -- .../src/main/resources/dashboard/src/main.ts | 26 -- .../main/resources/dashboard/src/polyfills.ts | 76 ---- .../dashboard/src/styles/_constants.scss | 21 - .../dashboard/src/styles/_general.scss | 32 -- .../src/main/resources/dashboard/src/test.ts | 46 -- .../resources/dashboard/src/tsconfig.app.json | 26 -- .../resources/dashboard/src/tsconfig.spec.json | 33 -- .../main/resources/dashboard/src/typings.d.ts | 5 - .../dashboard/static/3rdpartylicenses.txt | 222 ---------- .../dashboard/static/assets/asterixdb_tm.png | Bin 93615 -> 0 bytes .../static/color.c7a33805ffda0d32bd2a.png | Bin 10355 -> 0 bytes .../main/resources/dashboard/static/favicon.ico | Bin 1150 -> 0 bytes .../main/resources/dashboard/static/index.html | 13 - .../inline.66bd6b83f86cf773a001.bundle.js | 1 - .../static/line.567f57385ea3dde2c9ae.gif | Bin 13112 -> 0 bytes .../static/main.37b7b7cad656490b195a.bundle.js | 1 - .../polyfills.32ca5670d6503e090789.bundle.js | 1 - ...-v15-latin-regular.16e1d930cf13fb7a9563.woff | Bin 18520 -> 0 bytes ...o-v15-latin-regular.38861cba61c66739c145.ttf | Bin 32652 -> 0 bytes ...o-v15-latin-regular.3d3a53586bd78d1069ae.svg | 308 -------------- ...v15-latin-regular.7e367be02cd17a96d513.woff2 | Bin 14584 -> 0 bytes ...o-v15-latin-regular.9f916e330c478bbfa2a0.eot | Bin 16227 -> 0 bytes .../scripts.da68998bdd77aff4e764.bundle.js | 6 - .../styles.9f50282210bba5318775.bundle.css | 1 - .../src/main/resources/dashboard/tsconfig.json | 32 -- .../src/main/resources/dashboard/tslint.json | 154 ------- asterixdb/asterix-dashboard/pom.xml | 81 ++++ .../http/server/QueryWebInterfaceServlet.java | 80 ++++ .../main/resources/dashboard/.angular-cli.json | 69 +++ .../src/main/resources/dashboard/.editorconfig | 25 ++ .../src/main/resources/dashboard/.gitignore | 47 +++ .../src/main/resources/dashboard/README.md | 47 +++ .../resources/dashboard/e2e/app.e2e-spec.ts | 27 ++ .../src/main/resources/dashboard/e2e/app.po.ts | 24 ++ .../resources/dashboard/e2e/tsconfig.e2e.json | 27 ++ .../src/main/resources/dashboard/karma.conf.js | 47 +++ .../src/main/resources/dashboard/package.json | 60 +++ .../main/resources/dashboard/protractor.conf.js | 41 ++ .../main/resources/dashboard/proxy.config.js | 23 + .../dashboard/src/app/app-config.service.ts | 75 ++++ .../dashboard/src/app/app.component.html | 15 + .../dashboard/src/app/app.component.scss | 14 + .../dashboard/src/app/app.component.ts | 31 ++ .../resources/dashboard/src/app/app.module.ts | 121 ++++++ .../src/app/dashboard/appbar.component.html | 45 ++ .../src/app/dashboard/appbar.component.scss | 62 +++ .../src/app/dashboard/appbar.component.ts | 25 ++ .../src/app/dashboard/apptab.component.html | 23 + .../src/app/dashboard/apptab.component.scss | 26 ++ .../src/app/dashboard/apptab.component.ts | 25 ++ .../metadata/codemirror-metadata.component.scss | 27 ++ .../metadata/codemirror-metadata.component.ts | 244 +++++++++++ .../dataset-create-dialog.component.html | 14 + .../dataset-create-dialog.component.scss | 18 + .../dataset-drop-dialog.component.html | 26 ++ .../dataset-drop-dialog.component.scss | 18 + .../datasets-collection/datasets.component.html | 112 +++++ .../datasets-collection/datasets.component.scss | 415 +++++++++++++++++++ .../datasets-collection/datasets.component.ts | 231 +++++++++++ .../datatype-create-dialog.component.html | 14 + .../datatype-create-dialog.component.scss | 18 + .../datatype-drop-dialog.component.html | 26 ++ .../datatype-drop-dialog.component.scss | 18 + .../datatypes.component.html | 70 ++++ .../datatypes.component.scss | 267 ++++++++++++ .../datatypes-collection/datatypes.component.ts | 220 ++++++++++ .../dataverses-create-dialog.component.html | 27 ++ .../dataverses-create-dialog.component.scss | 18 + .../dataverses-drop-dialog.component.html | 26 ++ .../dataverses-drop-dialog.component.scss | 18 + .../dataverses.component.html | 77 ++++ .../dataverses.component.scss | 259 ++++++++++++ .../dataverses.component.ts | 234 +++++++++++ .../index-create-dialog.component.html | 14 + .../index-create-dialog.component.scss | 18 + .../index-drop-dialog.component.html | 26 ++ .../index-drop-dialog.component.scss | 18 + .../indexes-collection/indexes.component.html | 94 +++++ .../indexes-collection/indexes.component.scss | 398 ++++++++++++++++++ .../indexes-collection/indexes.component.ts | 230 ++++++++++ .../metadata/input-metadata.component.html | 31 ++ .../metadata/input-metadata.component.scss | 78 ++++ .../metadata/input-metadata.component.ts | 111 +++++ .../metadata/metadata-container.component.html | 36 ++ .../metadata/metadata-container.component.scss | 56 +++ .../metadata/metadata-container.component.ts | 41 ++ .../dashboard/query/codemirror.component.scss | 23 + .../app/dashboard/query/codemirror.component.ts | 237 +++++++++++ .../app/dashboard/query/input.component.html | 28 ++ .../app/dashboard/query/input.component.scss | 82 ++++ .../src/app/dashboard/query/input.component.ts | 90 ++++ .../app/dashboard/query/metadata.component.html | 44 ++ .../app/dashboard/query/metadata.component.scss | 97 +++++ .../app/dashboard/query/metadata.component.ts | 209 ++++++++++ .../src/app/dashboard/query/ouput.component.ts | 278 +++++++++++++ .../app/dashboard/query/output.component.html | 68 +++ .../app/dashboard/query/output.component.scss | 169 ++++++++ .../query/query-container.component.html | 24 ++ .../query/query-container.component.scss | 82 ++++ .../query/query-container.component.ts | 74 ++++ .../src/main/resources/dashboard/src/app/db.ts | 23 + .../dashboard/src/app/material.module.ts | 105 +++++ .../src/app/shared/actions/app.actions.ts | 33 ++ .../src/app/shared/actions/dataset.actions.ts | 130 ++++++ .../src/app/shared/actions/datatype.actions.ts | 122 ++++++ .../src/app/shared/actions/dataverse.actions.ts | 119 ++++++ .../src/app/shared/actions/index.actions.ts | 119 ++++++ .../src/app/shared/actions/metadata.actions.ts | 46 ++ .../src/app/shared/actions/query.actions.ts | 71 ++++ .../src/app/shared/effects/dataset.effects.ts | 65 +++ .../src/app/shared/effects/datatype.effects.ts | 63 +++ .../src/app/shared/effects/dataverse.effects.ts | 63 +++ .../src/app/shared/effects/index.effects.ts | 63 +++ .../src/app/shared/effects/metadata.effects.ts | 41 ++ .../src/app/shared/effects/query.effects.ts | 53 +++ .../src/app/shared/models/asterixDB.model.ts | 112 +++++ .../dashboard/src/app/shared/pipes/keys.pipe.ts | 25 ++ .../app/shared/pipes/objectArrayType.pipe.ts | 23 + .../src/app/shared/pipes/objectType.pipe.ts | 21 + .../src/app/shared/reducers/app.reducer.ts | 73 ++++ .../src/app/shared/reducers/dataset.reducer.ts | 177 ++++++++ .../src/app/shared/reducers/datatype.reducer.ts | 167 ++++++++ .../app/shared/reducers/dataverse.reducer.ts | 171 ++++++++ .../src/app/shared/reducers/index.reducer.ts | 167 ++++++++ .../dashboard/src/app/shared/reducers/index.ts | 49 +++ .../src/app/shared/reducers/metadata.reducer.ts | 56 +++ .../shared/reducers/query-metadata.reducer.ts | 96 +++++ .../src/app/shared/reducers/query.reducer.ts | 97 +++++ .../src/app/shared/services/app-core.service.ts | 38 ++ .../shared/services/async-metadata.service.ts | 120 ++++++ .../app/shared/services/async-query.service.ts | 190 +++++++++ .../dashboard/src/assets/asterixdb_tm.png | Bin 0 -> 93615 bytes .../src/environments/environment.prod.ts | 16 + .../dashboard/src/environments/environment.ts | 21 + .../main/resources/dashboard/src/favicon.ico | Bin 0 -> 1150 bytes .../src/main/resources/dashboard/src/index.html | 30 ++ .../src/main/resources/dashboard/src/main.scss | 29 ++ .../src/main/resources/dashboard/src/main.ts | 26 ++ .../main/resources/dashboard/src/polyfills.ts | 76 ++++ .../dashboard/src/styles/_constants.scss | 21 + .../dashboard/src/styles/_general.scss | 32 ++ .../src/main/resources/dashboard/src/test.ts | 46 ++ .../resources/dashboard/src/tsconfig.app.json | 26 ++ .../resources/dashboard/src/tsconfig.spec.json | 33 ++ .../main/resources/dashboard/src/typings.d.ts | 5 + .../dashboard/static/3rdpartylicenses.txt | 222 ++++++++++ .../dashboard/static/assets/asterixdb_tm.png | Bin 0 -> 93615 bytes .../static/color.c7a33805ffda0d32bd2a.png | Bin 0 -> 10355 bytes .../main/resources/dashboard/static/favicon.ico | Bin 0 -> 1150 bytes .../main/resources/dashboard/static/index.html | 13 + .../inline.66bd6b83f86cf773a001.bundle.js | 1 + .../static/line.567f57385ea3dde2c9ae.gif | Bin 0 -> 13112 bytes .../static/main.37b7b7cad656490b195a.bundle.js | 1 + .../polyfills.32ca5670d6503e090789.bundle.js | 1 + ...-v15-latin-regular.16e1d930cf13fb7a9563.woff | Bin 0 -> 18520 bytes ...o-v15-latin-regular.38861cba61c66739c145.ttf | Bin 0 -> 32652 bytes ...o-v15-latin-regular.3d3a53586bd78d1069ae.svg | 308 ++++++++++++++ ...v15-latin-regular.7e367be02cd17a96d513.woff2 | Bin 0 -> 14584 bytes ...o-v15-latin-regular.9f916e330c478bbfa2a0.eot | Bin 0 -> 16227 bytes .../scripts.da68998bdd77aff4e764.bundle.js | 6 + .../styles.9f50282210bba5318775.bundle.css | 1 + .../src/main/resources/dashboard/tsconfig.json | 32 ++ .../src/main/resources/dashboard/tslint.json | 154 +++++++ asterixdb/pom.xml | 1 + 275 files changed, 9917 insertions(+), 9830 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/pom.xml ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/pom.xml b/asterixdb/asterix-app/pom.xml index 70073bd..dc00bea 100644 --- a/asterixdb/asterix-app/pom.xml +++ b/asterixdb/asterix-app/pom.xml @@ -328,6 +328,11 @@ </dependency> <dependency> <groupId>org.apache.asterix</groupId> + <artifactId>asterix-dashboard</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.apache.asterix</groupId> <artifactId>asterix-common</artifactId> <version>${project.version}</version> <type>test-jar</type> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryWebInterfaceServlet.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryWebInterfaceServlet.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryWebInterfaceServlet.java deleted file mode 100644 index 598d802..0000000 --- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryWebInterfaceServlet.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.asterix.api.http.server; - -import java.io.IOException; -import java.io.PrintWriter; -import java.util.concurrent.ConcurrentMap; - -import org.apache.asterix.common.config.ExternalProperties; -import org.apache.asterix.common.dataflow.ICcApplicationContext; -import org.apache.hyracks.http.api.IServletRequest; -import org.apache.hyracks.http.api.IServletResponse; -import org.apache.hyracks.http.server.StaticResourceServlet; -import org.apache.hyracks.http.server.utils.HttpUtil; -import org.apache.logging.log4j.Level; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import com.fasterxml.jackson.databind.node.ObjectNode; - -import io.netty.handler.codec.http.HttpResponseStatus; - -public class QueryWebInterfaceServlet extends StaticResourceServlet { - private static final Logger LOGGER = LogManager.getLogger(); - private ICcApplicationContext appCtx; - - public QueryWebInterfaceServlet(ICcApplicationContext appCtx, ConcurrentMap<String, Object> ctx, String[] paths) { - super(ctx, paths); - this.appCtx = appCtx; - } - - @Override - protected void get(IServletRequest request, IServletResponse response) throws IOException { - String requestURI = request.getHttpRequest().uri(); - if ("/".equals(requestURI)) { - HttpUtil.setContentType(response, HttpUtil.ContentType.TEXT_HTML); - // Dashboard Administration Console - deliverResource("/dashboard/static/index.html", response); - } else { - deliverResource(requestURI, response); - } - } - - @Override - protected void post(IServletRequest request, IServletResponse response) throws IOException { - HttpUtil.setContentType(response, HttpUtil.ContentType.APPLICATION_JSON, HttpUtil.Encoding.UTF8); - ExternalProperties externalProperties = appCtx.getExternalProperties(); - response.setStatus(HttpResponseStatus.OK); - ObjectNode obj = OBJECT_MAPPER.createObjectNode(); - try { - PrintWriter out = response.writer(); - obj.put("api_port", String.valueOf(externalProperties.getAPIServerPort())); - out.println(obj.toString()); - return; - } catch (Exception e) { - LOGGER.log(Level.ERROR, "Failure writing response", e); - } - try { - response.setStatus(HttpResponseStatus.INTERNAL_SERVER_ERROR); - } catch (Exception e) { - LOGGER.log(Level.ERROR, "Failure setting response status", e); - } - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/.angular-cli.json ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/.angular-cli.json b/asterixdb/asterix-app/src/main/resources/dashboard/.angular-cli.json deleted file mode 100755 index 7e41979..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/.angular-cli.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "$schema": "./node_modules/@angular/cli/lib/config/schema.json", - "project": { - "name": "asterixdb-web-console" - }, - "apps": [ - { - "root": "src", - "outDir": "static", - "assets": [ - "assets", - "favicon.ico" - ], - "index": "index.html", - "main": "main.ts", - "polyfills": "polyfills.ts", - "test": "test.ts", - "tsconfig": "tsconfig.app.json", - "testTsconfig": "tsconfig.spec.json", - "prefix": "app", - "styles": [ - "main.scss", - "../node_modules/codemirror/lib/codemirror.css", - "../node_modules/codemirror/theme/monokai.css", - "../node_modules/primeng/resources/themes/omega/theme.css", - "../node_modules/primeng/resources/primeng.min.css" - ], - "scripts": [ - "../node_modules/codemirror/lib/codemirror.js" - ], - "environmentSource": "environments/environment.ts", - "environments": { - "dev": "environments/environment.ts", - "prod": "environments/environment.prod.ts" - } - } - ], - "e2e": { - "protractor": { - "config": "./protractor.conf.js" - } - }, - "lint": [ - { - "project": "src/tsconfig.app.json", - "exclude": "**/node_modules/**" - }, - { - "project": "src/tsconfig.spec.json", - "exclude": "**/node_modules/**" - }, - { - "project": "e2e/tsconfig.e2e.json", - "exclude": "**/node_modules/**" - } - ], - "test": { - "karma": { - "config": "./karma.conf.js" - } - }, - "defaults": { - "styleExt": "css", - "class": { - "spec": false - }, - "component": {} - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/.editorconfig ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/.editorconfig b/asterixdb/asterix-app/src/main/resources/dashboard/.editorconfig deleted file mode 100755 index ba060b8..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/.editorconfig +++ /dev/null @@ -1,25 +0,0 @@ -# Editor configuration, see http://editorconfig.org -#/* -#Licensed under the Apache License, Version 2.0 (the "License"); -#you may not use this file except in compliance with the License. -#You may obtain a copy of the License at - -# http://www.apache.org/licenses/LICENSE-2.0 - -#Unless required by applicable law or agreed to in writing, software -#Distributed under the License is distributed on an "AS IS" BASIS, -#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -#See the License for the specific language governing permissions and -#limitations under the License. -root = true - -[*] -charset = utf-8 -indent_style = space -indent_size = 2 -insert_final_newline = true -trim_trailing_whitespace = true - -[*.md] -max_line_length = off -trim_trailing_whitespace = false http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/.gitignore ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/.gitignore b/asterixdb/asterix-app/src/main/resources/dashboard/.gitignore deleted file mode 100755 index fc1e2ce..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/.gitignore +++ /dev/null @@ -1,47 +0,0 @@ -# See http://help.github.com/ignore-files/ for more about ignoring files. - -# compiled output -/tmp -/out-tsc - -# dependencies -/node_modules -/documents -# /static -/dist - -# IDEs and editors -/.idea -.project -.classpath -.c9/ -*.launch -.settings/ -*.sublime-workspace - -# IDE - VSCode -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json - -# misc -/.sass-cache -/connect.lock -/coverage -/libpeerconnection.log -npm-debug.log -testem.log -/typings - -# e2e -/e2e/*.js -/e2e/*.map - -# System Files -.DS_Store -Thumbs.db - -# Others -package-lock.json http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/README.md ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/README.md b/asterixdb/asterix-app/src/main/resources/dashboard/README.md deleted file mode 100755 index 14f16fc..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/README.md +++ /dev/null @@ -1,47 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -# AsterixDB Web Administration Console - -AsterixDB Administration Console is an Angular 5 HTML/CSS/Typescript web application using predictable state containers, immutable data updates with Redux/NGRx frameworks, observable patterns, and standard Open Sourced UI widgets for data, metadata manipulation and visualization through SQL++ AsterixDB Query language. - -The main goal is create a baseline solution with unopinionated UI/UX design and SW architecture with two differentiated isolated, indepent minimal coupled levels between the UI components and application core or internal core, easily extensible and scalable by the AsterixDB community. - -## Development - -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.4.9. - -## Installation - -Install node and npm, any of the latest versions will do. - -Run `npm install` to download all the dependency packages an recreate the node_modules directory. - -## Development server - -The development version uses the webpack proxy to avoid CORS problems in Angular see: - -`https://daveceddia.com/access-control-allow-origin-cors-errors-in-angular`. - -Please check `proxy.config.js` to see how it's configured. - -Run `ng serve` or `npm start` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. - -A technical document describing the internals and architecture exist, here: - -`https://github.com/EmilioMobile/asterixdb-dashboard/blob/master/documents/AsterixDB%20Architecture%20v1.0.pdf?raw=true` - -A brief user guide document describing how to use it, here: - -`https://github.com/EmilioMobile/asterixdb-dashboard/blob/master/documents/AsterixDB%20User%20Guide%20v1.0.pptx?raw=true` http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.e2e-spec.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.e2e-spec.ts b/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.e2e-spec.ts deleted file mode 100755 index e75aa02..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.e2e-spec.ts +++ /dev/null @@ -1,27 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { AppPage } from './app.po'; - -describe('asterixdb-dashboard', () => { - let page: AppPage; - - beforeEach(() => { - page = new AppPage(); - }); - - it('should display welcome message', () => { - page.navigateTo(); - expect(page.getParagraphText()).toEqual('Welcome to AsterixDB Dashboard!'); - }); -}); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.po.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.po.ts b/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.po.ts deleted file mode 100755 index 37d3de9..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/e2e/app.po.ts +++ /dev/null @@ -1,24 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { browser, by, element } from 'protractor'; - -export class AppPage { - navigateTo() { - return browser.get('/'); - } - - getParagraphText() { - return element(by.css('app-root h1')).getText(); - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/e2e/tsconfig.e2e.json ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/e2e/tsconfig.e2e.json b/asterixdb/asterix-app/src/main/resources/dashboard/e2e/tsconfig.e2e.json deleted file mode 100755 index 41b7fc0..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/e2e/tsconfig.e2e.json +++ /dev/null @@ -1,27 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/e2e", - "baseUrl": "./", - "module": "commonjs", - "target": "es5", - "types": [ - "jasmine", - "jasminewd2", - "node" - ] - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/karma.conf.js ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/karma.conf.js b/asterixdb/asterix-app/src/main/resources/dashboard/karma.conf.js deleted file mode 100755 index c9da2c5..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/karma.conf.js +++ /dev/null @@ -1,47 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// Karma configuration file, see link for more information -// https://karma-runner.github.io/1.0/config/configuration-file.html - -module.exports = function (config) { - config.set({ - basePath: '', - frameworks: ['jasmine', '@angular/cli'], - plugins: [ - require('karma-jasmine'), - require('karma-chrome-launcher'), - require('karma-jasmine-html-reporter'), - require('karma-coverage-istanbul-reporter'), - require('@angular/cli/plugins/karma') - ], - client:{ - clearContext: false // leave Jasmine Spec Runner output visible in browser - }, - coverageIstanbulReporter: { - reports: [ 'html', 'lcovonly' ], - fixWebpackSourcePaths: true - }, - angularCli: { - environment: 'dev' - }, - reporters: ['progress', 'kjhtml'], - port: 9876, - colors: true, - logLevel: config.LOG_INFO, - autoWatch: true, - browsers: ['Chrome'], - singleRun: false - }); -}; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/package.json ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/package.json b/asterixdb/asterix-app/src/main/resources/dashboard/package.json deleted file mode 100755 index 3073159..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/package.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "name": "asterixdb-web-console", - "version": "1.0.0", - "license": "Apache License, Version 2.0", - "scripts": { - "ng": "ng", - "start": "ng serve --proxy-config proxy.config.js --host 0.0.0.0", - "build": "ng build", - "test": "ng test", - "lint": "ng lint", - "e2e": "ng e2e" - }, - "private": true, - "dependencies": { - "@angular/animations": "^5.0.3", - "@angular/cdk": "^5.0.0-rc.2", - "@angular/common": "^5.0.3", - "@angular/compiler": "^5.0.3", - "@angular/core": "^5.0.3", - "@angular/forms": "^5.0.3", - "@angular/http": "^5.0.3", - "@angular/material": "^5.0.0-rc.2", - "@angular/platform-browser": "^5.0.3", - "@angular/platform-browser-dynamic": "^5.0.3", - "@angular/router": "^5.0.3", - "@ngrx/db": "^2.0.2", - "@ngrx/effects": "^4.1.0", - "@ngrx/entity": "^4.1.0", - "@ngrx/store": "^4.1.0", - "@ngrx/store-devtools": "^4.0.0", - "codemirror": "^5.31.0", - "core-js": "^2.4.1", - "file-saver": "^1.3.3", - "hammerjs": "^2.0.8", - "primeng": "^4.3.0", - "rxjs": "^5.5.2", - "zone.js": "^0.8.18" - }, - "devDependencies": { - "@angular/cli": "1.5.4", - "@angular/compiler-cli": "^5.0.3", - "@angular/language-service": "^5.0.0", - "@types/file-saver": "^1.3.0", - "@types/jasmine": "~2.5.53", - "@types/jasminewd2": "~2.0.2", - "@types/node": "~6.0.60", - "jasmine-core": "~2.6.2", - "jasmine-spec-reporter": "~4.1.0", - "karma": "~1.7.0", - "karma-chrome-launcher": "~2.1.1", - "karma-cli": "~1.0.1", - "karma-coverage-istanbul-reporter": "^1.2.1", - "karma-jasmine": "~1.1.0", - "karma-jasmine-html-reporter": "^0.2.2", - "protractor": "~5.1.2", - "ts-node": "^3.2.2", - "tslint": "^5.7.0", - "typescript": "^2.4.2" - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/protractor.conf.js ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/protractor.conf.js b/asterixdb/asterix-app/src/main/resources/dashboard/protractor.conf.js deleted file mode 100755 index ac4c723..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/protractor.conf.js +++ /dev/null @@ -1,41 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -// Protractor configuration file, see link for more information -// https://github.com/angular/protractor/blob/master/lib/config.ts - -const { SpecReporter } = require('jasmine-spec-reporter'); - -exports.config = { - allScriptsTimeout: 11000, - specs: [ - './e2e/**/*.e2e-spec.ts' - ], - capabilities: { - 'browserName': 'chrome' - }, - directConnect: true, - baseUrl: 'http://localhost:4200/', - framework: 'jasmine', - jasmineNodeOpts: { - showColors: true, - defaultTimeoutInterval: 30000, - print: function() {} - }, - onPrepare() { - require('ts-node').register({ - project: 'e2e/tsconfig.e2e.json' - }); - jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); - } -}; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/proxy.config.js ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/proxy.config.js b/asterixdb/asterix-app/src/main/resources/dashboard/proxy.config.js deleted file mode 100755 index 58752c3..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/proxy.config.js +++ /dev/null @@ -1,23 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -const PROXY_CONFIG = { - "/query-service/*": { - "target": "http://localhost:19002", - "secure": false, - logLevel: "debug", - pathRewrite: function (path) { return path.replace('/query-service', '/query/service')} - } -} - -module.exports = PROXY_CONFIG; \ No newline at end of file http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app-config.service.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app-config.service.ts b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app-config.service.ts deleted file mode 100755 index 87a0c2b..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app-config.service.ts +++ /dev/null @@ -1,75 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { Injectable } from '@angular/core'; -import { Observable } from 'rxjs/Observable'; -import { - Http, - Headers, - RequestOptions -} from '@angular/http'; - -@Injectable() -export class ConfigService { - - private config: Object - private env: Object - - constructor(private http: Http) {} - - /** - * Loads the environment config file first. Reads the environment variable from the file - * and based on that loads the appropriate configuration file - development or production - */ - load() { - return new Promise((resolve, reject) => { - let headers = new Headers({ 'Accept': 'application/json', 'Content-Type': 'application/json', 'DataType': 'application/json' }); - let options = new RequestOptions({ headers: headers }); - - this.http.get('/config/env.json') - .map(res => res.json()) - .subscribe((env_data) => { - this.env = env_data; - - this.http.get('/config/' + env_data.env + '.json') - .map(res => res.json()) - .catch((error: any) => { - return Observable.throw(error.json().error || 'Server error'); - }) - .subscribe((data) => { - this.config = data; - resolve(true); - }); - }); - - }); - } - - /** - * Returns environment variable based on given key - * - * @param key - */ - getEnv(key: any) { - return this.env[key]; - } - - /** - * Returns configuration value based on given key - * - * @param key - */ - get(key: any) { - return this.config[key]; - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.html ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.html b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.html deleted file mode 100755 index 58481be..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.html +++ /dev/null @@ -1,15 +0,0 @@ -<!--/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/--> -<awc-bar></awc-bar> -<awc-tab></awc-tab> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.scss ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.scss b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.scss deleted file mode 100755 index b01fcf5..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.scss +++ /dev/null @@ -1,14 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -// Place holder for future expansion \ No newline at end of file http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.ts b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.ts deleted file mode 100755 index a913109..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.component.ts +++ /dev/null @@ -1,31 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { Component } from '@angular/core'; -import { AppCoreService } from './shared/services/app-core.service' - -/* - * Root component - * Defines AsterixDB Dashboard application's layout - */ -@Component({ - selector: 'awc-root', - templateUrl: './app.component.html', - styleUrls: ['./app.component.scss'] -}) -export class AppComponent { - title = 'Asterix DB Web Console'; - - constructor(private appCoreService: AppCoreService) { - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.module.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.module.ts b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.module.ts deleted file mode 100755 index 11c8602..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/app.module.ts +++ /dev/null @@ -1,121 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { BrowserModule } from '@angular/platform-browser'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { HttpClientModule } from '@angular/common/http'; -import { EffectsModule } from '@ngrx/effects'; -import { DataverseEffects } from './shared/effects/dataverse.effects'; -import { DatasetEffects } from './shared/effects/dataset.effects'; -import { DatatypeEffects } from './shared/effects/datatype.effects'; -import { IndexEffects } from './shared/effects/index.effects'; -import { SQLQueryEffects } from './shared/effects/query.effects'; -import { MetadataEffects } from './shared/effects/metadata.effects'; -import { AppComponent } from './app.component'; -import { AppBarComponent } from './dashboard/appbar.component'; -import { DataverseCollection } from './dashboard/metadata/dataverses-collection/dataverses.component'; -import { DatasetCollection } from './dashboard/metadata/datasets-collection/datasets.component'; -import { DatatypeCollection } from './dashboard/metadata/datatypes-collection/datatypes.component'; -import { CodemirrorComponent } from './dashboard/query/codemirror.component'; -import { CodemirrorMetadataComponent } from './dashboard/metadata/codemirror-metadata.component'; -import { IndexCollection } from './dashboard/metadata/indexes-collection/indexes.component'; -import { MetadataContainerComponent } from './dashboard/metadata/metadata-container.component'; -import { MetadataComponent } from './dashboard/query/metadata.component'; -import { QueryContainerComponent } from './dashboard/query/query-container.component'; -import { InputQueryComponent } from './dashboard/query/input.component'; -import { InputQueryMetadataComponent } from './dashboard/metadata/input-metadata.component'; -import { QueryOutputComponent, SafeHtmlPipe } from './dashboard/query/ouput.component'; -import { AppTabComponent } from './dashboard/apptab.component'; -import { KeysPipe } from './shared/pipes/keys.pipe'; -import { ObjectTypePipe } from './shared/pipes/objectType.pipe'; -import { ObjectArrayTypePipe } from './shared/pipes/objectArrayType.pipe'; -import { reducers } from './shared/reducers'; -import { SQLService } from './shared/services/async-query.service' -import { AppCoreService } from './shared/services/app-core.service' -import { MetadataService } from './shared/services/async-metadata.service' -import { DBModule } from '@ngrx/db'; -import { FormsModule } from '@angular/forms'; -import { MaterialModule } from './material.module'; -import { NgModule } from '@angular/core'; -import { StoreModule, } from '@ngrx/store'; -import { StoreDevtoolsModule } from '@ngrx/store-devtools'; -import { schema } from './db'; -import { DataTableModule, SharedModule } from 'primeng/primeng'; -import { TreeModule, TreeNode} from 'primeng/primeng'; -import { DialogCreateDataverse, DialogDropDataverse } from './dashboard/metadata/dataverses-collection/dataverses.component'; -import { DialogCreateDataset, DialogDropDataset } from './dashboard/metadata/datasets-collection/datasets.component'; -import { DialogCreateDatatype, DialogDropDatatype } from './dashboard/metadata/datatypes-collection/datatypes.component'; -import { DialogCreateIndex, DialogDropIndex } from './dashboard/metadata/indexes-collection/indexes.component'; - - - -@NgModule({ - declarations: [ - AppComponent, - AppBarComponent, - InputQueryComponent, - InputQueryMetadataComponent, - QueryOutputComponent, - CodemirrorComponent, - CodemirrorMetadataComponent, - DataverseCollection, - DatasetCollection, - DatatypeCollection, - IndexCollection, - KeysPipe, - MetadataContainerComponent, - MetadataComponent, - QueryContainerComponent, - AppTabComponent, - ObjectTypePipe, - ObjectArrayTypePipe, - DialogCreateDataverse, - DialogDropDataverse, - DialogCreateDataset, - DialogDropDataset, - DialogCreateDatatype, - DialogDropDatatype, - DialogCreateIndex, - DialogDropIndex, - SafeHtmlPipe - ], - imports: [ - TreeModule, - DataTableModule, - SharedModule, - FormsModule, - BrowserModule, - BrowserAnimationsModule, - DBModule.provideDB(schema), - EffectsModule.forRoot([MetadataEffects, DataverseEffects, DatasetEffects, DatatypeEffects, IndexEffects, SQLQueryEffects]), - HttpClientModule, - MaterialModule, - StoreModule.forRoot(reducers), - StoreDevtoolsModule.instrument({ - maxAge: 10 - }) - ], - entryComponents: [ - DialogCreateDataverse, - DialogDropDataverse, - DialogCreateDataset, - DialogDropDataset , - DialogCreateDatatype, - DialogDropDatatype, - DialogCreateIndex, - DialogDropIndex - ], - providers: [AppCoreService, SQLService, MetadataService], - bootstrap: [AppComponent] -}) -export class AppModule { } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.html ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.html b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.html deleted file mode 100755 index 62cf771..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.html +++ /dev/null @@ -1,45 +0,0 @@ -<!--/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ --> -<header class="awc-navbar"> - <nav class="awc-navbar-header"> - <a mat-button class="awc-button" routerLink="/" aria-label="AsterixDB Web Console"> - <img class="awc-asterixDB-logo" - src="assets/asterixdb_tm.png" - alt="AsterixDB"> - <span>Administration Console</span> - </a> - <div class="flex-spacer"></div> - <a mat-button class="awc-button awc-navbar-hide-small" href="https://asterixDB.apache.org" - aria-label="WEBSITE"> - WEBSITE - </a> - <a mat-button class="awc-button awc-navbar-hide-small" href="https://issues.apache.org/jira/browse/ASTERIXDB" - aria-label="FILE ISSUES"> - FILE ISSUES - </a> - <a mat-button class="awc-button awc-navbar-hide-small" href="https://ci.apache.org/projects/asterixdb/index.html" - aria-label="DOCUMENTATION"> - DOCUMENTATION - </a> - <a mat-button class="awc-button docs-navbar-hide-small" href="https://asterixdb.apache.org/community.html" - aria-label="CONTACT"> - CONTACT - </a> - - <a mat-button class="awc-button docs-navbar-hide-small" href="https://github.com/apache/asterixdb/" - aria-label="GITHUB"> - GITHUB - </a> - </nav> -</header> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.scss ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.scss b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.scss deleted file mode 100755 index 8a764e6..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.scss +++ /dev/null @@ -1,62 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -.awc-navbar { - a { - //color: #f0f0f0; - text-decoration: none; - } - - border-bottom: 1px solid hsla(0,0%,0%,.10); - overflow: hidden; -} - -.awc-navbar-header { - display: flex; - flex-wrap: wrap; - align-items: center; - padding: 8px 16px; - - > .mat-button { - &:last-child { - margin-left: auto; - } - } -} - -.flex-spacer { - flex-grow: 1; -} - -.awc-asterixDB-logo { - height: 26px; - margin: 0 4px 3px 0; - vertical-align: middle; -} - -.awc-github-logo { - height: 21px; - margin: 0 7px 2px 0; - vertical-align: middle; -} - -.awc-navbar-link { - text-decoration: inherit; - flex: 1; -} - -/* -* Rules for when the device is detected to be a small screen. -* Moves content two rows instead of one. -*/ -//@media (max-width: 720px) {} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.ts b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.ts deleted file mode 100755 index 563ed11..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/appbar.component.ts +++ /dev/null @@ -1,25 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { Component } from '@angular/core'; - -@Component({ - moduleId: module.id, - selector: 'awc-bar', - templateUrl: 'appbar.component.html', - styleUrls: ['appbar.component.scss'] -}) - -export class AppBarComponent { - constructor() {} -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.html ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.html b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.html deleted file mode 100755 index bd5c963..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.html +++ /dev/null @@ -1,23 +0,0 @@ -<!--/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ --> -<div class="content"> - <mat-tab-group class="menu"> - <mat-tab label=">_ QUERY"> - <awc-query-container></awc-query-container> - </mat-tab> - <mat-tab label="METADATA"> - <awc-metadata-container></awc-metadata-container> - </mat-tab> - </mat-tab-group> -</div> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.scss ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.scss b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.scss deleted file mode 100755 index 4d6fb7b..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.scss +++ /dev/null @@ -1,26 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -.content { - width:95%; - margin: 0 auto; -} - -.menu { - /deep/ .mat-tab-label { - font-size: 0.80rem !important; - font-weight: 500 !important; - } -} - - http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.ts b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.ts deleted file mode 100755 index b4db7f4..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/apptab.component.ts +++ /dev/null @@ -1,25 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -import { Component } from '@angular/core'; -import { Store } from '@ngrx/store'; - -@Component({ - selector: 'awc-tab', - templateUrl: 'apptab.component.html', - styleUrls: ['apptab.component.scss'] -}) - -export class AppTabComponent { - constructor(private store: Store<any>) {}; -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.scss ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.scss b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.scss deleted file mode 100755 index 9812ecb..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.scss +++ /dev/null @@ -1,27 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -.textarea-metadata { - background-color: red !important; - border: 1px solid black !important; - padding: 0; - margin: 0; -} - -codemirror-metadata { - border: 1px solid #eee; - height: auto; - background-color: blue !important; - padding: 0; - margin: 0; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.ts ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.ts b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.ts deleted file mode 100755 index aed6ddf..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/codemirror-metadata.component.ts +++ /dev/null @@ -1,244 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -/** - * Integrating codemirror (using ng2-codemirror) with our application - * - * component from "https://runkit.com/npm/ng2-codemirror" - * "https://www.npmjs.com/package/ng2-codemirror" - * copy component from /src/codemirror.component.ts - * and modified for custom mode (asterix aql, sql++ code hilighting) - * - * therefore, actually we don't need to "npm install ng2-codemirror" - * - * Because on the outside of this component, - * It was hard to access the codemirror instance that 'ng-codemirror' use - * So, we copied the component in our application and modified it - * - * 'codemirror.js(^5.23.0)' is included in the 'index.html' - * And in this component(codemirror.component.ts) - * add statement like "declare var CodeMirror: any;" - * - * I don't know whether this is right way - * - * ref 1) usage : https://embed.plnkr.co/8e9gxss9u10VeFrv29Zt/ - * ref 2) custom mode : http://jsfiddle.net/TcqAf/99/ - * ref 3) integrating : http://stackoverflow.com/questions/37092142/integrating-codemirror-with-angular2-typescript - * ref 3) integrating : https://medium.com/@s_eschweiler/using-external-libraries-with-angular-2-87e06db8e5d1#.8ok74uvwg - */ -import { - Component, - Input, - Output, - ElementRef, - ViewChild, - EventEmitter, - forwardRef, - AfterViewInit, - OnDestroy, - ChangeDetectionStrategy - } from '@angular/core'; - import { NG_VALUE_ACCESSOR } from '@angular/forms'; - import * as CodeMirrorMetadata from 'codemirror'; - - /** - * CodeMirror component - * Usage : - * <codemirror [(ngModel)]="data" [config]="{...}"></codemirror> - */ - @Component({ - moduleId: module.id, - selector: 'codemirror-metadata', - providers: [ - { - provide: NG_VALUE_ACCESSOR, - useExisting: forwardRef(() => CodemirrorMetadataComponent), - multi: true - } - ], - styleUrls: ['codemirror-metadata.component.scss'], - template: `<textarea class="textarea-metadata" #hostMetadata></textarea>`,//, - }) - -export class CodemirrorMetadataComponent implements AfterViewInit, OnDestroy { - @Input() config; - @Output() change = new EventEmitter(); - @Output() focus = new EventEmitter(); - @Output() blur = new EventEmitter(); - @Output() instance = null; - @ViewChild('hostMetadata') hostMetadata; - _value = ''; - - /** - * Constructor - */ - constructor(){ - /** - * Custom mode for AsterixDB - */ - CodeMirrorMetadata.defineMode("asterix", function(){ - var KEYWORD_MATCH = [ - // AQL - "drop", "dataverse", "dataset", - "if", "exists", "create", - "use", "type", "as", "closed", - "primary", "key", "hints", "cardinality", - "index", "on", "btree", "rtree", "keyword", - "for", "in", "Metadata", "Dataset", - "return", "Index", "load", "using", "localfs", "path", "format", - // Query (not perfect) - "from", "in", "with", "group", "by", "select", - "let", "where", "order", "asc", "desc", "limit", - "keeping", "offset", "distinct", "or", "and", - // Built in functions (TODO) - // Built in functions (TODO) - // Built in functions (TODO) - // Asterix Data Model - // Primitive type - "boolean", - "tinyint", "smallint", "integer", "bigint", - "float", "double", - "string", - "binary", "hex", "base64", - "point", "line", "rectangle", "circle", "polygon", - "date", "time", "datetime", "duration", "interval", "uuid", - // Incomplete information type - "null", "missing", - // Derived type - // object {}, array [], multiset {{}} - // SQL++ - "DROP", "DATAVERSE", "IF", "EXISTS", "CREATE", "USE", "TYPE", "AS", "DATASET", "PRIMARY", "KEY", - "INDEX", "SELECT", "VALUE", "INSERT", "INTO", "FROM", "WHERE", "AND", "SOME", "IN", "SATISFIES", "IS", "UNKNOWN", "NOT", "EVERY", - "GROUP", "BY", "ORDER", "DESC", "LIMIT", "OR", "SET", "DELETE", "LOAD", "USING", - ]; - - //"(", ")","{{", "}}", "[", "]", "{", "}", ";", ",", ":","?", "=", - var VAR_MATCH = /[$][a-zA-Z]+(\d*)/; - var DOT_MATCH = /[.](\S)*/; - var DOUBLE_QUOTE_MATCH = /["].*["]/; - var SINGLE_QUOTE_MATCH = /['].*[']/; - var BREAK_POINT = /(\s)/; - - return { - startState: function() {return {inString: false};}, - token: function(stream, state) { - if (state.newLine == undefined)state.newLine = true; - - //match variable reference - if (stream.match(VAR_MATCH)) { - return "variable"; - } - - if (stream.match(DOT_MATCH)) { - return "dot-variable"; - } - - //string variable match - if (stream.match(DOUBLE_QUOTE_MATCH)) { - return "string"; - } - if (stream.match(SINGLE_QUOTE_MATCH)) { - return "string"; - } - - //keyword match - for (var i in KEYWORD_MATCH){ - if (state.newLine && stream.match(KEYWORD_MATCH[i])){ - return "keyword"; - } - } - - if (stream.peek() === " " || stream.peek() === null){ - state.newLine = true; - }else{ - state.newLine = false; - } - stream.next(); - return null; - } - }; - }); - } - - get value() { return this._value; }; - - @Input() set value(v) { - if (v !== this._value) { - this._value = v; - this.onChange(v); - } - } - - /** - * On component destroy - */ - ngOnDestroy() {} - - /** - * On component view init - */ - ngAfterViewInit() { - this.config = this.config || {}; - this.codemirrorInit(this.config); - } - - /** - * Initialize codemirror - */ - codemirrorMetadataConfig = { mode: "asterix", - //lineNumbers: true, - lineWrapping: true, - showCursorWhenSelecting: true, - autofocus: true - }; - - codemirrorInit(config){ - this.instance = CodeMirrorMetadata.fromTextArea(this.hostMetadata.nativeElement, this.codemirrorMetadataConfig); - this.instance.setSize("100%" , "100px"); - this.instance.on('change', () => { - this.updateValue(this.instance.getValue()); - }); - - this.instance.on('focus', () => { - this.focus.emit(); - }); - - this.instance.on('blur', () => { - this.blur.emit(); - }); - } - - /** - * Value update process - */ - updateValue(value){ - this.value = value; - this.onTouched(); - this.change.emit(value); - } - - /** - * Implements ControlValueAccessor - */ - writeValue(value){ - this._value = value || ''; - if (this.instance) { - this.instance.setValue(this._value); - } - } - - onChange(_) {} - onTouched() {} - registerOnChange(fn){this.onChange = fn;} - registerOnTouched(fn){this.onTouched = fn;} -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.html ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.html b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.html deleted file mode 100755 index ef88719..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.html +++ /dev/null @@ -1,14 +0,0 @@ -<!--/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/--> -<!-- Place holder for future expansion --> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.scss ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.scss b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.scss deleted file mode 100755 index c969489..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-create-dialog.component.scss +++ /dev/null @@ -1,18 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -.dataset-dialog { - font-family: "Roboto Mono", monospace; - font-size: 0.80rem; - font-weight: 500; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.html ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.html b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.html deleted file mode 100755 index 517006c..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.html +++ /dev/null @@ -1,26 +0,0 @@ -<!--/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/--> -<div class="dataset-dialog"> - <p mat-dialog-title>DROP DATASET</p> - <mat-dialog-content> - <p>PLEASE GIVE THE NAME OF THE DATASET TO DROP</p> - </mat-dialog-content> - <mat-form-field> - <input matInput tabindex="0" [(ngModel)]="data.datasetName"> - </mat-form-field> - <mat-dialog-actions> - <button mat-button (click)="onClick()" tabindex="1">DROP</button> - <button mat-button (click)="onNoClick()" tabindex="2">CANCEL</button> - </mat-dialog-actions> -</div> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.scss ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.scss b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.scss deleted file mode 100755 index c969489..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/dataset-drop-dialog.component.scss +++ /dev/null @@ -1,18 +0,0 @@ -/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ -.dataset-dialog { - font-family: "Roboto Mono", monospace; - font-size: 0.80rem; - font-weight: 500; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/asterixdb/blob/a7e8dbe3/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/datasets.component.html ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/datasets.component.html b/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/datasets.component.html deleted file mode 100755 index f556951..0000000 --- a/asterixdb/asterix-app/src/main/resources/dashboard/src/app/dashboard/metadata/datasets-collection/datasets.component.html +++ /dev/null @@ -1,112 +0,0 @@ -<!--/* -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ --> -<div class="container" (click)="onClick()"> - <div class="master"> - <mat-card class="datasets-card" *ngIf="loaded$ | async as ld"> - <mat-toolbar color="primary" class="datasets-selector"> - <mat-icon class="icon">menu</mat-icon> - <span>DATASETS - METADATA</span> - <span class="spacer"></span> - </mat-toolbar> - <mat-card-content class="datasets-content"> - <mat-table #table [dataSource]="dataSource" class="datasets-table"> - <!-- CompactionPolicy Column --> - <ng-container matColumnDef="CompactionPolicy"> - <mat-header-cell *matHeaderCellDef class="header-compactionpolicy-cell">Compaction Policy</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-compactionpolicy-cell"> {{element.CompactionPolicy}} </mat-cell> - </ng-container> - - <!-- DatasetId Column --> - <ng-container matColumnDef="DatasetId"> - <mat-header-cell *matHeaderCellDef class="header-datasetid-cell">Dataset Id</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-datasetid-cell"> {{element.DatasetId}} </mat-cell> - </ng-container> - - <!-- DatasetName Column --> - <ng-container matColumnDef="DatasetName"> - <mat-header-cell *matHeaderCellDef class="header-datasetname-cell">Dataset Name</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-datasetname-cell"> {{element.DatasetName}} </mat-cell> - </ng-container> - - <!-- DatasetType Column --> - <ng-container matColumnDef="DatasetType"> - <mat-header-cell *matHeaderCellDef class="header-datasettype-cell">Dataset Type</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-datasettype-cell"> {{element.DatasetType}} </mat-cell> - </ng-container> - - <!-- DatatypeDataverseName Column --> - <ng-container matColumnDef="DatatypeDataverseName"> - <mat-header-cell *matHeaderCellDef class="header-datatypedataversename-cell">Datatype Dataverse Name</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-datatypedataversename-cell"> {{element.DatatypeDataverseName}} </mat-cell> - </ng-container> - - <!-- DatatypeName Column --> - <ng-container matColumnDef="DatatypeName"> - <mat-header-cell *matHeaderCellDef class="header-datatypename-cell">Datatype Name</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-datatypename-cell"> {{element.DatatypeName}} </mat-cell> - </ng-container> - - <!-- DataverseName Column --> - <ng-container matColumnDef="DataverseName"> - <mat-header-cell *matHeaderCellDef class="header-dataversename-cell">Dataverse Name</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-dataversename-cell"> {{element.DataverseName}} </mat-cell> - </ng-container> - - <!-- GroupName Column --> - <ng-container matColumnDef="GroupName"> - <mat-header-cell *matHeaderCellDef class="header-groupname-cell">Group Name</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-groupname-cell"> {{element.GroupName}} </mat-cell> - </ng-container> - - <!-- PendingOp Column --> - <ng-container matColumnDef="PendingOp"> - <mat-header-cell *matHeaderCellDef class="header-pendingop-cell">Pending Op</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-pendingop-cell"> {{element.PendingOp}} </mat-cell> - </ng-container> - - <!-- DatasetType Column --> - <ng-container matColumnDef="Timestamp"> - <mat-header-cell *matHeaderCellDef class="header-timestamp-cell">Timestamp</mat-header-cell> - <mat-cell *matCellDef="let element" class="dataset-timestamp-cell"> {{element.Timestamp}} </mat-cell> - </ng-container> - - <mat-header-row *matHeaderRowDef="['DatasetName', 'DataverseName', 'DatatypeName', 'Timestamp']"></mat-header-row> - <mat-row *matRowDef="let row; columns: ['DatasetName', 'DataverseName', 'DatatypeName', 'Timestamp'];" - [ngClass]="{'highlight': selectedRowIndex == row.id}" - (click)="highlight(row)"> - </mat-row> - </mat-table> - </mat-card-content> - <mat-card-actions class="actions"> - <button class="refresh-button" mat-button (click)="openDropDatasetDialog()">DROP</button> - <span class="error-message">{{errorMessage}}</span> - <span class="spacer"></span> - <button class="refresh-button" mat-button (click)="getDatasets()">REFRESH</button> - </mat-card-actions> - </mat-card> - <awc-query-metadata #querymetadata class="query"></awc-query-metadata> - </div> - <div class="detail"> - <mat-card class="datasets-details-card"> - <mat-toolbar color="primary" class="datasets-selector"> - <mat-icon class="icon">menu</mat-icon> - <span>DATASET - METADATA - DETAILS</span> - <span class="spacer"></span> - </mat-toolbar> - <mat-card-content class="datasets-content output"> - <span><pre>{{output}}</pre></span> - </mat-card-content> - </mat-card> - </div> -</div>
