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

refactor: [M3-9214] - Introduce the (at)linode/shared package #11844

Open
wants to merge 14 commits into
base: develop
Choose a base branch
from

Conversation

hkhalil-akamai
Copy link
Contributor

@hkhalil-akamai hkhalil-akamai commented Mar 13, 2025

Description 📝

Creates a new package @linode/shared and moves LinodeSelect as the first component.

This package will contain shared feature components, like LinodeSelect, RegionSelect and others that are not "pure" enough to go in @linode/ui.

Changes 🔄

  • Create @linode/shared package
    • Update package.json, tsconfig and repo scripts
  • Move LinodeSelect component to new package
  • Move dependencies to @linode/utilities:
    • Linode factories
    • LinodeConfigInterface factory
    • NodeBalancers factories
  • Update imports

How to test 🧪

This change should result in no user-facing changes. We can use our CI pipeline and end-to-end tests to verify this.

Code Review:

  • Most changed files in the packages/manager directory are import changes. Sample a selection of these files and verify the format of the changed imports are as expected.
  • packages/shared
    • Verify this package was set up correctly, using other shared packages like utilities or queries for reference. Check the package.json, lint configurations and tsconfig.json are set up as expected.

Manual Testing:

  • Verify LinodeSelect works as expected across the app. (This component is used in, e.g., the Volume, Firewall and Image create flows).
  • Verify LinodeSelect storybook story
Author Checklists

As an Author, to speed up the review process, I considered 🤔

👀 Doing a self review
❔ Our contribution guidelines
🤏 Splitting feature into small PRs
➕ Adding a changeset
🧪 Providing/improving test coverage
🔐 Removing all sensitive information from the code and PR description
🚩 Using a feature flag to protect the release
👣 Providing comprehensive reproduction steps
📑 Providing or updating our documentation
🕛 Scheduling a pair reviewing session
📱 Providing mobile support
♿ Providing accessibility support


  • I have read and considered all applicable items listed above.

As an Author, before moving this PR from Draft to Open, I confirmed ✅

  • All unit tests are passing
  • TypeScript compilation succeeded without errors
  • Code passes all linting rules

@hkhalil-akamai hkhalil-akamai marked this pull request as ready for review March 17, 2025 17:48
@hkhalil-akamai hkhalil-akamai requested review from a team as code owners March 17, 2025 17:48
@hkhalil-akamai hkhalil-akamai requested review from jdamore-linode, bnussman-akamai and coliu-akamai and removed request for a team March 17, 2025 17:48
Copy link

Coverage Report:
Base Coverage: 79.82%
Current Coverage: 79.8%

@linode-gh-bot
Copy link
Collaborator

Cloud Manager UI test results

🔺 2 failing tests on test run #8 ↗︎

❌ Failing✅ Passing↪️ Skipped🕐 Duration
2 Failing537 Passing3 Skipped113m 18s

Details

Failing Tests
SpecTest
google-pay.spec.tsGoogle Pay » adds google pay method
google-pay.spec.tsGoogle Pay » tests make payment flow - google pay

Troubleshooting

Use this command to re-run the failing tests:

pnpm cy:run -s "cypress/e2e/core/billing/google-pay.spec.ts"

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.

2 participants