Skip to content

6 prices update - #262

Merged
jlowapik merged 15 commits into
mainfrom
6-prices-update
Oct 21, 2025
Merged

6 prices update#262
jlowapik merged 15 commits into
mainfrom
6-prices-update

Conversation

@jlowapik

@jlowapik jlowapik commented Oct 19, 2025

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Bug Fixes

    • Corrected grammatical and phrasing issues in product descriptions (including Ukrainian and English copy)
    • Updated delivery carrier information for Ukraine shipments
  • Updates

    • Refreshed pricing across multiple products and currencies (EUR/UAH adjustments)
    • Updated product gallery images/details
    • Removed several products from public catalog availability

@coderabbitai

coderabbitai Bot commented Oct 19, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

Updated product pricing and some gallery entries in product data, removed three products from the public products export, corrected two i18n strings (meta and Ukrainian delivery text), and adjusted a local Props type and the generateMetadata signature in the product route layout.

Changes

Cohort / File(s) Summary
Product Data
src/data/data/products.ts
Multiple products: updated EUR/UAH price values and some gallery arrays; removed three product exports from the public Products collection: smallToolSeatbag, tacticalStembag, hamsterCorduraNavyBlueFoxes.
i18n — meta descriptions
src/i18n/server/meta/metaData.js
Fixed Ukrainian Ghost patch wording and adjusted English Strava patch phrasing.
i18n — Ukrainian common
src/i18n/uk/common/ukCommon.js
Updated Ukrainian delivery copy: removed Ukrposhta from the listed international carriers (now lists Nova Poshta and Meest).
Route layout Types
src/app/[lang]/shop/[categoryId]/[productId]/layout.tsx
Added/kept a local Props type and updated generateMetadata function signature to accept Props ({ params: { lang: Language; productId: string } }).

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor Browser
  participant Route as /[lang]/shop/[categoryId]/[productId]
  participant Layout as layout.tsx
  Note right of Layout #ddeeff: generateMetadata now typed with local Props
  Browser->>Route: request product page
  Route->>Layout: call generateMetadata({ params })
  Layout-->>Route: returns Metadata
  Route->>Layout: render page (uses Products data)
  Layout->>Browser: HTML response
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • VitalyyP
  • Anton-88
  • IhorMasechko

Pre-merge checks and finishing touches

❌ Failed checks (2 warnings)
Check name Status Explanation Resolution
Title Check ⚠️ Warning The PR title "6 prices update" refers to a real part of the changeset—specifically the numerous price and gallery updates in products.ts—but the changes encompass much more than pricing alone. The pull request also includes removal of three exported products (smallToolSeatbag, tacticalStembag, hamsterCorduraNavyBlueFoxes), text corrections in metadata and Ukrainian delivery descriptions, and type refactoring in a layout file. The title is incomplete and potentially misleading because it omits the removal of public/exported entities, which are breaking changes that developers scanning the history should be aware of. A clearer title would capture the broader scope of changes or at minimum mention the breaking API changes alongside the price updates. Consider revising the title to more accurately reflect the full scope of changes, such as "Update product prices and remove three items from exports" or "Update prices and remove deprecated products" to ensure teammates reviewing the history understand the complete nature of the changes, including the breaking changes to exported products.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (1 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch 6-prices-update

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 56c0102 and f998027.

📒 Files selected for processing (1)
  • src/app/[lang]/shop/[categoryId]/[productId]/layout.tsx (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/app/[lang]/shop/[categoryId]/[productId]/layout.tsx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: e2e-tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (1)
src/i18n/en/common/enCommon.js (1)

205-207: Terminology drift: update “chevron” text to “patch”

UI label already says “Patches”, but the ordering instructions still reference “chevrons”.

-  PlacingOrderForChevron:
-    "If the size and colors (as shown in the photo) suit you, you can place an order. After submitting your request, our manager will contact you to confirm the details and send you the payment information\nOur website showcases samples of our designs. Each chevron is embroidered individually, so production takes 2-3 business days after payment\nIf you want to change the colors or size, please specify your preferences in the order comments. Our manager will discuss the changes with you via your preferred messenger\nIf you only wish to change the color, the price remains the same. If you need size adjustments, the price will be determined individually\nNot sure which one to choose? Feel free to write to our support chat — we're always happy to help!\nDone! If you have any doubts, we are here to assist you",
+  PlacingOrderForChevron:
+    "If the size and colors (as shown in the photo) suit you, you can place an order. After submitting your request, our manager will contact you to confirm the details and send you the payment information\nOur website showcases samples of our designs. Each patch is embroidered individually, so production takes 2–3 business days after payment\nIf you want to change the colors or size, please specify your preferences in the order comments. Our manager will discuss the changes with you via your preferred messenger\nIf you only wish to change the color, the price remains the same. If you need size adjustments, the price will be determined individually\nNot sure which one to choose? Feel free to write to our support chat — we're always happy to help!\nDone! If you have any doubts, we are here to assist you",

Also applies to: 224-224

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 044f770 and a9a1afd.

⛔ Files ignored due to path filters (7)
  • package-lock.json is excluded by !**/package-lock.json
  • public/img/prints/foxes_100x100@3x.png is excluded by !**/*.png
  • public/img/prints/foxes_385x355@3x.png is excluded by !**/*.png
  • public/img/prints/leafs_on_blue_100x100@3x.png is excluded by !**/*.png
  • public/img/prints/leafs_on_blue_385x355@3x.png is excluded by !**/*.png
  • public/products/seat-bag-3l/seat-bag-3l_5_115x120@3x.png is excluded by !**/*.png
  • public/products/seat-bag-3l/seat-bag-3l_5_460x580@3x.png is excluded by !**/*.png
📒 Files selected for processing (12)
  • .github/workflows/deploy.yaml (1 hunks)
  • src/components/deliveryPaymentPage/deliveryAndPayment/DeliveryAndPayment.tsx (1 hunks)
  • src/data/data/fabrics/fabricsData.js (1 hunks)
  • src/data/data/products.ts (15 hunks)
  • src/i18n/en/common/enCommon.js (2 hunks)
  • src/i18n/pl/common/plCommon.js (1 hunks)
  • src/i18n/server/en/deliveryAndPayment/enDeliveryAndPayment.ts (1 hunks)
  • src/i18n/server/meta/metaData.js (8 hunks)
  • src/i18n/server/pl/deliveryAndPayment/plDeliveryAndPayment.ts (1 hunks)
  • src/i18n/server/products/productsData.js (5 hunks)
  • src/i18n/server/uk/deliveryAndPayment/ukDeliveryAndPayment.ts (1 hunks)
  • src/i18n/uk/common/ukCommon.js (2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: sonarqube
  • GitHub Check: e2e-tests
🔇 Additional comments (23)
.github/workflows/deploy.yaml (1)

15-15: Consider scoping SENTRY_AUTH_TOKEN to specific jobs rather than top-level.

Exposing secrets at the top-level environment makes them available to all jobs indiscriminately. If only certain jobs (e.g., deployment) need this token, scoping it to those jobs follows the principle of least privilege.

Additionally, the provided workflow code doesn't show any usage of SENTRY_AUTH_TOKEN in the visible steps. Please verify which job(s) actually use this token.

src/data/data/fabrics/fabricsData.js (1)

60-61: LGTM! New fabric prints added correctly.

The addition of 'foxes' and 'leafs_on_blue' fabric prints follows the existing naming convention and array structure. These entries align with the corresponding translations added in src/i18n/server/products/productsData.js.

src/i18n/server/uk/deliveryAndPayment/ukDeliveryAndPayment.ts (1)

13-13: LGTM! Delivery text updated consistently.

The Ukrainian delivery text has been updated to reflect that international delivery is now exclusively with Nova Poshta. This change is consistent with the corresponding updates in English and Polish localization files.

src/i18n/server/pl/deliveryAndPayment/plDeliveryAndPayment.ts (1)

14-14: LGTM! Polish delivery text updated.

The Polish localization has been updated to reflect the removal of Ukrposhta as a delivery option, now stating that international delivery is primarily with Nova Poshta. This change is consistent with updates in other language files.

src/i18n/pl/common/plCommon.js (1)

192-192: LGTM! Delivery options updated in Polish localization.

The DeliveryDetails text has been updated to remove Ukrposhta from the list of international delivery companies, now listing only "Nova Poshta i Meest". This change is consistent with the broader PR objective to remove Ukrposhta as a delivery option.

src/components/deliveryPaymentPage/deliveryAndPayment/DeliveryAndPayment.tsx (2)

47-51: LGTM! UI updated to reflect delivery changes.

The Ukraine shipping section has been updated to show only Nova Poshta, with the logo width adjusted to 115 pixels. This change aligns with the removal of Ukrposhta as a delivery option throughout the application.


54-63: LGTM! International shipping section updated.

The abroad shipping section now displays only the Nova Poshta International logo, consistent with the removal of Ukrposhta as an international delivery option. The component structure is clean and aligned with the updated delivery text.

src/i18n/server/products/productsData.js (9)

432-441: LGTM! Terminology updated from Chevron to Patch.

The product name and description have been consistently updated across all three languages to use "Patch" terminology instead of "Chevron". The key name ChevronLetsGo remains unchanged, which is good for maintaining backward compatibility with existing code references.


443-451: LGTM! ChevronStrava updated consistently.

The Strava patch has been updated with the new terminology across all language packs, maintaining consistency with other Chevron-to-Patch migrations.


453-461: LGTM! ChevronVelocats terminology updated.

The Velocats patch descriptions have been updated consistently across all three language packs.


463-471: LGTM! ChevronCoffee descriptions updated.

The Coffee patch has been updated with the new Patch terminology consistently across all languages.


473-481: LGTM! ChevronDonut updated with Patch terminology.

The Donut patch descriptions follow the same consistent pattern of terminology migration.


483-491: LGTM! ChevronGhost terminology updated.

The Ghost patch has been updated consistently with the new terminology across all language packs.


493-501: LGTM! ChevronHeart descriptions updated.

The Heart patch has been updated with the new Patch terminology consistently.


503-511: LGTM! ChevronSlice terminology updated.

The Slice patch has been updated with the new terminology, completing the consistent migration from Chevron to Patch across all items.


892-896: LGTM! New fabric print translations added.

The translations for 'foxes' and 'leafs_on_blue' fabric prints have been added correctly across all three language packs. These entries correspond to the new fabric prints added in src/data/data/fabrics/fabricsData.js (lines 60-61).

Also applies to: 917-921

src/i18n/server/en/deliveryAndPayment/enDeliveryAndPayment.ts (1)

14-14: LGTM! English delivery text updated.

The English localization has been updated to reflect that international delivery is primarily with Nova Poshta, removing the Ukrposhta reference. This change is consistent with updates in Ukrainian and Polish localization files.

src/i18n/uk/common/ukCommon.js (2)

238-238: LGTM! Category renamed from Chevrons to Patches.

The Ukrainian translation for the Chevrons category has been updated to "Патчі" (Patches), maintaining consistency with terminology changes throughout the codebase.


216-216: LGTM! Ordering instructions updated with Patch terminology.

The PlacingOrderForChevron text has been comprehensively updated to use "патч" (patch) terminology throughout, providing clear instructions that align with the category name change.

src/data/data/products.ts (4)

183-184: Gallery count change: validate assets exist

seatBag3L gallery changed to 4. Ensure 4 images exist and downstream components don’t assume old count.


725-725: Flat price shape vs fabric‑based shape

handlebarMount uses a flat { UAH, EUR } while most others are per‑fabric. Confirm Product type supports both shapes and UI renders both correctly.


1188-1204: Original review comment is incorrect — product IS included in Products() array

The search confirms that hamsterCorduraNavyBlueFoxes is already present in the Products() array at line 1198, which falls within the reviewed code snippet (lines 1188–1204). No action needed.

Likely an incorrect or invalid review comment.


117-119: Price parity is mostly consistent; verify 3 outlier entries

Analysis of 40+ price pairs shows median UAH/EUR rate of 37.01 with 94% of entries within ±10% (acceptable rounding variation). However, three outliers deviate beyond ±10%:

  • Line 388: xpac 3700 UAH / 90 EUR = 41.11 (+11%)
  • Line 677: xpac 550 UAH / 17 EUR = 32.35 (−12%)
  • Line 725: handlebarMount 900 UAH / 28 EUR = 32.14 (−13%)

Verify these are intentional product-specific pricing or correct if data entry errors. No systemic refactor required; the majority follows a consistent implicit rate.

Comment thread src/i18n/en/common/enCommon.js
Comment thread src/i18n/server/meta/metaData.js

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
src/i18n/uk/common/ukCommon.js (1)

199-200: Consider clarifying the international delivery wording.

The phrase "іншою перевізною компанією" (another carrier company) followed by listing "Нова Пошта" may be confusing since Nova Poshta is already mentioned for domestic delivery. The word "іншою" (another) implies a different company, but Nova Poshta appears in both contexts.

Consider revising to remove ambiguity:

   DeliveryDetails:
-    'Доставка по Україні відбувається Новою Поштою\nДоставка по світу - іншою перевізною компанією (Нова Пошта, Meest)',
+    'Доставка по Україні відбувається Новою Поштою\nМіжнародна доставка - Новою Поштою або Meest',

Or alternatively:

   DeliveryDetails:
-    'Доставка по Україні відбувається Новою Поштою\nДоставка по світу - іншою перевізною компанією (Нова Пошта, Meest)',
+    'Доставка по Україні відбувається Новою Поштою\nДоставка по світу - перевізною компанією (Нова Пошта, Meest)',
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a9a1afd and 839d096.

📒 Files selected for processing (2)
  • src/i18n/server/meta/metaData.js (2 hunks)
  • src/i18n/uk/common/ukCommon.js (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/i18n/server/meta/metaData.js
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: sonarqube
  • GitHub Check: e2e-tests

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 839d096 and 56c0102.

📒 Files selected for processing (1)
  • src/app/[lang]/shop/[categoryId]/[productId]/layout.tsx (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: sonarqube
  • GitHub Check: e2e-tests

Comment thread src/app/[lang]/shop/[categoryId]/[productId]/layout.tsx
…a from ProductPageLayoutProps for layout component
@sonarqubecloud

Copy link
Copy Markdown

@killev killev left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@jlowapik
jlowapik merged commit a4fda42 into main Oct 21, 2025
12 of 13 checks passed
@jlowapik
jlowapik deleted the 6-prices-update branch October 21, 2025 11:19
@coderabbitai coderabbitai Bot mentioned this pull request Mar 12, 2026
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.

2 participants