Skip to content

Commit

Permalink
Merge branch 'develop' into 'master' for 4.1.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
shauke committed Jun 21, 2023
2 parents 5c0f648 + d8f722d commit 4789404
Show file tree
Hide file tree
Showing 315 changed files with 8,550 additions and 25,368 deletions.
3 changes: 3 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@
# from projects/requisition-management/src/app/exports/.gitignore
/projects/requisition-management/src/app/exports/**/lazy*

# from src/app/extensions/address-doctor/exports/.gitignore
/src/app/extensions/address-doctor/exports/**/lazy*

# from src/app/extensions/compare/exports/.gitignore
/src/app/extensions/compare/exports/**/lazy*

Expand Down
11 changes: 8 additions & 3 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@
"message": "use star imports only for aggregation of deeper lying imports"
},
{
"importNamePattern": "^(?!(range|uniq|memoize|once|groupBy|countBy|flatten|isEqual|intersection|pick|differenceBy|unionBy|mergeWith)$).*",
"importNamePattern": "^(?!(range|uniq|memoize|once|groupBy|countBy|flatten|isEqual|intersection|pick|differenceBy|unionBy|mergeWith|snakeCase|capitalize)$).*",
"name": "lodash.*",
"filePattern": "^.*/src/app/(?!.*\\.spec\\.ts$).*\\.ts$",
"message": "importing this operator from lodash is forbidden"
Expand Down Expand Up @@ -361,6 +361,12 @@
"name": "@typescript-eslint/experimental-utils",
"filePattern": ".*eslint-rules/.*",
"message": "Change to \"@typescript-eslint/utils\"."
},
{
"importNamePattern": "^DomService$",
"name": "ish-core/utils/dom/dom.service",
"filePattern": "^.*\\.(component|directive)\\.ts*$",
"message": "The \"DomService\" should only be used in injectable classes. Use the Angular \"Renderer2\" instead."
}
]
],
Expand Down Expand Up @@ -694,8 +700,6 @@
"jsdoc/check-values": "warn",
"jsdoc/empty-tags": "warn",
"jsdoc/implements-on-classes": "warn",
"jsdoc/newline-after-description": ["warn", "always"],
"jsdoc/no-undefined-types": "warn",
"jsdoc/require-property-description": "warn",
"jsdoc/require-property-name": "warn",
"jsdoc/require-property-type": "warn",
Expand Down Expand Up @@ -910,6 +914,7 @@
"rules": {
"@angular-eslint/template/accessibility-alt-text": "error",
"@angular-eslint/template/accessibility-elements-content": "error",
"@angular-eslint/template/accessibility-label-for": "error",
"@angular-eslint/template/accessibility-valid-aria": "error",
"@angular-eslint/template/click-events-have-key-events": "error",
"@angular-eslint/template/mouse-events-have-key-events": "error",
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dead-code.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
- cron: '0 0 * * 0'

env:
NODE_VERSION: 18.15.0
NODE_VERSION: 18.16.0

jobs:
TestBed:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/development.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ on:
- 'docs/**'

env:
NODE_VERSION: 18.15.0
NODE_VERSION: 18.16.0
ICM_BASE_URL: http://pwa-review.northeurope.cloudapp.azure.com:8081

jobs:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
types: [opened, synchronize]

env:
NODE_VERSION: 18.15.0
NODE_VERSION: 18.16.0

jobs:
Docs:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ on:
- 'docs/**'

env:
NODE_VERSION: 18.15.0
NODE_VERSION: 18.16.0
NODE_OPTIONS: --max_old_space_size=8192
ICM_BASE_URL: http://pwa-review.northeurope.cloudapp.azure.com:8081

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/updates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
- cron: '0 0 * * *'

env:
NODE_VERSION: 18.15.0
NODE_VERSION: 18.16.0

jobs:
Updates:
Expand Down Expand Up @@ -40,7 +40,7 @@ jobs:
run: npm outdated --long || true

- name: Must Have Updates for PWA
run: npm audit --production
run: npm audit --omit=dev
if: always()

- name: Peer Dependency Incompatibilities
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:
- 'docs/**'

env:
NODE_VERSION: 18.15.0
NODE_VERSION: 18.16.0
NODE_OPTIONS: --max_old_space_size=8192
JEST_MAX_WORKERS: 1
CI: false
Expand Down
2 changes: 1 addition & 1 deletion .prettierrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"endOfLine": "auto",
"overrides": [
{
"files": ["*.ts", "*.mjs"],
"files": ["*.ts", "*.mjs", "*.mts"],
"options": {
"parser": "typescript"
}
Expand Down
1 change: 1 addition & 0 deletions .vscode/intershop.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ crosssells
cxml
cybersource
datepicker
decamelize
directdebit
dockerignore
dockerized
Expand Down
463 changes: 253 additions & 210 deletions 3rd-party-licenses.txt

Large diffs are not rendered by default.

49 changes: 49 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,55 @@ kb_everyone

# Changelog

## [4.1.0](https://github.com/intershop/intershop-pwa/releases/tag/4.1.0) (2023-06-22)

**required Intershop Commerce Management version: 7.10.39.2**

**required/tested Node.js version: 18.16.0 LTS (including npm 9.5.1)**

### Features

- add Address Doctor integration (#1337) ([28eb2ce](https://github.com/intershop/intershop-pwa/commit/28eb2ce))
- introduce FeatureEventService as addition to the FeatureToggleService ([c5973ac](https://github.com/intershop/intershop-pwa/commit/c5973ac))
- fetch anonymous user token only on basket creation when no apiToken is available ([a16501f](https://github.com/intershop/intershop-pwa/commit/a16501f))
- improve token endpoint handling ([2aa15ba](https://github.com/intershop/intershop-pwa/commit/2aa15ba))
- OCI punchout configuration (#1431) ([dfc19ac](https://github.com/intershop/intershop-pwa/commit/dfc19ac))
- load extra configuration from Configuration CMS component for dynamic storefront configuration (#1427) ([f50671a](https://github.com/intershop/intershop-pwa/commit/f50671a))
- make the 'b2c' theme a configurable theme dynamically customizable with CSS custom properties (#1427) ([849ebc1](https://github.com/intershop/intershop-pwa/commit/849ebc1))
- add "accept only essential" cookies to Cookie Consent banner (#1430) ([34d138c](https://github.com/intershop/intershop-pwa/commit/34d138c))
- accessibility improvements - lighthouse report (#1405) ([4e38080](https://github.com/intershop/intershop-pwa/commit/4e38080))
- add domService for DOM manipulations ([3232241](https://github.com/intershop/intershop-pwa/commit/3232241))

### Bug Fixes

- handle failing basket fetching for anonymous ICM apiToken without an assigned basket ([a55751f](https://github.com/intershop/intershop-pwa/commit/a55751f))
- product variation master facet selection does not work for non-string filters (#1439, #1449) ([94967fa](https://github.com/intershop/intershop-pwa/commit/94967fa))
- parameters ;loc and ;cur may overlook server configuration ([ff102e3](https://github.com/intershop/intershop-pwa/commit/ff102e3))
- save company name(s) at address after b2b customer registration (#1444) ([4d81e6b](https://github.com/intershop/intershop-pwa/commit/4d81e6b))
- force a name attribute on radio inputs (#1435) ([a8f0817](https://github.com/intershop/intershop-pwa/commit/a8f0817))
- 'ishIntersectionObserver' emits 'NotVisible' events when target element moves out of viewport (#1433) ([237a1a8](https://github.com/intershop/intershop-pwa/commit/237a1a8))
- use 'stepQuantitiy' instead of 'stepOrderQuantity' to fetch the correct data in product listings (#1432) ([bd20419](https://github.com/intershop/intershop-pwa/commit/bd20419))
- add promotion code encoding to the REST call for promotion code removal (#1428) ([db1860d](https://github.com/intershop/intershop-pwa/commit/db1860d))
- adapt 'addGlobalGuard' function to work with functional guards (#1425) ([2bf9828](https://github.com/intershop/intershop-pwa/commit/2bf9828))
- add items to basket with common shipping method (#1419) ([6ee9909](https://github.com/intershop/intershop-pwa/commit/6ee9909))
- identity Provider init() should be triggered async (#1415) ([61c4b0f](https://github.com/intershop/intershop-pwa/commit/61c4b0f))

### Performance Improvements

- textarea description wrapper trigger to much changes (#1438) ([7cd3933](https://github.com/intershop/intershop-pwa/commit/7cd3933))

### Documentation

- add Configurable Theme documentation (#1427) ([7a48e20](https://github.com/intershop/intershop-pwa/commit/7a48e20))
- added "Disabling the Integrated Cookie Consent Handling" documentation ([38f3751](https://github.com/intershop/intershop-pwa/commit/38f3751))
- extend logging documentation for logging to an external device (#1417) ([20f75a2](https://github.com/intershop/intershop-pwa/commit/20f75a2))

### BREAKING CHANGES

- The `/token` endpoint handling was improved (see [Migrations / 4.0 to 4.1](https://github.com/intershop/intershop-pwa/blob/develop/docs/guides/migrations.md#40-to-41) for more details).
- The `ishIntersectionObserver` returns `NotVisible` status now too (see [Migrations / 4.0 to 4.1](https://github.com/intershop/intershop-pwa/blob/develop/docs/guides/migrations.md#40-to-41) for more details).
- The two standard themes `b2b` and `b2c` where refactored in such a way that the `b2c` theme could be changed into a configurable theme (see [Migrations / 4.0 to 4.1](https://github.com/intershop/intershop-pwa/blob/develop/docs/guides/migrations.md#40-to-41) for more details).

## [4.0.0](https://github.com/intershop/intershop-pwa/releases/tag/4.0.0) (2023-04-06)

**required Intershop Commerce Management version: 7.10.39.2**
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# synchronize-marker:docker-cache-share:begin
FROM node:18.15.0-alpine as buildstep
FROM node:18.16.0-alpine as buildstep
ENV CI=true
WORKDIR /workspace
COPY package.json package-lock.json /workspace/
Expand Down Expand Up @@ -27,7 +27,7 @@ RUN npm run build:multi server
RUN node scripts/compile-docker-scripts
COPY dist/* /workspace/dist/

FROM node:18.15.0-alpine
FROM node:18.16.0-alpine
COPY --from=buildstep /workspace/dist /dist
RUN cd dist && npm install
ARG displayVersion=
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile_reports
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# To build this report image, you will have to temporarily truncate the .dockerignore

# synchronize-marker:docker-cache-share:begin
FROM node:18.15.0-alpine as buildstep
FROM node:18.16.0-alpine as buildstep
ENV CI=true
WORKDIR /workspace
COPY package.json package-lock.json /workspace/
Expand Down
47 changes: 26 additions & 21 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,16 @@ services:
pwa:
build:
context: .
# dockerfile: Dockerfile_noSSR
args:
serviceWorker: 'false'
# activeThemes: b2b
# activeThemes: b2c
environment:
# ICM_BASE_URL:
LOGGING: 'true'
SOURCE_MAPS: 'true'
ICM_BASE_URL:
# PROXY_ICM: 'true'
TRUST_ICM: 'true'
# PROXY_ICM: 'true'
# PROMETHEUS: 'true'
# MULTI_SITE_LOCALE_MAP: |
# en_US: /en
Expand All @@ -34,15 +33,18 @@ services:
# Punchout:
# type: PUNCHOUT

# Logging to an External Device (see logging.md)
# volumes:
# - d:/pwa/logs:/.pm2/logs/

# <CDN-Example>
# add 127.0.0.1 mypwa.net to your hosts file and
# uncomment the following lines
#
# - DEPLOY_URL=http://mypwa.net:4222
# DEPLOY_URL: 'http://mypwa.net:4222'
# cdn:
# build:
# context: .
# dockerfile: Dockerfile_noSSR
# args:
# configuration: production
# serviceWorker: 'false'
Expand All @@ -60,25 +62,13 @@ services:
- '4200:80'
# - '4200:443'
# - '9113:9113'
#
# Uncomment this if you want the containers CA to be available on your local machine
# 1.) provide below adjusted volume mapping
# 2.) download and install mkcert -> https://github.com/FiloSottile/mkcert
# 3.) `export CAROOT=/home/your-user/ca-dir`
# 4.) `mkcert -install`
#
# For more details have a look at https://github.com/FiloSottile/mkcert#installing-the-ca-on-other-systems
#
# hostname: 'your-local-host-name-with-fqdn'
# volumes:
# - /home/your-user/ca-dir:/root/.local/share/mkcert
environment:
UPSTREAM_PWA: 'http://pwa:4200'
# DEBUG: 1
NGINX_ENTRYPOINT_QUIET_LOGS: ANYVALUE
CACHE: 0
SSR: 1
SSL: 0
# SSL: 1
# SSR: 0
# DEBUG: 1
# PROMETHEUS: 1
# COMPRESSION: 0
# DEVICE_DETECTION: 0
Expand All @@ -87,7 +77,6 @@ services:
# MULTI_CHANNEL_SOURCE: env:///ASDF?type=application/yaml
# BASIC_AUTH: 'developer:!InterShop00!'
# BASIC_AUTH_IP_WHITELIST: |
# # - 172.22.0.1
# - 1.2.3.4
# OVERRIDE_IDENTITY_PROVIDERS: |
# .+:
Expand All @@ -107,3 +96,19 @@ services:
- baseHref: /b2c
channel: default
theme: b2c
# Logging to an External Device (see logging.md)
# volumes:
# - d:/pwa/logs:/var/log/

# Uncomment this if you want the containers CA to be available on your local machine
# 1.) provide below adjusted volume mapping
# 2.) download and install mkcert -> https://github.com/FiloSottile/mkcert
# 3.) `export CAROOT=/home/your-user/ca-dir`
# 4.) `mkcert -install`
#
# For more details have a look at https://github.com/FiloSottile/mkcert#installing-the-ca-on-other-systems
#
# hostname: 'your-local-host-name-with-fqdn'
# volumes:
# - /home/your-user/ca-dir:/root/.local/share/mkcert
7 changes: 4 additions & 3 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ kb_sync_latest_only

- [Concept - Progressive Web App](./concepts/progressive-web-app.md)
- [Guide - Customizations](./guides/customizations.md)
- [Guide - Multiple Themes](./guides/multiple-themes.md)
- [Guide - Cookie Consent](./guides/cookie-consent.md)
- [Guide - Themes](./guides/themes.md)
- [Guide - Migration](./guides/migrations.md)
- [Guide - Cookie Consent](./guides/cookie-consent.md)
- [Concept - URL Rewriting](./concepts/url-rewriting.md)
- [Guide - Mocking REST API Calls](./guides/mocking-rest-calls.md)

Expand All @@ -80,8 +80,9 @@ kb_sync_latest_only

### Third-party Integrations

- [Guide - Google Tag Manager](./guides/google-tag-manager.md)
- [Guide - Tracking with Google Tag Manager](./guides/google-tag-manager.md)
- [Guide - Client-Side Error Monitoring with Sentry](./guides/sentry-error-monitoring.md)
- [Guide - Extended Product Configurations with Tacton](./guides/tacton-product-configuration.md)
- [Guide - Monitoring with Prometheus](./guides/prometheus-monitoring.md)
- [Guide - Store Locator with Google Maps](./guides/store-locator.md)
- [Guide - Address Check with Address Doctor](./guides/address-doctor.md)
Loading

0 comments on commit 4789404

Please sign in to comment.