-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit ad93fda
Showing
42 changed files
with
1,034 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
dist | ||
node_modules |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Make TypeScript and Angular compilation fast, by keeping a few copies of the | ||
# compiler running as daemons, and cache SourceFile AST's to reduce parse time. | ||
build --strategy=TypeScriptCompile=worker | ||
build --strategy=AngularTemplateCompile=worker | ||
|
||
# Don't create bazel-* symlinks in the WORKSPACE directory, except `bazel-out`, | ||
# which is mandatory. | ||
# These require .gitignore and may scare users. | ||
# Also, it's a workaround for https://github.com/bazelbuild/rules_typescript/issues/12 | ||
# which affects the common case of having `tsconfig.json` in the WORKSPACE directory. | ||
# | ||
# Instead, the output will appear in `dist/bin`. You'll need to ignore the | ||
# `bazel-out` directory that is created in the workspace root. | ||
build --symlink_prefix=dist/ | ||
|
||
test --test_output=errors | ||
|
||
# Use the Angular 6 compiler | ||
build --define=compile=legacy |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Editor configuration, see https://editorconfig.org | ||
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# See http://help.github.com/ignore-files/ for more about ignoring files. | ||
|
||
# compiled output | ||
/dist | ||
/tmp | ||
/out-tsc | ||
# Only exists if Bazel was run | ||
/bazel-out | ||
|
||
# dependencies | ||
/node_modules | ||
|
||
# profiling files | ||
chrome-profiler-events.json | ||
speed-measure-plugin.json | ||
|
||
# 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 | ||
.history/* | ||
|
||
# misc | ||
/.sass-cache | ||
/connect.lock | ||
/coverage | ||
/libpeerconnection.log | ||
npm-debug.log | ||
yarn-error.log | ||
testem.log | ||
/typings | ||
|
||
# System Files | ||
.DS_Store | ||
Thumbs.db |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
package(default_visibility = ["//visibility:public"]) | ||
|
||
# This export allows targets in other packages to reference files that live | ||
# in this package. | ||
exports_files([ | ||
"tsconfig.json", | ||
]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# BazelApp | ||
|
||
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.2. | ||
|
||
## Development server | ||
|
||
Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. | ||
|
||
## Code scaffolding | ||
|
||
Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. | ||
|
||
## Build | ||
|
||
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. | ||
|
||
## Running unit tests | ||
|
||
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). | ||
|
||
## Running end-to-end tests | ||
|
||
Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). | ||
|
||
## Further help | ||
|
||
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
# WARNING: This file is generated and it's not meant to be edited. | ||
# Before making any changes, please read Bazel documentation. | ||
# https://docs.bazel.build/versions/master/be/workspace.html | ||
# The WORKSPACE file tells Bazel that this directory is a "workspace", which is like a project root. | ||
# The content of this file specifies all the external dependencies Bazel needs to perform a build. | ||
|
||
#################################### | ||
# ESModule imports (and TypeScript imports) can be absolute starting with the workspace name. | ||
# The name of the workspace should match the npm package where we publish, so that these | ||
# imports also make sense when referencing the published package. | ||
workspace(name = "bazel_app") | ||
|
||
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") | ||
|
||
# The @angular repo contains rule for building Angular applications | ||
# Provides "build_bazel_rules_typescript" | ||
ANGULAR_VERSION = "7.2.0" | ||
http_archive( | ||
name = "angular", | ||
url = "https://github.com/angular/angular/archive/%s.zip" % ANGULAR_VERSION, | ||
strip_prefix = "angular-%s" % ANGULAR_VERSION, | ||
) | ||
|
||
# RxJS | ||
RXJS_VERSION = "6.3.3" | ||
http_archive( | ||
name = "rxjs", | ||
url = "https://registry.yarnpkg.com/rxjs/-/rxjs-%s.tgz" % RXJS_VERSION, | ||
strip_prefix = "package/src", | ||
) | ||
|
||
# Rules for compiling sass | ||
RULES_SASS_VERSION = "1.15.1" | ||
http_archive( | ||
name = "io_bazel_rules_sass", | ||
url = "https://github.com/bazelbuild/rules_sass/archive/%s.zip" % RULES_SASS_VERSION, | ||
strip_prefix = "rules_sass-%s" % RULES_SASS_VERSION, | ||
) | ||
|
||
#################################### | ||
# Load and install our dependencies downloaded above. | ||
|
||
load("@angular//packages/bazel:package.bzl", "rules_angular_dependencies") | ||
rules_angular_dependencies() | ||
|
||
load("@build_bazel_rules_typescript//:package.bzl", "rules_typescript_dependencies") | ||
rules_typescript_dependencies() | ||
# build_bazel_rules_nodejs is loaded transitively through rules_typescript_dependencies. | ||
|
||
load("@build_bazel_rules_nodejs//:package.bzl", "rules_nodejs_dependencies") | ||
rules_nodejs_dependencies() | ||
|
||
load("@build_bazel_rules_nodejs//:defs.bzl", "check_bazel_version", "node_repositories", "yarn_install") | ||
# 0.18.0 is needed for .bazelignore | ||
check_bazel_version("0.18.0") | ||
node_repositories() | ||
yarn_install( | ||
name = "npm", | ||
package_json = "//:package.json", | ||
yarn_lock = "//:yarn.lock", | ||
) | ||
|
||
load("@io_bazel_rules_go//go:def.bzl", "go_rules_dependencies", "go_register_toolchains") | ||
go_rules_dependencies() | ||
go_register_toolchains() | ||
|
||
load("@io_bazel_rules_webtesting//web:repositories.bzl", "browser_repositories", "web_test_repositories") | ||
web_test_repositories() | ||
browser_repositories( | ||
chromium = True, | ||
firefox = True, | ||
) | ||
|
||
load("@build_bazel_rules_typescript//:defs.bzl", "ts_setup_workspace", "check_rules_typescript_version") | ||
ts_setup_workspace() | ||
|
||
load("@io_bazel_rules_sass//sass:sass_repositories.bzl", "sass_repositories") | ||
sass_repositories() | ||
|
||
load("@angular//:index.bzl", "ng_setup_workspace") | ||
ng_setup_workspace() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
{ | ||
"$schema": "./node_modules/@angular/cli/lib/config/schema.json", | ||
"version": 1, | ||
"newProjectRoot": "projects", | ||
"projects": { | ||
"bazel-app": { | ||
"root": "", | ||
"sourceRoot": "src", | ||
"projectType": "application", | ||
"prefix": "app", | ||
"schematics": { | ||
"@schematics/angular:component": { | ||
"style": "scss" | ||
} | ||
}, | ||
"architect": { | ||
"build": { | ||
"builder": "@angular/bazel:build", | ||
"options": { | ||
"targetLabel": "//src:bundle.js", | ||
"bazelCommand": "build" | ||
}, | ||
"configurations": { | ||
"production": { | ||
"targetLabel": "//src:bundle" | ||
} | ||
} | ||
}, | ||
"serve": { | ||
"builder": "@angular/bazel:build", | ||
"options": { | ||
"targetLabel": "//src:devserver", | ||
"bazelCommand": "run" | ||
}, | ||
"configurations": { | ||
"production": { | ||
"targetLabel": "//src:prodserver" | ||
} | ||
} | ||
}, | ||
"extract-i18n": { | ||
"builder": "@angular-devkit/build-angular:extract-i18n", | ||
"options": { | ||
"browserTarget": "bazel-app:build" | ||
} | ||
}, | ||
"test": { | ||
"builder": "@angular/bazel:build", | ||
"options": { | ||
"bazelCommand": "test", | ||
"targetLabel": "//src/..." | ||
} | ||
}, | ||
"lint": { | ||
"builder": "@angular-devkit/build-angular:tslint", | ||
"options": { | ||
"tsConfig": [ | ||
"src/tsconfig.app.json", | ||
"src/tsconfig.spec.json" | ||
], | ||
"exclude": [ | ||
"**/node_modules/**" | ||
] | ||
} | ||
} | ||
} | ||
}, | ||
"bazel-app-e2e": { | ||
"root": "e2e/", | ||
"projectType": "application", | ||
"prefix": "", | ||
"architect": { | ||
"e2e": { | ||
"builder": "@angular/bazel:build", | ||
"options": { | ||
"bazelCommand": "test", | ||
"targetLabel": "//e2e:devserver_test" | ||
}, | ||
"configurations": { | ||
"production": { | ||
"targetLabel": "//e2e:prodserver_test" | ||
} | ||
} | ||
}, | ||
"lint": { | ||
"builder": "@angular-devkit/build-angular:tslint", | ||
"options": { | ||
"tsConfig": "e2e/tsconfig.e2e.json", | ||
"exclude": [ | ||
"**/node_modules/**" | ||
] | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"defaultProject": "bazel-app" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
load("@build_bazel_rules_typescript//:defs.bzl", "ts_library") | ||
load("@angular//:index.bzl", "protractor_web_test_suite") | ||
|
||
ts_library( | ||
name = "e2e_lib", | ||
testonly = 1, | ||
srcs = glob(["src/**/*.ts"]), | ||
tsconfig = ":tsconfig.e2e.json", | ||
deps = [ | ||
"@npm//@types/jasmine", | ||
"@npm//@types/jasminewd2", | ||
"@npm//@types/node", | ||
"@npm//jasmine", | ||
"@npm//protractor", | ||
], | ||
data = [ | ||
"//:tsconfig.json", | ||
], | ||
) | ||
|
||
protractor_web_test_suite( | ||
name = "prodserver_test", | ||
data = [ | ||
"@angular//packages/bazel/src/protractor/utils", | ||
"@npm//protractor", | ||
], | ||
on_prepare = ":protractor.on-prepare.js", | ||
server = "//src:prodserver", | ||
deps = [":e2e_lib"], | ||
) | ||
|
||
protractor_web_test_suite( | ||
name = "devserver_test", | ||
data = [ | ||
"@angular//packages/bazel/src/protractor/utils", | ||
"@npm//protractor", | ||
], | ||
on_prepare = ":protractor.on-prepare.js", | ||
server = "//src:devserver", | ||
deps = [":e2e_lib"], | ||
) | ||
|
||
# Default target in this package is to run the e2e tests on the devserver. | ||
# This is a faster round-trip but doesn't exercise production optimizations like | ||
# code-splitting and lazy loading. | ||
alias( | ||
name = "e2e", | ||
actual = "devserver_test", | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
// 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: [ | ||
'./src/**/*.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: require('path').join(__dirname, './tsconfig.e2e.json') | ||
}); | ||
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); | ||
} | ||
}; |
Oops, something went wrong.