Git Product home page Git Product logo

intershop / intershop-pwa Goto Github PK

View Code? Open in Web Editor NEW
153.0 153.0 79.0 38.24 MB

The Intershop PWA is an Angular based progressive web app storefront for the Intershop Commerce Platform.

Home Page: https://www.intershop.com/progressive-web-app

License: MIT License

Shell 0.30% Dockerfile 0.09% JavaScript 1.14% TypeScript 88.67% HTML 7.64% SCSS 2.12% Handlebars 0.01% Lua 0.01%
ecommerce progressive-web-app pwa

intershop-pwa's People

Contributors

amenzelintershop avatar andreassteinmann avatar cbratsch avatar cesargamasa avatar derksacklowski avatar dhhyi avatar dilaragueler avatar diverdori avatar eisie96 avatar fmalcher avatar franciscomdrito avatar harshrsys avatar issupport avatar jometzner avatar jstein213 avatar kepek avatar lucashengelhaupt avatar marschmidt89 avatar maxkless avatar mglatter avatar mlegeler avatar moritzrs avatar mwallnisch avatar sebastian-haehnlein avatar sebastianglass avatar sgrueber avatar shauke avatar skoch-intershop avatar suschneider avatar tbouliere-datasolution avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

intershop-pwa's Issues

Demo Servers for Pull Requests

Is your feature request related to a problem? If yes, please describe it.

For an easier functional review, it would be best if proposing a Pull Request would also spin up a demo server running the code of the current Pull Request.

Describe the desired solution.

A simple deployment could be made to the Azure Cloud with a cost-efficient AppService.

Describe alternatives you've considered.

Also possible would be to have a Review Server managed somewhere else, maybe on the corporate web with access from the outside.

Provide additional context.

  • first part supplied by #321
    • no nginx
    • App Services on Free service plan

Console Error Logs in CI Jest Test

Actual Behavior

user.effects.spec.ts log some errors to console.error
"Unhandled Promise rejection: Cannot match any routes. URL Segment: 'account/profile'"
looks like logging without throwing an error

Expected Behavior

clean output for ci

Steps to Reproduce the Bug

  1. run jest tests (npm t)

Additional Context, like Screenshots, Log File Snippets etc.

console.error node_modules/zone.js/dist/zone.js:703
      Unhandled Promise rejection: Cannot match any routes. URL Segment: 'account/profile' ; Zone: ProxyZone ; Task: Promise.then ; Value: Error: Cannot match any routes. URL Segment: 'account/profile'
          at ApplyRedirects.noMatchError (/home/runner/work/intershop-pwa/packages/router/src/apply_redirects.ts:112:12)
          at CatchSubscriber.selector (/home/runner/work/intershop-pwa/packages/router/src/apply_redirects.ts:89:20)
          at CatchSubscriber.Object.<anonymous>.CatchSubscriber.error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/operators/catchError.ts:132:23)
          at MapSubscriber.Object.<anonymous>.Subscriber._error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:143:22)
          at MapSubscriber.Object.<anonymous>.Subscriber.error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:113:12)
          at MapSubscriber.Object.<anonymous>.Subscriber._error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:143:22)
          at MapSubscriber.Object.<anonymous>.Subscriber.error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:113:12)
          at MapSubscriber.Object.<anonymous>.Subscriber._error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:143:22)
          at MapSubscriber.Object.<anonymous>.Subscriber.error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:113:12)
          at ThrowIfEmptySubscriber.Object.<anonymous>.Subscriber._error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:143:22)
          at ThrowIfEmptySubscriber.Object.<anonymous>.Subscriber.error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:113:12)
          at TakeLastSubscriber.Object.<anonymous>.Subscriber._error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:143:22)
          at TakeLastSubscriber.Object.<anonymous>.Subscriber.error (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/Subscriber.ts:113:12)
          at MergeMapSubscriber.Object.<anonymous>.OuterSubscriber.notifyError (/home/runner/work/intershop-pwa/intershop-pwa/node_modules/rxjs/src/internal/OuterSubscriber.ts:17:22)
...

[FR] Wishlists

Is your feature request related to a problem? If yes, please describe it.

There is no support for wishlists available in PWA

Describe the desired solution.

Support for Wishlists. Ability to create wishlists as a customer and add products to it from the product detail page. Ability to manage my wishlists in my account. Ability to add products to the cart from wishlists. Ability to move products from one wishlist to another one.

Environment variables

We’re facing some issues regarding server side rendering and environment variables.
When we do a hard refresh (ctrl+f5) we see the right environment variables (process.env variables) coming from the server.

On a normal refresh (f5) we see the production variables coming from environment.prod.ts, because we do a prod build and use Docker. We want the application to always check the server variables first, but this doesn’t seem to work like that.

With Docker we should use the same image for each environment with different process.env configuration right?
So if that's the case it should always get the environment variables from the process.env or do we still need to create the angular application using npm build -c test and npm build -c accept?

Identifier 'productMasterSKU' is not defined

Actual Behavior

When opening the file: product-detail.component.html and navigating to
<ish-product-variation-select
*ngIf="isVariationProduct(product)"
[productMasterSKU]="product.productMasterSKU"
[variationOptions]="variationOptions"
(selectVariation)="variationSelected($event)"
>

I get a warning that "'Identifier for productMasterSKU' is not defined"

Expected Behavior

No warning at all.

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. Go to 'product-detail.component.html' using Visual Studio Code
  2. Click on '....'
  3. Scroll down to '<ish-product-variation-select...'
  4. See error

Environment Details

Desktop:

  • OS: [e.g. iOS] CentOS
  • Browser [e.g. chrome, safari], Version [e.g. 22]
  • Project Code Version 0.17.0

Smartphone:

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari], Version [e.g. 22]
  • Project Code Version

Additional Context, like Screenshots, Log File Snippets etc.

[Bug] 0.16.0 missing assets

Actual Behavior

  • the 0.16.0 release is missing many assets like the roboto fonts, favicon, sprite-icons.svg, logo.ong and the homepage refers to products which don't exist in the standard ICM demo store.

Expected Behavior

  • at least all assets which are not retrieved via REST should be part of the distribution.
    Will you handle the bug fix?

[ ] Yes
[ X] No

miss-matched current url host with actual page host

Actual Behavior
At app.facede.js, currentUrl$ pipe not evaluating correct url if page hosted in domain origin other than 'icmBaseURL' rest origin.

Expected Behavior
currentUrl$ should be generated with actual hosted page origin. Like window.location.origin.

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. Try on instance hosting url and rest API management url's are differs,
  2. Go to any product detail page with share with mail link activated,
  3. Click mail to icon,
  4. See product url contains rest url origin instead of actual page at mail body

Environment Details

*Desktop:

  • OS: MacOS
  • Browser: Chrome
  • Project Code Version: 0.16.1

Additional Context, like Screenshots, Log File Snippets etc.

currentUrl$ = this.store.pipe(
select(getICMBaseURL),
map(baseUrl => baseUrl + this.location.path())
);

Adapt CMS personalized Requests for ICM 7.10.19

The CMS REST API for ICM 7.10.19 will handle personalized requests more specific.

This means, the personalized requests will change from -;pgid=foo/cms/... to -/cms;pgid=foo/...

To handle this new required behabior, the cms.service must be adapted and the pgid functionality from the api.service moved to the cms.service.

User Management | User List View - Base Version

Implementation of the basic read only User List View (only display of user name, no search, pagination, no actions etc.)

  • Store
  • Facade
  • Service
  • Component
  • Styling
  • Tests
  • Error Handling (b2b permission denied, visibility b2c)

user-information-mobile component uses Bootstrap grid system wrong

Actual Behavior

In the user-information-mobile.component.html template the HTML structure uses the Bootstrap grid system in a wrong manner (row and col in the same div).

 <div class="row col col-12">

Expected Behavior

The user-information-mobile.component.html HTML structure should follow the Bootstrap grid system guide (see https://getbootstrap.com/docs/4.4/layout/grid/) resulting in the same styling as the current implementation.
It is probably a good approach too to review the user-information-mobile.scss definitions in regards to not redefining standard Bootstrap classes.

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. Open the PWA storefront with a small screen size to see the "mobile header"
  2. Click on the hamburger navigation of the header
  3. See the section below the main navigation
    --> "Welcome to inSPIRED" and below is the user-information-mobile component

Bonus Points for ;)
a dynamic solution for the hard coded localization keys channel name

"header.welcome.text": "Welcome to inSPIRED",

multiple theme support should change system icons (e.g. favicon) too

Is your feature request related to a problem? If yes, please describe it.

The current implementation of the multiple theme support (see #49) can change the complete styling off the whole storefront application including the logo images in the header. It basically allows to change everything that can be controlled via CSS.

Unfortunately some logo images that are part of the PWA and its appearance are not configured via CSS and therefore are not yet changeable via the current multiple theme support implementation. In detail these are:

  • favicon.ico (see index.html in src folder)
  • PWA icons (see manifest.webmanifest in src folder)
  • Apple icons (see index.html in src folder)
  • <meta name="theme-color" content="#ff6d00" />

Describe the desired solution.

A solution is required that will change the used/referenced files based on the already available theme environment configuration, e.g. theme: blue.

Provide additional context.

The needed logo files in the fitting blue color (#688dc3) are provided at this ticket.

[QUESTION] SEO locales

I'm currently using the "seo.title.home" in the app-routing-module.ts.

It's always showing me the "en_US" translation as my title. The weird thing is that I expect to see another translated title here ("nl_NL") since I'm also seeing my other translations perfectly fine in my components while using the translate pipe.

Am I forgetting to set a default language somewhere? Or are the seo related things always looking at "en_US"?

I have defined my own language "nl_NL" inside all my environments as the first locale.

Thank you in advance.

Concardis DirectDebit cannot be assigned to basket

Actual Behavior
On the checkout payment page the Concardis direct debit payment method does not display the mandate text. This leads to the effect that this payment method can not apply for the basket.
Furthermore, when setting the PWA to German/EUR we get the error ": Cannot read the property 'value' of undefined" on the payment page.

Related Jira issue: ISREST-1035, ISREST-1036

Expected Behavior
The mandate text should displayed on the Concardis direct debit payment method.

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. Create a Concardis direct debit payment method(should not have the id Concardis_DirectDebit) in the ICM backoffice
  2. Switch to German PWA view
  3. add a product to the basket
  4. execute a checkout until the payment page is reached
  5. on the payment page click on "Zahlungsmittel hinzufügen" in the direct debit payment method section
  6. error: no mandate text is displayed

Environment Details

ICM 7.10.17.0
Concardis: 1.9.4
PWA: 0.18.1

Additional Context, like Screenshots, Log File Snippets etc.
image002

[Bug] Merging 0.16.1 as 2nd upstream repository: "refusing to merge unrelated histories"

Actual Behavior
$ git merge intershop/master
fatal: refusing to merge unrelated histories

Expected Behavior
$ git merge intershop/master
Start a merge and inform me of the issues I need to resolve manually.

Steps to Reproduce the Bug
Until 0.15 it was possible to merge the latest changes into our current project using the documentation "Keeping Custom Project up to Date" using the zip-release from the intershop repository. Version 0.16(.1) is not available there. The new source is github.

As of 0.16, this section in the documentation has been removed.

Steps to reproduce the behavior:
$ cd to-your-project-directory
$ git remote add intershop [email protected]:intershop/intershop-pwa.git
$ git fetch --all
$ git merge intershop/master

Environment Details
Custom project based of Intershop PWA 0.14, with 0.15 merged into our code base.

[Bug] Retailsets and -products without Price

Actual Behavior

retail-set with products without price throw an error on calculatePriceRange

Expected Behavior

no js-errors

Steps to Reproduce the Bug

Steps to reproduce the behavior:
pre: b2b-channel

  1. remove price of an retailset-product (201807196)
  2. Go to Product-Detail-Page (retailset) (201807198)
  3. Error in Console

Error: cannot handle undefined inputs
at Function.sanityChecks (price.helper.ts:6) [angular]
at min (price.helper.ts:38) [angular]
at Array.reduce () [angular]
at MapSubscriber.calculatePriceRange [as project] (product.helper.ts:147) [angular]
...

AB#79380

Server side rendering: deviceType

Hello,

I was wondering if it's possible to detect the device on the server in some sort of way? It's now always 'mobile' by default, is there a reason for this?

Regards,
Nicky Haze - Incentro

defer-load not working on Chromium Linux

Actual Behavior

In Chromium on Linux some defer-loaded Containers not shown.
e.g. Product-Image on Product-Detail-Page

Expected Behavior

defer-loaded Containers works on every Browser

Steps to Reproduce the Bug

Chromium Linux

  1. Go to Product-Detail-Page
  2. look at Product-Image

Environment Details

Desktop:

  • OS: Linux
  • Browser: Chromium/Chrome

Will you handle the bug fix?

[x] Yes
[ ] No

Order details page: order summary is not readable on large screens

Actual Behavior

The order summary is shown with full width. That's why it is hard to assign the labels to the related prices.

Expected Behavior

The order summary is not shown with full width on large screens.

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. Create an order as registered user
  2. Go to order details page
  3. Check order summary

orderDetails

Translation of product attribute names doesn’t work

Actual Behavior
While localized calls to the /products/<sku> REST resource return the product attribute values as localized values the attribute names are still returned in English. This will then result in a language mix in localized storefronts.

Expected Behavior
The attribute values as well as the attribute names should be returned in the requested locale with the /products/<sku> call.

Additional Context
Currently the attributes come from the {attributes} element. They are still available in the REST API, but they will not return the attribute names in the requested locale.
An attributeGroups Query parameter was created, with which you can query custom attributes in groups.
For the product details REST call with localized attributes names the call would look like this example:
/products/<sku>?attributeGroups = PRODUCT_DETAIL_ATTRIBUTES
The attributeGroups element is localized correctly and should be used to map the product details from there. (The explicit request of the attributeGroups might not even be necessary.)

Please note: Since all custom attributes can now be queried, there is the "Available via REST" flag on each group (at channel level) - this way non-storefront-relevant attributes can be protected. If the Query returns an empty attributeGroups element, then the checkbox is not set.

Steps to Reproduce the Bug

  1. Go to the PWA storefront
  2. Change the locale in the header to German
  3. Go to a product detail page
  4. Open the Details section
    --> the attribute names are displayed in English

Personalized Content can be seen after logout

Steps to Reproduce the Bug

To repeat the but, you should reduce your Request speed, eg. by using the devtools

  1. add a new PageVariant to the About Us page, only visible for Registered Users
  2. Open PWA, navigate to "About us" -> default view
  3. Login, goto "About us" -> registered only view
  4. Logout
  5. goto "About us"

Actual Behavior

the page will show the registered only view until the default view is loaded from the server.

This could lead to some security issues, if content is visible for unauthorized targets.
This bug should not only affect pages, but includes and all their children as well

Expected Behavior

the page will show only the default view

[FR] Sitemap.xml support

Is your feature request related to a problem? If yes, please describe it.

In order to provide search engines the ability to crawl relevant pages easily, it is intended to provide a sitemap.xml for crawling, containing URL´s of the relevant pages (category pages, product detail pages, content pages)

Additionally, the sitemap could contain hreflang information to better support multi language/country scenarios.

AB#96179

Price display for B2B

Is your feature request related to a problem? If yes, please describe it.

Prices for B2B customers should be displayed as net prices as this is common in B2B ecommerce.

Describe the desired solution.

Prices display settings should be retrieved via REST API and basket/order prices (gross/net) should be displayed based on these settings.

  • If it is clear whether the customer is a B2C or B2B customer, prices should be displayed according to the respective settings for this customer type, fixed assignment ( b2b => net prices, b2c => gross prices).

  • assign the price type dynamically according to the preferences made in the ICM back office

  • For anonymous users the 'defaultCustomerTypeForPriceDisplay' configuration parameter defined in the ICM back office should be concidered whether anonymous customers see the prices of a business or private customer.

  • Change the display of the basket and order cost summary according to the price type (gross/net)

  • Product prices anywhere should also follow this pattern

  • Additionally there should be a way for anonymous users to identify themselfes as either B2B or B2C customer, e.g. following a certain link.

AB#79381

checkout address page: region is sometimes not displayed in edit address mode

Actual Behavior
If the user clicks the 'edit address' icon button on checkout address page in order to edit the invoice or shipping address, the address form is displayed but the region of the address is sometimes missing or wrong.

Expected Behavior
The correct address region is displayed in the edit address form of the checkout address page.

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. Add some products to cart and go to cart page
  2. Click on 'checkout', login if necesssary
  3. On checkout address page select a shipping address that has a region (e.g. a US address) and click the edit address button
  4. The address form is opened, but the region is missing or wrong

hint: this error doesn't occur always, so it might be possible to retry it if the error doesn't occur

ContentPageletEntryPoint-Mapper should not use Link for id

Actual Behavior

The ContentPageletEntryPoint-Mapper creates a ContentPageletEntryPoint with an id based on data.link.title. However this is not correct, due the Title will be different from the id in the future.

  const pageletEntryPoint: ContentPageletEntryPoint = {
      id: data.link.title,
      ...

Expected Behavior

The ContentPageletEntryPoint-Mapper will create a ContentPageletEntryPoint with an id based on data.id .

  const pageletEntryPoint: ContentPageletEntryPoint = {
      id: data.id,
      ...

[Bug] Racecondition in quote-request.service

Actual Behavior

sometimes there is an error on quote/request-detail-page

Expected Behavior

no racecondition

Steps to Reproduce the Bug

Steps to reproduce the behavior:

  1. login into b2b
  2. go to quote/request detail page ( MY ACCOUNT / QUOTES / QUOTE DETAILS )
  3. refresh window (f5)
  4. sometimes there is an error "{message: 'not logged in'}"
    Bildschirmfoto von 2020-01-14 15-04-01

Environment Details

*Desktop:

  • Browser chrome

Additional Context, like Screenshots, Log File Snippets etc.

src/app/extensions/quoting/services/quote-request/quote-request.service.ts line 38 - 45 (this.ids$ = ...)

Resetting includes, pagelets and pages

Hello,

I was wondering why the includes, pagelets and pages are reset after logging out? This happens in there effects. The reset of the components will result into blank components.

Image zoom support on product detail page

Is your feature request related to a problem? If yes, please describe it.

Ability to zoom into product images on the product detail page

Describe the desired solution.

Describe alternatives you've considered.

Provide additional context.

AB#74390

Update language with url params resulted mixing page locale

Actual Behavior

Using lang parameter depending on configuration set-up causing mixed page locale selection.

Expected Behavior

Given language by using lang parameter should reflect completely on current page locale without depending on your environment setup.

Steps to Reproduce the Bug
Strange behaviour exist if follow steps to set-up environment and execute;

  • Set-up different initial locales between;
    • LOCALE_ID which is used to set default locale at configuration.module.ts:47 (Able to control explicitly by using providers: [{provide: LOCALE_ID, useValue: 'fr-FR'}])
    • First available of locale from locales at environment.prod.ts or environment.ts (Current setup using en_US as a first available locale)
  • Assume we have fr_FR as default locale from LOCALE_ID and en_US as first locale from environment.prod.ts or environment.ts
  • Run application, npm start
  • Try to navigate http://localhost:4200/home;lang=fr_FR
  • See mixing over selected locale and page content.
    • image

Environment Details

Desktop:

  • Chrome 80.0.3987.163
  • PWA 0.18

Possible Root Cause

  • Application causing repeating language switch within short period of time, which triggers known ngx-translate issue ngx-translate/core#1030,
  • As a result application state switched correct language, loaded translation may differs,
  • Adding defer times while switching language like using debounceTime or removing possible repeated language switch with same language code two times or more by using translateService.use or translateService.setDefaultLang which is leading translation loads in wrong order.

User Management | User Details View - Base Version

Implementation of the User Detail View. Display only user details (name, email address), no role assignments, budgets etc.

  • Store
  • Facade
  • Service
  • Component
  • Styling
  • Breadcrumb
  • Tests
  • change routing param to login
  • visibility b2c
  • error handling (b2b permission denied)
  • refresh page (F5)
  • list request without details
  • clean store on logout
  • localized error message
  • e2e tests

Concardis direct debit payment method doesn't work after angular 9 update

Actual Behavior
If the concardis direct debit payment method is eligible on checkout payment page an error occurs and it is not possible to pay with this payment method.

Expected Behavior
It is not possible to pay with this concardis direct debit payment method again.

Steps to Reproduce the Bug
Precondition; enable concardis direct debit payment method in the ICM Backoffice

Steps to reproduce the behavior:

  • logon and add some products to cart
  • start checkout and go to checkout payment page
    -> the page is corrupt and there is an error in the browser console

schematics for cms in extensions

Is your feature request related to a problem? If yes, please describe it.

I'd like to create cms components / pages and the like for an extension. The ng g cms .... does not understand the option --extension nor the extension itself.

Describe the desired solution.

I'd like to use a syntax like: ng g cms warehouse --extension inventory --definitionQualifiedName ....

Describe alternatives you've considered.

I could possibly create the artefacts on my own without the support of schematics.

Provide additional context.

image

AB#79383

Category tile changes the whole time and causes memory problems

When we open the category page we noticed that our browser had some issues because of an infinite loop.

We did some research and saw that the children() inside createCategoryView is called an enormous amount of times.

To reproduce this:

  1. go to CategoryTileComponent
  2. checkout the changes by implementing ngOnChanges inside this component.
ngOnChanges(c: SimpleChanges) {
    console.log('c', c);
  }

We have also included a screenshot to make this more clear. It would be great if you can have a look at this. Thank you in advance!

image

Product Labels are not displayed on Product Listing Pages

Actual Behavior

Product labels like "sale" are not displayed on product listing pages.

Expected Behavior

Product labels like "sale" are displayed on product listing pages.

Steps to Reproduce

Steps to reproduce the behavior:

  1. Go to https://intershoppwa.azurewebsites.net/category/Specials.HotDeals
    -> First Item BENQ MD300 should have a "sale" label.
    When going to product detail page, it is displayed

Additional Context, like Screenshots, Log File Snippets etc.

The call for the listing is done by:
https://intershoppwa.azurewebsites.net/INTERSHOP/rest/WFS/inSPIRED-inTRONICS-Site/-;loc=en_US;cur=USD/categories/Specials/HotDeals/products?attrs=sku,salePrice,listPrice,availability,manufacturer,image,minOrderQuantity,inStock,promotions,packingUnit,mastered,productMaster,productMasterSKU,roundedAverageRating,retailSet&attrsGroups=PRODUCT_LABEL_ATTRIBUTES&amount=9&offset=0&returnSortKeys=true&productFilter=fallback_searchquerydefinition

According to http://developer.cloud.intershop.com/#/Product/getProductsListResource it would work using the parameter attributeGroup=PRODUCT_LABEL_ATTRIBUTES

Set language based on browser setting

Is your feature request related to a problem? If yes, please describe it.

Users should automatically see the storefront in their preferred language if possible.

Describe the desired solution.

If the users enters the storefront and the browser locale is equal to one that is supported by the storefront, it should be used by default by the storefront. In case the user wants a different language, she can easily switch th the desired locale via language switch.

Describe alternatives you've considered.

Provide additional context.

AB#79382

Loading animation is not shown on scrollable pages

Actual Behavior
If a page has a height bigger than the screen like an order list with many entries the loading animation is not shown.

Expected Behavior
The loading animation is shown centered related to the screen.

Steps to Reproduce the Bug
Steps to reproduce the behavior:

  1. Create 15 orders.
  2. Go to myAccount/order history
  3. The order list is greyed out during the data reload but the loading animation icon is not visible

Schematics For Facades

Is your feature request related to a problem? If yes, please describe it.

While creating an extension, I miss a folder for placing a facade. Also the facade (or at least some skeleton) is missing.

Describe the desired solution.

It is probably best to extend the extension creation in a way that also a facade got created as well.

Describe alternatives you've considered.

Provide additional context.

[FR] Dynamic Branding

It should be possible to dynamically change the branding within one PWA instance, e.g. exchange logo and color scheme. Dynamically, meaning no separate deployments are needed for the different brandings. This should be handled by on deployed PWA that can be configured (similar to the feature toggles) to use one or another branding.

Possible solution

Other ideas are welcome.

Classify Action Type (API, Internal,...)

Some actions only contain a generic substore reference (e..g. [Shopping]) and/or no specific dispatch references (like [Aaa/API] or [Aaa/Internal]).

To increase developer efficiency and readability of dispatched actions, we should rename these action types to be clearer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.