Commit Graph

914 Commits

Author SHA1 Message Date
Kristaps Fabians Geikins 62eb807512 feat: stopping subscriptions at >100 errors per minute (#1592)
* feat: stopping subscriptions at >100 errors per minute

* chore: added explanatory comments

* added error state banner in fe1

* feat: error state banner in fe2
2023-05-24 14:07:10 +03:00
Kristaps Fabians Geikins a42ee35c09 fix(server): self-cleaning sub dataloaders + Comment.data type change 2023-05-22 21:00:27 +03:00
Kristaps Fabians Geikins 057894e14f fix(fe1): comments not auto-expanding correctly 2023-05-22 20:15:51 +03:00
Kristaps Fabians Geikins 42a49fb635 chore: ensuring react ttypes are always stubbed (#1570) 2023-05-08 14:07:56 +03:00
Kristaps Fabians Geikins b02a07e2b6 feat: Frontend 2.0 MVP 2023-05-08 10:47:01 +03:00
Iain Sproat 4eab7d9dcd chore(deps): bump node to 18.16.0 (#1564) 2023-05-05 12:43:39 +01:00
Kristaps Fabians Geikins 483a28c211 fix(server): correct server_id format (#1495) 2023-03-30 16:37:24 +03:00
Kristaps Fabians Geikins 5d0fceaaf3 feat: proper sign up tracking (#1489)
* feat: register flag passed to fe

* feat: mixpanel tracking for all sign ups

* feat: utm first touch & last touch tracking

* feat(helm): Allows Environment Variable for MP to be configured
- default is enabled
- renames environment variable to ENABLE_MP

* feat(helm network policy): allowlist analytics.speckle.systems

---------

Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
2023-03-30 12:21:59 +03:00
Iain Sproat 87e8d08e64 chore(deps): bump node to 18.15.0 (#1446) 2023-03-10 11:01:30 +00:00
Iain Sproat d8b7123ed0 chore(deps): bump node from 18.14.0 to 18.14.2 (#1426) 2023-03-01 12:16:55 +00:00
Iain Sproat a6fba9ebd3 chore(node): bump node version to 18.14.0 (#1365) 2023-02-10 11:44:44 +00:00
Kristaps Fabians Geikins 7aec9bf29d fix(frontend): viewer dragging not working in some cases (#1357) 2023-02-02 16:34:46 +02:00
Kristaps Fabians Geikins 815d46d3ac fix(frontend): viewer object properties not being scrollable (#1356) 2023-02-02 12:01:23 +02:00
Kristaps Fabians Geikins 3dc4c57653 possible post auth redirect fix 2023-02-02 11:16:31 +02:00
Alexandru Popovici 071e6382ca Queries update (#1341)
* Separated Point queries from Intersection queries. Defined query result types for both

* Updated exports

* Update Utils

* Updated frontend after the queries updates

* Allowed the objects field in the IntersectionQueryResult to be null
2023-01-26 12:12:09 +02:00
Iain Sproat 68fd86b754 chore(frontend): use bitnami/openresty as base image for frontend Dockerfile (#1335)
* chore(frontend): use bitnami/openresty as base image for frontend Dockerfile

openresty/openresty was not being patched as frequently as we would like, resulting in numerous
vulnerabilities without resolution. bitnami/openresty is being patched more frequently.

Some additional changes were necessary when porting our frontend between these distributions:
- html files are in /app
- nginx.conf is in /opt/bitnami/openresty/nginx/conf/nginx.conf
- envsubst is not available by default in bitnami/openresty and needs to be copied in
- Nginx.conf - we wrap the server block in http block and overwrite root nginx.conf
    - using the existing bitnami/openresty nginx.conf as a server block alone causes issues with bitnami/openresty, as bitnami/openresty provides a root nginx.conf which conflicts with directives in Speckle's server block
- we copy the directives from openresty/openresty (which are known to work with Speckle's server block), and apply them alongside Speckle's server block. This creates a new root nginx.conf which we can overwrite the default on the image.
- nginx should use a port available to non sudo/root user, we have selected 8080 instead of previous 80
- need to explicitly output nginx logs to stderr / stdout

Created a readonly root file system on Kubernetes. This requires the following changes:
- emptyDir volumes are mounted in kubernetes to allow bitnami/openresty to write to specific locations
- explicitly include and copy mime.types file to nginx configuration directory

Due to the change to non-privileged port number (8080), the following subsequent changes were required:
- Update 1-click deployment script to match frontend at port 8080
- Updates docker-compose-speckle.yaml file

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2023-01-25 19:06:48 +00:00
Alexandru Popovici 96b3a4923b Viewer queries (#1331)
* Added the concept of queries with a minimalistic implementation. Implemented PointQuerySolver which handles occlusion, projection and unprojection of points

* Added and tested the 'Pick' PointQuery operations which works just like an onclick viewer event

* Small fixes and changes to query and point query.

* Better approach on the occlusion query solving by using our universal scene intersection routine

* Tested and fixed occlusion testing for points

* Added optional custom width and height to NDC<->Screen helper functions

* Integrated queries in the frontend. Projection queries replace projecting by hand, and also added occlusion queries as a demonstration

* Added refactor comment
2023-01-20 18:59:01 +02:00
Iain Sproat 97ded1a9fe Dependabot bumps combined (as of 2023-01-10) (#1298)
* chore(deps): bump vuetify from 2.6.5 to 2.6.10

Bumps [vuetify](https://github.com/vuetifyjs/vuetify/tree/HEAD/packages/vuetify) from 2.6.5 to 2.6.10.
- [Release notes](https://github.com/vuetifyjs/vuetify/releases)
- [Commits](https://github.com/vuetifyjs/vuetify/commits/v2.6.10/packages/vuetify)

---
updated-dependencies:
- dependency-name: vuetify
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump loader-utils from 2.0.2 to 2.0.4

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 2.0.2 to 2.0.4.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v2.0.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v2.0.2...v2.0.4)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump apollo-server-core from 3.10.2 to 3.11.1

Bumps [apollo-server-core](https://github.com/apollographql/apollo-server/tree/HEAD/packages/apollo-server-core) from 3.10.2 to 3.11.1.
- [Release notes](https://github.com/apollographql/apollo-server/releases)
- [Changelog](https://github.com/apollographql/apollo-server/blob/apollo-server-core@3.11.1/CHANGELOG.md)
- [Commits](https://github.com/apollographql/apollo-server/commits/apollo-server-core@3.11.1/packages/apollo-server-core)

---
updated-dependencies:
- dependency-name: apollo-server-core
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump express from 4.16.4 to 4.17.3

Bumps [express](https://github.com/expressjs/express) from 4.16.4 to 4.17.3.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.16.4...4.17.3)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump json5 from 2.2.1 to 2.2.3

Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump passport from 0.4.1 to 0.6.0

Bumps [passport](https://github.com/jaredhanson/passport) from 0.4.1 to 0.6.0.
- [Release notes](https://github.com/jaredhanson/passport/releases)
- [Changelog](https://github.com/jaredhanson/passport/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jaredhanson/passport/compare/v0.4.1...v0.6.0)

---
updated-dependencies:
- dependency-name: passport
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump luxon from 3.0.1 to 3.2.1

Bumps [luxon](https://github.com/moment/luxon) from 3.0.1 to 3.2.1.
- [Release notes](https://github.com/moment/luxon/releases)
- [Changelog](https://github.com/moment/luxon/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moment/luxon/compare/3.0.1...3.2.1)

---
updated-dependencies:
- dependency-name: luxon
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump @graphql-codegen/cli

* chore(deps): bump nodemon to resolve got dependabot issue

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-10 11:26:57 +00:00
Kristaps Fabians Geikins 9245aa6db2 fix(frontend): branch infinite loading (backported from fe2) (#1269) 2022-12-14 17:17:58 +02:00
Jonathon Broughton 14617cd07e Enhancement: Adds Navisworks to the application avatars (#1261)
* Adding Navisworks to the application swatch list

* Short name changed NW to NAVIS
2022-12-12 13:37:32 +01:00
Kristaps Fabians Geikins d0a3f811fe fix(frontend): post-auth redirects fixed (#1259) 2022-12-09 16:12:40 +01:00
Iain Sproat d09bce7267 feat(docker images): Distroless (#935)
* Moves speckle-server, webhook-service, fileimport-service, monitoring-deployment, and test-deployment images to Distroless.

Partially addresses https://github.com/specklesystems/speckle-server/issues/883

* preview-service uses similar image for building and production stages
* explicitly include chromium-common dependency to prevent error in preview service
* Bump chromium packages due to package versions not being found
* Handle machine-id in distroless
    - distroless has no shell, so node-machine-id will result in an error
    - this commit introduces error handling and defaults to a uuid v4 in the case of an error
* Update binary location for readiness and liveness checks to match the binary location in Distroless
* Allow node binary path to be set as environment variable in fileimport service
2022-12-07 12:07:42 +00:00
Iain Sproat 28aeb8c442 chore(frontend): bump openresty to 1.21.4.1-4-jammy-amd64 (#1248) 2022-12-06 13:57:01 +00:00
Iain Sproat ee50b32b59 chore(node): upgrades to node 18 (#1189)
* chore(node): upgrades to node 18

Node 16 was out of support (but not security upgrades), so bumping to next stable version.

https://github.com/specklesystems/speckle-server/issues/1187

* Update server liveness and readiness probes for node 18
* Bump web-ifc to 0.0.36
* Apply `--no-experimental-fetch` flag to fileimport-service to prevent issues in web-ifc (via emscripten) with node 18
2022-12-06 12:57:48 +00:00
AlexandruPopovici ef7f4b550a Fixed the commnet bubbles issues with orthographic projection, so we can bring it back in the frontend. Also fixed some issues with camera zooming in orthographic mode and the rendering pipeline, and the zoom in animation 2022-11-30 17:03:29 +02:00
Alexandru Popovici 5ac043ac6a Fixed an issue in the frontend which was causing the views not to work. Fixed an issue with object selection camera animation where the dolly lerp factor was much too high for smooth animation (#1225) 2022-11-25 16:31:45 +02:00
Kristaps Fabians Geikins 8daa427d62 fix(frontend): fix commit share btn looking off in light theme (#1153) 2022-10-27 12:22:28 +03:00
Iain Sproat 564b5dc5fb Bump docker images (#1148) 2022-10-25 16:12:24 +01:00
Iain Sproat 8aa7f51d27 Revert "chore(dockerfile): bump Dockerfile base image versions (#974)" (#1146)
This reverts commit 6d6264c779.
2022-10-25 15:43:29 +01:00
Kristaps Fabians Geikins 9860be7fd8 fix: various dependabot vulnerability fixes (#1143)
* fix: updating minimist to resolve vulnerability

* fix: upgrade mocha to fix minimatch vuln

* fix: terser vuln fix

* fix: moment.js vuln fix

* fix: getting rid of perfect toolbar (which resolves vulns)
2022-10-25 17:01:20 +03:00
Iain Sproat 6d6264c779 chore(dockerfile): bump Dockerfile base image versions (#974) 2022-10-25 14:35:43 +01:00
Kristaps Fabians Geikins 55c736118b feat(frontend): share buttons directly on commit cards + batch commit actions UX improvements (#1122)
* feat(frontend): help message for disabled checkboxes on commit cards

* refactor: share-stream-dialog cleanup

* refactor: further share-stream-dialog prep for more usages

* feat(server): sharing directly from commit grid cards

* feat(server): sharing directly from commit list cards

* refactor: removing unnecessary dev tests
2022-10-25 13:16:33 +03:00
Kristaps Fabians Geikins 3f3f399ce6 feat(frontend): auto-focus on 1st comment in embed slideshow mode (#1109) 2022-10-25 12:57:19 +03:00
Matteo Cominetti 1f4dd333c0 Update SourceAppAvatar.vue (#1116) 2022-10-17 09:18:17 +01:00
Kristaps Fabians Geikins 5f48ae8086 feat(server): optimized command for importing commits from other servers (#1113) 2022-10-17 10:32:01 +03:00
Kristaps Fabians Geikins 0379d370d5 fix(frontend): viewer activity broadcast request volume greatly reduced (#1107)
* fix(frontend): viewer activity broadcast request volume greatly reduced

* fix(frontend): app being loaded twice when running viewer in vite hmr
2022-10-12 17:44:33 +03:00
Kristaps Fabians Geikins ca5cfaaf2b fix(frontend): comment link & attachment styling in both themes (#1102)
* Adding top-level ID to all v-app instances

* fix(frontend): comment link & attachment styling in both themes

* fix(frontend): some TS typing errors
2022-10-12 11:08:23 +03:00
Kristaps Fabians Geikins 0a58381174 feat: @speckle/shared & some comments fixes (#997) 2022-10-10 16:32:23 +03:00
Kristaps Fabians Geikins 09d3844155 fix(frontend): comment mentions broken post-vite (#1084) 2022-10-06 15:58:47 +03:00
Vishnu Rai 9a64a245b7 fix(frontend): avatar editor horizontal scrolling not working
Horizontal Scrolling was not working because of the parent container width was small than the image container.
2022-10-06 12:45:25 +03:00
Kristaps Fabians Geikins 8e59ee7243 refactor: moving away from 'user' query (#1046)
* refactor: moving away from 'user' query + various fixes

* fix: linting issue in stream tests

* fix(server): some tests broken after rebase onto main
2022-10-06 12:08:08 +03:00
Kristaps Fabians Geikins facbde93bf fix(frontend): stream uploads page error fix (#1080) 2022-10-05 18:31:21 +03:00
Kristaps Fabians Geikins 2fef8b7de3 refactor(frontend): vue cli v4 -> vite (#1000) 2022-10-05 15:59:11 +03:00
Kristaps Fabians Geikins f5468c2b33 chore: migrating vetur -> volar in VSCode (#1058)
* chore: migrating vetur -> volar in VSCode

* chore: improved volar workspace configuration
2022-10-05 15:32:24 +03:00
Kristaps Fabians Geikins 97ac4a3070 fix(frontend): stream search scache re-use fix (#1068) 2022-10-04 11:57:51 +03:00
Matteo Cominetti de49f3c630 feat: manager download link (#1069) 2022-10-03 16:53:58 +01:00
Matteo Cominetti f48ee3015c feat(frontend): adds missing appnames and colors (#1061) 2022-10-03 11:16:43 +01:00
Kristaps Fabians Geikins ca95863c55 fix(frontend): multiple resource viewer toolbar/navbar incorrect (#1063) 2022-10-03 12:00:26 +03:00
Kristaps Fabians Geikins 6133610d08 feat(frontend): tracking visited routes (#1055) 2022-09-29 17:24:42 +03:00
Kristaps Fabians Geikins aee15eb0d6 fix(frontend): ugly side bar scrollbar & version being truncated (#1047) 2022-09-29 11:10:56 +03:00