Resource Parsing
All of the techniques for specifying resources
accept an array of raw objects. These raw objects are “parsed” into proper Resource objects, which are accessible via methods like getResources and getResourceById.
The following properties are accepted in each raw resource object:
id |
Uniquely identifies this resource. Event Objects with a corresponding resourceId field will be linked to this event.
Will be coerced into a string.
|
---|---|
title | Text that will be displayed on the resource when it is rendered. |
eventColor |
Events associated with this resources will have their backgrounds and borders colored. Any CSS string color format can be specified, like "#f00" or "rgb(255,0,0)" . This value will take precedence over the global eventColor option and the Event Source Object color option, but it will not take precedence over the Event Object color option.
|
eventBackgroundColor | The eventBackgroundColor setting for associated events. |
eventBorderColor | The eventBorderColor setting for associated events. |
eventTextColor | The eventTextColor setting for associated events. |
eventClassNames | className(s) that will apply to associated events. |
eventOverlap | The eventOverlap setting for associated events. Does not accept a function. |
eventConstraint | The eventConstraint setting for associated events. |
eventAllow | The eventAllow setting for associated events. |
businessHours | A businessHours declaration that will only apply to this resource. See example. |
children | Child resources. See below. |
parentId | Defines the parent resource. See below. |
any other prop! |
Every other non-standard prop will be transferred over to the |
For the color-related properties, even when an event is rendered on a non-resource view (views other than Timeline), these properties will still take effect.
Resources can be nested within each other. This will be displayed as an expander arrow in the UI which expands and contracts the child resources. Specifying nested resources can be done via one of two possible techniques…
Nested resources with a nested array
Child resources can be specified directly within the parent resource via the children
property. This technique is often more pleasant when hardcoding an array because it is visually easier to understand the code.
resources: [
{
id: 'a',
title: 'Room A',
children: [
{
id: 'a1',
title: 'Room A1'
},
{
id: 'a2',
title: 'Room A2'
}
]
}
]
Nested resources with a flat array
An alternative method for specifying child resources is via linking them together with the parentId
property. This is often more pleasant when dealing with resource data that originates from a database.
resources: [
{
id: 'a',
title: 'Room A'
},
{
id: 'a1',
parentId: 'a',
title: 'Room A1'
},
{
id: 'a2',
parentId: 'a',
title: 'Room A2'
}
]