Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update function signature for getUserInputFromProps #1842

Merged
merged 4 commits into from
Nov 9, 2024

Conversation

MikeKlemarewski
Copy link
Contributor

@MikeKlemarewski MikeKlemarewski commented Nov 8, 2024

Summary:

In my prior PR where I updated this function signature, I wasn't aware that it was called outside of the component anywhere. It turns out in Web App, there are calls to getUserInputFromProps and this change to the function signature breaks those calls.

Test plan:

  • Ensure the tests pass

@MikeKlemarewski MikeKlemarewski self-assigned this Nov 8, 2024
@khan-actions-bot khan-actions-bot requested a review from a team November 8, 2024 22:50
@khan-actions-bot
Copy link
Contributor

khan-actions-bot commented Nov 8, 2024

Gerald

Required Reviewers
  • @Khan/perseus for changes to .changeset/tough-buses-tell.md, packages/perseus/src/__tests__/widgets.test.ts, packages/perseus/src/widgets/radio/radio-component.tsx

Don't want to be involved in this pull request? Comment #removeme and we won't notify you of further changes.

Copy link
Contributor

github-actions bot commented Nov 8, 2024

npm Snapshot: Published

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

Example:

yarn add @khanacademy/perseus@PR1842

If you are working in Khan Academy's webapp, you can run:

./dev/tools/bump_perseus_version.sh -t PR1842

Copy link
Contributor

github-actions bot commented Nov 8, 2024

Size Change: -28 B (0%)

Total Size: 866 kB

Filename Size Change
packages/perseus/dist/es/index.js 416 kB -28 B (-0.01%)
ℹ️ View Unchanged
Filename Size
packages/kas/dist/es/index.js 38.8 kB
packages/keypad-context/dist/es/index.js 760 B
packages/kmath/dist/es/index.js 4.27 kB
packages/math-input/dist/es/index.js 77.8 kB
packages/math-input/dist/es/strings.js 1.79 kB
packages/perseus-core/dist/es/index.js 1.48 kB
packages/perseus-editor/dist/es/index.js 283 kB
packages/perseus-linter/dist/es/index.js 22.2 kB
packages/perseus/dist/es/strings.js 3.54 kB
packages/pure-markdown/dist/es/index.js 3.66 kB
packages/simple-markdown/dist/es/index.js 12.4 kB

compressed-size-action

Copy link
Collaborator

@jeremywiebe jeremywiebe left a comment

Choose a reason for hiding this comment

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

That Coach Reports package has caused us some amount of trouble. Going forward, we are working hard to not allow code outside Perseus to access the widget's directly.

Copy link
Collaborator

@jeremywiebe jeremywiebe left a comment

Choose a reason for hiding this comment

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

Thanks for adding the tests.

.changeset/tough-buses-tell.md Outdated Show resolved Hide resolved
currentValue: 42,
};

// @ts-expect-error - TS2339 - Property 'getUserInputFromProps' does not exist on type 'ComponentType<any>'.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Ouch, I guess because getWidget returns React.ComponentType<any>. No changes needed, just wish we could type getWidget better.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah 😦

@MikeKlemarewski MikeKlemarewski merged commit 4004642 into main Nov 9, 2024
8 of 9 checks passed
@MikeKlemarewski MikeKlemarewski deleted the radio-get-user-input-from-props branch November 9, 2024 00:01
Myranae pushed a commit that referenced this pull request Nov 14, 2024
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@41.3.0

### Minor Changes

-   [#1848](#1848) [`55371ded7`](55371de) Thanks [@Myranae](https://github.com/Myranae)! - Rename all validator functions and related code to reference scoring instead


-   [#1754](#1754) [`77f1bf98f`](77f1bf9) Thanks [@MikeKlemarewski](https://github.com/MikeKlemarewski)! - Adds the getPromptJSON utility method to the renderer and every widget. It can be used to get a JSON representation of the exercise to pass to an LLM.

### Patch Changes

-   [#1844](#1844) [`092c81f6c`](092c81f) Thanks [@Myranae](https://github.com/Myranae)! - Update Radio's userInput and rubric objects and types


-   [#1837](#1837) [`80f0480e6`](80f0480) Thanks [@jeremywiebe](https://github.com/jeremywiebe)! - Type widget exports using 'satisfies' keyword instead of 'as'


-   [#1785](#1785) [`32b27322c`](32b2732) Thanks [@benchristel](https://github.com/benchristel)! - Internal: add a parsing layer to typecheck PerseusItem data at runtime (ADR #773). The parsing code is not used yet.


-   [#1838](#1838) [`08fa66103`](08fa661) Thanks [@jeremywiebe](https://github.com/jeremywiebe)! - Introduce a PerseusArticle type


-   [#1825](#1825) [`3dd1fa5ce`](3dd1fa5) Thanks [@catandthemachines](https://github.com/catandthemachines)! - Adding stronger typing to expression editor issues.


-   [#1847](#1847) [`dcb4b27b3`](dcb4b27) Thanks [@nishasy](https://github.com/nishasy)! - [Locked Labels] Allow the usage of `{$}` to denote actual dollar signs within locked label TeX


-   [#1850](#1850) [`61dbd4a2c`](61dbd4a) Thanks [@MikeKlemarewski](https://github.com/MikeKlemarewski)! - Export WidgetPromptJSON type so it is accessible


-   [#1842](#1842) [`cf2ea471e`](cf2ea47) Thanks [@MikeKlemarewski](https://github.com/MikeKlemarewski)! - Fix function signature of getUserInputFromProps for radio widget

## @khanacademy/perseus-editor@14.11.1

### Patch Changes

-   [#1825](#1825) [`3dd1fa5ce`](3dd1fa5) Thanks [@catandthemachines](https://github.com/catandthemachines)! - Adding stronger typing to expression editor issues.


-   [#1847](#1847) [`dcb4b27b3`](dcb4b27) Thanks [@nishasy](https://github.com/nishasy)! - [Locked Labels] Allow the usage of `{$}` to denote actual dollar signs within locked label TeX

-   Updated dependencies \[[`092c81f6c`](092c81f), [`80f0480e6`](80f0480), [`32b27322c`](32b2732), [`08fa66103`](08fa661), [`55371ded7`](55371de), [`3dd1fa5ce`](3dd1fa5), [`dcb4b27b3`](dcb4b27), [`61dbd4a2c`](61dbd4a), [`77f1bf98f`](77f1bf9), [`cf2ea471e`](cf2ea47)]:
    -   @khanacademy/perseus@41.3.0

Author: khan-actions-bot

Reviewers: Myranae

Required Reviewers:

Approved By: Myranae

Checks: ⏭️  Publish npm snapshot, ✅ Cypress (ubuntu-latest, 20.x), ✅ Check builds for changes in size (ubuntu-latest, 20.x), ✅ gerald, ✅ Lint, Typecheck, Format, and Test (ubuntu-latest, 20.x), ✅ Check for .changeset entries for all changed files (ubuntu-latest, 20.x)

Pull Request URL: #1840
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants