<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Angular 12.3 color-support.js issue in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Angular-12-3-color-support-js-issue/m-p/84457#M53213</link>
    <description>&lt;P&gt;&lt;STRONG&gt;Hi Authorizenet Community&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I am using the Angular 12.3 version and webpack:5. I installed the "authorizenet": "^1.0.8" version from&amp;nbsp;npm:&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://www.npmjs.com/package/authorizenet" target="_blank" rel="noopener"&gt;authorizenet&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I wrote a simple method in service to fetch customer profile called GetCustomerProfile. Initially, there were a lot of errors related to webpack when I imported authorize net library into the service.&lt;/DIV&gt;&lt;DIV&gt;Example:&lt;/DIV&gt;&lt;DIV&gt;import { APIContracts, APIControllers, Constants } from 'authorizenet/lib/authorizenet';&lt;/DIV&gt;&lt;DIV&gt;i.e.,&lt;STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;"BREAKING CHANGE: webpack &amp;lt; 5 used to include polyfills for node.js core modules by default.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;This is no longer the case. Verify if you need this module and configure a polyfill for it."&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;I solved it by adding a webpack config in a project like this:&lt;BR /&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2022-10-08 at 12.38.24 PM.png" style="width: 400px;"&gt;&lt;img src="https://community.developer.cybersource.com/t5/image/serverpage/image-id/2367i284EC443BD1A85BF/image-size/medium/is-moderation-mode/true?v=v2&amp;amp;px=400" role="button" title="Screenshot 2022-10-08 at 12.38.24 PM.png" alt="Screenshot 2022-10-08 at 12.38.24 PM.png" /&gt;&lt;/span&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Package.json:&lt;/DIV&gt;&lt;DIV&gt;&lt;LI-SPOILER&gt;"dependencies": {&lt;BR /&gt;"@angular/animations": "12.2.3",&lt;BR /&gt;"@angular/cdk": "12.2.3",&lt;BR /&gt;"@angular/common": "12.2.3",&lt;BR /&gt;"@angular/compiler": "12.2.3",&lt;BR /&gt;"@angular/core": "12.2.3",&lt;BR /&gt;"@angular/forms": "12.2.3",&lt;BR /&gt;"@angular/material": "12.2.3",&lt;BR /&gt;"@angular/material-moment-adapter": "12.2.3",&lt;BR /&gt;"@angular/platform-browser": "12.2.3",&lt;BR /&gt;"@angular/platform-browser-dynamic": "12.2.3",&lt;BR /&gt;"@angular/router": "12.2.3",&lt;BR /&gt;"@auth0/angular-jwt": "^5.0.2",&lt;BR /&gt;"@fullcalendar/angular": "4.4.5-beta",&lt;BR /&gt;"@fullcalendar/core": "4.4.2",&lt;BR /&gt;"@fullcalendar/daygrid": "4.4.2",&lt;BR /&gt;"@fullcalendar/interaction": "4.4.2",&lt;BR /&gt;"@fullcalendar/list": "4.4.2",&lt;BR /&gt;"@fullcalendar/moment": "4.4.2",&lt;BR /&gt;"@fullcalendar/rrule": "4.4.2",&lt;BR /&gt;"@fullcalendar/timegrid": "4.4.2",&lt;BR /&gt;"@ng-bootstrap/ng-bootstrap": "^13.0.0",&lt;BR /&gt;"@ngneat/transloco": "2.22.0",&lt;BR /&gt;"angular-google-recaptcha": "^1.0.3",&lt;BR /&gt;"angular-responsive-carousel": "^2.1.2",&lt;BR /&gt;"apexcharts": "3.28.1",&lt;BR /&gt;"authorizenet": "^1.0.8",&lt;BR /&gt;"clickout-event": "^1.1.2",&lt;BR /&gt;"crypto-js": "3.3.0",&lt;BR /&gt;"file-saver": "^2.0.5",&lt;BR /&gt;"guid-typescript": "^1.0.9",&lt;BR /&gt;"highlight.js": "11.2.0",&lt;BR /&gt;"lodash-es": "4.17.21",&lt;BR /&gt;"moment": "^2.29.4",&lt;BR /&gt;"ng-apexcharts": "1.5.12",&lt;BR /&gt;"ng2-search-filter": "^0.5.1",&lt;BR /&gt;"ngx-hide-on-scroll": "^0.2.1",&lt;BR /&gt;"ngx-image-zoom": "^0.6.0",&lt;BR /&gt;"ngx-markdown": "12.0.1",&lt;BR /&gt;"ngx-popper": "^7.0.0",&lt;BR /&gt;"ngx-quill": "14.3.0",&lt;BR /&gt;"ngx-toastr": "^14.3.0",&lt;BR /&gt;"perfect-scrollbar": "1.5.2",&lt;BR /&gt;"popper.js": "^1.16.1",&lt;BR /&gt;"quill": "1.3.7",&lt;BR /&gt;"rrule": "2.6.8",&lt;BR /&gt;"rxjs": "6.6.7",&lt;BR /&gt;"tslib": "2.3.1",&lt;BR /&gt;"web-animations-js": "2.3.2",&lt;BR /&gt;"zone.js": "0.11.4"&lt;BR /&gt;},&lt;BR /&gt;"devDependencies": {&lt;BR /&gt;"@angular-devkit/build-angular": "12.2.3",&lt;BR /&gt;"@angular-eslint/builder": "12.3.1",&lt;BR /&gt;"@angular-eslint/eslint-plugin": "12.3.1",&lt;BR /&gt;"@angular-eslint/eslint-plugin-template": "12.3.1",&lt;BR /&gt;"@angular-eslint/schematics": "12.3.1",&lt;BR /&gt;"@angular-eslint/template-parser": "12.3.1",&lt;BR /&gt;"@angular/cli": "12.2.3",&lt;BR /&gt;"@angular/compiler-cli": "12.2.3",&lt;BR /&gt;"@tailwindcss/aspect-ratio": "0.2.1",&lt;BR /&gt;"@tailwindcss/line-clamp": "0.2.1",&lt;BR /&gt;"@tailwindcss/typography": "0.4.1",&lt;BR /&gt;"@types/authorizenet": "^1.0.0",&lt;BR /&gt;"@types/chroma-js": "2.1.3",&lt;BR /&gt;"@types/crypto-js": "3.1.47",&lt;BR /&gt;"@types/highlight.js": "10.1.0",&lt;BR /&gt;"@types/jasmine": "3.8.2",&lt;BR /&gt;"@types/lodash": "4.14.172",&lt;BR /&gt;"@types/lodash-es": "4.17.4",&lt;BR /&gt;"@types/node": "12.20.21",&lt;BR /&gt;"@typescript-eslint/eslint-plugin": "4.30.0",&lt;BR /&gt;"@typescript-eslint/parser": "4.30.0",&lt;BR /&gt;"autoprefixer": "10.3.3",&lt;BR /&gt;"chroma-js": "2.1.2",&lt;BR /&gt;"eslint": "7.32.0",&lt;BR /&gt;"eslint-plugin-import": "2.24.2",&lt;BR /&gt;"eslint-plugin-jsdoc": "36.0.8",&lt;BR /&gt;"eslint-plugin-prefer-arrow": "1.2.3",&lt;BR /&gt;"jasmine-core": "3.8.0",&lt;BR /&gt;"karma": "^6.4.1",&lt;BR /&gt;"karma-chrome-launcher": "3.1.0",&lt;BR /&gt;"karma-coverage": "2.0.3",&lt;BR /&gt;"karma-jasmine": "4.0.1",&lt;BR /&gt;"karma-jasmine-html-reporter": "1.7.0",&lt;BR /&gt;"lodash": "4.17.21",&lt;BR /&gt;"postcss": "8.3.6",&lt;BR /&gt;"tailwindcss": "2.2.9",&lt;BR /&gt;"typescript": "4.3.5"&lt;BR /&gt;}&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;Sample Method in-service looks like this:&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;LI-SPOILER&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;async&lt;/SPAN&gt; &lt;SPAN class=""&gt;getCustomerProfile&lt;/SPAN&gt;(&lt;SPAN class=""&gt;customerProfileId&lt;/SPAN&gt;: &lt;SPAN class=""&gt;string&lt;/SPAN&gt;) {&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;let&lt;/SPAN&gt; &lt;SPAN class=""&gt;promise&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;Promise&lt;/SPAN&gt;((&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;, &lt;SPAN class=""&gt;reject&lt;/SPAN&gt;) &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; {&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;APIContracts&lt;/SPAN&gt;.&lt;SPAN class=""&gt;GetCustomerProfileRequest&lt;/SPAN&gt;();&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setCustomerProfileId&lt;/SPAN&gt;(&lt;SPAN class=""&gt;customerProfileId&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setMerchantAuthentication&lt;/SPAN&gt;(&lt;SPAN class=""&gt;this&lt;/SPAN&gt;.&lt;SPAN class=""&gt;merchanctAuthentication&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setUnmaskExpirationDate&lt;/SPAN&gt;(&lt;SPAN class=""&gt;true&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;APIControllers&lt;/SPAN&gt;.&lt;SPAN class=""&gt;GetCustomerProfileController&lt;/SPAN&gt;(&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;getJSON&lt;/SPAN&gt;());&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setEnvironment&lt;/SPAN&gt;(&lt;SPAN class=""&gt;this&lt;/SPAN&gt;.&lt;SPAN class=""&gt;isProduction&lt;/SPAN&gt; &lt;SPAN class=""&gt;?&lt;/SPAN&gt; &lt;SPAN class=""&gt;Constants&lt;/SPAN&gt;.&lt;SPAN class=""&gt;endpoint&lt;/SPAN&gt;.&lt;SPAN class=""&gt;production&lt;/SPAN&gt; : &lt;SPAN class=""&gt;Constants&lt;/SPAN&gt;.&lt;SPAN class=""&gt;endpoint&lt;/SPAN&gt;.&lt;SPAN class=""&gt;sandbox&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt;.&lt;SPAN class=""&gt;execute&lt;/SPAN&gt;(&lt;SPAN class=""&gt;function&lt;/SPAN&gt; () {&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;apiResponse&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt;.&lt;SPAN class=""&gt;getResponse&lt;/SPAN&gt;();&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;response&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;APIContracts&lt;/SPAN&gt;.&lt;SPAN class=""&gt;GetCustomerProfileResponse&lt;/SPAN&gt;(&lt;SPAN class=""&gt;apiResponse&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;(&lt;SPAN class=""&gt;response&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;});&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;});&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;let&lt;/SPAN&gt; &lt;SPAN class=""&gt;res&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;await&lt;/SPAN&gt; &lt;SPAN class=""&gt;promise&lt;/SPAN&gt;;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; &lt;SPAN class=""&gt;res&lt;/SPAN&gt;;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;}&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;Now the problem is when I navigate to the component where this service is injected, the whole module fails to load with an error: &lt;STRONG&gt;Module xxx cannot be load before initialization.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;STRONG&gt;When I comment above service method, the application starts working.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;When I further look into the console in debugging, the error looks like this:&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;LI-SPOILER&gt;core.js:6479 ERROR Error: Uncaught (in promise): TypeError: Cannot read properties of undefined (reading 'indexOf')&lt;BR /&gt;TypeError: Cannot read properties of undefined (reading 'indexOf')&lt;BR /&gt;at supports-colors.js:29:1&lt;BR /&gt;at 646 (supports-colors.js:61:2)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 75290 (colors.js:39:24)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 3385 (safe.js:8:14)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 55624 (config.js:9:14)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 13063 (common.js:15:14)&lt;BR /&gt;at resolvePromise (zone.js:1213:1)&lt;BR /&gt;at resolvePromise (zone.js:1167:1)&lt;BR /&gt;at zone.js:1279:1&lt;BR /&gt;at ZoneDelegate.invokeTask (zone.js:406:1)&lt;BR /&gt;at Object.onInvokeTask (core.js:28659:1)&lt;BR /&gt;at ZoneDelegate.invokeTask (zone.js:405:1)&lt;BR /&gt;at Zone.runTask (zone.js:178:1)&lt;BR /&gt;at drainMicroTaskQueue (zone.js:582:1)&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;I applied many solutions from google, but nothing is working out.&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;The angular build is successful, All other modules work fine. Only a particular module throws an error at runtime. This only happened when I enabled the service method.&lt;/DIV&gt;&lt;DIV class=""&gt;I am looking for assistance from the community on what the issue can be and how to move forward with that.&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;Thank you!&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
    <pubDate>Sat, 08 Oct 2022 08:15:48 GMT</pubDate>
    <dc:creator>msj</dc:creator>
    <dc:date>2022-10-08T08:15:48Z</dc:date>
    <item>
      <title>Angular 12.3 color-support.js issue</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Angular-12-3-color-support-js-issue/m-p/84457#M53213</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Hi Authorizenet Community&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I am using the Angular 12.3 version and webpack:5. I installed the "authorizenet": "^1.0.8" version from&amp;nbsp;npm:&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://www.npmjs.com/package/authorizenet" target="_blank" rel="noopener"&gt;authorizenet&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I wrote a simple method in service to fetch customer profile called GetCustomerProfile. Initially, there were a lot of errors related to webpack when I imported authorize net library into the service.&lt;/DIV&gt;&lt;DIV&gt;Example:&lt;/DIV&gt;&lt;DIV&gt;import { APIContracts, APIControllers, Constants } from 'authorizenet/lib/authorizenet';&lt;/DIV&gt;&lt;DIV&gt;i.e.,&lt;STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;"BREAKING CHANGE: webpack &amp;lt; 5 used to include polyfills for node.js core modules by default.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;This is no longer the case. Verify if you need this module and configure a polyfill for it."&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;I solved it by adding a webpack config in a project like this:&lt;BR /&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2022-10-08 at 12.38.24 PM.png" style="width: 400px;"&gt;&lt;img src="https://community.developer.cybersource.com/t5/image/serverpage/image-id/2367i284EC443BD1A85BF/image-size/medium/is-moderation-mode/true?v=v2&amp;amp;px=400" role="button" title="Screenshot 2022-10-08 at 12.38.24 PM.png" alt="Screenshot 2022-10-08 at 12.38.24 PM.png" /&gt;&lt;/span&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Package.json:&lt;/DIV&gt;&lt;DIV&gt;&lt;LI-SPOILER&gt;"dependencies": {&lt;BR /&gt;"@angular/animations": "12.2.3",&lt;BR /&gt;"@angular/cdk": "12.2.3",&lt;BR /&gt;"@angular/common": "12.2.3",&lt;BR /&gt;"@angular/compiler": "12.2.3",&lt;BR /&gt;"@angular/core": "12.2.3",&lt;BR /&gt;"@angular/forms": "12.2.3",&lt;BR /&gt;"@angular/material": "12.2.3",&lt;BR /&gt;"@angular/material-moment-adapter": "12.2.3",&lt;BR /&gt;"@angular/platform-browser": "12.2.3",&lt;BR /&gt;"@angular/platform-browser-dynamic": "12.2.3",&lt;BR /&gt;"@angular/router": "12.2.3",&lt;BR /&gt;"@auth0/angular-jwt": "^5.0.2",&lt;BR /&gt;"@fullcalendar/angular": "4.4.5-beta",&lt;BR /&gt;"@fullcalendar/core": "4.4.2",&lt;BR /&gt;"@fullcalendar/daygrid": "4.4.2",&lt;BR /&gt;"@fullcalendar/interaction": "4.4.2",&lt;BR /&gt;"@fullcalendar/list": "4.4.2",&lt;BR /&gt;"@fullcalendar/moment": "4.4.2",&lt;BR /&gt;"@fullcalendar/rrule": "4.4.2",&lt;BR /&gt;"@fullcalendar/timegrid": "4.4.2",&lt;BR /&gt;"@ng-bootstrap/ng-bootstrap": "^13.0.0",&lt;BR /&gt;"@ngneat/transloco": "2.22.0",&lt;BR /&gt;"angular-google-recaptcha": "^1.0.3",&lt;BR /&gt;"angular-responsive-carousel": "^2.1.2",&lt;BR /&gt;"apexcharts": "3.28.1",&lt;BR /&gt;"authorizenet": "^1.0.8",&lt;BR /&gt;"clickout-event": "^1.1.2",&lt;BR /&gt;"crypto-js": "3.3.0",&lt;BR /&gt;"file-saver": "^2.0.5",&lt;BR /&gt;"guid-typescript": "^1.0.9",&lt;BR /&gt;"highlight.js": "11.2.0",&lt;BR /&gt;"lodash-es": "4.17.21",&lt;BR /&gt;"moment": "^2.29.4",&lt;BR /&gt;"ng-apexcharts": "1.5.12",&lt;BR /&gt;"ng2-search-filter": "^0.5.1",&lt;BR /&gt;"ngx-hide-on-scroll": "^0.2.1",&lt;BR /&gt;"ngx-image-zoom": "^0.6.0",&lt;BR /&gt;"ngx-markdown": "12.0.1",&lt;BR /&gt;"ngx-popper": "^7.0.0",&lt;BR /&gt;"ngx-quill": "14.3.0",&lt;BR /&gt;"ngx-toastr": "^14.3.0",&lt;BR /&gt;"perfect-scrollbar": "1.5.2",&lt;BR /&gt;"popper.js": "^1.16.1",&lt;BR /&gt;"quill": "1.3.7",&lt;BR /&gt;"rrule": "2.6.8",&lt;BR /&gt;"rxjs": "6.6.7",&lt;BR /&gt;"tslib": "2.3.1",&lt;BR /&gt;"web-animations-js": "2.3.2",&lt;BR /&gt;"zone.js": "0.11.4"&lt;BR /&gt;},&lt;BR /&gt;"devDependencies": {&lt;BR /&gt;"@angular-devkit/build-angular": "12.2.3",&lt;BR /&gt;"@angular-eslint/builder": "12.3.1",&lt;BR /&gt;"@angular-eslint/eslint-plugin": "12.3.1",&lt;BR /&gt;"@angular-eslint/eslint-plugin-template": "12.3.1",&lt;BR /&gt;"@angular-eslint/schematics": "12.3.1",&lt;BR /&gt;"@angular-eslint/template-parser": "12.3.1",&lt;BR /&gt;"@angular/cli": "12.2.3",&lt;BR /&gt;"@angular/compiler-cli": "12.2.3",&lt;BR /&gt;"@tailwindcss/aspect-ratio": "0.2.1",&lt;BR /&gt;"@tailwindcss/line-clamp": "0.2.1",&lt;BR /&gt;"@tailwindcss/typography": "0.4.1",&lt;BR /&gt;"@types/authorizenet": "^1.0.0",&lt;BR /&gt;"@types/chroma-js": "2.1.3",&lt;BR /&gt;"@types/crypto-js": "3.1.47",&lt;BR /&gt;"@types/highlight.js": "10.1.0",&lt;BR /&gt;"@types/jasmine": "3.8.2",&lt;BR /&gt;"@types/lodash": "4.14.172",&lt;BR /&gt;"@types/lodash-es": "4.17.4",&lt;BR /&gt;"@types/node": "12.20.21",&lt;BR /&gt;"@typescript-eslint/eslint-plugin": "4.30.0",&lt;BR /&gt;"@typescript-eslint/parser": "4.30.0",&lt;BR /&gt;"autoprefixer": "10.3.3",&lt;BR /&gt;"chroma-js": "2.1.2",&lt;BR /&gt;"eslint": "7.32.0",&lt;BR /&gt;"eslint-plugin-import": "2.24.2",&lt;BR /&gt;"eslint-plugin-jsdoc": "36.0.8",&lt;BR /&gt;"eslint-plugin-prefer-arrow": "1.2.3",&lt;BR /&gt;"jasmine-core": "3.8.0",&lt;BR /&gt;"karma": "^6.4.1",&lt;BR /&gt;"karma-chrome-launcher": "3.1.0",&lt;BR /&gt;"karma-coverage": "2.0.3",&lt;BR /&gt;"karma-jasmine": "4.0.1",&lt;BR /&gt;"karma-jasmine-html-reporter": "1.7.0",&lt;BR /&gt;"lodash": "4.17.21",&lt;BR /&gt;"postcss": "8.3.6",&lt;BR /&gt;"tailwindcss": "2.2.9",&lt;BR /&gt;"typescript": "4.3.5"&lt;BR /&gt;}&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;Sample Method in-service looks like this:&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;LI-SPOILER&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;async&lt;/SPAN&gt; &lt;SPAN class=""&gt;getCustomerProfile&lt;/SPAN&gt;(&lt;SPAN class=""&gt;customerProfileId&lt;/SPAN&gt;: &lt;SPAN class=""&gt;string&lt;/SPAN&gt;) {&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;let&lt;/SPAN&gt; &lt;SPAN class=""&gt;promise&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;Promise&lt;/SPAN&gt;((&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;, &lt;SPAN class=""&gt;reject&lt;/SPAN&gt;) &lt;SPAN class=""&gt;=&amp;gt;&lt;/SPAN&gt; {&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;APIContracts&lt;/SPAN&gt;.&lt;SPAN class=""&gt;GetCustomerProfileRequest&lt;/SPAN&gt;();&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setCustomerProfileId&lt;/SPAN&gt;(&lt;SPAN class=""&gt;customerProfileId&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setMerchantAuthentication&lt;/SPAN&gt;(&lt;SPAN class=""&gt;this&lt;/SPAN&gt;.&lt;SPAN class=""&gt;merchanctAuthentication&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setUnmaskExpirationDate&lt;/SPAN&gt;(&lt;SPAN class=""&gt;true&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;APIControllers&lt;/SPAN&gt;.&lt;SPAN class=""&gt;GetCustomerProfileController&lt;/SPAN&gt;(&lt;SPAN class=""&gt;getRequest&lt;/SPAN&gt;.&lt;SPAN class=""&gt;getJSON&lt;/SPAN&gt;());&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt;.&lt;SPAN class=""&gt;setEnvironment&lt;/SPAN&gt;(&lt;SPAN class=""&gt;this&lt;/SPAN&gt;.&lt;SPAN class=""&gt;isProduction&lt;/SPAN&gt; &lt;SPAN class=""&gt;?&lt;/SPAN&gt; &lt;SPAN class=""&gt;Constants&lt;/SPAN&gt;.&lt;SPAN class=""&gt;endpoint&lt;/SPAN&gt;.&lt;SPAN class=""&gt;production&lt;/SPAN&gt; : &lt;SPAN class=""&gt;Constants&lt;/SPAN&gt;.&lt;SPAN class=""&gt;endpoint&lt;/SPAN&gt;.&lt;SPAN class=""&gt;sandbox&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt;.&lt;SPAN class=""&gt;execute&lt;/SPAN&gt;(&lt;SPAN class=""&gt;function&lt;/SPAN&gt; () {&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;apiResponse&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;ctrl&lt;/SPAN&gt;.&lt;SPAN class=""&gt;getResponse&lt;/SPAN&gt;();&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; &lt;SPAN class=""&gt;response&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;APIContracts&lt;/SPAN&gt;.&lt;SPAN class=""&gt;GetCustomerProfileResponse&lt;/SPAN&gt;(&lt;SPAN class=""&gt;apiResponse&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;(&lt;SPAN class=""&gt;response&lt;/SPAN&gt;);&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;});&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;});&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;let&lt;/SPAN&gt; &lt;SPAN class=""&gt;res&lt;/SPAN&gt; &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;await&lt;/SPAN&gt; &lt;SPAN class=""&gt;promise&lt;/SPAN&gt;;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; &lt;SPAN class=""&gt;res&lt;/SPAN&gt;;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;}&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;Now the problem is when I navigate to the component where this service is injected, the whole module fails to load with an error: &lt;STRONG&gt;Module xxx cannot be load before initialization.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;STRONG&gt;When I comment above service method, the application starts working.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;When I further look into the console in debugging, the error looks like this:&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;LI-SPOILER&gt;core.js:6479 ERROR Error: Uncaught (in promise): TypeError: Cannot read properties of undefined (reading 'indexOf')&lt;BR /&gt;TypeError: Cannot read properties of undefined (reading 'indexOf')&lt;BR /&gt;at supports-colors.js:29:1&lt;BR /&gt;at 646 (supports-colors.js:61:2)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 75290 (colors.js:39:24)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 3385 (safe.js:8:14)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 55624 (config.js:9:14)&lt;BR /&gt;at __webpack_require__ (bootstrap:19:1)&lt;BR /&gt;at 13063 (common.js:15:14)&lt;BR /&gt;at resolvePromise (zone.js:1213:1)&lt;BR /&gt;at resolvePromise (zone.js:1167:1)&lt;BR /&gt;at zone.js:1279:1&lt;BR /&gt;at ZoneDelegate.invokeTask (zone.js:406:1)&lt;BR /&gt;at Object.onInvokeTask (core.js:28659:1)&lt;BR /&gt;at ZoneDelegate.invokeTask (zone.js:405:1)&lt;BR /&gt;at Zone.runTask (zone.js:178:1)&lt;BR /&gt;at drainMicroTaskQueue (zone.js:582:1)&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;I applied many solutions from google, but nothing is working out.&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;The angular build is successful, All other modules work fine. Only a particular module throws an error at runtime. This only happened when I enabled the service method.&lt;/DIV&gt;&lt;DIV class=""&gt;I am looking for assistance from the community on what the issue can be and how to move forward with that.&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;Thank you!&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Sat, 08 Oct 2022 08:15:48 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Angular-12-3-color-support-js-issue/m-p/84457#M53213</guid>
      <dc:creator>msj</dc:creator>
      <dc:date>2022-10-08T08:15:48Z</dc:date>
    </item>
  </channel>
</rss>

