Commit Graph

3350 Commits

Author SHA1 Message Date
Dimitrie Stefanescu 578a5ecf0f fix(frontend): fixes regressions on layout & permission handling in comments 2022-07-04 11:30:13 +01:00
Dimitrie Stefanescu 2bca482c92 Merge pull request #810 from specklesystems/801-comment-attachments
feat: stream comment attachments
2022-07-04 00:38:41 +01:00
Dimitrie Stefanescu cd2803551e style(frontend): cleanup of stale methods 2022-07-04 00:34:21 +01:00
Dimitrie Stefanescu 7c6841624e feat(frontend): adds attachment preview dialog 2022-07-04 00:32:14 +01:00
Dimitrie Stefanescu c1c2064ae6 feat(frontend): adds extra file upload types (3d, etc.) + icon tweaks 2022-07-03 22:20:10 +01:00
Dimitrie Stefanescu f869557f05 feat(frontend): commit attachments styling fiddles 2022-07-03 20:08:01 +01:00
Kristaps Fabians Geikins 40ef625a4b fix(frontend): proper mixpanel user identification for all routes (#815) 2022-06-29 10:19:31 +03:00
Fabians 5aaff8d3a2 fixing broken attachments resolver 2022-06-28 15:30:29 +03:00
Fabians a10c49e731 feat: stream comment attachments 2022-06-28 15:26:38 +03:00
AlexandruPopovici a4fa7bb4dd #811 Implemented conveniene method for isolating objets visually, where all other objects are ghosted, like the effect should look like. Fixed an issue with Brep conversion 2022-06-28 11:41:45 +03:00
AlexandruPopovici a206176779 Switched to ACES tonemapping and increased the exposure a bit 2022-06-27 19:11:25 +03:00
AlexandruPopovici 65d5aa6659 #811 Added a material for the gradient filter, so we have multiple filter materials to apply. However th gradient material is not fully implemented. It can only do a single solid color. We'll implement the actual gradient of colors in the future 2022-06-27 19:00:20 +03:00
AlexandruPopovici 51596d81b4 Fixed some remaining issues with the filtering API. Made transparent materials to not write to the depth buffer so we don't get false depth test fails. We will see in the future if we want to treat transparent objects differetly, however for now it's going to be fine 2022-06-27 18:51:52 +03:00
AlexandruPopovici 7840591672 #811 Separated batch aut filling draw ranges as a separate function. This will allow sequential calls to set different draw ranges with different materials sequentially for the filtering API 2022-06-24 16:44:31 +03:00
AlexandruPopovici 923e835c54 #811 Added the the unload functionality, so we can load/unload stuff in the sandbox. It's currently a bit leaky but we'll fix that. Also we currentyl don;t support multiple paralel streams to be loaded in. I first want to make sure things work properly for 1 stream before having multiple at the same time 2022-06-24 14:20:27 +03:00
AlexandruPopovici d29d2d464c #811 Started working on a debug API for filtering inside the viewer. This API will be used by the upcoming FilteringManager to do the visual work 2022-06-24 00:41:24 +03:00
AlexandruPopovici 8f44b86c79 #811 Minor addition 2022-06-23 23:01:51 +03:00
Gergő Jedlicska a54fa8c28f Test blob storage (#814)
* feat(server): add server authz pipeline rework first sketch

* feat(server authz): add new server authz middleware poc implementation

* test(server authz): add unittests for the new server authz workflow

* feat(wip rework of fileuploads vs blob storage): add basim impl of separate blob storage service

* feat(fileimport service): refactored file import service to utilize the new asssetstorage service

* refactor(server errors): refactor server errors to use the shared module definitions

Now all the errors inherit from BaseError

* refactor(fileimport service): cleanup after refactor

* feat(frontend fileimports): use the new blob storage for downloading the original file

* refactor(server fileimports): clean up the remnants of S3 storage from file imports

* refactor(server authz): centralize generic authz pipeline configs

* refactor(server blob storage): refactor / rename everything to use the `blob-storage` name

* ci(circleci): add s3 objectstorage environment variables

* ci(circleci): fix missing env variables

* ci(circleci): add minio test container

* ci(circleci): fix minio app startup

* ci(circleci): enable circleci remote docker

* ci(circleci): fix minio startup

* ci(cirleci): detach and wait properly for minio to start

* ci(circleci): revert to additional minio img config, it only fails when the container is stopped ?!

* ci(circleci): disable file uploads

* fix(fileimports): update with blob storage refactor leftovers

* feat(server blob storage): add blob storage graphql api

* refactor(server errors): merge new errors to shared module

* fix(server comments rte): fix import for RTE error

* chore(fileimports): remove node-fetch from dependency

* chore(server): remove body parser dependency

* fix(server blob storage): fix gql api

* fix(frontend): fix fileupload item not loading the new upload status, cause of premature event fire

* feat(server blob storage): fix file size limit and allow for public streams

* Update packages/server/modules/blobstorage/graph/schemas/blobstorage.graphql

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>

* chore(blobstorage): fix PR review issues

* fix(server): fix import bugs

* test(server): blob storage first test

* test(server blob services): add tests for blob storage services

* test(server blob storage): add service and rest api tests

* test(server blob storage): add server blob storage graphql api tests

* feat(server blob storage): store and make available blob fileHash attribute

* feat(server authz): add fatal failure option to server authz pipeline

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2022-06-23 16:35:42 +02:00
AlexandruPopovici 136f5f6076 #811. Adjusted the near and far clipping planes of the shadowmap camera using the same approach as in the previous commit. This also ever so slightly improved the quality of the shadomap 2022-06-23 16:24:18 +03:00
AlexandruPopovici ae3f73e28f #811 Implemented dynamic computation for the default sun's shadow camera frustum based on the scene's bounding box. This is important for being efficient with shadow map texture space -> better quality shadows. It's still using AABB so the resulting frustum will still be larger than the minimum posible one 2022-06-23 15:30:08 +03:00
AlexandruPopovici 42844960aa #811 Integrated section box functionality, camera projection switching and fixed a few issues with the new viewer 2022-06-21 17:11:58 +03:00
AlexandruPopovici f73384e66f #811 Integrated double-click to zoom, and zoom extents with the new viewer. Currently I'm using old existing code just for the sake of less regression, but will revisit it in the future 2022-06-21 15:47:24 +03:00
Gergő Jedlicska aafa5cb759 fix(backend services'): remove query timeout setting, it causes streaming queries to crash (#813) 2022-06-21 14:05:52 +02:00
Kristaps Fabians Geikins ae02bbe3a3 fix: fixing lint-staged/precommit-ci eslint configuration issues (#812) 2022-06-21 13:30:54 +03:00
Dimitrie Stefanescu 29b06d0950 fix(frontend): tsconf strict back to true, errors thx 2 @fabis94 2022-06-21 11:15:26 +01:00
AlexandruPopovici 499653d983 #811 Started taking the axe on a lot of legacy code which became obsolete after redux Stage 2. Turned ViewerObjectLoader to typescript and started moving a lot of stuff from viewer to a new class, SpeckleRenderer, which will centralize and handle a lot of stuff 2022-06-21 00:58:20 +03:00
AlexandruPopovici 6383804199 #783 Added optional srgb->linear transformation of vertex colors. This is used by point clouds, and possibly any other types which want vertex colors 2022-06-20 16:55:22 +03:00
AlexandruPopovici 11a429f9ca #783 Implemented Point and PointCloud speckle type support for batching and everything else. 2022-06-20 16:39:51 +03:00
Dimitrie Stefanescu 85a736dff4 fix(frontend): toggles emoji off if typing in new comment 2022-06-20 13:28:09 +01:00
Dimitrie Stefanescu d61ebbb5f5 feat(frontend): visibility & link sharing copy
- made stream share button more visible
- unified copy around "link sharing on" & "link sharing off"
2022-06-20 11:38:18 +01:00
Dimitrie Stefanescu 75b922fadb fix(tests): updates commit update test 2022-06-20 11:15:39 +01:00
Dimitrie Stefanescu b069a17754 feat(frontend): adds stream & branch embedding code in stream share dialog 2022-06-20 11:14:33 +01:00
Dimitrie Stefanescu df6e31fa3f fix(grammar): ht @izzylys for spotting 2022-06-20 10:51:03 +01:00
Dimitrie Stefanescu f2a8c78219 fix(frontend): ensures commit edit shows up for stream owners too 2022-06-20 10:46:40 +01:00
Dimitrie Stefanescu f6cb75e1d8 fix(frontend): various papercuts
- properly refreshes branches when new one is created
- no longer edits the prop on commit edit
- increases toast timeout to 10s
- allows for stream owner commit editing
2022-06-20 10:32:13 +01:00
Dimitrie Stefanescu df29ab89bf Merge branch 'main' into 773-optimized-embed-endpoint 2022-06-19 20:00:29 +01:00
Dimitrie Stefanescu 5e18f5610f feat(embed): adds bg transparency toggle in share menu 2022-06-19 19:55:56 +01:00
Dimitrie Stefanescu 4d31f8fb8b fix(embed): fixes & improvements
- fixes issue reported by @jsdbroughton by cleaning up logic
- adds proper preview images
- adds transparent background option (via `&transparent=true` query)
2022-06-19 19:05:50 +01:00
Dimitrie Stefanescu c8ee97883c fix(frontend): adresses #806 2022-06-19 17:56:58 +01:00
AlexandruPopovici d4c0495860 #783. Fixed a misplaced 'if' inside the mesh batch draw material ranges function. Added HideAll draw range constant. We're using this when we want to hide an entire batch so that three.js does not do all the buffer binding, material and state switching for batches that have a draw range of 0-0. Apparently three.js doesn't skip all the GL commands automatically for meshes with 0 draw range 2022-06-18 00:38:41 +03:00
AlexandruPopovici dad9acb3e9 #783 Implemented visibility ranges for line batches 2022-06-18 00:07:56 +03:00
AlexandruPopovici 60536592a4 #783 Implemented visible range for batches. Required when wanting to isolate/hide/don't show stuff. Only implemented it for the mesh batch type for now. Line batch is next 2022-06-17 19:07:10 +03:00
AlexandruPopovici c7a2390bf3 #783 Implemented multi selection via multiple draw range with automatic fill of groups. Implemented selection of multiple objects when clicking something in the world, if that object is part of a whole and it needs to be selected together with others. It's not perfect yet, I;ve seen some bad selections, but will fix that soon 2022-06-17 17:28:39 +03:00
Gergő Jedlicska b40e568717 fix(server knex): parse env variable to int 2022-06-17 09:30:49 +02:00
Gergő Jedlicska d817e6dd0a gergo/pgTimeout (#805)
* feat(server): add server authz pipeline rework first sketch

* feat(server authz): add new server authz middleware poc implementation

* test(server authz): add unittests for the new server authz workflow

* feat(wip rework of fileuploads vs blob storage): add basim impl of separate blob storage service

* feat(fileimport service): refactored file import service to utilize the new asssetstorage service

* refactor(server errors): refactor server errors to use the shared module definitions

Now all the errors inherit from BaseError

* refactor(fileimport service): cleanup after refactor

* feat(frontend fileimports): use the new blob storage for downloading the original file

* refactor(server fileimports): clean up the remnants of S3 storage from file imports

* refactor(server authz): centralize generic authz pipeline configs

* refactor(server blob storage): refactor / rename everything to use the `blob-storage` name

* ci(circleci): add s3 objectstorage environment variables

* ci(circleci): fix missing env variables

* ci(circleci): add minio test container

* ci(circleci): fix minio app startup

* ci(circleci): enable circleci remote docker

* ci(circleci): fix minio startup

* ci(cirleci): detach and wait properly for minio to start

* ci(circleci): revert to additional minio img config, it only fails when the container is stopped ?!

* ci(circleci): disable file uploads

* fix(fileimports): update with blob storage refactor leftovers

* feat(server blob storage): add blob storage graphql api

* refactor(server errors): merge new errors to shared module

* fix(server comments rte): fix import for RTE error

* chore(fileimports): remove node-fetch from dependency

* chore(server): remove body parser dependency

* fix(server blob storage): fix gql api

* fix(frontend): fix fileupload item not loading the new upload status, cause of premature event fire

* feat(server blob storage): fix file size limit and allow for public streams

* Update packages/server/modules/blobstorage/graph/schemas/blobstorage.graphql

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>

* chore(blobstorage): fix PR review issues

* fix(server): fix import bugs

* chore(docker): ignore python venv data for docker build context

* feat(knex): update knex configuration with min max connections and application_name

* feat(helm chart): configure postgres max connections for server in the helm chart

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2022-06-17 08:38:34 +02:00
AlexandruPopovici d508eb6d5b #783. Implemented separate materal draw ranges for the line batches. Added the Batch common interface and separate the MeshBatch from the LineBatch, both implementing the Batch interface. Selection now works properly for both meshes and lines 2022-06-16 19:40:32 +03:00
AlexandruPopovici 4d764c166c #783 Implemented line batch colouring using an additional InstancedBufferAttribute where each line segment can have it's own color. This way we can know which subset to color differently. Transparency is also supported in theory, but will get to that later on. Also started to split the mesh batch from the line batch since they will be conceptualyl different, but share a common contract 2022-06-16 17:19:41 +03:00
Kristaps Fabians Geikins 827500c32b fix(frontend): embed viewer bugfixes & speed improvements (#804)
Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2022-06-16 12:37:04 +03:00
Dimitrie Stefanescu 708d82e106 fix(frontend): adds missing comps re filters 2022-06-16 10:32:02 +01:00
Gergő Jedlicska ed458fb619 Add blob storage backend (#802)
* feat(server): add server authz pipeline rework first sketch

* feat(server authz): add new server authz middleware poc implementation

* test(server authz): add unittests for the new server authz workflow

* feat(wip rework of fileuploads vs blob storage): add basim impl of separate blob storage service

* feat(fileimport service): refactored file import service to utilize the new asssetstorage service

* refactor(server errors): refactor server errors to use the shared module definitions

Now all the errors inherit from BaseError

* refactor(fileimport service): cleanup after refactor

* feat(frontend fileimports): use the new blob storage for downloading the original file

* refactor(server fileimports): clean up the remnants of S3 storage from file imports

* refactor(server authz): centralize generic authz pipeline configs

* refactor(server blob storage): refactor / rename everything to use the `blob-storage` name

* ci(circleci): add s3 objectstorage environment variables

* ci(circleci): fix missing env variables

* ci(circleci): add minio test container

* ci(circleci): fix minio app startup

* ci(circleci): enable circleci remote docker

* ci(circleci): fix minio startup

* ci(cirleci): detach and wait properly for minio to start

* ci(circleci): revert to additional minio img config, it only fails when the container is stopped ?!

* ci(circleci): disable file uploads

* fix(fileimports): update with blob storage refactor leftovers

* feat(server blob storage): add blob storage graphql api

* refactor(server errors): merge new errors to shared module

* fix(server comments rte): fix import for RTE error

* chore(fileimports): remove node-fetch from dependency

* chore(server): remove body parser dependency

* fix(server blob storage): fix gql api

* fix(frontend): fix fileupload item not loading the new upload status, cause of premature event fire

* feat(server blob storage): fix file size limit and allow for public streams

* Update packages/server/modules/blobstorage/graph/schemas/blobstorage.graphql

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>

* chore(blobstorage): fix PR review issues

* fix(server): fix import bugs

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2022-06-16 11:31:03 +02:00