Commit Graph

395 Commits

Author SHA1 Message Date
Kristaps Fabians Geikins b966f20fdb refactor(server): typescript support (#874)
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2022-08-04 14:21:39 +02:00
Kristaps Fabians Geikins fec9b5345c fix(frontend): timeline items duplicating after going to stream page and back (#842) 2022-07-29 14:08:44 +03:00
Iain Sproat 90847e422d Feat: configurable file limits (#835)
* Feat: configurable file limits

* ci(circleci): container build speed imporvements

* feat(frontend nginx): add file size limit configurability to frontend nginx

* feat(server blobstorage): use the new file size limit customization value

* feat(helm chart): implement the file size configuration in the helm chart

* fix(frontend docker): fix entrypoint script

* fix(server blobstorage): fix env var parsing NaN

* feat(fileimport-service): add customizable import timeout

* feat(helm chart): add fileimport service timeout value to helm chart

* feat(blobstorage): add server side blob storage size limits

* feat(docker-compose): add blob size limit env var to  docker-compose files

* refactor(frontend file uploads): refactor file uploads to use `useQuery`

* refactor(server env helper): move env helper to shared module

* refactor(blobstorage): use env helper for file size limit

* refactor(frontend file uploads): use generated query document

* fix(server blob sotrage): fix file size limit function call

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2022-07-29 12:00:29 +02:00
Kristaps Fabians Geikins b55f12d6bc feat: apollo client v3 + vue apollo v4 (#831) 2022-07-25 12:24:59 +03:00
Kristaps Fabians Geikins 3ff772e342 fix: various server invites related improvements & fixes (#837)
* moving to invite token field, fixing comments & activity bugs I found, adding role prop to stream invite creation
* more fixes
* more tests
2022-07-25 11:02:22 +03:00
Kristaps Fabians Geikins 86c63c29db feat: adding extra apollo studio env vars to helm chart (#830)
* feat: adding extra apollo studio env vars to helm chart

* made apollo read version from SPECKLE_SERVER_VERSION

* moved from graph_ref to graph_id

* changing up some values
2022-07-19 16:36:16 +02:00
Kristaps Fabians Geikins da9224a069 feat: server & stream invites rework
feat: server & stream invites rework

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-07-19 13:01:19 +03:00
Dimitrie Stefanescu 581c9b8cd9 Merge pull request #819 from specklesystems/801-comment-attachments
Minor fixes
2022-07-06 18:18:07 +01:00
Dimitrie Stefanescu b28d0d1465 feat(frontend): attachment previews for public streams for public people 2022-07-05 09:44:30 +01:00
Gergő Jedlicska c894f40f83 minor updates (#817)
* 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

* test(server authz): add optional stream context checks with tests

* feat(monitor deployment): add shutdown signal handling to monitor deployment container

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2022-07-04 19:29:45 +02: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
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
Dimitrie Stefanescu 75b922fadb fix(tests): updates commit update test 2022-06-20 11:15:39 +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
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
Kristaps Fabians Geikins 8d7f97b2cd feat(frontend): typescript support in frontend (#803) 2022-06-14 17:30:51 +03:00
Fabians 1b963ee44d feat: smart text editor & integration into stream comments 2022-06-10 16:46:57 +03:00
Dimitrie Stefanescu 5bdb4c46da feat(backend): allows moving commits to another branch 2022-06-07 19:55:17 +01:00
Dimitrie Stefanescu b7db929357 fix(backend): branch tests 2022-06-07 11:47:35 +01:00
Dimitrie Stefanescu b733bf5114 fix(frontend): closes #686
recursively fetches branches until "done" in stream side bar
2022-06-07 00:36:51 +01:00
Dimitrie Stefanescu 19749e0679 fix(frontend/backend): closes #740
adds triggers to webhook creation form in frontend, unifies naming in backend
2022-06-06 21:20:17 +01:00
Dimitrie Stefanescu 27d32bc9c2 fix(backend): closes #705 (adds be validation & tests) 2022-06-06 20:35:51 +01:00
Gergő Jedlicska 67cb97a262 gergo/testCommentsGQL (#775)
* yarn first go

* fix frontend build cache loader

* yarn workspaces built server Docker

* build(yarn): add workspaces plugin config

* chore(package defs): clean package*.json -s

* chore(gitignore): ignore yarn error log

* build(yarn): update yarn lock

* build(preview-service webpack): add extra resolved path to preview service webpack config

because of yarn package hoisting, there are no package level node_modules folder anymore.

* build(docker): update dockerignore with yarn specific configs

* build(docker): update Dockerfiles for yarn workspaces utilization

* ci(circleci): update server test job to yarn

* ci(circle): disable cache restore

* ci(circleci): trying the node orb yarn-run

* ci(circleci): yarn-run again

* ci(circleci): disable node orb

* ci(circleci): change base node image for tests

* ci(circleci): add yarn cache

* ci(circleci): remove node install step

* ci(circleci): add server specific cache archives

* ci(circleci): test build and publish

* ci(circleci): change npm auth method to suit yarn

* ci(circleci): trying new builder image

* ci(circleci): another base image, maybe this works

* ci(circleci): force a specific docker engine version

* ci(circleci): add yarn version plugin and its changes

* ci(circleci): cleanup and remove temp branch config

* chore(package defs): moving from npm run to yarn

* explicitly specifying webpack4 as a frontend dep

* chore(package defs): replace npm with yarn everywhere

* docs(root readme): update with some yarn specific docs

* test(server comments gql): add wip server comments gql tests

* test(server comments graphql): add missing test operations and generate a bunch of testcases

* test(server comments graphql api): fix all authz test cases for comments

* test(server comments service): fix comments service failing test

* fix(tests): do not look inside

Co-authored-by: Fabians <fabis94@live.com>
Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2022-06-02 11:15:27 +02:00
Dimitrie Stefanescu 5b5084b87f Merge pull request #772 from specklesystems/dim/angle-previews
Angle previews improvements
2022-05-25 15:47:08 +01:00
Dimitrie Stefanescu 404eea12e9 fix(server): removes console.logs 2022-05-25 15:17:25 +01:00
Dimitrie Stefanescu 6a695eab56 Merge pull request #760 from specklesystems/dim/angle-previews
feat(frontend): animated preview images
2022-05-25 14:59:07 +01:00
Kristaps Fabians Geikins e5880e73f2 feat(backend): comment reply text xss fix (#761)
* feat(backend): comment reply text xss fix

* fix(root): pre-commit npx to yarn

* chore(server): added test
2022-05-23 17:44:28 +03:00
Dimitrie Stefanescu 174ce64004 feat(frontend): animated preview images
changes:
- preview service generates full 360 images now
- preview image component loads on hover
- preview image component backwards compat with non-360 image angles
- adds optional angle arguments in all preview routes & removes superflous route
2022-05-22 11:50:07 +01:00
Gergő Jedlicska 90b16b54b1 Merge pull request #756 from specklesystems/dim/public-comments
Adds Public Comments & Other Fixes
2022-05-17 15:52:52 +02:00
Dimitrie Stefanescu a124df7d8b feat(comments): adds activity
Co-authored-by: Jonathon Broughton <jonathon@stardotbmp.com>
2022-05-16 18:23:42 +01:00
Dimitrie Stefanescu d59a9c4028 fix(comments): moves migration into core module 2022-05-16 18:17:37 +01:00
Dimitrie Stefanescu eb941c3af2 feat(comments): reactions in mobile view + perms fix 2022-05-15 15:01:36 +01:00
Dimitrie Stefanescu 58f9f9d0e9 feat(comments): adds individual reply deletion 2022-05-14 00:01:12 +01:00
Dimitrie Stefanescu e2085d61b6 feat(comments): reworks perms on re allowing public comments 2022-05-13 22:18:06 +01:00
Dimitrie Stefanescu 0c6759911d feat(comments): adds setting for pub comments 2022-05-13 15:27:05 +01:00
Matteo Cominetti 0563296f6f feat(server): extends invite scope 2022-05-13 10:15:56 +01:00
Dimitrie Stefanescu 267df9cd51 Merge branch 'main' into dim/public-comments 2022-05-11 17:49:42 +01:00
Gergő Jedlicska d2166c3f38 Merge branch 'main' of github.com:specklesystems/speckle-server into defaultAppScopeHandling 2022-05-11 11:43:13 +02:00
Dimitrie Stefanescu 88be9dad60 fix(apps): selects all relevant fields in get all apps query (inc. trustByDefault) 2022-05-11 10:39:44 +01:00
Dimitrie Stefanescu 4bf130efe7 chore(app scope handling): adds logging 2022-05-11 10:30:38 +01:00
Gergő Jedlicska bd543ed38e refactor(server): completely remove app-root-path package 2022-05-03 15:36:18 +02:00
Gergő Jedlicska 43aa9965b1 test(server): fix gql subs test imports 2022-05-03 14:03:22 +02:00
Gergő Jedlicska 0ac118e05c (refactor) server for less app-root-path 2022-05-03 13:10:00 +02:00
Dimitrie Stefanescu 639ef2b5d1 feat(comments): scaffolding public comments 2022-05-03 11:18:42 +01:00
Gergő Jedlicska 6e62d97ed0 test(server default apps): test default app update borkage doesn't screw up the app data 2022-04-28 15:40:04 +02:00
Gergő Jedlicska a92028d47f refactor(server default apps): i dont like mutating input objects inside functions 2022-04-28 15:38:56 +02:00
Gergő Jedlicska 1fea215852 test(server default apps): expand default apps update test with token scopes checks 2022-04-28 14:32:55 +02:00
Gergő Jedlicska fc21bbfa02 refactor(server default apps): clean default apps update implementation 2022-04-28 14:32:13 +02:00