Gergő Jedlicska
84ed580ea4
feat(dashboards): create new dashboard share api ( #5468 )
...
* feat(dashboards): create new dashboard share api
* feat(dashboards): add enable / disable dashboard share flows
* test(dashboards): add more unittests to dashboard sharing
* Add sharing modal
* Update sidebar
* Update share token mutation
* feat(dashboards): share check for projects, tokens return modified
objects
* Updated tokens
* Fix
* Middleware
* Add default case
* fix(tokens): respect the tokens.revoked parameter
* fix(shared): can read dashboard now requires an active server session
* fix(server): handle dashboard no projects error in server
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-09-18 16:01:07 +02:00
Gergő Jedlicska
c3d452ad0c
Gergo/cxpla 278 v2 server api endpoint with masking support ( #5414 )
...
* WIP: streaming masking endpoint
* feat(objects): working object streaming with filtering
* feat(object-loader): use the new objects endpoint
* fix(server): allow downloading of public project data
* feat(objectloader-2): include object masking in objectloader
* feat(objectloader2): make attribute masking optional
* fix(server): remove unused imports
2025-09-18 15:56:41 +02:00
andrewwallacespeckle
ab5756e144
Update docblock. Update condition in data.ts
2025-09-18 12:46:02 +01:00
andrewwallacespeckle
1899e60f18
fix server build
2025-09-18 12:41:48 +01:00
Iain Sproat
1267a27e69
fix(email): pino does not like log functions in inline logic ( #5481 )
2025-09-17 17:10:44 +01:00
Iain Sproat
9b8157fedc
feat(server/emails): emit delivery status in email.sent payload ( #5455 )
2025-09-17 10:46:22 +01:00
Kristaps Fabians Geikins
dfdd5ce305
fix(fe2): fix saved federated view loaded camera coords ( #5456 )
...
* various loading issues resolved
* fix: viewer zoomToObject unnecessarily triggering
2025-09-16 10:46:23 +03:00
andrewwallacespeckle
e4f9168670
fix build
2025-09-15 17:03:20 +01:00
andrewwallacespeckle
324520f83d
feat(fe): use email verification timeout from server
2025-09-15 16:16:14 +01:00
Kristaps Fabians Geikins
689d2c5638
feat(fe2): filter color serialization ( #5437 )
...
* feat(fe2): filter color serialization
* early load fix
2025-09-15 15:02:18 +03:00
Mike
cac15190da
Feat: Presentations base ( #5389 )
2025-09-15 10:01:59 +02:00
Iain Sproat
c9338c1ee3
fix(server/emails): move guard to caller and fix circular reference ( #5427 )
2025-09-12 12:53:01 +01:00
Iain Sproat
18265b6278
feat(server/emails): support require TLS configuration option EMAIL_REQUIRE_TLS ( #5425 )
2025-09-12 12:06:25 +01:00
Chuck Driesler
d555bd9e57
feat(sso): allow sso session duration overrides ( #5289 )
...
* feat(sso): allow secret sso session overrides
* fix(sso): better timeout config
* chore(sso): fix test definitions
2025-09-11 20:03:56 +02:00
Iain Sproat
a0f23dcefe
fix(server/email): emails configuration is secure by default but can be overridden ( #5417 )
2025-09-11 17:06:36 +01:00
Iain Sproat
0afdaf5fc0
fix(server/fileuploads): deprecated endpoint now uses postgres queue ( #5410 )
2025-09-11 15:57:31 +02:00
Iain Sproat
0c9b65c52d
chore(server/fileuploads): separate garbage collection for logging/alerting ( #5405 )
...
- separate exceeded attempts from no remaining compute budget so we can log differently
- this enables each to be alerted differently
2025-09-11 12:47:26 +02:00
Daniel Gak Anagrov
2c122a138d
feat(workspaces): apply prepared transactions to workspaces ( #5383 )
...
* feat(multiregion): replace user replication
* chore(multiregion): optimise replication
* maybe it's this
* postgres is fun
* once more
* chore(multiregion): only replicate test user creation during multiregion tests
* feat: improved replicate_query logic
* fix: minor
* fix: starting issue
* feat: included user create and delete specs to multiregion
* feat: removed console logs
* fix: user defaults
* fix: multiregion test helper
* fix: update scenarios for users
* refactor(multiregion): swap replicateQuery concept to asMultiregionOperation (#5301 )
feat(multiregion): introduced asMultregionOperator, refactor test to user builder classes
* chore: renamings
* fix: remove comments
* feat: remove user replication
* refactor: simplified spec usages
* chore: comments
* chore: branches and favs
* chore: more tests
* chore: more tests
* fix linting
* fix tests
* feat: dropping replication
* refactor: moved project delete to service
* fix: comment
* feat: updateStreamFactory and updateProjectFacotry
* deleteProjectFactory + replicateFactory
* deleteWorkspaceFactory
* fix: selector
* fix: tests
* fix tests, finished createStreamFactory
* feat: simplify changes
* fix: remove comment
* fix: minor strucutres
* fix: moveProjectToRegion
* fix: moved branch creation outside of multiregion scope
* fix: branch creation
* fix: tests
* fix: ci tests
* fix: removed log form test
* fix: on specs, no random regionKeys
* review fixes
* feat: workspace replciation
* fix: mr comments
* feat: removed test
* fix: worksapce test creation
* fix: mr issues
* updated mutations
* feat: drop workspace random defaults
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-09-11 10:08:26 +02:00
Iain Sproat
2be6fa3d08
Revert "chore(server/email): log error if email cannot be verified ( #5408 )" ( #5416 )
...
This reverts commit 1ce92e2980 .
2025-09-10 17:28:00 +01:00
Iain Sproat
1ce92e2980
chore(server/email): log error if email cannot be verified ( #5408 )
2025-09-10 16:59:17 +01:00
Daniel Gak Anagrov
1f5003bd32
feat(multiregion): cron job to detect regions out of sync ( #5392 )
...
* feat: basic structure
* fix: detect regions out of sync
* feat: added sync logic
* fix: tests
* feat: merge all strategy
* fix: mr comments
* fix: updatedAt in updates
* feat: project updatedAt no longer is a hidden operation
* feat: project region sync
* feat: delete project on cross-region-move
* removal: unnecesary permisions
* fix: caching issue
* fix: saved views on project cross region move
2025-09-10 16:35:48 +01:00
Iain Sproat
4620875ece
fix(server/fileuploads): profile.email not users.email ( #5411 )
2025-09-10 11:56:29 +01:00
Iain Sproat
46aaa9a15b
fix(server/fileuploads): add user:email scope to token ( #5409 )
...
- allows file importer to report user metrics
2025-09-10 11:01:05 +01:00
Iain Sproat
24d159d3cb
fix(server/fileuploads): garbage collector should collect queued jobs which have reached max attempts ( #5401 )
2025-09-09 15:06:08 +01:00
Iain Sproat
79ef564e1b
feat(server/fileuploads): background jobs draws down a compute budget ( #5349 )
2025-09-08 16:26:41 +01:00
andrewwallacespeckle
4e8bcf5540
fix server build
2025-09-08 12:54:29 +01:00
Iain Sproat
36fdde28bb
fix(server/emails): improve error handling of failed emails ( #5390 )
2025-09-05 16:14:36 +01:00
Gergő Jedlicska
87b621e92a
feat(server): various fixes ( #5360 )
2025-09-05 13:24:56 +02:00
Kristaps Fabians Geikins
faab48964b
fix: groups removing all references on last view delete ( #5387 )
2025-09-05 12:00:23 +03:00
Kristaps Fabians Geikins
e771a75164
feat: update view date only on move/replace ( #5382 )
2025-09-05 10:18:44 +03:00
Daniel Gak Anagrov
87082062c9
feat(multiregion): avoiding prepared transaction with only one database ( #5336 )
...
* feat: avoiding prepared transaction with only one database
* scope 2pc monitor specs to multiregion only
2025-09-04 14:42:55 +01:00
Gergő Jedlicska
7e1add4295
switch server hostapp support to slug ( #5374 )
...
* feat(shared): add missing sourceApps
* feat(shared): add missing source apps
* feat(server): map version source apps to slugs
* fix(shared): rhino search key
* fix(shared): search key ordering
* fix(server): lower case compare soureceApplications
2025-09-04 15:13:59 +02:00
Daniel Gak Anagrov
75aa5d9b2d
feat(ci): reinstate multiregion tests ( #5365 )
...
* feat(multiregion): replace user replication
* chore(multiregion): optimise replication
* maybe it's this
* postgres is fun
* once more
* chore(multiregion): only replicate test user creation during multiregion tests
* feat: improved replicate_query logic
* fix: minor
* fix: starting issue
* feat: included user create and delete specs to multiregion
* feat: removed console logs
* fix: user defaults
* fix: multiregion test helper
* fix: update scenarios for users
* refactor(multiregion): swap replicateQuery concept to asMultiregionOperation (#5301 )
feat(multiregion): introduced asMultregionOperator, refactor test to user builder classes
* chore: renamings
* fix: remove comments
* feat: remove user replication
* refactor: simplified spec usages
* chore: comments
* chore: branches and favs
* chore: more tests
* chore: more tests
* fix linting
* fix tests
* feat: dropping replication
* refactor: moved project delete to service
* fix: comment
* feat: updateStreamFactory and updateProjectFacotry
* deleteProjectFactory + replicateFactory
* deleteWorkspaceFactory
* fix: selector
* fix: tests
* fix tests, finished createStreamFactory
* feat: simplify changes
* fix: remove comment
* fix: minor strucutres
* fix: moveProjectToRegion
* fix: moved branch creation outside of multiregion scope
* fix: branch creation
* fix: tests
* fix: ci tests
* fix: removed log form test
* fix: on specs, no random regionKeys
* feat: simplify ci for postgres
* try: fix health check
* feat: fixed tests in ci
* try: entrypoint
* try: entrypoint
* try: entrypoint
* try: POSTGRES_INITDB_ARGS
* feat: apply POSTGRES_INITDB_ARGS to all server tests
* fix: broken test
* fix: reinstate max health attempts
* fix: after merge
* fix: after merge
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-09-04 14:49:02 +02:00
Daniel Gak Anagrov
399c998fd7
feat(multiregion): apply prepared transactions to projects ( #5322 )
...
* feat(multiregion): replace user replication
* chore(multiregion): optimise replication
* maybe it's this
* postgres is fun
* once more
* chore(multiregion): only replicate test user creation during multiregion tests
* feat: improved replicate_query logic
* fix: minor
* fix: starting issue
* feat: included user create and delete specs to multiregion
* feat: removed console logs
* fix: user defaults
* fix: multiregion test helper
* fix: update scenarios for users
* refactor(multiregion): swap replicateQuery concept to asMultiregionOperation (#5301 )
feat(multiregion): introduced asMultregionOperator, refactor test to user builder classes
* chore: renamings
* fix: remove comments
* feat: remove user replication
* refactor: simplified spec usages
* chore: comments
* chore: branches and favs
* chore: more tests
* chore: more tests
* fix linting
* fix tests
* feat: dropping replication
* refactor: moved project delete to service
* fix: comment
* feat: updateStreamFactory and updateProjectFacotry
* deleteProjectFactory + replicateFactory
* deleteWorkspaceFactory
* fix: selector
* fix: tests
* fix tests, finished createStreamFactory
* feat: simplify changes
* fix: remove comment
* fix: minor strucutres
* fix: moveProjectToRegion
* fix: moved branch creation outside of multiregion scope
* fix: branch creation
* fix: tests
* fix: ci tests
* fix: removed log form test
* fix: on specs, no random regionKeys
* review fixes
* fix: mr comments
* feat: removed test
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-09-04 13:07:19 +02:00
Kristaps Fabians Geikins
2c72b8e7b8
fix: evict cache on saved view group delete ( #5378 )
2025-09-04 11:40:38 +03:00
Kristaps Fabians Geikins
3497eed931
feat: opening a model w/ a home view targets latest version ( #5376 )
...
* model link resolution updated
* finalization
* lint fix
2025-09-04 10:02:02 +03:00
Kristaps Fabians Geikins
51065ab635
feat: show ungrouped saved view group as disclosure ( #5366 )
...
* feat: show ungrouped saved view group as disclosure
* tests fix
* fix Ungrouped appearing at the end of the list
2025-09-04 10:01:51 +03:00
Kristaps Fabians Geikins
3558087b1f
feat: allow moving views for non-author project contributors+ ( #5373 )
...
* new auth policies & fragments
* server changes
* frontend changes
2025-09-03 15:28:42 +03:00
Alexandru Popovici
e80e0de74c
Programmatic Measurements ( #5346 )
...
* feat(viewer-lib): Added MeasurementData and stuck with shared library defined measurement related types
* feat(viewer-lib): Some updates:
- Removed unnecessary calculations in point to point measurement. More lean now. Implemented serialization/deserialization
- Tempoarary serialization/deserializaton for the rest of the measurement types
- MeasurementsExtension now is able to load measurements from MeasurementData objects
- Updated viewer's export list to not export mesurements related types that are now exclusively exported by the shared library
* feat(viewer): Perpendicular measurements simplification (a little bit) and serialization/deserialization
* chore(frontend): Updated measurement types imports
* chore(viewer-lib): Removed the old normal indicator line from the perpendicular measurement
* feat(viewer-lib): Updates:
- Generic fromMeasurementData and toMeasurementData for all measurements since it's unniversal
- Each measurement type serializes/deserializes only specialized data
- Implemented ponint measurement serializing/deserializing and programmatic functionining
* feat(viewer-lib): Area mesurement serialization/deserialization
* feat(viewer-lib): Updates:
- Each measurement subtype now reports the MeasurementType it belongs to
- MeasurementsExtension now emits a MeasurementsChanged event with all the measurements as payload whenever the measurements change
- units and precision are no longer serialized/deserialized on a per-measurement basis
- Added sync API member addMeasurement
* chore(viewer-lib): Fix compiler error
* chore(viewer-lib): Added measurements getter in MeasurementExtension
* feat(fe2): save/reload measurements integration (#5351 )
* measurements idempotent api
* extra adjustments, stuff seems to work
* lint fix
* more lint fix
* fix for visible going false
* better identification
* fix FlyControls change action
---------
Co-authored-by: Kristaps Fabians Geikins <fabians@speckle.systems >
2025-09-02 09:46:30 +03:00
Mike
08eb1f7a1d
Feat: Bashboards in app ( #5333 )
2025-09-01 14:24:17 +02:00
Mike
3a0829aa93
Feat: Add Intelligence SU Promo banner ( #5348 )
2025-09-01 11:59:25 +02:00
Kristaps Fabians Geikins
a074aedd65
feat: enable saved views for all workspace plans ( #5343 )
...
* feat: enable saved views for all workspace plans
* more test fixes
2025-09-01 10:25:10 +03:00
Iain Sproat
fdf3b93e95
fix(server/fileuploads): prevent file upload jobs silently failing ( #5327 )
2025-08-29 14:46:40 +01:00
Kristaps Fabians Geikins
3d8e9ab152
feat(server): hide empty groups if ur not group author ( #5344 )
2025-08-29 15:43:49 +03:00
Iain Sproat
22f13b152d
fix(server/workspace): reduce log level for user-configured oidc problem ( #5341 )
...
* fix(server/workspace): reduce log level for user-configured oidc problem
* status code should not be 500 as it is a user error
2025-08-29 11:16:48 +01:00
Daniel Gak Anagrov
b568e6d946
refactor(multiregion): reduce create stream usages in specs ( #5319 )
...
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-08-28 14:21:26 +02:00
Kristaps Fabians Geikins
e7ed024d52
fix: prevent making a home view personal ( #5334 )
2025-08-28 14:32:35 +03:00
Kristaps Fabians Geikins
dbb3c4a374
feat: make saved views shared by default + copy/ui changes ( #5331 )
...
* make default visibility public
* show icon for private
* make view shared/private menu
* Public -> Shared
2025-08-28 13:07:02 +03:00
Kristaps Fabians Geikins
8dbd342a40
feat(fe2): view modes stored in saved views (and elsewhere) ( #5320 )
...
* feat(fe2): view modes stored in saved views (and elsewhere)
* lint fixes
2025-08-28 11:40:58 +03:00
Kristaps Fabians Geikins
bb29033508
feat(fe2): name saved view groups upon creation ( #5330 )
2025-08-28 11:39:26 +03:00