Skip to content

Conversation

@catandthemachines
Copy link
Member

@catandthemachines catandthemachines commented Jan 24, 2026

Summary:

Fixing a bug in the image widget long description experience where transparent images can't be easily seen in our long descriptoin model.

I am fixing this by setting the image in the container to have a white background. This will have no effect on non-transparent images.

Issue: LEMS-3688

Before:

image

After:

image

Test plan:

…to adjust to use WB white, but this should work.
@github-actions
Copy link
Contributor

github-actions bot commented Jan 24, 2026

🗄️ Schema Change: No Changes ✅

@github-actions
Copy link
Contributor

github-actions bot commented Jan 24, 2026

🛠️ Item Splitting: No Changes ✅

@github-actions
Copy link
Contributor

github-actions bot commented Jan 24, 2026

Size Change: 0 B

Total Size: 485 kB

ℹ️ View Unchanged
Filename Size
packages/kas/dist/es/index.js 20.8 kB
packages/keypad-context/dist/es/index.js 1 kB
packages/kmath/dist/es/index.js 5.98 kB
packages/math-input/dist/es/index.js 98.5 kB
packages/math-input/dist/es/strings.js 1.61 kB
packages/perseus-core/dist/es/index.item-splitting.js 12.1 kB
packages/perseus-core/dist/es/index.js 25 kB
packages/perseus-editor/dist/es/index.js 98.8 kB
packages/perseus-linter/dist/es/index.js 8.84 kB
packages/perseus-score/dist/es/index.js 9.25 kB
packages/perseus-utils/dist/es/index.js 403 B
packages/perseus/dist/es/index.js 187 kB
packages/perseus/dist/es/strings.js 7.44 kB
packages/pure-markdown/dist/es/index.js 1.39 kB
packages/simple-markdown/dist/es/index.js 6.71 kB

compressed-size-action

@github-actions
Copy link
Contributor

github-actions bot commented Jan 24, 2026

npm Snapshot: Published

Good news!! We've packaged up the latest commit from this PR (24c27a4) and published it to npm. You
can install it using the tag PR3201.

Example:

pnpm add @khanacademy/perseus@PR3201

If you are working in Khan Academy's frontend, you can run the below command.

./dev/tools/bump_perseus_version.ts -t PR3201

If you are working in Khan Academy's webapp, you can run the below command.

./dev/tools/bump_perseus_version.js -t PR3201

khan-actions-bot and others added 5 commits January 26, 2026 12:06
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.


# Releases
## @khanacademy/perseus@74.0.0

### Major Changes

-   [#3192](#3192) [`2d57e51583`](2d57e51) Thanks [@benchristel](https://github.com/benchristel)! - Remove the deprecated `KEScore` type.


-   [#3188](#3188) [`ea593fef51`](ea593fe) Thanks [@benchristel](https://github.com/benchristel)! - Remove the deprecated `getUserInput` method from `Renderer`, and delete the `UserInputArray` type.


-   [#3189](#3189) [`3f6e33047d`](3f6e330) Thanks [@benchristel](https://github.com/benchristel)! - Remove the deprecated `getUserInputLegacy()` method of `ServerItemRenderer`. Callers should use `getUserInput()` instead.

### Minor Changes

-   [#3186](#3186) [`4fc881daf8`](4fc881d) Thanks [@ivyolamit](https://github.com/ivyolamit)! - [Radio] Remove getCorrectUserInput from the radio widget to hide the "Static" switch in the widget editor


-   [#3157](#3157) [`9cba5197a2`](9cba519) Thanks [@Myranae](https://github.com/Myranae)! - Convert Expression to functional component and improve testing and typing


-   [#3178](#3178) [`5756410e90`](5756410) Thanks [@mahtabsabet](https://github.com/mahtabsabet)! - Fix JIPT localization for graphie labels

### Patch Changes

-   [#3193](#3193) [`d5b27f0aad`](d5b27f0) Thanks [@Myranae](https://github.com/Myranae)! - Fix console errors from adding and removing radio choices

-   Updated dependencies \[[`2d57e51583`](2d57e51), [`e34c3db786`](e34c3db), [`29c3c697fb`](29c3c69), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519), [`779c55b0c3`](779c55b)]:
    -   @khanacademy/perseus-core@23.0.0
    -   @khanacademy/math-input@26.3.10
    -   @khanacademy/perseus-linter@4.6.12
    -   @khanacademy/keypad-context@3.2.30
    -   @khanacademy/kmath@2.2.30
    -   @khanacademy/perseus-score@8.2.6

## @khanacademy/perseus-core@23.0.0

### Major Changes

-   [#3192](#3192) [`2d57e51583`](2d57e51) Thanks [@benchristel](https://github.com/benchristel)! - Remove the deprecated `KEScore` type.


-   [#3188](#3188) [`ea593fef51`](ea593fe) Thanks [@benchristel](https://github.com/benchristel)! - Remove the deprecated `getUserInput` method from `Renderer`, and delete the `UserInputArray` type.

### Minor Changes

-   [#3157](#3157) [`9cba5197a2`](9cba519) Thanks [@Myranae](https://github.com/Myranae)! - Convert Expression to functional component and improve testing and typing

## @khanacademy/perseus-editor@28.10.0

### Minor Changes

-   [#3186](#3186) [`4fc881daf8`](4fc881d) Thanks [@ivyolamit](https://github.com/ivyolamit)! - [Radio] Remove getCorrectUserInput from the radio widget to hide the "Static" switch in the widget editor

### Patch Changes

-   Updated dependencies \[[`d5b27f0aad`](d5b27f0), [`4fc881daf8`](4fc881d), [`2d57e51583`](2d57e51), [`e34c3db786`](e34c3db), [`29c3c697fb`](29c3c69), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519), [`3f6e33047d`](3f6e330), [`5756410e90`](5756410), [`779c55b0c3`](779c55b)]:
    -   @khanacademy/perseus@74.0.0
    -   @khanacademy/perseus-core@23.0.0
    -   @khanacademy/math-input@26.3.10
    -   @khanacademy/perseus-linter@4.6.12
    -   @khanacademy/keypad-context@3.2.30
    -   @khanacademy/kmath@2.2.30
    -   @khanacademy/perseus-score@8.2.6

## @khanacademy/keypad-context@3.2.30

### Patch Changes

-   Updated dependencies \[[`2d57e51583`](2d57e51), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519)]:
    -   @khanacademy/perseus-core@23.0.0

## @khanacademy/kmath@2.2.30

### Patch Changes

-   Updated dependencies \[[`2d57e51583`](2d57e51), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519)]:
    -   @khanacademy/perseus-core@23.0.0

## @khanacademy/math-input@26.3.10

### Patch Changes

-   [#3190](#3190) [`e34c3db786`](e34c3db) Thanks [@mark-fitzgerald](https://github.com/mark-fitzgerald)! - Update Storybook to v9.1.17 (security patch)

-   Updated dependencies \[[`2d57e51583`](2d57e51), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519)]:
    -   @khanacademy/perseus-core@23.0.0
    -   @khanacademy/keypad-context@3.2.30

## @khanacademy/perseus-linter@4.6.12

### Patch Changes

-   [#2921](#2921) [`29c3c697fb`](29c3c69) Thanks [@nishasy](https://github.com/nishasy)! - [Image] | (CX) | Add issues panel warning for long alt text


-   [#3183](#3183) [`779c55b0c3`](779c55b) Thanks [@anakaren-rojas](https://github.com/anakaren-rojas)! - adds linter to radio editor - triggered when NOTA and another choice are marked as correct

-   Updated dependencies \[[`2d57e51583`](2d57e51), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519)]:
    -   @khanacademy/perseus-core@23.0.0
    -   @khanacademy/kmath@2.2.30

## @khanacademy/perseus-score@8.2.6

### Patch Changes

-   Updated dependencies \[[`2d57e51583`](2d57e51), [`ea593fef51`](ea593fe), [`9cba5197a2`](9cba519)]:
    -   @khanacademy/perseus-core@23.0.0
    -   @khanacademy/kmath@2.2.30

Author: khan-actions-bot

Reviewers: benchristel

Required Reviewers:

Approved By: benchristel

Checks: ⏭️  2 checks have been skipped, ✅ 6 checks were successful

Pull Request URL: #3187
## Summary:
Just some docs about scoring and data flow

Issue: LEMS-2877

Author: handeyeco

Reviewers: benchristel, handeyeco, jeremywiebe, SonicScrewdriver

Required Reviewers:

Approved By: benchristel

Checks: ✅ 10 checks were successful, ⏭️  1 check has been skipped

Pull Request URL: #3200
## Summary:
This PR implements the axe-core accessibility library, and automatically runs the checker. However, results are not shown in the Issues panel unless the toggle button is set "On". The reason for defaulting to "Off" is to provide a kind of feature flag option for this feature. The current accessibility results are somewhat noisy, in that content creators can't necessarily address all the issues that are discovered. Once this PR is implemented, time will be spent assessing the results of the scans and either resolving them or writing tickets for follow-up. At some future point, this automated scan will be defaulted to "On" for all content creators, and expanded to other editors (i.e. the Article and Assessments editors).

Issue: LEMS-3822

## Test plan:
1. Launch Editor Demo in Storybook, or [view editor in ZND](https://prod-znd-260114-2890-d538d2e.khanacademy.org/)
2. Open Issues panel at the top of the editor
3. Toggle the accessibility checker switch (at the bottom of the issues panel)
<img width="330" height="110" alt="Axe core toggle" src="https://github.com/user-attachments/assets/aca73bda-afa7-4e9e-a2b9-a329b24ff9b5" />

4. Make a change to the content
   * If no issues show, it may be necessary to add content that breaks accessibility to get a result
5. Note that the accessibility issue(s) show in the panel
<img width="330" height="148" alt="accessibility issue example" src="https://github.com/user-attachments/assets/ac0db2b2-0b3b-40c7-b2a2-9322e1fde7bc" />

6. Toggle the switch off
7. Note that the accessibility issue(s) are removed from the panel

Author: mark-fitzgerald

Reviewers: Myranae, mark-fitzgerald

Required Reviewers:

Approved By: Myranae

Checks: ⏭️  1 check has been skipped, ✅ 10 checks were successful

Pull Request URL: #3167
## Summary:
Now that the feature flag is on for all apps, we can remove all code involed in the old version of the widget. This PR removes those old widget files, leaving the `*.new.tsx` files. It also updates numerous unit tests to properly reference the multiple choice options.

Issue: LEMS-3847

## Test plan:
Unit tests pass
Visual regression tests pass

Author: mark-fitzgerald

Reviewers: mark-fitzgerald, ivyolamit, anakaren-rojas, handeyeco, Myranae

Required Reviewers:

Approved By: ivyolamit, anakaren-rojas

Checks: ⏭️  1 check has been skipped, ✅ 10 checks were successful

Pull Request URL: #3199
@catandthemachines catandthemachines marked this pull request as ready for review January 26, 2026 20:16
Copy link
Contributor

@nishasy nishasy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pretty straightforward 👍🏽

One request: Could you put a transparent image example in our storybook? It doesn't have to be a regression test; I think the demo stories would be adequate.

packages/perseus/src/widgets/image/__docs__/image-demo.stories.tsx

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants