You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The following summary of what a strand needs to do (in the context of a react component implementing a strand for use in a front end web application) is lifted from an issue elsewhere.
Parse the useful aspects of this summary, which contains a logical breakdown of different way in which we can use strands, into the documentation.
To render or use strands in a web application, strands needs to have a similar set of functionalities, so the base strand component has different modes.
Note: It may be simpler to architect all of the strands as separate components entirely, rather than composing, but the philosophy is the same for all of them so we document it here.
Required modes
edit Allow editing of the strand itself (eg change of the schema)
populate Allow population of the strand with data (eg to configure a digital twin at launch)
show Allow the strand to be viewed for informational purposes (e.g. this is the spec of a digital twin)
Views
Human example view showing example configuration form (disabled, show and edit modes)
Human view showing actual configuration form (enabled, populate mode)
Machine (code) example view showing example configuration data (disabled, show and edit modes)
Machine view showing actual configuration data (enabled in populate mode)
Machine view showing the strand, eg the schema or the raw json list of children (disabled in show and populate modes, enabled in edit mode)
Async validation
In theory, async validation (e.g. of things not put in the schema, like permission controls) should be possible but is out of scope for the current demo stage, and with care shouldn't be required anyway. We should stick to the philosophy:
If data passes json schema validation it is valid. So any async validation should simply be applying the same identical check.
The text was updated successfully, but these errors were encountered:
The following summary of what a strand needs to do (in the context of a react component implementing a strand for use in a front end web application) is lifted from an issue elsewhere.
Parse the useful aspects of this summary, which contains a logical breakdown of different way in which we can use strands, into the documentation.
To render or use strands in a web application, strands needs to have a similar set of functionalities, so the base strand component has different modes.
Note: It may be simpler to architect all of the strands as separate components entirely, rather than composing, but the philosophy is the same for all of them so we document it here.
Required modes
edit
Allow editing of the strand itself (eg change of the schema)populate
Allow population of the strand with data (eg to configure a digital twin at launch)show
Allow the strand to be viewed for informational purposes (e.g. this is the spec of a digital twin)Views
show
andedit
modes)populate
mode)show
andedit
modes)populate
mode)show
andpopulate
modes, enabled inedit
mode)Async validation
In theory, async validation (e.g. of things not put in the schema, like permission controls) should be possible but is out of scope for the current demo stage, and with care shouldn't be required anyway. We should stick to the philosophy:
The text was updated successfully, but these errors were encountered: