Repository navigation
ECTO-2554 - Make extension installation after checkout optional - #156
Merged
Merged
Conversation
Jannik (qysp)
requested review from
Copilot,
Kai Gossel (kaigossel) and
Marvin Sibbing (mappinnn)
May 19, 2026 08:38
There was a problem hiding this comment.
Pull request overview
This PR introduces a user preference to make “install extension after purchase” optional in the extension store purchase flow, and enforces single-quote usage via ESLint.
Changes:
- Added an
ExtensionStorePreferencesService(persisted via user config) and wired it into the purchase flow to conditionally skip post-purchase installation. - Updated the purchase confirmation modal/checkout UI to include an “install after purchase” toggle and adjusted the submit button text accordingly (plus new snippets).
- Added the
stylistic/quotesESLint rule and updated affected strings to single quotes.
Reviewed changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Resources/app/administration/src/module/sw-in-app-purchases/component/sw-in-app-purchase-checkout/sw-in-app-purchase-checkout.spec.js | Aligns test string quotes with new single-quote linting. |
| src/Resources/app/administration/src/module/sw-in-app-purchases/component/sw-in-app-purchase-checkout/index.ts | Aligns debug logging string quotes with new single-quote linting. |
| src/Resources/app/administration/src/module/sw-extension-store/store/extension-store-purchase-confirmation.store.ts | Aligns import string quotes with new single-quote linting. |
| src/Resources/app/administration/src/module/sw-extension-store/snippet/en.json | Adds UI text for install toggle and “submit and install”. |
| src/Resources/app/administration/src/module/sw-extension-store/snippet/de.json | Adds German UI text for install toggle and “submit and install”. |
| src/Resources/app/administration/src/module/sw-extension-store/service/extension-store-preferences.service.ts | New persisted preferences service (install-after-purchase). |
| src/Resources/app/administration/src/module/sw-extension-store/service/extension-store-channel.service.ts | Uses the preference to decide whether to install after purchase. |
| src/Resources/app/administration/src/module/sw-extension-store/page/sw-extension-store-index/sw-extension-store-index.html.twig | Avoids rendering the iframe when storeUrl is falsy. |
| src/Resources/app/administration/src/module/sw-extension-store/index.js | Registers the new preferences service and injects it into the channel service. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-purchase-confirmation-modal/sw-extension-store-purchase-confirmation-modal.html.twig | Passes install-after-purchase state and update handler down to checkout component. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-purchase-confirmation-modal/index.ts | Injects preferences service and persists toggle changes. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-purchase-confirmation-checkout/sw-extension-store-purchase-confirmation-checkout.scss | Styles the new install toggle row. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-purchase-confirmation-checkout/sw-extension-store-purchase-confirmation-checkout.html.twig | Adds toggle UI and switches submit label based on preference. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-purchase-confirmation-checkout/index.ts | Adds required prop + emits for install-after-purchase changes. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-listing-filter/sw-extension-store-listing-filter.spec.js | Aligns test string quotes with new single-quote linting. |
| src/Resources/app/administration/src/module/sw-extension-store/component/sw-extension-store-in-app-purchases-listing-modal/sw-extension-store-in-app-purchases-listing-modal.spec.js | Aligns stub template quotes with new single-quote linting. |
| src/Resources/app/administration/src/global.types.ts | Extends service container typings for new/used services. |
| src/Resources/app/administration/eslint.config.mjs | Adds stylistic/quotes rule enforcing single quotes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Jannik (qysp)
force-pushed
the
feature/ECTO-2554
branch
from
May 19, 2026 08:50
117fc7e to
83dd50a
Compare
Kai Gossel (kaigossel)
approved these changes
May 19, 2026
Marvin Sibbing (mappinnn)
approved these changes
May 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I also went ahead and added the
stylistic/quoteseslint rule to ensure we only use single quotes.