This basically changes how the xmodule static files are
generated and consumed in order to separate the Xblock
styles from general style files. Includes:
* build: decople XModule style assets by using a custom webpack loader
* build: move scss imports to its specific file
* build: fix: add system dirs to theme lookup paths.
This is an amendment to #32018
Addressing the issue #31624
This basically changes how the xmodule static files are
generated and consumed in order to separate the Xblock
styles from general style files. Includes:
* build: decople XModule style assets by using a custom webpack loader
* build: move scss imports to its specific file
Addressing the issue https://github.com/openedx/edx-platform/issues/31624
asset_index.html.py:175: DeprecationWarning: Name is no longer supported as a property of Locators. Please use the block_id property.
__M_writer(js_escaped_string(context_course.location.name ))
asset_index.html.py:183: DeprecationWarning: Revision is no longer supported as a property of Locators. Please use the branch property.
__M_writer(js_escaped_string(context_course.location.revision ))
container.html.py:387: DeprecationWarning: Name is no longer supported as a property of Locators. Please use the block_id property.
__M_writer(js_escaped_string(context_course.location.name ))
container.html.py:395: DeprecationWarning: Revision is no longer supported as a property of Locators. Please use the branch property.
__M_writer(js_escaped_string(context_course.location.revision ))
course_outline.html.py:417: DeprecationWarning: Name is no longer supported as a property of Locators. Please use the block_id property.
__M_writer(js_escaped_string(context_course.location.name ))
course_outline.html.py:425: DeprecationWarning: Revision is no longer supported as a property of Locators. Please use the branch property.
__M_writer(js_escaped_string(context_course.location.revision ))
After changes from #31472, the user service of a "leaf" XBlock gets overridden
with the one created for its parent (SequenceBlock). Therefore, the
`requires_per_student_anonymous_id` is ignored in these XBlocks. The
subsequent renders of an XBlock (e.g., when requesting the solution) use
the student-specific IDs.
This removes choosing the proper ID (course-specific or student-specific) from
the runtime initialization. Instead, both IDs are passed to the user service.
There are only two XBlocks that relied on the
`requires_per_student_anonymous_id` - `ProblemBlock` and `HtmlBlock`. They
now request the "deprecated" (student-specific) user ID directly from the user
service.
* feat: Implement paste button
* chore: improve docs and add tests for python API
* fix: drive-by fix to use a better API for comparing XML
* feat: track which XBlock something was copied from
* feat: add tests
* feat: enable import linter so content_staging's public API is respected
* fix: error seen when trying to paste drag-and-drop-v2 blocks
* fix: use strip_text=True consistently for XML comparisons
* refactor: rename get_user_clipboard_status to get_user_clipboard
* feat: Better error reporting when pasting in Studio
* chore: convert new test suite to pytest assertions
* refactor: push READY status check into the API per review suggestion
* fix: use strip_text=True consistently for XML comparisons
* fix: store "copied_from_block" as a string to avoid Reference field issues
* fix: minor lint error
* refactor: move data types to data.py per OEP-49
Adds a tiny `openedx.core.djangoapps.staticfiles` app so that
static asset ignore patterns can be coded into configuration rather
than supplied on the command line or coded into pavelib.
Makes it easier to run static asset collection without Paver.
See ADR for details:
openedx/core/djangoapps/staticfiles/docs/decisions/0001-purpose-of-app.rst
Closes: https://github.com/openedx/edx-platform/issues/31658
Studio has a panel on the right side in the Unit view that shows authors
how to create a jump_to_id link to that Unit from HTML components that
are elsewhere in the course. However, that link was the literal text:
"/jump_to_id/<location ID>"
The expectation was that people would then copy the location ID as well,
and construct the link manually. This commit is a minor tweak that just
displays the link address with the location ID pre-filled. Doing this
does cause a little bit of text overflow, which is why this commit also
removes the quotes surrounding the URL. It's still doesn't always fit
perfectly, but the increased usability is worth the small visual issue.