Skip to main content

Activity Presets

Activity presets are used to quickly apply a set of commonly-used arguments to an activity.

Creating an Activity Preset

mutation CreateActivityPreset($preset: activity_presets_insert_input!) {
insert_activity_presets_one(object: $preset) {
id
}
}

Below is an example query variable that creates an activity preset called "Gluten Free Bread" for the activity type BakeBananaBread in Model 1. Note that all of BakeBananaBread's arguments are defined.

{
"preset": {
"model_id": 1,
"name": "Gluten Free Bread",
"associated_activity_type": "BakeBananaBread",
"arguments": {
"temperature": 375,
"tbSugar": 16,
"glutenFree": true
}
}
}

Applying an Activity Preset

caution

Applying an activity preset will replace all arguments of the activity directive.

The following mutation will apply an activity preset to an activity directive:

mutation ApplyPreset($preset_id: Int!, $activity_id: Int!, $plan_id: Int!) {
apply_preset_to_activity(args: { _preset_id: $preset_id, _activity_id: $activity_id, _plan_id: $plan_id }) {
arguments
}
}

Removing an Activity Preset

Note

Removing an activity preset will not modify the arguments of the activity directive.

The following mutation will remove an activity preset from an activity directive:

mutation DeletePreset($preset_id: Int!, $activity_id: Int!, $plan_id: Int!) {
delete_preset_to_directive_by_pk(activity_id: $activity_id, plan_id: $plan_id, preset_id: $preset_id) {
preset_id
activity_id
plan_id
}
}

Querying an Activity Preset

Get an Activity Preset

query GetActivityPreset($preset_id: Int!) {
activity_preset: activity_presets_by_pk(id: $preset_id) {
id
model_id
name
associated_activity_type
arguments
}
}

Get the Activity Preset Assigned to an Activity Directive

query GetAppliedActivityPreset($activity_id: Int!, $plan_id: Int!) {
preset_to_directive(where: { _and: { activity_id: { _eq: $activity_id }, plan_id: { _eq: $plan_id } } }) {
applied_preset: presets_applied {
id
model_id
name
associated_activity_type
arguments
}
}
}

Get all Activity Directives Assigned to an Activity Preset

query GetAssociatedDirectives($preset_id: Int!) {
associated_directives: preset_to_directive(where: { preset_id: { _eq: $preset_id } }) {
directives_applied_to {
id
plan_id
name
type
anchor_id
anchored_to_start
start_offset
metadata
tags
arguments
}
}
}