Skip to content

Commit 3c2b661

Browse files
authored
Major 2.0 (#63)
* refactor: make applyMixins return the correctly typed class constructor. * Change to esnext build. * Refined mixins. * Made ci pipeline run for every pr. * Fixed AR capabilities. * Renamed enums. * Reduced AR Quick Look logic. * Added converter, loader and exporter. * Reorganized exporter types. * Reworked AR Quick Look. * Reworked ARQuickLook futher and adjusted AR accordingly. * Reworked Scene Viewer. * Refined Info types. * Renamed all AR related systems. * Fixed tests to use new Loader. * Reworked AR Quick Look launch. * Reworked Scene Viewer launch. * Added more inline documentation. * Export ARSystem correctly. * Added USDZLoader mock. * Fixed Converter types. * Reworked types. * Added tests for Exporter. * Added tests for Loader. * Reworked loaders. * Refined error handling in ARSystem. * Renamed files. * Reworked error handling. * Removed logs. * Renamed methods. * Prefixed classes with Asset to give more structure. * Reworked AssetConverter methods. * Improved on natural Promise rejection. * Improved Scene Viewer test. * Fixed getIsARCapable method. * Added first version of State. * Added dynamic dependencies to Actions. * Changed property order. * Added first version of ModuleRegistry. * Renamed files. * Fixed tests. * Exclude ARSystem from global export. * Removed unnecessary test. * Renamed file, added test. * Renamed export. * Moved modules to own folder. * Reworked ModuleRegistry. * Improved error handling. * Rearranged code. * Renamed test describes. * Refined build script to catch all module registrations. * Moved files. * Reworked module exports in package.json. * Modified readme template to contain build process and yalc as local development environment. * Updated readme template. * Fixed Math naming. * Created centralized module registrations (in modules/indes.ts). * New build process approach. * Improved ModuleRegistry workflow. * Added relative paths to module registry. * Fixed pipeline. * Exposed dive instance modules. * Updated readme template. * Updated module documentation. * Added module documentation to README. * Automated module documentation. * Fixed pipeline. * Revert "Changed property order." This reverts commit 40c7d13. * Revert "Added dynamic dependencies to Actions." This reverts commit 5a6bbd4. * Revert "Added first version of State." This reverts commit b2006ff. * Fixed pipeline. * Reworked module build process. * Fixed paths. * Fixed export. * Reworked module types. * Reworked documentation generation. * Fixed pipeline. * Moved ci script file. * Renamed Modules to ModuleRegistry. * Removed docs from npm package due to file size. * Fixed build. * Reworked ModuleRegistry to only deliver classes. * Change package.json to export ModuleRegistry only. * Added modules build path. * Added more documentation. * Removed ModuleRegistry to just use Importer on it's own. * Reworked build process to dynamically rewrite imports. * Added automatic instantiation as a method to ModuleImporter. * Updated docs. * Defined engine. * Correctly autostart the renderer. * Reworked QuickView to be async (wait for loading model). * Fixed tests. * Reactivated test. * Moved all scene components to seperate folder. * Moved src code to a more sturctured way. * Added index.ts files for logical groups. * Raised test coverage. * Fixed irrelevant webxr files. * Fixed tests. * Merge pull request #65 from shopware/refactor/module-registry Refactor: Modules * Added build path helper. * Fixed Resize manager. * Fixed view calculation. * Fixed tests. * Reworked Renderer. * Fixed build path. * Changed renderer name. * Refactor: Engine (#81) * Added first version of State. * Added dynamic dependencies to Actions. * Changed property order. * Added first version of ModuleRegistry. * Renamed files. * Fixed tests. * Exclude ARSystem from global export. * Removed unnecessary test. * Renamed file, added test. * Renamed export. * Moved modules to own folder. * Reworked ModuleRegistry. * Improved error handling. * Rearranged code. * Renamed test describes. * Refined build script to catch all module registrations. * Moved files. * Reworked module exports in package.json. * Modified readme template to contain build process and yalc as local development environment. * Updated readme template. * Fixed Math naming. * Created centralized module registrations (in modules/indes.ts). * New build process approach. * Improved ModuleRegistry workflow. * Added relative paths to module registry. * Fixed pipeline. * Exposed dive instance modules. * Updated readme template. * Updated module documentation. * Added module documentation to README. * Automated module documentation. * Fixed pipeline. * Revert "Changed property order." This reverts commit 40c7d13. * Revert "Added dynamic dependencies to Actions." This reverts commit 5a6bbd4. * Revert "Added first version of State." This reverts commit b2006ff. * Fixed pipeline. * Reworked module build process. * Fixed paths. * Fixed export. * Reworked module types. * Reworked documentation generation. * Fixed pipeline. * Moved ci script file. * Renamed Modules to ModuleRegistry. * Removed docs from npm package due to file size. * Fixed build. * Reworked ModuleRegistry to only deliver classes. * Change package.json to export ModuleRegistry only. * Added modules build path. * Added more documentation. * Removed ModuleRegistry to just use Importer on it's own. * Reworked build process to dynamically rewrite imports. * Added automatic instantiation as a method to ModuleImporter. * Updated docs. * Defined engine. * Correctly autostart the renderer. * Reworked QuickView to be async (wait for loading model). * Fixed tests. * Reactivated test. * Moved all scene components to seperate folder. * Moved src code to a more sturctured way. * Added index.ts files for logical groups. * Raised test coverage. * Fixed irrelevant webxr files. * Fixed tests. * Added build path helper. * Fixed Resize manager. * Fixed view calculation. * Fixed tests. * Reworked Renderer. * Fixed build path. * Changed renderer name. * Reworked Renderer. * Changed renderer name to renderPipeline. * Added new Action factory. * Clean implementation of types. * Implemented ComputeEncompassingViewAction. * Rewrote actions to use new Action.define factory. * Added tests to rewrote actions. * Renamed Communication to State. * Added build path helper. * Added Action registry. * Removed lint:actions script because linting resolves in TS now. * Fixed tests. * Fixed merge issues. * Implemented ComputeEncompassingViewAction. * Rewrote actions to use new Action.define factory. * Renamed Communication to State. * Added Animator for convinient animating. * Added OrbitController refactoring (wip). * Fixed tests. * Renamed methods. * Renamed methods, made Toolbox Module. * Added canvas as a setting to QuickView. * Refactor: State (#82) * Added first version of State. * Added dynamic dependencies to Actions. * Changed property order. * Added first version of ModuleRegistry. * Renamed files. * Fixed tests. * Exclude ARSystem from global export. * Removed unnecessary test. * Renamed file, added test. * Renamed export. * Moved modules to own folder. * Reworked ModuleRegistry. * Improved error handling. * Rearranged code. * Renamed test describes. * Refined build script to catch all module registrations. * Moved files. * Reworked module exports in package.json. * Modified readme template to contain build process and yalc as local development environment. * Updated readme template. * Fixed Math naming. * Created centralized module registrations (in modules/indes.ts). * New build process approach. * Improved ModuleRegistry workflow. * Added relative paths to module registry. * Fixed pipeline. * Exposed dive instance modules. * Updated readme template. * Updated module documentation. * Added module documentation to README. * Automated module documentation. * Fixed pipeline. * Revert "Changed property order." This reverts commit 40c7d13. * Revert "Added dynamic dependencies to Actions." This reverts commit 5a6bbd4. * Revert "Added first version of State." This reverts commit b2006ff. * Fixed pipeline. * Reworked module build process. * Fixed paths. * Fixed export. * Reworked module types. * Reworked documentation generation. * Fixed pipeline. * Moved ci script file. * Renamed Modules to ModuleRegistry. * Removed docs from npm package due to file size. * Fixed build. * Reworked ModuleRegistry to only deliver classes. * Change package.json to export ModuleRegistry only. * Added modules build path. * Added more documentation. * Removed ModuleRegistry to just use Importer on it's own. * Reworked build process to dynamically rewrite imports. * Added automatic instantiation as a method to ModuleImporter. * Updated docs. * Defined engine. * Correctly autostart the renderer. * Reworked QuickView to be async (wait for loading model). * Fixed tests. * Reactivated test. * Moved all scene components to seperate folder. * Moved src code to a more sturctured way. * Added index.ts files for logical groups. * Raised test coverage. * Fixed irrelevant webxr files. * Fixed tests. * Added build path helper. * Fixed Resize manager. * Fixed view calculation. * Fixed tests. * Reworked Renderer. * Fixed build path. * Changed renderer name. * Reworked Renderer. * Changed renderer name to renderPipeline. * Added new Action factory. * Clean implementation of types. * Implemented ComputeEncompassingViewAction. * Rewrote actions to use new Action.define factory. * Added tests to rewrote actions. * Renamed Communication to State. * Added build path helper. * Added Action registry. * Removed lint:actions script because linting resolves in TS now. * Fixed tests. * Fixed merge issues. * Implemented ComputeEncompassingViewAction. * Rewrote actions to use new Action.define factory. * Renamed Communication to State. * Added Animator for convinient animating. * Added OrbitController refactoring (wip). * Fixed tests. * Renamed methods. * Renamed methods, made Toolbox Module. * Added canvas as a setting to QuickView. * Modules rework (wip). * Switched from jest to vitest. * Fixed testing setup. * Renamed entry file. * Fixed tests. * Added tsx for .ts execution. * Added DRACO support locally. * Reworked objects data flow. * Fixed tests. * Fixed TS issue. * Update project config to correctly handle draco files. * Reworked Draco Loader implementation. * Fixed import of draco lib. * Added class exports instead of types. * Fixed applyMixin helper. * Fixed instance referencing. * Fixed floor visibility. * Added instance unregistering. * Removed mixin to fix interface issue. * Expose engine and interface types. * Fixed AnimationSystem test mock error. * Fixed import in action. * Improved error handling for AR. * Moved event system out of modules. * Added new module definition method via index.ts files. * Fixed shadow map. * Fixed tests. * Added plugin structure to existing animation system. * Added postinstall to install node_modules for plugins. * Made imports more slim. * Made SystemInfo a decoupled plugin. * Made asset handlers decoupled plugins. * Fixed vitest setup * Added names to plugins. * Made AxisCamera a plugin. * Fixed media creator plugin. * Moved remaining modules to plugin architecture. * Fixed tests * Add docu to vite config. * Removed ModuleRegistry overhead. * Moved required types from state plugin to core. * Rebundled types. * Fixed README for animation system. * Added README for ar. * Improved README for animation. * Added README to assetconverter. * Added README to axiscamera. * Added README to mediacreator. * Added README to orbitcontroller. * Added README to state. * Added README to systeminfo. * Added README to toolbox. * Renamed modules folder to plugins. * Fixed ar plugin structure. * Added README to assetexporter. * Added README to assetloader. * Fixed build step. * Removed old docu. * Cleaned up last imports. * Deleted old types. * Added robust install script. * Prettier fix. * Removed temporarily broken docs generation from ci script. * Fixed remaining mocks. * Renamed build script. * Changed github workflows to cache plugins node_modules as well. * Moved deps to root. * Revert "Changed github workflows to cache plugins node_modules as well." This reverts commit cf8d225. * Refined error class types. * Added user-story template for github. * Introduced new error type. Correctly export error files. * Removed duplicate test file. * Added lockcamera action test. * Exlude barrel exports from coverage report. * Added test for type guards. * Added testing for EventExecutor class. * Renamed and extended the EventExecutor class to EventDispatcher. * Added AssetCache plugin. * Improved async test behaviour. * Improved test coverage on TransformTool. * Added more tests. * Reworked encompassing view calculation. * Renamed pipelines. * Refactored Orientation Display. * Added BoundingBox tests. * Added export.
1 parent fa034cc commit 3c2b661

458 files changed

Lines changed: 26963 additions & 12807 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ISSUE_TEMPLATE/bug_report.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
name: 🐞 Bug
1+
name: Bug Report
22
description: File a bug/issue
33
title: '[BUG] '
4-
labels: [bug]
4+
type: Bug
5+
labels: [bug, service/shopping-experience]
56
body:
67
- type: checkboxes
78
attributes:

.github/ISSUE_TEMPLATE/feature_request.yml

Lines changed: 0 additions & 43 deletions
This file was deleted.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: User Story
2+
description: Use this template to draft user stories.
3+
type: Story
4+
labels: [enhancement, service/shopping-experience]
5+
body:
6+
- type: textarea
7+
id: description
8+
attributes:
9+
label: Description
10+
description: One-line description of what the story involves.
11+
validations:
12+
required: true
13+
- type: textarea
14+
id: acceptance-criteria
15+
attributes:
16+
label: Acceptance criteria
17+
description: Please add acceptance criteria to the story. If some of the topics are not applicable, please remove them. (e.g. if not directly related to shopware, remove the Shopware Functionality topic)
18+
value: |
19+
DIVE Functionality:
20+
- [ ]
21+
Shopware Functionality:
22+
- [ ]
23+
Integration:
24+
- [ ] All of the above changes are available on (shopware/)showpare->trunk.
25+
Testing:
26+
- [ ] All of the above changes are unit-tested completely.
27+
validations:
28+
required: true
Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
name: 'CI'
1+
name: 'CI Pull Request'
22

33
on:
44
pull_request:
5-
branches: ['trunk']
65

76
jobs:
87
install:
@@ -93,26 +92,9 @@ jobs:
9392
run: yarn
9493
- name: Build DIVE
9594
run: yarn build
96-
lint-actions:
97-
runs-on: ubuntu-latest
98-
needs: install
99-
steps:
100-
- name: Checkout
101-
uses: actions/checkout@main
102-
- name: Search for cached dependencies
103-
uses: actions/cache@main
104-
id: yarn-cache
105-
with:
106-
path: node_modules
107-
key: node-modules-${{ runner.os }}-${{ hashFiles('yarn.lock') }}
108-
- name: Install dependencies (if cache not found)
109-
if: steps.yarn-cache.outputs.cache-hit != 'true'
110-
run: yarn
111-
- name: Run lint-actions
112-
run: bash ci/lint/lint-actions.sh
11395
publish-dry-run:
11496
runs-on: ubuntu-latest
115-
needs: [unit, eslint, build, prettier-check, lint-actions]
97+
needs: [unit, eslint, build, prettier-check]
11698
steps:
11799
- name: Checkout
118100
uses: actions/checkout@main

.github/workflows/publish-beta.yml renamed to .github/workflows/publish-beta-manually.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Beta Release
1+
name: 'Publish Beta Manually'
22

33
on:
44
workflow_dispatch: # This allows manual triggering only from the Actions tab
@@ -114,7 +114,7 @@ jobs:
114114
next_version="$major.$minor.$next_patch"
115115
116116
# Find all beta branches matching the pattern
117-
prefix="beta/v$next_version-beta"
117+
prefix="beta/$next_version-beta"
118118
last_beta=$(git branch -r | grep "origin/$prefix" | awk -F '-' '{print $NF}' | sort -n | tail -n 1)
119119
120120
if [ -z "$last_beta" ]; then
@@ -135,25 +135,25 @@ jobs:
135135
136136
- name: Create beta branch
137137
run: |
138-
git checkout -b beta/v${{ env.next_beta }}
138+
git checkout -b beta/${{ env.next_beta }}
139139
140140
- name: Build DIVE
141141
run: yarn build
142142

143143
- name: Add build files
144-
run: git add ./build -f
144+
run: git add ./build -f && git add package.json
145145

146146
- name: Commit changes
147147
run: |
148-
git commit -m "Beta v$(node -p "require('./package.json').version")"
148+
git commit -m "Beta $(node -p "require('./package.json').version")"
149149
150150
- name: Create tag
151151
run: |
152-
git tag -a v$(node -p "require('./package.json').version") -m "Beta v$(node -p "require('./package.json').version")"
152+
git tag -a $(node -p "require('./package.json').version") -m "Beta v$(node -p "require('./package.json').version")"
153153
154154
- name: Push changes
155155
run: |
156-
git push origin beta/v$(node -p "require('./package.json').version") --follow-tags
156+
git push origin beta/$(node -p "require('./package.json').version") --follow-tags
157157
158158
- name: Authenticate with NPM
159159
env:
Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: 'Publish to npm'
1+
name: 'Publish on Merge'
22

33
on:
44
push:
@@ -97,11 +97,17 @@ jobs:
9797
if: steps.yarn-cache.outputs.cache-hit != 'true'
9898
run: yarn
9999

100-
- name: Generate README.md
101-
run: yarn generate-readme
100+
- name: Build DIVE
101+
run: yarn build
102+
103+
- name: 'Add package.json to git'
104+
run: git add package.json
105+
106+
- name: Generate docs
107+
run: yarn docs
102108

103-
- name: 'Add README file to git'
104-
run: git add README.md -f
109+
- name: 'Add docs folder to git'
110+
run: git add git add docs -f
105111

106112
- name: 'Automated Version Bump'
107113
uses: 'phips28/gh-action-bump-version@master'
@@ -126,8 +132,7 @@ jobs:
126132

127133
- name: 'Create release branch'
128134
run: git checkout -b release/v$(node -p "require('./package.json').version")
129-
- name: Build DIVE
130-
run: yarn build
135+
131136
- name: 'Add Build files to git'
132137
run: git add ./build -f && echo "Staged build files! Status:" && git status
133138
- name: 'Commit changes'

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ out
8989

9090
# Nuxt.js build / generate output
9191
.nuxt
92-
build
92+
/build
9393

9494
# Gatsby files
9595
.cache/

.npmignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
docs/
2+
README.md
3+
assets/
4+
ci/
5+
tests/
6+
*.test.ts
7+
*.spec.ts

.prettierignore

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
tsconfig.json
2-
31
PULL_REQUEST_TEMPLATE.md
42

5-
.vscode
3+
*.md
4+
.vscode
5+
6+
*.js

.prettierrc

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,16 @@
1111
"endOfLine": "lf",
1212
"plugins": [
1313
"prettier-plugin-multiline-arrays"
14+
],
15+
"overrides": [
16+
{
17+
"files": "*.md",
18+
"options": {
19+
"proseWrap": "always",
20+
"printWidth": 100,
21+
"tabWidth": 2,
22+
"embeddedLanguageFormatting": "off"
23+
}
24+
}
1425
]
1526
}

0 commit comments

Comments
 (0)