Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.0.3 #23

Merged
merged 86 commits into from
Jan 24, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
2ec5468
build(dep): `@babylonjs` & `@types/node`:
PhilippeMorier Dec 10, 2019
7d237f1
feat(apps/frontend): select initial tool
PhilippeMorier Dec 10, 2019
b9a2b8e
fix(apps/frontend): import hammerjs
PhilippeMorier Dec 10, 2019
05ec1fa
refactor(frontend): scene-viewer into container
PhilippeMorier Dec 10, 2019
b2bd8ad
feat(frontend): dispatch `pointerPick` action
PhilippeMorier Dec 10, 2019
ceee013
feat(frontend): dispatch `add|removeVoxel` action
PhilippeMorier Dec 11, 2019
f9c122b
build(packaging): simplify `prettier:check` command
PhilippeMorier Dec 11, 2019
72c89e0
doc(frontend): add readme with ngrx resources
PhilippeMorier Dec 11, 2019
d6eafd5
feat(frontend): support adding voxel
PhilippeMorier Dec 12, 2019
2e68605
refactor(frontend): don't inject `GridService`
PhilippeMorier Dec 12, 2019
157da40
feat(frontend): effects for when app goes on/offline
PhilippeMorier Dec 12, 2019
4ad0a04
test(frontend): on/offline effects
PhilippeMorier Dec 12, 2019
f7419eb
test(vdb): remove `normals` from test
PhilippeMorier Dec 12, 2019
99fed10
feat(vdb): add `setValueOff` & `isValueOn`
PhilippeMorier Dec 12, 2019
29161bc
test(frontend): set expected position to pass
PhilippeMorier Dec 12, 2019
c015944
fix(frontend): make public for use in template
PhilippeMorier Dec 12, 2019
31ea920
build(dep): `@types/node` & `core-js`
PhilippeMorier Dec 12, 2019
11fa2eb
feat(frontend): enable `removeVoxel`
PhilippeMorier Dec 12, 2019
5a8df98
build(dep): `@babylonjs/*`
PhilippeMorier Dec 12, 2019
38002fb
build(github): keep `develop` after PR merge
PhilippeMorier Dec 12, 2019
2e5f6b3
build(dep): `cypress` to `v3.8.0`
PhilippeMorier Dec 16, 2019
9629429
build(dep): `cypress` to `v3.7.0`
PhilippeMorier Dec 16, 2019
bb5440f
test(vdb): set value with float coordinates:
PhilippeMorier Dec 17, 2019
1362079
build(dep): `cypress` to `v3.7.0`
PhilippeMorier Dec 17, 2019
e8cd3c9
feat(frontend): support adding and removing voxels
PhilippeMorier Dec 18, 2019
97ff0c6
test(ui): remove unused imported components
PhilippeMorier Dec 19, 2019
b041d82
build(CircleCi): use `13.3.0` due failing tests:
PhilippeMorier Dec 19, 2019
a96dfed
fix(frontend): add voxel on positive normal
PhilippeMorier Dec 19, 2019
575e9db
test(frontend): set `setupFilesAfterEnv`
PhilippeMorier Dec 19, 2019
596f386
test(frontend): set `globals`>`tsConfig`
PhilippeMorier Dec 19, 2019
c1ddf83
build(CircleCi): use `13.4.0`
PhilippeMorier Dec 19, 2019
3726648
build(dep): update diverse dependencies:
PhilippeMorier Dec 19, 2019
4d690b9
doc(readme): record macro & git setup
PhilippeMorier Dec 20, 2019
2a3f37a
build(dep): `@angular-devkit/build-angular` & `@angular/cli`
PhilippeMorier Dec 20, 2019
ad7f7e1
Merge branch 'master' into develop
PhilippeMorier Dec 20, 2019
479c81b
feat(frontend): draw separate mesh per InternalNode1 (#9)
PhilippeMorier Jan 8, 2020
caa2751
feat(benchmark): test single vs. multiple `array.push()`
PhilippeMorier Jan 8, 2020
97be3c4
build(CircleCi): update node to `13.5.0` & cypress `3.8.1`
PhilippeMorier Jan 8, 2020
797aef0
build(nx): nx migrate @nrwl/workspace (v8.11.0)
PhilippeMorier Jan 9, 2020
e50fa26
fix(benchmark): add `.nxignore` to get benchmark through linter
PhilippeMorier Jan 9, 2020
22b39b6
build(dep): update dependencies
PhilippeMorier Jan 9, 2020
088dbed
feat(frontend): add undo/redo & enable `strictNullChecks` (#10)
PhilippeMorier Jan 13, 2020
700ff89
feat(frontend): set active state of voxel, return color when deleting…
PhilippeMorier Jan 14, 2020
4b35576
feat(ui/frontend): add menu-bar (#12)
PhilippeMorier Jan 15, 2020
0339543
feat(frontend): undo/redo with start/end actions (#13)
PhilippeMorier Jan 15, 2020
1b569df
build(dep): update dependencies
PhilippeMorier Jan 15, 2020
ce544f5
build(dep): update cypress to `v3.8.2`
PhilippeMorier Jan 15, 2020
917f489
build(dep): update stylelint to `v13.0.0`
PhilippeMorier Jan 15, 2020
88cc433
refactor(ui): prefix UI components with `Ui` like Angular does with `…
PhilippeMorier Jan 16, 2020
4fe0e28
refactor(ui): prefix `UiPointer[Button|PickInfo]` with `Ui`
PhilippeMorier Jan 16, 2020
6ecda72
build(dep): update handlebars to `v4.7.2` due to security issues
PhilippeMorier Jan 16, 2020
98daf1f
test(ui): should emit `value` of clicked menu items
PhilippeMorier Jan 16, 2020
d286d10
test(ui): should emit on tool select
PhilippeMorier Jan 16, 2020
ca7f5f3
test(ui): should close left & right sidenav
PhilippeMorier Jan 16, 2020
d79568c
test(frontend): should dispatch action
PhilippeMorier Jan 16, 2020
8bcc6a2
test(frontend): check `scene-viewer-container.reducer`
PhilippeMorier Jan 16, 2020
d81644e
test(frontend): check `scene-viewer-container.reducer` selector
PhilippeMorier Jan 16, 2020
c2dadc9
refactor(ui): import `hammerjs` to remove warning in test run
PhilippeMorier Jan 16, 2020
2677de4
test(frontend): check `tools-panel.reducer`
PhilippeMorier Jan 16, 2020
4ea47f5
test(frontend): check `undo-redo.reducer`
PhilippeMorier Jan 16, 2020
dffd51f
test(frontend): check `undo-redo.reducer` with `stepX`
PhilippeMorier Jan 16, 2020
43a3552
test(frontend): check `undo-redo.reducer` too many undo/redo's
PhilippeMorier Jan 16, 2020
7d44795
style(prettier): fix imports
PhilippeMorier Jan 16, 2020
bf1a295
test(vdb): add tests for `tree`
PhilippeMorier Jan 16, 2020
e7e93c8
test(vdb): improve coverage
PhilippeMorier Jan 16, 2020
e391604
test(vdb): check coord
PhilippeMorier Jan 16, 2020
a387799
test(vdb): check grid
PhilippeMorier Jan 16, 2020
64a9c08
test(vdb): check `nodeToMesh`
PhilippeMorier Jan 16, 2020
a328f09
feat(ui): add `Storybook` (#16)
PhilippeMorier Jan 17, 2020
de8f7f7
ci(storybook): run, build & deploy storybook for `ui-e2e` (#17)
PhilippeMorier Jan 17, 2020
03a4ee2
fix(ui): to high/large canvas by setting `display: block;`
PhilippeMorier Jan 17, 2020
d7a15fa
feat(frontend): paint voxel (#18)
PhilippeMorier Jan 20, 2020
2ea06b5
refactor(frontend): s/position/xyz
PhilippeMorier Jan 20, 2020
838d1ac
build(dep): update `@nrwl` to `v8.11.2`
PhilippeMorier Jan 20, 2020
d1a7f4f
build(dep): update `@angular/(cli|core)` to `v8.3.22`
PhilippeMorier Jan 20, 2020
e34cf44
build(dep): update @babylonjs, @babel, @storybook, @types
PhilippeMorier Jan 20, 2020
6eada69
feat(ui): color-dialog (#19)
PhilippeMorier Jan 21, 2020
4aebaec
build(dep): update `circleci/node` to `v13.6.0`
PhilippeMorier Jan 21, 2020
0a8202b
feat(frontend): use color-dialog (#20)
PhilippeMorier Jan 23, 2020
d66908e
feat(frontend): support dark & light theme (#21)
PhilippeMorier Jan 23, 2020
083b8a3
feat(ui): add theme toggle to storybook (#22)
PhilippeMorier Jan 23, 2020
15520e4
feat(ui): remove `mat-button` from story
PhilippeMorier Jan 23, 2020
5749bf4
build(dep): update `@storybook` to `v5.3.8`
PhilippeMorier Jan 23, 2020
7871f3c
build(dep): update `tslint` to `v6.0.0`
PhilippeMorier Jan 23, 2020
133434c
build(dep): back to `tslint` `v5.20.1`
PhilippeMorier Jan 23, 2020
627d4f3
Merge branch 'master' into tls-release-v0.0.3
PhilippeMorier Jan 24, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
217 changes: 163 additions & 54 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ aliases:
# https://github.com/CircleCI-Public/circleci-dockerfiles/tree/master/node/images
- &use_docker_node
docker:
- image: circleci/node:13.5.0-stretch
- image: circleci/node:13.6.0-stretch

- &use_docker_node_browsers
docker:
- image: circleci/node:13.5.0-stretch-browsers
- image: circleci/node:13.6.0-stretch-browsers

# https://github.com/cypress-io/cypress-docker-images/tree/master/included
- &use_docker_cypress_included
Expand All @@ -28,9 +28,54 @@ aliases:
attach_workspace:
at: *workspace

- &configure_git_user
run:
name: Configure Git user
command: |
git config user.email 'morier.dev@outlook.com'
git config user.name 'Circle CI'

- &add_github_ssh_key
add_ssh_keys:
fingerprints:
- '6b:2b:a3:64:1d:a3:5c:b6:03:7a:b7:b9:39:10:8f:43'

- &add_github_to_known_hosts
run:
name: Add github.com to known hosts
command:
echo 'github.com ssh-rsa
AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=='
>> ~/.ssh/known_hosts

- &prepare_github_pages_variables
run:
name: Prepare github pages variables
command: |
echo 'export LAST_COMMIT_HASH_SHORT=$(echo $CIRCLE_SHA1 | cut -c1-7)' >> $BASH_ENV

echo 'export COMMIT_MESSAGE="[skip ci] Deploy: $DEPLOY_CONTEXT (#$LAST_COMMIT_HASH_SHORT)"' >> $BASH_ENV
echo 'export DIST_PATH="dist/$DEPLOY_CONTEXT"' >> $BASH_ENV
echo 'export DEST_PATH="$CIRCLE_BRANCH/$LAST_COMMIT_HASH_SHORT"' >> $BASH_ENV

- &deploy_to_github_pages
run:
name: Deploy to Github pages
command: |
yarn gh-pages \
--dotfiles \
--message "$COMMIT_MESSAGE" \
--dist "$DIST_PATH" \
--dest "$DEST_PATH"

- &log_deploy_url
run:
name: Log deploy URL
command: echo 'https://philippemorier.github.io/talus/'$DEST_PATH'/'$PROJECT_NAME'/'

- &store_test_results
store_test_results:
path: ./projects/editor/reports/test-results
path: ./test-results

version: 2

Expand Down Expand Up @@ -88,8 +133,7 @@ jobs:

- run:
name: Run prettier
command: |
yarn prettier:check
command: yarn prettier:check

'unit':
<<: *use_docker_node_browsers
Expand All @@ -103,14 +147,31 @@ jobs:
name: Run unit tests
command: yarn test:code-coverage

- store_test_results:
path: ./test-results
- *store_test_results

- store_artifacts:
path: ./coverage
destination: coverage

'frontend-e2e':
'benchmark':
<<: *use_docker_node_browsers

<<: *set_working_directory

steps:
- *attach_workspace

- run:
name: Build benchmarks
command: yarn build benchmark

- run:
name: Run benchmarks
command: node ./dist/apps/benchmark/main.js

- *store_test_results

'frontend e2e':
<<: *use_docker_cypress_included

<<: *set_working_directory
Expand All @@ -122,33 +183,31 @@ jobs:
name: Run frontend-e2e
command: yarn e2e:ci frontend-e2e

- store_test_results:
path: ./test-results
- *store_test_results

- store_artifacts:
path: ./test-results/cypress
destination: cypress

'benchmark':
<<: *use_docker_node_browsers
'ui e2e':
<<: *use_docker_cypress_included

<<: *set_working_directory

steps:
- *attach_workspace

- run:
name: Build benchmarks
command: yarn build benchmark
name: Run ui-e2e
command: yarn ng run ui-e2e:e2e --headless

- run:
name: Run benchmarks
command: node ./dist/apps/benchmark/main.js
- *store_test_results

- store_test_results:
path: ./test-results
- store_artifacts:
path: ./test-results/cypress
destination: cypress

'build':
'frontend build':
<<: *use_docker_node

<<: *set_working_directory
Expand Down Expand Up @@ -193,29 +252,38 @@ jobs:
root: .
paths: dist/apps/frontend

# https://circleci.com/blog/deploying-documentation-to-github-pages-with-continuous-integration/
'deploy':
'ui build':
<<: *use_docker_node

<<: *set_working_directory

steps:
- *attach_workspace

- run:
name: Configure Git user
command: |
git config user.email 'morier.dev@outlook.com'
git config user.name 'Circle CI'
name: Build storybook
command: yarn ng run ui:build-storybook

- add_ssh_keys:
fingerprints:
- '6b:2b:a3:64:1d:a3:5c:b6:03:7a:b7:b9:39:10:8f:43'
- store_artifacts:
path: ./dist/storybook/ui
destination: dist/storybook/ui

- run:
name: Add github.com to known hosts
command:
echo 'github.com ssh-rsa
AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=='
>> ~/.ssh/known_hosts
- persist_to_workspace:
root: .
paths: dist/storybook/ui

# https://circleci.com/blog/deploying-documentation-to-github-pages-with-continuous-integration/
'frontend deploy':
<<: *use_docker_node
<<: *set_working_directory
steps:
- *attach_workspace

- *configure_git_user

- *add_github_ssh_key

- *add_github_to_known_hosts

- run:
name: Delete CircleCI index
Expand All @@ -226,25 +294,40 @@ jobs:
command: mv dist/apps/frontend/index-github.html dist/apps/frontend/index.html

- run:
name: Prepare deployment variables
name: Set deploy context & project variables
command: |
echo 'export LAST_COMMIT_HASH_SHORT=$(echo $CIRCLE_SHA1 | cut -c1-7)' >> $BASH_ENV
echo 'export DEPLOY_CONTEXT="apps"' >> $BASH_ENV
echo 'export PROJECT_NAME="frontend"' >> $BASH_ENV

- *prepare_github_pages_variables

- *deploy_to_github_pages

- *log_deploy_url

'ui deploy':
<<: *use_docker_node
<<: *set_working_directory
steps:
- *attach_workspace

- *configure_git_user

- *add_github_ssh_key

echo 'export COMMIT_MESSAGE="[skip ci] Deploy: apps (#$LAST_COMMIT_HASH_SHORT)"' >> $BASH_ENV
echo 'export DEST_PATH="$CIRCLE_BRANCH/$LAST_COMMIT_HASH_SHORT"' >> $BASH_ENV
- *add_github_to_known_hosts

- run:
name: Deploy to Github pages
name: Set deploy context & project variables
command: |
yarn gh-pages \
--dotfiles \
--message "$COMMIT_MESSAGE" \
--dist dist/apps \
--dest "$DEST_PATH"
echo 'export DEPLOY_CONTEXT="storybook"' >> $BASH_ENV
echo 'export PROJECT_NAME="ui"' >> $BASH_ENV

- run:
name: Log deploy URL
command: echo 'https://philippemorier.github.io/talus/'$DEST_PATH'/frontend/'
- *prepare_github_pages_variables

- *deploy_to_github_pages

- *log_deploy_url

workflows:
version: 2
Expand All @@ -268,24 +351,50 @@ workflows:
requires:
- 'dependencies'

- 'build':
- 'frontend build':
requires:
- 'linting'
- 'prettier'
- 'unit'
- 'benchmark'

- 'frontend e2e':
requires:
- 'linting'
- 'prettier'
- 'unit'
- 'benchmark'

- 'frontend-e2e':
- 'ui build':
requires:
- 'linting'
- 'prettier'
- 'unit'
- 'benchmark'

- 'deploy':
- 'ui e2e':
requires:
- 'linting'
- 'prettier'
- 'unit'
- 'benchmark'

- 'frontend deploy':
requires:
- 'frontend build'
- 'frontend e2e'
filters:
branches:
only:
- master
- develop

- 'ui deploy':
requires:
- 'build'
- 'frontend-e2e'
- 'ui build'
- 'ui e2e'
filters:
branches:
only: master
only:
- master
- develop
1 change: 1 addition & 0 deletions .storybook/addons.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
import '@storybook/addon-knobs/register';
5 changes: 5 additions & 0 deletions .storybook/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"extends": "../tsconfig.json",
"exclude": ["../**/test.ts", "../**/*.spec.ts"],
"include": ["../**/*"]
}
11 changes: 11 additions & 0 deletions .storybook/webpack.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
// Export a function. Accept the base config as the only param.
module.exports = async ({ config, mode }) => {
// `mode` has a value of 'DEVELOPMENT' or 'PRODUCTION'
// You can change the configuration based on that.
// 'PRODUCTION' is used when building the static version of storybook.

// Make whatever fine-grained changes you need

// Return the altered config
return config;
};
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,12 @@ See scripts on [nx.dev](https://nx.dev/angular/api/workspace/npmscripts)

- `yarn nx --help`

## Ng

### Update

- `ng update @angular/cli @angular/core`

## Github Pages

CircleCI pushes every build onto the
Expand Down
Loading