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

[wb1812.1.deprecate] Mark ID stuff as deprecated #2388

Merged
merged 5 commits into from
Dec 16, 2024

Conversation

somewhatabstract
Copy link
Member

Summary:

This is the first step in removing our custom ID utilities in favour of using the useId hook from React's API. This PR is not going to be merged/released on its own. Another PR will be coming to add an Id component that wraps useId so that there's an easier path for consumers to migrate.

The difficult bit is moving from the provider architecture that gives an ID factory, to the useId/Id approach. However, long term, it should simplify things greatly.

Upgrade note:

Upgrading to this will cause deprecation notices in consuming code. If a lint rule is set up to block deprecated usage (which it probably is), then those errors will have to be suppressed. A find/replace may help in some circumstances, but this may also be a manual process. The alternative, of course, is to actually modify stuff to the new approach.

Issue: WB-1812

Test plan:

yarn test
yarn lint

@somewhatabstract somewhatabstract self-assigned this Dec 11, 2024
@somewhatabstract somewhatabstract requested a review from a team December 11, 2024 18:38
Copy link

changeset-bot bot commented Dec 11, 2024

🦋 Changeset detected

Latest commit: d448bd5

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 27 packages
Name Type
@khanacademy/wonder-blocks-core Major
@khanacademy/wonder-blocks-search-field Patch
@khanacademy/wonder-blocks-accordion Patch
@khanacademy/wonder-blocks-dropdown Patch
@khanacademy/wonder-blocks-popover Patch
@khanacademy/wonder-blocks-testing Patch
@khanacademy/wonder-blocks-tooltip Patch
@khanacademy/wonder-blocks-switch Patch
@khanacademy/wonder-blocks-modal Patch
@khanacademy/wonder-blocks-form Patch
@khanacademy/wonder-blocks-banner Patch
@khanacademy/wonder-blocks-birthday-picker Patch
@khanacademy/wonder-blocks-breadcrumbs Patch
@khanacademy/wonder-blocks-button Patch
@khanacademy/wonder-blocks-cell Patch
@khanacademy/wonder-blocks-clickable Patch
@khanacademy/wonder-blocks-data Patch
@khanacademy/wonder-blocks-grid Patch
@khanacademy/wonder-blocks-icon-button Patch
@khanacademy/wonder-blocks-icon Patch
@khanacademy/wonder-blocks-labeled-field Patch
@khanacademy/wonder-blocks-layout Patch
@khanacademy/wonder-blocks-link Patch
@khanacademy/wonder-blocks-pill Patch
@khanacademy/wonder-blocks-progress-spinner Patch
@khanacademy/wonder-blocks-toolbar Patch
@khanacademy/wonder-blocks-typography Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@khan-actions-bot
Copy link
Contributor

khan-actions-bot commented Dec 11, 2024

Gerald

Required Reviewers
  • @Khan/wonder-blocks for changes to .changeset/light-goats-serve.md, __docs__/wonder-blocks-core/id-provider.stories.tsx, __docs__/wonder-blocks-core/unique-id-provider.stories.tsx, __docs__/wonder-blocks-core/use-unique-id.stories.tsx, __docs__/wonder-blocks-timing/with-action-scheduler.stories.tsx, packages/wonder-blocks-core/src/index.ts, packages/wonder-blocks-accordion/src/components/accordion-section.tsx, packages/wonder-blocks-core/src/components/id-provider.tsx, packages/wonder-blocks-core/src/components/unique-id-provider.tsx, packages/wonder-blocks-core/src/hooks/use-unique-id.ts, packages/wonder-blocks-core/src/util/ssr-id-factory.ts, packages/wonder-blocks-core/src/util/types.ts, packages/wonder-blocks-core/src/util/unique-id-factory.ts, packages/wonder-blocks-dropdown/src/components/action-menu.tsx, packages/wonder-blocks-dropdown/src/components/combobox.tsx, packages/wonder-blocks-dropdown/src/components/listbox.tsx, packages/wonder-blocks-dropdown/src/components/multi-select.tsx, packages/wonder-blocks-dropdown/src/components/single-select.tsx, packages/wonder-blocks-form/src/components/choice-internal.tsx, packages/wonder-blocks-form/src/components/labeled-text-field.tsx, packages/wonder-blocks-form/src/components/text-area.tsx, packages/wonder-blocks-form/src/components/text-field.tsx, packages/wonder-blocks-modal/src/components/one-pane-dialog.tsx, packages/wonder-blocks-popover/src/components/popover.tsx, packages/wonder-blocks-search-field/src/components/search-field.tsx, packages/wonder-blocks-switch/src/components/switch.tsx, packages/wonder-blocks-tooltip/src/components/tooltip.tsx, packages/wonder-blocks-core/src/components/__tests__/id-provider.test.tsx, packages/wonder-blocks-core/src/components/__tests__/unique-id-provider.test.tsx, packages/wonder-blocks-core/src/hooks/__tests__/use-unique-id.test.tsx, packages/wonder-blocks-core/src/util/__tests__/unique-id-factory.test.ts, packages/wonder-blocks-testing/src/harness/adapters/__tests__/render-state.test.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 Dec 11, 2024

npm Snapshot: Published

🎉 Good news!! We've packaged up the latest commit from this PR (4d1418d) and published all packages with changesets to npm.

You can install the packages in webapp by running:

./services/static/dev/tools/deploy_wonder_blocks.js --tag="PR2388"

Packages can also be installed manually by running:

yarn add @khanacademy/wonder-blocks-<package-name>@PR2388

Copy link
Contributor

github-actions bot commented Dec 11, 2024

Size Change: 0 B

Total Size: 97.3 kB

ℹ️ View Unchanged
Filename Size
packages/wonder-blocks-accordion/dist/es/index.js 3.78 kB
packages/wonder-blocks-banner/dist/es/index.js 1.53 kB
packages/wonder-blocks-birthday-picker/dist/es/index.js 1.77 kB
packages/wonder-blocks-breadcrumbs/dist/es/index.js 887 B
packages/wonder-blocks-button/dist/es/index.js 4.04 kB
packages/wonder-blocks-cell/dist/es/index.js 2.01 kB
packages/wonder-blocks-clickable/dist/es/index.js 3.06 kB
packages/wonder-blocks-core/dist/es/index.js 3.48 kB
packages/wonder-blocks-data/dist/es/index.js 6.24 kB
packages/wonder-blocks-dropdown/dist/es/index.js 19.2 kB
packages/wonder-blocks-form/dist/es/index.js 6.28 kB
packages/wonder-blocks-grid/dist/es/index.js 1.36 kB
packages/wonder-blocks-icon-button/dist/es/index.js 2.95 kB
packages/wonder-blocks-icon/dist/es/index.js 871 B
packages/wonder-blocks-labeled-field/dist/es/index.js 72 B
packages/wonder-blocks-layout/dist/es/index.js 1.82 kB
packages/wonder-blocks-link/dist/es/index.js 2.28 kB
packages/wonder-blocks-modal/dist/es/index.js 5.43 kB
packages/wonder-blocks-pill/dist/es/index.js 1.65 kB
packages/wonder-blocks-popover/dist/es/index.js 4.87 kB
packages/wonder-blocks-progress-spinner/dist/es/index.js 1.52 kB
packages/wonder-blocks-search-field/dist/es/index.js 1.38 kB
packages/wonder-blocks-switch/dist/es/index.js 1.94 kB
packages/wonder-blocks-testing-core/dist/es/index.js 3.74 kB
packages/wonder-blocks-testing/dist/es/index.js 1.07 kB
packages/wonder-blocks-theming/dist/es/index.js 693 B
packages/wonder-blocks-timing/dist/es/index.js 1.8 kB
packages/wonder-blocks-tokens/dist/es/index.js 2.36 kB
packages/wonder-blocks-toolbar/dist/es/index.js 905 B
packages/wonder-blocks-tooltip/dist/es/index.js 7.08 kB
packages/wonder-blocks-typography/dist/es/index.js 1.23 kB

compressed-size-action

Copy link
Contributor

github-actions bot commented Dec 11, 2024

A new build was pushed to Chromatic! 🚀

https://5e1bf4b385e3fb0020b7073c-ypvzrdjrrl.chromatic.com/

Chromatic results:

Metric Total
Captured snapshots 377
Tests with visual changes 0
Total stories 513
Inherited (not captured) snapshots [TurboSnap] 0
Tests on the build 377

Base automatically changed from wb1812.0.fixrenderstate to main December 11, 2024 23:17
@somewhatabstract
Copy link
Member Author

The parent pull-request (#2387) has been merged into main, but this branch (wb1812.1.deprecate) now has conflicts with the new base branch. These conflicts must be resolved before checks can complete on this pull-request.

@somewhatabstract somewhatabstract merged commit b6009b7 into main Dec 16, 2024
14 checks passed
@somewhatabstract somewhatabstract deleted the wb1812.1.deprecate branch December 16, 2024 15:24
Copy link

codecov bot commented Dec 16, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 0.00%. Comparing base (f4abd57) to head (d448bd5).
Report is 6 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@     Coverage Diff      @@
##   main   #2388   +/-   ##
============================
============================

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f4abd57...d448bd5. Read the comment docs.

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