Team Sharing allows users to share - at run-time - Adaptable Objects between colleagues. It is configued in Team Sharing Options.
Note: In this demo we use a Firebase database in order to best illustrate Team Sharing but you can use whichever storage location you want - AdapTable will neither know nor care.
It is designed for use cases where the same, newly-created Adaptable Object (e.g. a Layout, Conditional Style, Shared Query, Report etc.) will be required by multiple users.
If the object being shared references other objects (e.g. a Layout references a Calculated Column which references a Named Query) then all the objects in the tree are shared.
Team Sharing works by a User uploading an object to the Team Share from where it can then be downloaded by colleagues.
There are 2 types of Team Sharing:
- Snapshot: The object is shared once and then any changes made (either by uploader or downloaders) are unique to that user only.
- Active: A "Live" Share which will get automatically updated with every local change (see this demo )
Setting up Team Sharing requires the provision at design-time of 2 functions (both of which return Promises, and both of which are supplied through Team Sharing Options):
- getSharedEntities: retrieves any available Shared Entities that the user is able to download (and which AdapTable will then merge automatically with his Adaptable State)
- setSharedEntities: saves (essentially uploads) Shared Entities so they can be downloaded (and re-used) by other members of the team