Import-to-library notes 2025-01-10
Need to support import/re-import use case
Not sure if we should use staged content?
We already have a management command that does a lot of this
What are we looking for on the ux side of things?
What does the error-fixing process look like?
What kind of info needs to be surfaced to the user?
If I import a course twice into the same library, does it make copies of each component, or does it de-dupe them?
b/c we’re keeping track of the relationships between source items and library items, we should be able to update in place rather than creating copies
(Marco had assumed that importing a course more than once would be disallowed-- but he’s thinking about it now)
collections
If we import items into an existing collection, does it…
replace the collection, clearing out any existing items?
add to the collection?
Do we still get to see all the things we brought in from a course, since there might be other items in the collection?
Marco: Marco: the import UI
Choosing a source course
Select by ID, paste it into modal
Select by recent
Select by title search
Which levels of the hierarchy?
Dave: We do need to bring all levels of hierarchy in, even if we need to treat them as read-only
What types/subtypes of blocks?
How/whether to dis-aggregate?
Jenna: Bring in all layers, but maybe don’t dis-aggregate by default at the component layers.. would create a lot of components
Things that we might need to message about
Blocks that are already in the library
References to blocks that are already in the library (interesting!)
Unsupported blocks
“600 of 670 blocks imported successfully”
Treating imports as an object
Go back in time, see what was imported when, who imported what
“You press the button, it does its best, pulls everything in in draft mode”
Whether to publish the imported things?
t