The MakeSchedule component separates a repository's files into three groups: extra files, which are displayed at the top of the page for customisation; scheduled episodes, which are displayed in the day to which they have been assigned and which show their start time; and unscheduled episodes, which are displayed in a stash for allocation to the schedule by the user. The stash offers a button to add additional episodes by conducting a GitHub search.
Props
Name | Type | Default value | Required? | Description |
---|---|---|---|---|
recalculateItems |
Boolean | true |
No | Whether the time-consuming operation of detecting the files available should be conducted. |
Data
Name | Type | Default value | Description |
---|---|---|---|
addRemoteItems |
Boolean | false |
Whether the modal for adding remote items to the stash is open. |
remoteRepositoryName |
String | "" |
Search string used for filtering repositories when adding items to the stash. |
availableEpisodes |
Array.<File>|Array | [ |
Episodes available scheduling. |
expandedRepo |
String | "" |
Name of the repository currently expanded in the add-items-to-stash modal. |
Computed
Name | Type | Description |
---|---|---|
mainRepo |
Repository | Repository currently being created by the Workshop Builder Tool. |
allItems |
Array.<File> | Items available for scheduling, including both local and remote episodes. |
schedule |
Schedule | The schedule for the workshop. |
filteredTopicRepositories |
Array.<Repository> | A list of repositories matching the current text filter in the add-items-to-stash search box. |
autoCompleteOptions |
Array.<String> | Autocomplete prompts for entering remoteRepositoryName filter string. |
remoteRepositoryEpisodes |
Array.<File> | Currently unused. |
Methods
-
addRepositoryEpisodes(episodes)
-
Add episodes into the stash from a remote repository by marking them as available.
Parameters:
Name Type Description episodes
Array.<File> Episodes to add. -
clearStash()
-
Clear stash episodes.
-
setEpisodeAvailable(E, available)
-
Mark an episode as available for including in the current project.
Parameters:
Name Type Description E
File Episode to mark. available
boolean Whether the episode should be available. -
updateEpisode(episode)
-
Update an episode to mark its new place in the schedule.
Parameters:
Name Type Description episode
File Episode to update. -
updateItemDay(item, dayId, prevOrderopt, nextOrderopt)
-
Update the scheduled day for an item. If attempting to update a duplicatable item, the item will be duplicated. If stashing an item that deletes when stashed, that item will be deleted.
Parameters:
Name Type Attributes Description item
File Episode to update. dayId
Number | "" Day to which the episode belongs. prevOrder
Number <optional>
The order number of the episode before this one. nextOrder
Number <optional>
The order number of the episode after this one.