{"version":3,"file":"static/js/17.af9c7b32faaf39d77ff4.chunk.js","mappings":";6zBAoCA,IAAMA,EAAN,cAA8BC,EAAAA,UAA9BC,kCAiDY,KAAAC,KAAOC,UACXC,KAAKC,MAAMC,YAAYJ,KAAK,CACxBK,OAAQH,KAAKG,SAEbH,KAAKI,kCACLJ,KAAKC,MAAMC,YAAYG,WAIvB,KAAAF,OAAS,KACbH,KAAKC,MAAMC,YAAYI,cA1DjB,kBACN,MAAgF,aAAxEN,KAAKC,MAAMM,KAAKC,SAASC,QAAUT,KAAKC,MAAMM,KAAKC,SAASE,QAE9D,uCACN,MAAM,gBAAEC,EAAe,MAAEC,GAAUZ,KAAKC,MAAMY,QAAQC,QAEtD,SADoBF,GAAsB,MAAbA,EAAMG,KAAeJ,IAAmBC,EAAMI,gBAIxEC,qBAEHC,EAAAA,EAAAA,KACI,IAAMlB,KAAKmB,cACXpB,gBACUC,KAAKF,UAKhBsB,SAAM,IAAAC,EACT,MACIC,QAAQ,UAAEC,GACVrB,aAAa,QAAEsB,IACfxB,KAAKC,MACHwB,EAAwC,GACT,QAArCJ,EAAArB,KAAKC,MAAMM,KAAKmB,eAAejB,cAAM,IAAAY,GAArCA,EAAuCM,SAAQ,CAACC,EAAMC,KAClDJ,EAAiBK,KAAK,CAClBC,IAAKH,EAAKI,gBACVC,MAAOL,EAAKM,eAIpB,MAAMC,EAASC,EAAAA,EAAAA,EAAA,GACRpC,KAAKC,OACLD,KAAKqC,OAAK,IACblC,OAAQH,KAAKG,OACbmC,YAAatC,KAAKC,MAClBN,gBAAiB,CACb2C,YAAatC,KAAKC,MAClBsB,UAAWgB,GAAAA,CAAW,sBAAuBhB,EAAWC,EAAU,OAAS,QAE/EE,eAAgBD,EAChBe,+BAAgCxC,KAAKI,mCAGzC,OAAOJ,KAAKC,MAAMwC,WAAWN,MA7CvBO,EAAAA,EAAAA,IAAA,CAATC,EAAAA,IAAQ,iCAGCD,EAAAA,EAAAA,IAAA,CAATC,EAAAA,IAAQ,qDAJPhD,GAAe+C,EAAAA,EAAAA,IAAA,CAFpBE,EAAAA,gBACAC,EAAAA,IACKlD,GA+DN,2JClGO,MAAMmD,EAAmB,CAC5BC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/checkout-invoice/checkout-invoice.tsx?8775","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-invoice/common/convert_a2_a3.ts?385f","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-invoice/common/fiscal-code-utils.ts?49ce","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-invoice/checkout-invoice.view.tsx?db30","webpack://Msdyn365.Commerce.Online/./src/modules/loyalty-balance-check/loyalty-balance-check.tsx?efe1","webpack://Msdyn365.Commerce.Online/./src/modules/loyalty-balance-check/loyalty-balance-check.view.tsx?49d9","webpack://Msdyn365.Commerce.Online/./src/modules/loyalty-store-sign-up/loyalty-store-sign-up.tsx?5eec","webpack://Msdyn365.Commerce.Online/./src/modules/loyalty-store-sign-up/loyalty-store-sign-up.view.tsx?b7f5","webpack://Msdyn365.Commerce.Online/./src/modules/newsletter-block/newsletter-block.tsx?8702","webpack://Msdyn365.Commerce.Online/./src/modules/newsletter-block/newsletter-block.props.autogenerated.ts?e1dd","webpack://Msdyn365.Commerce.Online/./src/modules/newsletter-block/newsletter-block.view.tsx?b94f","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/buybox.view.tsx?fc20","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/utils/getCustomDiscountPercentage.ts?8d75","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/cart.view.tsx?0fd8","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/checkout.view.tsx?ea45","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/header.view.tsx?2a15","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/components/navigation-menu-utilities.tsx?ca80","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/navigation-menu.view.tsx?2c75","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/order-confirmation.view.tsx?31ca","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/search.view.tsx?3a76","webpack://Msdyn365.Commerce.Online/../../src/checkout-state-data-action.ts?8344","webpack://Msdyn365.Commerce.Online/../../src/checkout-state.ts?acd8","webpack://Msdyn365.Commerce.Online/../../src/checkout-utilities.data.ts?b2cc","webpack://Msdyn365.Commerce.Online/../../../src/module-state-manager/module-state.ts?7579","webpack://Msdyn365.Commerce.Online/../../../src/module-state-manager/with-module-state.tsx?61ca"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { IModuleStateProps, withModuleState, IModuleStateManager } from '@msdyn365-commerce-modules/checkout-utilities';\r\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport { computed, when } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport { ICheckoutInvoiceData } from './checkout-invoice.data';\r\nimport { ICheckoutInvoiceProps } from './checkout-invoice.props.autogenerated';\r\n\r\nexport interface ICheckoutInvoiceModuleProps extends ICheckoutInvoiceProps, IModuleStateProps {}\r\n\r\ninterface ICountriesOptions {\r\n key: string | undefined;\r\n value: string | undefined;\r\n}\r\nexport interface ICheckoutInvoiceViewProps extends ICheckoutInvoiceModuleProps {\r\n CheckoutInvoice: IModuleProps;\r\n moduleProps: ICheckoutInvoiceModuleProps;\r\n countryRegions: ICountriesOptions[];\r\n moduleState: IModuleStateManager;\r\n onEdit?(): void;\r\n paymentVerificationRedirection: boolean;\r\n}\r\n\r\n/**\r\n *\r\n * CheckoutInvoice component\r\n * @extends {React.PureComponent>}\r\n */\r\n// @ts-ignore\r\n@withModuleState\r\n@observer\r\nclass CheckoutInvoice extends React.Component {\r\n @computed get isDataReady(): boolean {\r\n return (this.props.data.checkout.result && this.props.data.checkout.status) === 'SUCCESS';\r\n }\r\n @computed get isPaymentVerificationRedirection(): boolean {\r\n const { requestFormData, query } = this.props.context.request;\r\n const redirection = query && query.pv === '1' && (requestFormData || query.redirectResult) ? true : false;\r\n return redirection;\r\n }\r\n\r\n public componentDidMount(): void {\r\n // @ts-ignore: Compiler not reconizing condition check for function params\r\n when(\r\n () => this.isDataReady,\r\n async () => {\r\n await this.init();\r\n }\r\n );\r\n }\r\n\r\n public render(): JSX.Element {\r\n const {\r\n config: { className },\r\n moduleState: { isReady }\r\n } = this.props;\r\n const countriesOptions: ICountriesOptions[] = [];\r\n this.props.data.countryRegions.result?.forEach((item, index: number) => {\r\n countriesOptions.push({\r\n key: item.CountryRegionId,\r\n value: item.ShortName\r\n });\r\n });\r\n\r\n const viewProps: ICheckoutInvoiceViewProps = {\r\n ...this.props,\r\n ...this.state,\r\n onEdit: this.onEdit,\r\n moduleProps: this.props,\r\n CheckoutInvoice: {\r\n moduleProps: this.props,\r\n className: classnames('ms-checkout-invoice', className, isReady ? 'show' : 'add')\r\n },\r\n countryRegions: countriesOptions,\r\n paymentVerificationRedirection: this.isPaymentVerificationRedirection\r\n };\r\n\r\n return this.props.renderView(viewProps) as React.ReactElement;\r\n }\r\n\r\n private init = async (): Promise => {\r\n this.props.moduleState.init({\r\n onEdit: this.onEdit\r\n });\r\n if (this.isPaymentVerificationRedirection) {\r\n this.props.moduleState.onReady();\r\n }\r\n };\r\n\r\n private onEdit = (): void => {\r\n this.props.moduleState.onUpdating();\r\n };\r\n}\r\n\r\nexport default CheckoutInvoice;\r\n","// tslint:disable-next-line:variable-name\r\nexport const convert_a2_to_a3 = {\r\n AF: 'AFG',\r\n AX: 'ALA',\r\n AL: 'ALB',\r\n DZ: 'DZA',\r\n AS: 'ASM',\r\n AD: 'AND',\r\n AO: 'AGO',\r\n AI: 'AIA',\r\n AQ: 'ATA',\r\n AG: 'ATG',\r\n AR: 'ARG',\r\n AM: 'ARM',\r\n AW: 'ABW',\r\n AU: 'AUS',\r\n AT: 'AUT',\r\n AZ: 'AZE',\r\n BS: 'BHS',\r\n BH: 'BHR',\r\n BD: 'BGD',\r\n BB: 'BRB',\r\n BY: 'BLR',\r\n BE: 'BEL',\r\n BZ: 'BLZ',\r\n BJ: 'BEN',\r\n BM: 'BMU',\r\n BT: 'BTN',\r\n BO: 'BOL',\r\n BA: 'BIH',\r\n BW: 'BWA',\r\n BV: 'BVT',\r\n BR: 'BRA',\r\n IO: 'IOT',\r\n BN: 'BRN',\r\n BG: 'BGR',\r\n BF: 'BFA',\r\n BI: 'BDI',\r\n KH: 'KHM',\r\n CM: 'CMR',\r\n CA: 'CAN',\r\n CV: 'CPV',\r\n KY: 'CYM',\r\n CF: 'CAF',\r\n TD: 'TCD',\r\n CL: 'CHL',\r\n CN: 'CHN',\r\n CX: 'CXR',\r\n CC: 'CCK',\r\n CO: 'COL',\r\n KM: 'COM',\r\n CG: 'COG',\r\n CD: 'COD',\r\n CK: 'COK',\r\n CR: 'CRI',\r\n CI: 'CIV',\r\n HR: 'HRV',\r\n CU: 'CUB',\r\n CY: 'CYP',\r\n CZ: 'CZE',\r\n DK: 'DNK',\r\n DJ: 'DJI',\r\n DM: 'DMA',\r\n DO: 'DOM',\r\n EC: 'ECU',\r\n EG: 'EGY',\r\n SV: 'SLV',\r\n GQ: 'GNQ',\r\n ER: 'ERI',\r\n EE: 'EST',\r\n ET: 'ETH',\r\n FK: 'FLK',\r\n FO: 'FRO',\r\n FJ: 'FJI',\r\n FI: 'FIN',\r\n FR: 'FRA',\r\n GF: 'GUF',\r\n PF: 'PYF',\r\n TF: 'ATF',\r\n GA: 'GAB',\r\n GM: 'GMB',\r\n GE: 'GEO',\r\n DE: 'DEU',\r\n GH: 'GHA',\r\n GI: 'GIB',\r\n GR: 'GRC',\r\n GL: 'GRL',\r\n GD: 'GRD',\r\n GP: 'GLP',\r\n GU: 'GUM',\r\n GT: 'GTM',\r\n GG: 'GGY',\r\n GN: 'GIN',\r\n GW: 'GNB',\r\n GY: 'GUY',\r\n HT: 'HTI',\r\n HM: 'HMD',\r\n VA: 'VAT',\r\n HN: 'HND',\r\n HK: 'HKG',\r\n HU: 'HUN',\r\n IS: 'ISL',\r\n IN: 'IND',\r\n ID: 'IDN',\r\n IR: 'IRN',\r\n IQ: 'IRQ',\r\n IE: 'IRL',\r\n IM: 'IMN',\r\n IL: 'ISR',\r\n IT: 'ITA',\r\n JM: 'JAM',\r\n JP: 'JPN',\r\n JE: 'JEY',\r\n JO: 'JOR',\r\n KZ: 'KAZ',\r\n KE: 'KEN',\r\n KI: 'KIR',\r\n KP: 'PRK',\r\n KR: 'KOR',\r\n KW: 'KWT',\r\n KG: 'KGZ',\r\n LA: 'LAO',\r\n LV: 'LVA',\r\n LB: 'LBN',\r\n LS: 'LSO',\r\n LR: 'LBR',\r\n LY: 'LBY',\r\n LI: 'LIE',\r\n LT: 'LTU',\r\n LU: 'LUX',\r\n MO: 'MAC',\r\n MK: 'MKD',\r\n MG: 'MDG',\r\n MW: 'MWI',\r\n MY: 'MYS',\r\n MV: 'MDV',\r\n ML: 'MLI',\r\n MT: 'MLT',\r\n MH: 'MHL',\r\n MQ: 'MTQ',\r\n MR: 'MRT',\r\n MU: 'MUS',\r\n YT: 'MYT',\r\n MX: 'MEX',\r\n FM: 'FSM',\r\n MD: 'MDA',\r\n MC: 'MCO',\r\n MN: 'MNG',\r\n ME: 'MNE',\r\n MS: 'MSR',\r\n MA: 'MAR',\r\n MZ: 'MOZ',\r\n MM: 'MMR',\r\n NA: 'NAM',\r\n NR: 'NRU',\r\n NP: 'NPL',\r\n NL: 'NLD',\r\n AN: 'ANT',\r\n NC: 'NCL',\r\n NZ: 'NZL',\r\n NI: 'NIC',\r\n NE: 'NER',\r\n NG: 'NGA',\r\n NU: 'NIU',\r\n NF: 'NFK',\r\n MP: 'MNP',\r\n NO: 'NOR',\r\n OM: 'OMN',\r\n PK: 'PAK',\r\n PW: 'PLW',\r\n PS: 'PSE',\r\n PA: 'PAN',\r\n PG: 'PNG',\r\n PY: 'PRY',\r\n PE: 'PER',\r\n PH: 'PHL',\r\n PN: 'PCN',\r\n PL: 'POL',\r\n PT: 'PRT',\r\n PR: 'PRI',\r\n QA: 'QAT',\r\n RE: 'REU',\r\n RO: 'ROU',\r\n RU: 'RUS',\r\n RW: 'RWA',\r\n BL: 'BLM',\r\n SH: 'SHN',\r\n KN: 'KNA',\r\n LC: 'LCA',\r\n MF: 'MAF',\r\n PM: 'SPM',\r\n VC: 'VCT',\r\n WS: 'WSM',\r\n SM: 'SMR',\r\n ST: 'STP',\r\n SA: 'SAU',\r\n SN: 'SEN',\r\n RS: 'SRB',\r\n SC: 'SYC',\r\n SL: 'SLE',\r\n SG: 'SGP',\r\n SK: 'SVK',\r\n SI: 'SVN',\r\n SB: 'SLB',\r\n SO: 'SOM',\r\n ZA: 'ZAF',\r\n GS: 'SGS',\r\n ES: 'ESP',\r\n LK: 'LKA',\r\n SD: 'SDN',\r\n SR: 'SUR',\r\n SJ: 'SJM',\r\n SZ: 'SWZ',\r\n SE: 'SWE',\r\n CH: 'CHE',\r\n SY: 'SYR',\r\n TW: 'TWN',\r\n TJ: 'TJK',\r\n TZ: 'TZA',\r\n TH: 'THA',\r\n TL: 'TLS',\r\n TG: 'TGO',\r\n TK: 'TKL',\r\n TO: 'TON',\r\n TT: 'TTO',\r\n TN: 'TUN',\r\n TR: 'TUR',\r\n TM: 'TKM',\r\n TC: 'TCA',\r\n TV: 'TUV',\r\n UG: 'UGA',\r\n UA: 'UKR',\r\n AE: 'ARE',\r\n GB: 'GBR',\r\n US: 'USA',\r\n UM: 'UMI',\r\n UY: 'URY',\r\n UZ: 'UZB',\r\n VU: 'VUT',\r\n VE: 'VEN',\r\n VN: 'VNM',\r\n VG: 'VGB',\r\n VI: 'VIR',\r\n WF: 'WLF',\r\n EH: 'ESH',\r\n YE: 'YEM',\r\n ZM: 'ZMB',\r\n ZW: 'ZWE'\r\n};\r\n","export const CHECK_CODE_ODD = new Map([\r\n ['0', 1],\r\n ['1', 0],\r\n ['2', 5],\r\n ['3', 7],\r\n ['4', 9],\r\n ['5', 13],\r\n ['6', 15],\r\n ['7', 17],\r\n ['8', 19],\r\n ['9', 21],\r\n ['A', 1],\r\n ['B', 0],\r\n ['C', 5],\r\n ['D', 7],\r\n ['E', 9],\r\n ['F', 13],\r\n ['G', 15],\r\n ['H', 17],\r\n ['I', 19],\r\n ['J', 21],\r\n ['K', 2],\r\n ['L', 4],\r\n ['M', 18],\r\n ['N', 20],\r\n ['O', 11],\r\n ['P', 3],\r\n ['Q', 6],\r\n ['R', 8],\r\n ['S', 12],\r\n ['T', 14],\r\n ['U', 16],\r\n ['V', 10],\r\n ['W', 22],\r\n ['X', 25],\r\n ['Y', 24],\r\n ['Z', 23]\r\n]);\r\n\r\nexport const CHECK_CODE_EVEN = new Map([\r\n ['0', 0],\r\n ['1', 1],\r\n ['2', 2],\r\n ['3', 3],\r\n ['4', 4],\r\n ['5', 5],\r\n ['6', 6],\r\n ['7', 7],\r\n ['8', 8],\r\n ['9', 9],\r\n ['A', 0],\r\n ['B', 1],\r\n ['C', 2],\r\n ['D', 3],\r\n ['E', 4],\r\n ['F', 5],\r\n ['G', 6],\r\n ['H', 7],\r\n ['I', 8],\r\n ['J', 9],\r\n ['K', 10],\r\n ['L', 11],\r\n ['M', 12],\r\n ['N', 13],\r\n ['O', 14],\r\n ['P', 15],\r\n ['Q', 16],\r\n ['R', 17],\r\n ['S', 18],\r\n ['T', 19],\r\n ['U', 20],\r\n ['V', 21],\r\n ['W', 22],\r\n ['X', 23],\r\n ['Y', 24],\r\n ['Z', 25]\r\n]);\r\n\r\nexport const CHECK_CODE_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n/* tslint:disable: no-duplicate-imports */\r\nimport { Module } from '@msdyn365-commerce-modules/utilities';\r\nimport { CommerceProperty } from '@msdyn365-commerce/retail-proxy';\r\n// import { getCheckoutState } from '@msdyn365-commerce/global-state';\r\nimport * as React from 'react';\r\nimport { useForm } from 'react-hook-form';\r\nimport { validateVatNum_CAPAsync } from '../../actions/DataActionExtension.g';\r\n// import { getInvoiceAccountInfo_CAPAsync } from '../../actions/DataActionExtension.g';\r\nimport { ICheckoutInvoiceModuleProps, ICheckoutInvoiceViewProps } from './checkout-invoice';\r\nimport { convert_a2_to_a3 } from './common/convert_a2_a3';\r\nimport { CHECK_CODE_EVEN, CHECK_CODE_ODD, CHECK_CODE_CHARS } from './common/fiscal-code-utils';\r\nimport get from 'lodash/get';\r\n\r\n// import { CartCheckout } from '@msdyn365-commerce-modules/checkout';\r\n\r\nconst allFields = [\r\n 'billing',\r\n 'InvoiceCustAccount_CAP',\r\n 'Type_CAP',\r\n 'Street_CAP',\r\n 'StreetNumber_CAP',\r\n 'ZipCode_CAP',\r\n 'City_CAP',\r\n 'Country_CAP',\r\n 'OrgName_CAP',\r\n 'FirstName_CAP',\r\n 'LastName_CAP',\r\n 'VatNum_CAP',\r\n 'FiscalCode_CAP',\r\n 'PEC_CAP',\r\n 'SDI_CAP'\r\n];\r\n\r\nconst updateExtProps = async (data: Inputs, moduleProps: ICheckoutInvoiceModuleProps) => {\r\n const dataCompiled = [];\r\n Object.keys(data).forEach(key => {\r\n const value =\r\n typeof get(data, key) === 'boolean'\r\n ? {\r\n BooleanValue: get(data, key)\r\n }\r\n : key === 'Type_CAP'\r\n ? {\r\n IntegerValue: Number(get(data, key))\r\n }\r\n : { StringValue: get(data, key) };\r\n dataCompiled.push({\r\n Key: key,\r\n Value: value\r\n });\r\n });\r\n\r\n for (const str of allFields) {\r\n if (!Object.keys(data).includes(str)) {\r\n dataCompiled.push({\r\n Key: str,\r\n Value: { StringValue: '' }\r\n });\r\n }\r\n }\r\n\r\n const checkoutResult = moduleProps.data.checkout.result;\r\n\r\n const dataCompiledCc = [\r\n {\r\n Key: 'CustomInvoiceModuleCompiled_VEN',\r\n Value: {\r\n BooleanValue: true\r\n }\r\n }\r\n ];\r\n\r\n Array.prototype.push.apply(dataCompiledCc, dataCompiled);\r\n\r\n if (checkoutResult) {\r\n await checkoutResult.checkoutCart.updateExtensionProperties({\r\n newExtensionProperties: dataCompiledCc\r\n });\r\n } else {\r\n console.error('Cannot write invoice details on the checkout cart');\r\n }\r\n};\r\n\r\nconst _capDataRender = async (moduleProps: ICheckoutInvoiceModuleProps): Promise<[Inputs | null, boolean]> => {\r\n //const currentCheckoutState = await getCheckoutState(moduleProps.context.actionContext);\r\n const currentCheckoutState = moduleProps.data.checkout.result;\r\n\r\n const extProps = currentCheckoutState?.checkoutCart.cart?.ExtensionProperties;\r\n if (!extProps) {\r\n return [null, false];\r\n }\r\n const extPropsToRemoveA = extProps.filter(eProp => eProp.Key === 'ExtPropsRemove_CAP');\r\n const invoiceModuleCompiledA = extProps.filter(eProp => eProp.Key === 'CustomInvoiceModuleCompiled_VEN');\r\n const extPropsToRemove = extPropsToRemoveA && extPropsToRemoveA[0]?.Value?.BooleanValue;\r\n const invoiceModuleCompiled = (invoiceModuleCompiledA && invoiceModuleCompiledA[0]?.Value?.BooleanValue) ?? false;\r\n\r\n if (extPropsToRemove !== true) {\r\n return [convertExtPropertiesToInput(extProps), invoiceModuleCompiled];\r\n }\r\n return [null, false];\r\n};\r\n\r\nconst convertExtPropertiesToInput = (extProps: CommerceProperty[]): Inputs => {\r\n const inputs: Inputs = {} as Inputs;\r\n extProps.forEach(prop => {\r\n if (prop.Key && prop.Value) {\r\n const values = [prop.Value.StringValue, prop.Value.IntegerValue, prop.Value.BooleanValue].filter(\r\n value => value !== undefined && value !== null\r\n );\r\n const value = values.length > 0 ? values[0] : null;\r\n if (value !== null && value !== undefined && value !== '') {\r\n if (allFields.indexOf(prop.Key) > -1) {\r\n inputs[prop.Key] = value;\r\n }\r\n }\r\n }\r\n });\r\n // Return the inputs object\r\n return inputs;\r\n};\r\n\r\nconst _capDataSave = async (moduleProps: ICheckoutInvoiceModuleProps, data: Inputs) => {\r\n await updateExtProps(data, moduleProps);\r\n};\r\n\r\ntype Inputs = {\r\n City_CAP: string;\r\n FiscalCode_CAP: string;\r\n OrgName_CAP: string;\r\n PEC_CAP: string;\r\n SDI_CAP: string;\r\n StreetNumber_CAP: string;\r\n Street_CAP: string;\r\n VatNum_CAP: string;\r\n ZipCode_CAP: string;\r\n billing: boolean;\r\n\r\n Type_CAP: number;\r\n Country_CAP: string;\r\n InvoiceCustAccount_CAP: string;\r\n FirstName_CAP: string;\r\n LastName_CAP: string;\r\n};\r\n\r\ninterface IMaincategories {\r\n key: string | undefined;\r\n value: string | undefined;\r\n}\r\nconst countrriesEU = [\r\n 'AUT',\r\n 'BEL',\r\n 'BGR',\r\n 'HRV',\r\n 'CYP',\r\n 'CZE',\r\n 'DNK',\r\n 'EST',\r\n 'FIN',\r\n 'FRA',\r\n 'DEU',\r\n 'GRC',\r\n 'HRV',\r\n 'HUN',\r\n 'IRL',\r\n 'ITA',\r\n 'LVA',\r\n 'LTU',\r\n 'LUX',\r\n 'MLT',\r\n 'NLD',\r\n 'POL',\r\n 'PRT',\r\n 'ROU',\r\n 'SVK',\r\n 'SVN',\r\n 'ESP',\r\n 'SWE'\r\n];\r\n\r\nconst validateFiscalCode15 = (codiceFiscale: string): boolean => {\r\n codiceFiscale = codiceFiscale.toUpperCase();\r\n let val = 0;\r\n for (let i = 0; i < 15; i = i + 1) {\r\n const c = codiceFiscale.charAt(i);\r\n val += i % 2 !== 0 ? CHECK_CODE_EVEN.get(c) ?? 0 : CHECK_CODE_ODD.get(c) ?? 0;\r\n }\r\n val = val % 26;\r\n return codiceFiscale.charAt(15) === CHECK_CODE_CHARS.charAt(val);\r\n};\r\nconst validateFiscalCode11 = (codiceFiscale: string): boolean => {\r\n if (!/^[0-9]{11}$/.test(codiceFiscale)) {\r\n return false;\r\n }\r\n if (codiceFiscale === '00000000000') {\r\n return false;\r\n }\r\n let val = 0;\r\n for (let i = 0; i < 10; i = i + 1) {\r\n const c = parseInt(codiceFiscale.charAt(i), 10);\r\n //se sono dispari\r\n if (i % 2 === 0) {\r\n val += c;\r\n } else {\r\n let evenC = c * 2;\r\n if (evenC > 9) {\r\n evenC = evenC - 9;\r\n }\r\n val += evenC;\r\n }\r\n }\r\n val = 10 - (val % 10);\r\n val = val % 10;\r\n return codiceFiscale.charAt(10) === val.toString();\r\n};\r\n\r\nconst validateFiscalCode = (codiceFiscale: string): boolean => {\r\n if (codiceFiscale.length === 16) {\r\n return validateFiscalCode15(codiceFiscale);\r\n }\r\n if (codiceFiscale.length === 11) {\r\n return validateFiscalCode11(codiceFiscale);\r\n }\r\n return false;\r\n};\r\n\r\nconst CheckoutInvoiceView: React.FC = props => {\r\n const { CheckoutInvoice, resources, countryRegions, moduleState, moduleProps, paymentVerificationRedirection } = props;\r\n const [dataCompiled, setDataCompiled] = React.useState();\r\n const shippingCountry = moduleProps?.data?.checkout?.result?.shippingAddress?.ThreeLetterISORegionName;\r\n const [billing, setBilling] = React.useState(false);\r\n const [typeSelected, setTypeSelected] = React.useState(0);\r\n const [countrySelected, setCountrySelected] = React.useState('');\r\n const fiscalPattern = /^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})$|([0-9]{11})$/i;\r\n // @ts-ignore\r\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, 'value').set;\r\n\r\n const customerId = CheckoutInvoice.moduleProps?.context?.actionContext?.requestContext?.user?.customerAccountNumber;\r\n const invoiceTypeOptions = [\r\n { key: '1', value: resources.typePersonLabel },\r\n { key: '2', value: resources.typeOrgLabel }\r\n ];\r\n\r\n React.useEffect(() => {\r\n void setData();\r\n // void getUserData();\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (!paymentVerificationRedirection) {\r\n if (shippingCountry && countrriesEU.indexOf(shippingCountry) === -1) {\r\n if (!billing) {\r\n setBilling(true);\r\n setValue('billing', true, { shouldDirty: true });\r\n if (moduleState.status === 'ready') {\r\n moduleState.onEdit && moduleState.onEdit();\r\n }\r\n }\r\n } else if (typeSelected === 0) {\r\n setBilling(false);\r\n setValue('billing', false, { shouldDirty: true });\r\n }\r\n }\r\n }, [shippingCountry]);\r\n\r\n function gMapsAutocomplete() {\r\n setTimeout(() => {\r\n const boxes = document.querySelectorAll('.pac-container');\r\n boxes.forEach(box => box.remove());\r\n\r\n const autocompleteFormField = document.getElementsByName('Street_CAP')[0] as HTMLInputElement;\r\n if (autocompleteFormField === undefined || autocompleteFormField === null) {\r\n return;\r\n }\r\n\r\n // @ts-ignore\r\n const autocomplete = new window.google.maps.places.Autocomplete(autocompleteFormField, {\r\n types: ['address']\r\n });\r\n\r\n autocompleteFormField.setAttribute('placeholder', resources.startTypingYourAddress);\r\n\r\n // @ts-ignore\r\n var checkListeners = window.google.maps.event.hasListeners(autocomplete, `place_changed`);\r\n\r\n // @ts-ignore\r\n window.google.maps.event.clearInstanceListeners(autocomplete);\r\n\r\n // @ts-ignore\r\n const listener = window.google.maps.event.addListener(autocomplete, `place_changed`, () => {\r\n const place = autocomplete.getPlace();\r\n if (nativeInputValueSetter === undefined) {\r\n return;\r\n }\r\n\r\n nativeInputValueSetter.call(autocompleteFormField, place.name);\r\n const eCustom = new Event('change', { bubbles: true });\r\n autocompleteFormField.dispatchEvent(eCustom);\r\n\r\n place.address_components.forEach((element: { types: string[]; long_name: string; short_name: string }) => {\r\n var checkZipCode = false;\r\n switch (element.types[0]) {\r\n case 'street_number':\r\n setValue('StreetNumber_CAP', element.long_name, {\r\n shouldDirty: true\r\n });\r\n break;\r\n case 'locality':\r\n setValue('City_CAP', element.long_name, {\r\n shouldDirty: true\r\n });\r\n break;\r\n case 'country':\r\n const countryValue = convert_a2_to_a3[element.short_name];\r\n setValue('Country_CAP', countryValue, { shouldDirty: true });\r\n setCountrySelected(countryValue);\r\n break;\r\n case 'postal_code':\r\n setValue('ZipCode_CAP', element.long_name, {\r\n shouldDirty: true\r\n });\r\n checkZipCode = true;\r\n break;\r\n default:\r\n break;\r\n }\r\n if (!checkZipCode) {\r\n setValue('ZipCode_CAP', '', { shouldDirty: true });\r\n }\r\n });\r\n // @ts-ignore\r\n const street = document.getElementsByName('Street_CAP') as HTMLInputElement;\r\n street[0].value = street[0].value.split(',')[0];\r\n });\r\n });\r\n }\r\n\r\n const { register, handleSubmit, errors, setValue, setError, reset } = useForm();\r\n\r\n const _renderInput = (name: string, label: string, required: boolean, errorMessage: string, pattern?: RegExp): JSX.Element => {\r\n return (\r\n
\r\n \r\n \r\n {get(errors, name) && {errorMessage}}\r\n
\r\n );\r\n };\r\n\r\n const _renderTypeSelect = (name: string, label: string, options: IMaincategories[], required: boolean): JSX.Element => {\r\n return (\r\n
\r\n \r\n {\r\n setValue('Type_CAP', e.target.value, {\r\n shouldDirty: true\r\n });\r\n setTypeSelected(parseInt(e.target.value, 10));\r\n }}\r\n >\r\n \r\n {options.map(option => {\r\n return (\r\n \r\n );\r\n })}\r\n ;\r\n \r\n {get(errors, name) && {resources.genericFieldError}}\r\n
\r\n );\r\n };\r\n\r\n const _renderCountrySelect = (name: string, label: string, options: IMaincategories[], required: boolean): JSX.Element => {\r\n return (\r\n
\r\n \r\n {\r\n setCountrySelected(e.target.value);\r\n setValue('Country_CAP', e.target.value, {\r\n shouldDirty: true\r\n });\r\n }}\r\n >\r\n \r\n {options.map(option => {\r\n return (\r\n \r\n );\r\n })}\r\n ;\r\n \r\n {get(errors, name) && {resources.genericFieldError}}\r\n
\r\n );\r\n };\r\n\r\n const onSubmit = async (data: Inputs) => {\r\n if (data.VatNum_CAP && data.VatNum_CAP !== '') {\r\n void validateVatNum_CAPAsync({ callerContext: moduleProps.context?.actionContext }, data.VatNum_CAP, data.Country_CAP).then(\r\n response => {\r\n if (response.Status === true) {\r\n if (data.Country_CAP === 'ITA' && data.FiscalCode_CAP && data.FiscalCode_CAP !== '') {\r\n if (validateFiscalCode(data.FiscalCode_CAP)) {\r\n setDataCompiled(data);\r\n void _capDataSave(moduleProps, data);\r\n moduleState.onReady();\r\n reset(data);\r\n } else {\r\n setError('FiscalCode_CAP', {\r\n message: 'Fiscal Code Num not valid',\r\n shouldFocus: true\r\n });\r\n }\r\n } else {\r\n setDataCompiled(data);\r\n void _capDataSave(moduleProps, data);\r\n moduleState.onReady();\r\n reset(data);\r\n }\r\n } else {\r\n setError('VatNum_CAP', {\r\n message: 'Vat Num not valid',\r\n shouldFocus: true\r\n });\r\n }\r\n }\r\n );\r\n } else {\r\n if (data.Country_CAP === 'ITA' && data.FiscalCode_CAP && data.FiscalCode_CAP !== '') {\r\n if (validateFiscalCode(data.FiscalCode_CAP)) {\r\n setDataCompiled(data);\r\n void _capDataSave(moduleProps, data);\r\n moduleState.onReady();\r\n reset(data);\r\n } else {\r\n setError('FiscalCode_CAP', {\r\n message: 'Fiscal Code Num not valid',\r\n shouldFocus: true\r\n });\r\n }\r\n } else {\r\n setDataCompiled(data);\r\n void _capDataSave(moduleProps, data);\r\n moduleState.onReady();\r\n reset(data);\r\n }\r\n }\r\n };\r\n\r\n const _resetForm = () => {\r\n if (dataCompiled?.billing && !billing) {\r\n setBilling(true);\r\n setCountrySelected(dataCompiled.Country_CAP);\r\n setTypeSelected(dataCompiled.Type_CAP);\r\n } else if (dataCompiled && billing) {\r\n setCountrySelected(dataCompiled.Country_CAP);\r\n setTypeSelected(dataCompiled.Type_CAP);\r\n }\r\n moduleState.onReady();\r\n };\r\n\r\n const setData = async () => {\r\n const [dataLoadedFromExtProps, pageRefreshedDataSaved] = await _capDataRender(moduleProps);\r\n if (dataLoadedFromExtProps && pageRefreshedDataSaved && dataLoadedFromExtProps.billing !== undefined) {\r\n setDataCompiled(dataLoadedFromExtProps);\r\n setBilling(dataLoadedFromExtProps.billing);\r\n dataLoadedFromExtProps.Type_CAP && setTypeSelected(dataLoadedFromExtProps.Type_CAP);\r\n dataLoadedFromExtProps.Country_CAP && setCountrySelected(dataLoadedFromExtProps.Country_CAP);\r\n moduleState.onReady();\r\n reset(dataLoadedFromExtProps);\r\n }\r\n };\r\n\r\n // const getUserData = async () => {\r\n // if (customerId) {\r\n // await getInvoiceAccountInfo_CAPAsync({ callerContext: CheckoutInvoice.moduleProps.context?.actionContext }, customerId).then(\r\n // result => {\r\n // // console.log('getInvoiceAccountInfo_CAPAsync');\r\n // // console.log(result);\r\n // }\r\n // );\r\n // }\r\n // };\r\n\r\n if (moduleState.status === 'ready') {\r\n return (\r\n \r\n
\r\n {dataCompiled &&\r\n Object.keys(dataCompiled).map((keyName, i) => (\r\n \r\n {get(dataCompiled, keyName)}\r\n
\r\n
\r\n ))}\r\n
\r\n
\r\n );\r\n } else {\r\n return (\r\n \r\n
\r\n \r\n {shippingCountry && countrriesEU.indexOf(shippingCountry) === -1 && (\r\n

\r\n {props.config.billingLabel}\r\n

\r\n )}\r\n
\r\n {billing && (\r\n <>\r\n {gMapsAutocomplete()}\r\n {customerId && (\r\n
\r\n \r\n
\r\n )}\r\n {_renderTypeSelect('Type_CAP', `${resources.typeLabel}`, invoiceTypeOptions, true)}\r\n {typeSelected !== 0 &&\r\n _renderInput('Street_CAP', `${resources.streetLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected !== 0 &&\r\n _renderInput('StreetNumber_CAP', `${resources.streetNumberLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected !== 0 &&\r\n _renderInput('ZipCode_CAP', `${resources.zipCodeLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected !== 0 && _renderInput('City_CAP', `${resources.cityLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected !== 0 && _renderCountrySelect('Country_CAP', `${resources.countryLabel}`, countryRegions, true)}\r\n {typeSelected === 2 &&\r\n _renderInput('OrgName_CAP', `${resources.orgNameLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected === 1 &&\r\n _renderInput('FirstName_CAP', `${resources.firstNameLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected === 1 &&\r\n _renderInput('LastName_CAP', `${resources.lastNameLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected === 2 &&\r\n countrriesEU.indexOf(countrySelected) > -1 &&\r\n _renderInput('VatNum_CAP', `${resources.vatNumLabel}`, true, `${resources.vatNumberError}`)}\r\n {typeSelected !== 0 &&\r\n countrySelected === 'ITA' &&\r\n _renderInput(\r\n 'FiscalCode_CAP',\r\n `${resources.fiscalCodeLabel}`,\r\n true,\r\n `${resources.fiscalCodeError}`,\r\n fiscalPattern\r\n )}\r\n {typeSelected !== 0 &&\r\n countrySelected === 'ITA' &&\r\n typeSelected === 2 &&\r\n _renderInput('PEC_CAP', `${resources.pecLabel}`, true, `${resources.genericFieldError}`)}\r\n {typeSelected !== 0 &&\r\n countrySelected === 'ITA' &&\r\n typeSelected === 2 &&\r\n _renderInput('SDI_CAP', `${resources.sdiLabel}`, true, `${resources.genericFieldError}`)}\r\n \r\n )}\r\n
\r\n \r\n {resources.saveContinueBtnLabel}\r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n};\r\nexport default CheckoutInvoiceView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\n\r\nimport { ILoyaltyBalanceCheckData } from './loyalty-balance-check.data';\r\nimport { ILoyaltyBalanceCheckProps } from './loyalty-balance-check.props.autogenerated';\r\n\r\nexport interface ILoyaltyBalanceCheckViewProps extends ILoyaltyBalanceCheckProps {}\r\n\r\n/**\r\n *\r\n * LoyaltyBalanceCheck component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass LoyaltyBalanceCheck extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n return this.props.renderView(this.props);\r\n }\r\n}\r\n\r\nexport default LoyaltyBalanceCheck;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\nimport * as React from 'react';\r\nimport { ILoyaltyBalanceCheckViewProps } from './loyalty-balance-check';\r\nimport { format } from '@msdyn365-commerce-modules/utilities';\r\nimport { useForm } from 'react-hook-form';\r\nimport { getLoyaltyCard_DLXAsync } from '../../actions/DataActionExtension.g';\r\n\r\nconst LoyaltyBalanceCheckView: React.FC = props => {\r\n // const user_card_number = (document.getElementById('loyalty-card-input') as HTMLInputElement).value;\r\n const [points, setPoints] = React.useState(-1);\r\n const [tier, setTier] = React.useState('');\r\n\r\n const { register, handleSubmit } = useForm();\r\n\r\n const _submit = async (data: { loyalty_card_number: string; email: string }) => {\r\n // Protip: Check if the loyalty card's associated email address matches with the input one for improved security\r\n // console.log(data.loyalty_card_number);\r\n // console.log(data.email);\r\n\r\n await getLoyaltyCard_DLXAsync({ callerContext: props.context.actionContext }, data.loyalty_card_number, data.email)\r\n .then(result => {\r\n const tmp_card = result[0];\r\n // @ts-ignore\r\n const firstLoyaltyGroup = tmp_card.LoyaltyGroups[0];\r\n const highestTierId = firstLoyaltyGroup.HighestActiveLoyaltyCardTier;\r\n // @ts-ignore\r\n const tierDetails = firstLoyaltyGroup.LoyaltyCardTiers.filter(tier => tier.RecordId === highestTierId)[0];\r\n if (tierDetails.TierId) {\r\n setTier(tierDetails.TierId);\r\n }\r\n const tmp_points = tmp_card.RewardPoints ?? -1;\r\n setPoints(tmp_points[0].ActivePoints ?? -1);\r\n if (typeof window !== undefined) {\r\n const points_div: HTMLDivElement = document.getElementById('points') as HTMLDivElement;\r\n points_div.style.display = 'block';\r\n const scrollIntoViewOptions: ScrollIntoViewOptions = { behavior: 'smooth' };\r\n if (window.innerWidth < 992) {\r\n (document.getElementById('text-p') as HTMLButtonElement).scrollIntoView(scrollIntoViewOptions);\r\n }\r\n }\r\n })\r\n .catch(error => {\r\n setPoints(-1);\r\n if (typeof window !== undefined) {\r\n const points_div: HTMLDivElement = document.getElementById('points') as HTMLDivElement;\r\n points_div.style.display = 'block';\r\n const scrollIntoViewOptions: ScrollIntoViewOptions = { behavior: 'smooth' };\r\n if (window.innerWidth < 992) {\r\n (document.getElementById('text-p') as HTMLButtonElement).scrollIntoView(scrollIntoViewOptions);\r\n }\r\n }\r\n // console.log(error);\r\n });\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {props.config.headingText ?

{props.config.headingText}

: null}\r\n\r\n {props.config.paragraphText ? (\r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {props.config.loyaltyCardLabel ? : null}\r\n \r\n
\r\n
\r\n {props.config.emailLabel ? : null}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {props.resources.balanceCheckLabel && props.resources.balanceCheckError ? (\r\n
\r\n {points !== -1 && tier !== '' ? (\r\n

{format(props.resources.balanceCheckLabel, points, tier)}

\r\n ) : (\r\n

{props.resources.balanceCheckError}

\r\n )}\r\n
\r\n ) : null}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default LoyaltyBalanceCheckView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\n\r\nimport { ILoyaltyStoreSignUpData } from './loyalty-store-sign-up.data';\r\nimport { ILoyaltyStoreSignUpProps } from './loyalty-store-sign-up.props.autogenerated';\r\n\r\nexport interface ILoyaltyStoreSignUpViewProps extends ILoyaltyStoreSignUpProps {}\r\n\r\n/**\r\n *\r\n * LoyaltyStoreSignUp component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass LoyaltyStoreSignUp extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n return this.props.renderView(this.props);\r\n }\r\n}\r\n\r\nexport default LoyaltyStoreSignUp;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\nimport { ILoyaltyStoreSignUpViewProps } from './loyalty-store-sign-up';\r\nimport { useForm } from 'react-hook-form';\r\nimport * as MsDyn365 from '@msdyn365-commerce/core';\r\nimport { signUp_DLXAsync } from '../../actions/DataActionExtension.g';\r\nimport { isMobile, VariantType, format } from '@msdyn365-commerce-modules/utilities';\r\n\r\n// Define the component\r\nconst LoyaltyStoreSignUpView: React.FC = props => {\r\n // Destructure props for easier access\r\n const {\r\n loyaltyStoreSignUpMandatoryAgreement,\r\n additionalFieldsHeading,\r\n birthdaySubtext,\r\n postalCodeSubtext,\r\n phoneNumberSubtext,\r\n // loyaltyVCLUBDetailsLinkText,\r\n feedbackAlreadySubscribed,\r\n feedbackCardBeingGenerated,\r\n feedbackSuccess,\r\n privacyPolicyURL,\r\n textGenericMarketing,\r\n walletLoyaltyProgramName\r\n } = props.config;\r\n\r\n const {\r\n vClubCard,\r\n joinedLoyaltyThankYouHeader,\r\n loyaltyStoreSignUpSubmitButtonLabel,\r\n htmlGenericMarketing,\r\n htmlProfiling,\r\n htmlThirdParty,\r\n birthdayLabelText,\r\n addressZipCodeLabelOptional,\r\n phoneLabelText,\r\n emailAddressLabelText,\r\n emailErrortext,\r\n feedbackErrorText\r\n } = props.resources;\r\n\r\n // Define the form inputs type\r\n type FormInputs = {\r\n country: string;\r\n email: string;\r\n phone_number: string;\r\n marketing: boolean;\r\n profiling: boolean;\r\n };\r\n\r\n // Initialize form handling with react-hook-form\r\n const {\r\n register,\r\n watch,\r\n handleSubmit,\r\n formState: { errors }\r\n } = useForm({\r\n mode: 'onChange'\r\n });\r\n\r\n const programString: string = walletLoyaltyProgramName || 'v-club-emea';\r\n\r\n // State variables for loading, disabled state, and subscription message\r\n const [loading, setLoading] = React.useState(false);\r\n const [disabled_state, setDisabled] = React.useState(false);\r\n const check_ref = React.useRef(null);\r\n const [submittedEmailAddress, setSubmittedEmailAddress] = React.useState(null);\r\n const [loyaltyCardNumber, setLoyaltyCardNumber] = React.useState(null);\r\n const [subscribeMessage, setSubscribeMessage] = React.useState({\r\n state: false,\r\n message: '',\r\n class: ''\r\n });\r\n\r\n const isMobileDevice =\r\n isMobile({ variant: VariantType.Browser, context: props.context.request }) === 'xs' ||\r\n isMobile({ variant: VariantType.Viewport, context: props.context.request }) === 'xs' ||\r\n isMobile({ variant: VariantType.Browser, context: props.context.request }) === 'sm' ||\r\n isMobile({ variant: VariantType.Viewport, context: props.context.request }) === 'sm';\r\n\r\n // Extract query parameters from the request context\r\n const query_dict = props.context.request.query as Object;\r\n const queryParameter = Object.keys(query_dict)[0];\r\n const store_code = Object.values(query_dict)[0];\r\n const store_kiosk = Object.keys(query_dict).indexOf('kiosk') > -1 ? true : false;\r\n\r\n // Define constants for hostname and locale\r\n const euHostname = 'eu.venchi.com';\r\n const localeString = props?.context?.request?.locale ? props?.context?.request?.locale?.toLowerCase() : '';\r\n const [unchecked_state, setUncheckedState] = React.useState(localeString !== 'en-us');\r\n const sitePath = props?.context?.request?.sitePath ? props?.context?.request?.sitePath?.substring(1) : '';\r\n const hostname = props?.context?.request?.url?.requestUrl?.hostname || '';\r\n // const loyalty_URL = `https://${hostname}/${sitePath}/loyalty?hasJoined=true`;\r\n\r\n // Determine the region for CRM based on hostname and site path\r\n let regionCRM: string;\r\n if (hostname.toLowerCase() === euHostname && sitePath === '') {\r\n regionCRM = 'eu';\r\n } else {\r\n regionCRM = localeString;\r\n }\r\n\r\n const watchEmail = watch('email');\r\n\r\n // Function to handle form submission\r\n const _submit = async (data: any) => {\r\n setDisabled(true);\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n setSubmittedEmailAddress(data.email);\r\n setLoading(true);\r\n let birthday_slash: string = data.birthday;\r\n birthday_slash = birthday_slash.replace('-', '/').replace('-', '/');\r\n if (localeString === 'en-us' && data.birthday !== '') {\r\n birthday_slash = `${birthday_slash}/1900`;\r\n }\r\n let message: string;\r\n\r\n const context = props.context;\r\n await signUp_DLXAsync(\r\n { callerContext: context.actionContext },\r\n '',\r\n '',\r\n data.email,\r\n localeString !== 'en-us' ? data.phone_number : `+1${data.phone_number}`,\r\n true,\r\n data.marketing,\r\n localeString !== 'en-us' ? data.profiling : data.marketing,\r\n localeString !== 'en-us' ? data.thirdparty : false,\r\n localeString,\r\n birthday_slash,\r\n data.postal_code,\r\n store_code ? `Store_${store_code}` : 'Store_fallback',\r\n regionCRM\r\n )\r\n .then(result => {\r\n if (result.Error !== '') {\r\n throw new Error(result.Error);\r\n } else if (result.CustomerGUID?.length !== 0) {\r\n console.log('New email');\r\n // Brand new email\r\n message = feedbackSuccess ?? 'Thank you! Please check your email';\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'success'\r\n });\r\n // If the following array is NOT empty and OOUID is NOT 0, the synced user did NOT have a Loyalty card yet\r\n if (result.LoyaltyCards && result.LoyaltyCards.length > 0 && result.LoyaltyCards[0].OmOperatingUnitId !== 0) {\r\n if (result.LoyaltyCards[0].CardNumber?.length) {\r\n console.log('Loyalty card issued');\r\n setLoyaltyCardNumber(result.LoyaltyCards[0].CardNumber ?? null);\r\n }\r\n // Old email, new loyalty\r\n message = feedbackSuccess ?? 'Thank you! Please check your email';\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'success'\r\n });\r\n } else {\r\n console.log('Loyalty card already existing');\r\n // Synced user with an existing loyalty card\r\n throw new Error('already_existing');\r\n }\r\n } else if (result.AccountNum?.length === 36) {\r\n console.log('Account not synced yet');\r\n // This user is not synced yet, so they still have a temporary GUID, e.g. 278ef388-f813-449b-b7ac-721169659675\r\n // New email but already generating the loyalty\r\n throw new Error('generating');\r\n } else if (result.AccountNum?.length === 10) {\r\n console.log('Account synced');\r\n // This user is synced already, so they have an FO account number, e.g. FC12345678\r\n // If the following array is NOT empty and OOUID is NOT 0, the synced user did NOT have a Loyalty card yet\r\n if (result.LoyaltyCards && result.LoyaltyCards.length > 0 && result.LoyaltyCards[0].OmOperatingUnitId !== 0) {\r\n if (result.LoyaltyCards[0].CardNumber?.length) {\r\n console.log('Loyalty card issued');\r\n setLoyaltyCardNumber(result.LoyaltyCards[0].CardNumber ?? null);\r\n }\r\n // Old email, new loyalty\r\n message = feedbackSuccess ?? 'Thank you! Please check your email';\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'success'\r\n });\r\n } else {\r\n console.log('Loyalty card already existing');\r\n // Synced user with an existing loyalty card\r\n throw new Error('already_existing');\r\n }\r\n }\r\n setLoading(false);\r\n if (store_kiosk && !result.Error) {\r\n setTimeout(() => {\r\n window.location.href = `https://${hostname}/${\r\n sitePath ? `${sitePath}/` : ''\r\n }loyalty-region-selection?${queryParameter}=${store_code}&kiosk=true`;\r\n }, 5000);\r\n }\r\n })\r\n .catch(err => {\r\n switch (err.message) {\r\n case 'generating':\r\n message = feedbackCardBeingGenerated ?? 'Your card is already being generated, thank you for your patience.';\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'generic'\r\n });\r\n break;\r\n case 'already_existing':\r\n message = feedbackAlreadySubscribed ?? 'The inserted email is already subscribed to our loyalty program.';\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'error'\r\n });\r\n break;\r\n default:\r\n message = feedbackErrorText;\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'error'\r\n });\r\n }\r\n setLoading(false);\r\n });\r\n };\r\n\r\n // Debug US 9189\r\n React.useEffect(() => {\r\n console.log({ subscribeMessage, loyaltyCardNumber, submittedEmailAddress });\r\n }, [subscribeMessage, loyaltyCardNumber, submittedEmailAddress]);\r\n\r\n const mm_dd: RegExp = /(0[1-9]|1[0-2])\\/(0[1-9]|[1-2][0-9]|3[0-1])/gm;\r\n return (\r\n
\r\n {!subscribeMessage.state ? (\r\n
\r\n {loading ?
: }\r\n
\r\n {emailAddressLabelText && emailErrortext ? (\r\n
\r\n \r\n \r\n {/* {watchEmail && watchEmail.includes('@') && watchEmail.endsWith('.con') && (\r\n <>\r\n

\r\n Maybe you meant {watchEmail.slice(0, -3)}\r\n com  \r\n

\r\n \r\n )} */}\r\n {/* For future scalability: Array with forbidden domains and .any in the endsWith? */}\r\n {(errors.email || (watchEmail && watchEmail.endsWith('.con'))) && (\r\n {emailErrortext}\r\n )}\r\n
\r\n ) : null}\r\n\r\n {phoneLabelText && localeString === 'en-us' ? (\r\n
\r\n \r\n
\r\n
\r\n +1\r\n
\r\n {\r\n if (typeof window !== undefined) {\r\n const this_thing = document.getElementById('phone_number') as HTMLInputElement;\r\n this_thing.maxLength = 16;\r\n }\r\n }}\r\n ref={register({ required: true, maxLength: 16 })}\r\n // ref={\r\n // localeString === 'en-us'\r\n // ? register({\r\n // required: true,\r\n // pattern: /^\\\\ ( [2-9] {1} [0-9] {2}\\\\) [ ]? [0-9] {3}[-]?[0-9] {4}$/,\r\n // maxLength: 15\r\n // })\r\n // : register({ required: false, maxLength: 15 })\r\n // }\r\n />\r\n
\r\n {errors.phone_number && (\r\n {emailErrortext.replace('email', 'phone number')}\r\n )}\r\n {phoneNumberSubtext ?

{phoneNumberSubtext}

: null}\r\n
\r\n ) : null}\r\n\r\n {htmlGenericMarketing && privacyPolicyURL ? (\r\n
\r\n \r\n \r\n
\r\n ) : null}\r\n\r\n {htmlProfiling && privacyPolicyURL && localeString !== 'en-us' ? (\r\n
\r\n \r\n \r\n
\r\n ) : null}\r\n\r\n {htmlThirdParty && privacyPolicyURL && localeString !== 'en-us' ? (\r\n
\r\n \r\n \r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n {additionalFieldsHeading ?

{additionalFieldsHeading}

: null}\r\n\r\n {phoneLabelText && localeString !== 'en-us' ? (\r\n
\r\n \r\n {\r\n if (typeof window !== undefined) {\r\n const this_thing = document.getElementById('phone_number') as HTMLInputElement;\r\n this_thing.maxLength = 15;\r\n }\r\n }}\r\n ref={register({ required: false, maxLength: 15 })}\r\n />\r\n {/* {errors.phone_number && (\r\n {emailErrortext.replace('email', 'phone number')}\r\n )} */}\r\n {phoneNumberSubtext ?

{phoneNumberSubtext}

: null}\r\n
\r\n ) : null}\r\n\r\n {localeString !== 'en-us'\r\n ? birthdayLabelText && (\r\n
\r\n \r\n \r\n {birthdaySubtext ?

{birthdaySubtext}

: null}\r\n
\r\n )\r\n : birthdayLabelText && (\r\n // TODO Better validation for US\r\n
\r\n \r\n {/* Protip: Custom error messages https://legacy.react-hook-form.com/v6/api/#register */}\r\n {\r\n if (typeof window !== undefined) {\r\n const birthday_proxy: HTMLInputElement = document.getElementById(\r\n 'birthday'\r\n ) as HTMLInputElement;\r\n const birthday: HTMLInputElement = document.getElementById('bday') as HTMLInputElement;\r\n birthday_proxy.maxLength = 5;\r\n birthday_proxy.onchange = () => {\r\n birthday.value = `1900/${birthday_proxy.value}`;\r\n };\r\n }\r\n }}\r\n ref={register({\r\n required: false,\r\n maxLength: 5,\r\n pattern: mm_dd\r\n })}\r\n />\r\n \r\n {birthdaySubtext ?

{birthdaySubtext}

: null}\r\n
\r\n )}\r\n\r\n {addressZipCodeLabelOptional ? (\r\n
\r\n \r\n {\r\n if (typeof window !== undefined) {\r\n const this_thing = document.getElementById('postal_code') as HTMLInputElement;\r\n this_thing.maxLength = 9;\r\n }\r\n }}\r\n ref={register({ required: false, maxLength: 9 })}\r\n />\r\n {postalCodeSubtext ?

{postalCodeSubtext}

: null}\r\n
\r\n ) : null}\r\n
\r\n\r\n {localeString !== 'en-us' ? (\r\n // EMEA\r\n loyaltyStoreSignUpMandatoryAgreement ? (\r\n
\r\n {\r\n setUncheckedState(!check_ref.current?.checked!);\r\n }}\r\n />\r\n {/* @ts-ignore */}\r\n
\r\n ) : null\r\n ) : // US\r\n loyaltyStoreSignUpMandatoryAgreement ? (\r\n
\r\n {/* TODO change to MsDyn365.RichTextComponent to avoid setHTML? */}\r\n
\r\n
\r\n ) : null}\r\n\r\n
\r\n \r\n {loading && loyaltyStoreSignUpSubmitButtonLabel ? (\r\n
\r\n ) : (\r\n {loyaltyStoreSignUpSubmitButtonLabel}\r\n )}\r\n \r\n
\r\n \r\n ) : isMobileDevice &&\r\n loyaltyCardNumber &&\r\n loyaltyCardNumber.length > 0 &&\r\n submittedEmailAddress &&\r\n submittedEmailAddress.length > 0 ? (\r\n // Here goes the response from the success request\r\n
\r\n
\r\n {/*

DEBUG test Protip if kiosk error something like show this to a sales assistant in the store

*/}\r\n
\r\n

{joinedLoyaltyThankYouHeader}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n {vClubCard}: {loyaltyCardNumber}\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {/* {!store_kiosk && loyaltyVCLUBDetailsLinkText && subscribeMessage.class !== 'error' ? (\r\n {loyaltyVCLUBDetailsLinkText}\r\n ) : null} */}\r\n
\r\n
\r\n ) : (\r\n
\r\n
\r\n

{subscribeMessage.message}

\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default LoyaltyStoreSignUpView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { INewsletterBlockProps } from './newsletter-block.props.autogenerated';\r\nimport { format } from '@msdyn365-commerce-modules/utilities';\r\n\r\nexport interface INewsletterBlockViewProps extends INewsletterBlockProps<{}> {\r\n paragraph?: React.ReactNode;\r\n privacyTextM?: React.ReactNode;\r\n privacyTextP?: React.ReactNode;\r\n privacyTextT?: React.ReactNode;\r\n source?: React.ReactNode;\r\n className?: string;\r\n}\r\n\r\n/**\r\n *\r\n * NewsletterBlock component\r\n */\r\nclass NewsletterBlock extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n const localeString = this.props?.context?.request?.locale ? this.props?.context?.request?.locale?.toLowerCase() : '';\r\n\r\n const { paragraph, privacyTextM, className, privacyPolicyURL } = this.props.config;\r\n let { htmlGenericMarketing, htmlProfiling, htmlThirdParty } = this.props.resources;\r\n\r\n htmlGenericMarketing = `

${format(htmlGenericMarketing, privacyPolicyURL)}

`;\r\n htmlProfiling = `

${format(htmlProfiling, privacyPolicyURL)}

`;\r\n htmlThirdParty = `

${format(htmlThirdParty, privacyPolicyURL)}

`;\r\n\r\n const text = paragraph && ;\r\n\r\n const textPrivacyTextM = privacyTextM && (\r\n \r\n );\r\n const textPrivacyTextP = htmlProfiling && ;\r\n const textPrivacyTextT = htmlThirdParty && ;\r\n\r\n const newsletterBlockViewProps = {\r\n ...this.props,\r\n paragraph: text,\r\n privacyTextM: textPrivacyTextM,\r\n privacyTextP: textPrivacyTextP,\r\n privacyTextT: textPrivacyTextT,\r\n className: classnames('ms-newsletter-block', className)\r\n };\r\n return this.props.renderView(newsletterBlockViewProps) as React.ReactElement;\r\n }\r\n}\r\nexport default NewsletterBlock;\r\n","/**\r\n * Copyright (c) Microsoft Corporation\r\n * All rights reserved. See License.txt in the project root for license information.\r\n * INewsletterBlock contentModule Interface Properties\r\n * THIS FILE IS AUTO-GENERATED - MANUAL MODIFICATIONS WILL BE LOST\r\n */\r\n\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nexport const enum position {\r\n Page = 'Page',\r\n Popup = 'Popup',\r\n Footer = 'Footer'\r\n}\r\n\r\nexport const enum customExternalAPI {\r\n D365 = 'D365',\r\n External = 'External'\r\n}\r\n\r\nexport const enum source {\r\n CommerceSubscriberEU = 'CommerceSubscriberEU',\r\n CommerceSubscribersUS = 'CommerceSubscribersUS',\r\n CommerceSubscribersAU = 'CommerceSubscribersAU',\r\n RetailEU = 'RetailEU',\r\n RetailUS = 'RetailUS',\r\n RetailAU = 'RetailAU'\r\n}\r\n\r\nexport interface INewsletterBlockConfig extends Msdyn365.IModuleConfig {\r\n paragraph?: Msdyn365.RichText;\r\n privacyTextM?: Msdyn365.RichText;\r\n requiredMarketingError?: string;\r\n className?: string;\r\n position: position;\r\n customExternalAPI?: customExternalAPI;\r\n externalApiURL?: string;\r\n externalThankYouMessage?: string;\r\n source: source;\r\n preflagMarketing?: boolean;\r\n preflagProfiling?: boolean;\r\n preflagThirdParty?: boolean;\r\n hideMarketing?: boolean;\r\n hideProfiling?: boolean;\r\n hideThirdParty?: boolean;\r\n privacyPolicyURL?: string;\r\n}\r\n\r\nexport interface INewsletterBlockResources {\r\n alreadySubscribedText: string;\r\n verifyEmailText: string;\r\n yourEmailAddressText: string;\r\n subscribeBtnText: string;\r\n htmlGenericMarketing: string;\r\n htmlProfiling: string;\r\n htmlThirdParty: string;\r\n}\r\n\r\nexport interface INewsletterBlockProps extends Msdyn365.IModule {\r\n resources: INewsletterBlockResources;\r\n config: INewsletterBlockConfig;\r\n}\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport * as React from 'react';\r\nimport { useForm } from 'react-hook-form';\r\nimport { signUp_DLXAsync } from '../../actions/DataActionExtension.g';\r\nimport { INewsletterBlockViewProps } from './newsletter-block';\r\nimport { customExternalAPI as customeExternalAPIType } from './newsletter-block.props.autogenerated';\r\n\r\nexport interface ExternalPayload {\r\n email: string;\r\n marketing: boolean;\r\n profiling: boolean;\r\n thirdparty: boolean;\r\n message?: string;\r\n}\r\n\r\nconst NewsletterBlockView: React.FC = props => {\r\n const euHostname = 'eu.venchi.com';\r\n const localeString = props?.context?.request?.locale ? props?.context?.request?.locale?.toLowerCase() : '';\r\n const sitePath = props?.context?.request?.sitePath ? props?.context?.request?.sitePath?.substring(1) : '';\r\n // const currency = props?.context?.request?.channel?.Currency;\r\n // const locale = sitePath !== '' ? sitePath : currency === 'EUR' && localeString === 'en-gb' ? 'eu' : localeString;\r\n const hostname = props?.context?.request?.url?.requestUrl?.hostname || '';\r\n let regionCRM: string;\r\n if (hostname.toLowerCase() === euHostname && sitePath === '') {\r\n regionCRM = 'eu';\r\n } else {\r\n regionCRM = localeString;\r\n }\r\n type Inputs = {\r\n email: string;\r\n marketing: boolean;\r\n profiling: boolean;\r\n thirdParts: boolean;\r\n };\r\n // const { register, handleSubmit, watch, errors } = useForm();\r\n const { register, handleSubmit, errors } = useForm();\r\n // const marketingChoice: boolean = watch('marketing');\r\n const [loading, setLoading] = React.useState(false);\r\n const [disabled_state, setDisabled] = React.useState(false);\r\n\r\n const customExternalAPI = props?.config?.customExternalAPI;\r\n const externalApiURL = props.config.externalApiURL ?? '';\r\n const externalThankYouMessage = props.config.externalThankYouMessage ?? '';\r\n const useExternalAPI = (externalApiURL && customExternalAPI === customeExternalAPIType.External) ?? false;\r\n\r\n let message = props.resources.verifyEmailText;\r\n // const channelId: number = props.context.request.apiSettings.channelId;\r\n const [subscribeMessage, setSubscribeMessage] = React.useState({\r\n state: false,\r\n message: '',\r\n class: ''\r\n });\r\n\r\n let source: string;\r\n switch (props.config.source?.toString()) {\r\n case 'CommerceSubscriberEU':\r\n source = 'Commerce Subscriber EU';\r\n break;\r\n case 'CommerceSubscribersUS':\r\n source = 'Commerce Subscribers US';\r\n break;\r\n case 'RetailEU':\r\n source = 'Retail EU';\r\n break;\r\n case 'RetailUS':\r\n source = 'Retail US';\r\n break;\r\n }\r\n\r\n const _subscribeToNL = async (data: Inputs) => {\r\n setDisabled(true);\r\n setLoading(true);\r\n signUp_DLXAsync(\r\n { callerContext: props.context?.actionContext },\r\n '',\r\n '',\r\n data.email,\r\n '',\r\n false,\r\n data.marketing,\r\n localeString !== 'en-us' ? data.profiling : data.marketing,\r\n data.thirdParts,\r\n localeString,\r\n '',\r\n '',\r\n source,\r\n regionCRM\r\n )\r\n .then(result => {\r\n message = result.Error\r\n ? result.Error === 'already_subscribed'\r\n ? props.resources.alreadySubscribedText\r\n : result.Error\r\n : message;\r\n setLoading(false);\r\n setSubscribeMessage({\r\n state: true,\r\n message: message,\r\n class: 'success'\r\n });\r\n // @ts-ignore\r\n window.dataLayer?.push?.({\r\n event: 'gaEvent',\r\n eventCategory: 'newsletter',\r\n eventAction: 'subscription',\r\n //@ts-ignore\r\n eventLabel: props.config.position\r\n });\r\n })\r\n .catch(error => {\r\n message = error.message;\r\n setLoading(false);\r\n setSubscribeMessage({\r\n state: true,\r\n message: error.message,\r\n class: 'error'\r\n });\r\n });\r\n };\r\n\r\n function postJson(url: string, data: any): Promise {\r\n return fetch(url, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n },\r\n body: JSON.stringify(data)\r\n })\r\n .then(response => {\r\n if (!response.ok) {\r\n throw new Error(`HTTP error! Status: ${response.status}`);\r\n }\r\n return response.status;\r\n })\r\n .catch(error => {\r\n console.error('Error:', error);\r\n throw error;\r\n });\r\n }\r\n\r\n const _externalSubscribeToNL = async (data: Inputs) => {\r\n setLoading(true);\r\n const payload: ExternalPayload = {\r\n email: data.email,\r\n marketing: data.marketing,\r\n profiling: data.profiling,\r\n thirdparty: data.thirdParts\r\n };\r\n postJson(externalApiURL, payload)\r\n .then(result => {\r\n setLoading(false);\r\n setSubscribeMessage({\r\n state: true,\r\n message: externalThankYouMessage,\r\n class: 'success'\r\n });\r\n })\r\n .catch(error => {\r\n message = error.message;\r\n setLoading(false);\r\n setSubscribeMessage({\r\n state: true,\r\n message: error.message,\r\n class: 'error'\r\n });\r\n });\r\n };\r\n\r\n return (\r\n
\r\n {props.paragraph}\r\n {subscribeMessage.state === false ? (\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n ) : (\r\n
\r\n {subscribeMessage.message}\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default NewsletterBlockView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxAddToOrderTemplateViewProps,\r\n IBuyboxAddToWishlistViewProps,\r\n IBuyboxCallbacks,\r\n IBuyboxData,\r\n IBuyboxKeyInPriceViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps,\r\n IBuyboxProps,\r\n IBuyboxState,\r\n IBuyboxViewProps\r\n} from '@msdyn365-commerce-modules/buybox';\r\nimport { IProductSpecificationViewProps } from '@msdyn365-commerce-modules/product-specification/src/modules/product-specification/./product-specification';\r\nimport {\r\n IProductSpecificationProps as IProductSpecificationExtensionProps,\r\n IProductSpecificationConfig as IProductSpecificationExtensionConfig,\r\n IReassuranceItemsData as IReassuranceItemsExtensionData\r\n} from '../definition-extensions/product-specification.ext.props.autogenerated';\r\nimport { getCategoryPathsAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/ProductsDataActions.g';\r\nimport * as React from 'react';\r\nimport { IBuyboxResources } from '@msdyn365-commerce-modules/buybox/dist/types/modules/buybox/buybox.props.autogenerated';\r\nimport { ITelemetryContent, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { getCategoriesUrlSync, Image, IImageData } from '@msdyn365-commerce/core';\r\nimport { ProductDimension } from '@msdyn365-commerce/retail-proxy';\r\nimport { insertBackInStock_CAPAsync_v2 } from '../../../actions/DataActionExtension.g';\r\nimport {\r\n IBuyboxProps as IBuyboxExtensionProps,\r\n IBuyboxResources as IBuyboxExtensionResources,\r\n IBuyboxConfig as IBuyboxExtensionConfig,\r\n IBadgeItemsData as IBadgeItemsExtensionData,\r\n BadgeItemsBadgeLabelColor as BadgeItemsBadgeLabelColorExtension\r\n} from '../definition-extensions/buybox.ext.props.autogenerated';\r\nimport { Quantity } from '../utilities/quantity';\r\nimport axios from 'axios';\r\nimport { getCustomDiscountPercentage } from '../utils/getCustomDiscountPercentage';\r\nimport {\r\n trackAddToCartFromPDP,\r\n trackAddToWishlistFromPDP,\r\n trackViewItemFromPDP,\r\n} from '../utilities/datalayer/index';\r\n\r\ninterface productSpecificationData {\r\n Name: string;\r\n BooleanValue: boolean;\r\n TextValue: string;\r\n}\r\n\r\ninterface BadgeShowType {\r\n key: string;\r\n label: string;\r\n image: IImageData;\r\n color?: BadgeItemsBadgeLabelColorExtension;\r\n}\r\ninterface NutritionalData {\r\n label: string;\r\n qty1Label: string;\r\n qty1Unit: string;\r\n qty1Value: number;\r\n qty2Unit: string;\r\n qty2Value: number;\r\n subcategory: NutritionalSubcategoryData[];\r\n}\r\ninterface NutritionalSubcategoryData {\r\n label: string;\r\n qty1Unit: string;\r\n qty1Value: number;\r\n}\r\ninterface ProductLabel {\r\n label: string;\r\n imgLink: string;\r\n}\r\ninterface ReassuranceShowType {\r\n title: string;\r\n description: string;\r\n image: IImageData;\r\n}\r\n\r\nconst BuyboxView: React.FC &\r\n IBuyboxExtensionConfig &\r\n IProductSpecificationViewProps &\r\n IProductSpecificationExtensionProps &\r\n IProductSpecificationExtensionConfig> = props => {\r\n const {\r\n ModuleProps,\r\n MediaGalleryContainerProps,\r\n ProductInfoContainerProps,\r\n addToCart,\r\n addToOrderTemplate,\r\n addToWishlist,\r\n telemetryContent,\r\n configure,\r\n quantity,\r\n title,\r\n callbacks,\r\n state,\r\n resources,\r\n inventoryLabel,\r\n keyInPrice,\r\n quantityLimitsMessages,\r\n max\r\n } = props;\r\n\r\n const {\r\n // prettier-ignore\r\n // @ts-ignore\r\n data: { productAvailableQuantity: { result: productAvailableQuantity }, productSpecificationData: { result: productSpecificationData }\r\n }\r\n } = props;\r\n const availibilityCode = productAvailableQuantity ? productAvailableQuantity[0]?.StockLevelCode : '';\r\n\r\n const badgesItems: BadgeShowType[] | undefined = props?.config?.badgeItems?.map((badge: IBadgeItemsExtensionData) => ({\r\n key: badge.badgeName,\r\n label: badge.badgeLabel,\r\n color: badge.badgeLabelColor,\r\n image: badge.badgeImage\r\n }));\r\n const badgesTag = badgesItems?.map(({ key }): string => key);\r\n const maxBadges = props?.config?.badgeMaxItems !== undefined ? Number(props.config.badgeMaxItems.replace('max_', '')) : 99;\r\n const badgesToShow: string[] = [];\r\n productSpecificationData?.map((row: productSpecificationData) => {\r\n const attributeName = (row.Name ?? '').replace('\\n', '').trim();\r\n if (row !== null && badgesTag?.includes(attributeName) && row.BooleanValue === true) {\r\n badgesToShow.push(attributeName);\r\n }\r\n });\r\n\r\n // @ts-ignore\r\n const productSpecificationResult = props?.data?.productSpecificationData?.result;\r\n const specificationsList = ['Product description', 'Ingredients', 'Nutritional Values JSON'];\r\n const specificationsListOrder = { 'Product description': 1, Reassurance: 2, Ingredients: 3, 'Nutritional Values JSON': 4, Labels: 5 };\r\n const ingredientsAllAttributesList = ['Ingredients', 'Ingredients 2', 'Ingredients 3'];\r\n const labels = props.resources;\r\n // @ts-ignore\r\n const pTags = [];\r\n const pSpecifications = [];\r\n // @ts-ignore\r\n const ingredientsArray = [];\r\n let ingredientsString = '';\r\n\r\n const reassuranceItems: ReassuranceShowType[] = props?.slots?.productSpecification?.length\r\n ? // @ts-ignore\r\n (props?.slots?.productSpecification[0]?.props?.config?.reassuranceItems ?? []).map((reassurance: IReassuranceItemsExtensionData) => {\r\n if (reassurance) {\r\n return {\r\n title: reassurance.reassuranceTitle,\r\n description: reassurance.reassuranceDescription,\r\n image: reassurance.reassuranceImage\r\n };\r\n }\r\n }\r\n )\r\n : [];\r\n\r\n const isProductAccordionOpened = props?.slots?.productSpecification?.length\r\n ? // @ts-ignore\r\n props?.slots?.productSpecification[0]?.props?.config?.productDescriptionAccordionOpened ?? false\r\n : false;\r\n\r\n const [accordionsState, setAccordionsState] = React.useState(isProductAccordionOpened ? 'Productdescription' : '');\r\n const [fetchingLabels, setFetchingLabels] = React.useState(false);\r\n const [productLabels, setProductLabels] = React.useState([\r\n {\r\n label: labels['product_specification_title_emea_label'] ?? 'EMEA label',\r\n imgLink: ''\r\n },\r\n {\r\n label: labels['product_specification_title_emea_warnings'] ?? 'EMEA warnings',\r\n imgLink: ''\r\n },\r\n {\r\n label: labels['product_specification_title_fda_label'] ?? 'FDA label',\r\n imgLink: ''\r\n }\r\n ]);\r\n\r\n // @ts-ignore\r\n productSpecificationResult?.map(row => {\r\n if (row !== null && specificationsList.includes(row.Name) && row.TextValue !== '') {\r\n pSpecifications.push({ name: row.Name, data: row, order: specificationsListOrder[row.Name] });\r\n }\r\n if (row !== null && ingredientsAllAttributesList.includes(row.Name) && row.TextValue !== '') {\r\n ingredientsArray.push(row);\r\n }\r\n });\r\n pSpecifications.push({ name: 'Reassurance', order: specificationsListOrder.Reassurance });\r\n pSpecifications.push({ name: 'Labels', order: specificationsListOrder.Labels });\r\n pSpecifications.sort((a, b) => a.order - b.order);\r\n // @ts-ignore\r\n const productSku = props.data.product.result?.ItemId;\r\n // @ts-ignore\r\n const productPrimaryImageUrl = props.data.product.result?.PrimaryImageUrl;\r\n\r\n const addToCartEventHandler = () => {\r\n const product = props.data.product.result;\r\n const quantity = Number((document.getElementsByClassName('quantity-input')[0] as HTMLInputElement).value) || 0;\r\n\r\n if (props.data.productPrice.result?.CustomerContextualPrice &&\r\n props.data.productPrice.result?.AdjustedPrice\r\n ) {\r\n trackAddToCartFromPDP(\r\n props.context,\r\n product,\r\n quantity,\r\n props.data.productPrice.result!.CustomerContextualPrice!,\r\n props.data.productPrice.result!.AdjustedPrice!\r\n );\r\n }\r\n\r\n //TODO OLD IMPLEMENTATION TO MAINTAIN UNTIL NEW ONE BECOMES DEFAULT\r\n const output: string[] = [];\r\n const names = document.getElementsByClassName('ms-breadcrumb_link');\r\n Array.from(names).forEach(item => {\r\n output.push(item.getAttribute('aria-label') ?? '');\r\n });\r\n const categoryGA = output.slice(0, -1).toString();\r\n\r\n const productInfo = {\r\n name: product?.Name,\r\n id: product?.ItemId, //product SKU\r\n price: props.data.productPrice.result?.CustomerContextualPrice,\r\n quantity,\r\n category: categoryGA,\r\n list: ''\r\n };\r\n\r\n window.dataLayer?.push?.({\r\n event: 'addToCart',\r\n ecommerce: {\r\n // @ts-ignore\r\n currencyCode: props.context.cultureFormatter.currencyCode,\r\n add: {\r\n actionField: {\r\n list: '',\r\n action: 'add'\r\n },\r\n products: [productInfo]\r\n }\r\n }\r\n });\r\n }\r\n\r\n const addToWishlistEventHandler = () => {\r\n if (props.data.productPrice.result?.CustomerContextualPrice &&\r\n props.data.productPrice.result?.AdjustedPrice\r\n ) {\r\n trackAddToWishlistFromPDP(\r\n props.context,\r\n props.data.product.result,\r\n props.data.productPrice.result!.CustomerContextualPrice!,\r\n props.data.productPrice.result!.AdjustedPrice!\r\n );\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n const product = props.data.product.result;\r\n\r\n if (props.data.productPrice.result?.CustomerContextualPrice &&\r\n props.data.productPrice.result?.AdjustedPrice\r\n ) {\r\n trackViewItemFromPDP(\r\n props.context,\r\n product,\r\n props.data.productPrice.result!.CustomerContextualPrice!,\r\n props.data.productPrice.result!.AdjustedPrice!\r\n )\r\n }\r\n\r\n document.querySelector('.msc-add-to-wishlist')?.addEventListener('click', addToWishlistEventHandler);\r\n document.querySelector('.msc-add-to-cart')?.addEventListener('click', addToCartEventHandler);\r\n }, []);\r\n\r\n // @ts-ignore\r\n ingredientsArray.map(row => {\r\n ingredientsString += row.TextValue || '';\r\n });\r\n\r\n const accordionOnClick = (accordion: string): void => {\r\n const accStates = accordionsState.split(',');\r\n if (accStates.includes(accordion)) {\r\n setAccordionsState('');\r\n } else {\r\n setAccordionsState(accordion);\r\n }\r\n };\r\n\r\n const isAccordionExpanded = (accordion: string): boolean => {\r\n const accStates = accordionsState.split(',');\r\n return accStates.includes(accordion);\r\n };\r\n\r\n const normalizeData = (data: NutritionalData[]): NutritionalData[] => {\r\n const resultData: NutritionalData[] = [];\r\n data.map((row: NutritionalData) => {\r\n if (row.qty1Value) {\r\n let category: NutritionalData | undefined;\r\n const subcategory: NutritionalSubcategoryData[] = [];\r\n if (row.subcategory) {\r\n row.subcategory.map((subRow: NutritionalSubcategoryData) => {\r\n if (subRow.qty1Value) {\r\n subcategory.push(subRow);\r\n }\r\n });\r\n }\r\n category = {\r\n ...row\r\n };\r\n if (subcategory.length) {\r\n category.subcategory = subcategory;\r\n } else if (category.subcategory) {\r\n // @ts-ignore\r\n delete category.subcategory;\r\n }\r\n resultData.push(category);\r\n }\r\n });\r\n return resultData;\r\n };\r\n\r\n const _renderNutritionalValues = (jData: any): JSX.Element | undefined => {\r\n const normalizedData = normalizeData(jData);\r\n if (normalizedData.length < 2) {\r\n return undefined;\r\n }\r\n return (\r\n
\r\n {normalizedData.map((row: NutritionalData) => (\r\n <>\r\n
\r\n
{labels[row.label] ?? ''}
\r\n
\r\n
{labels[row.qty1Label] ?? ''}
\r\n
{row.qty1Value ?? ''}
\r\n
{row.qty1Unit ?? ''}
\r\n
\r\n {row.qty2Value && (\r\n
\r\n
\r\n
\r\n
\r\n
{row.qty2Value ?? ''}
\r\n
{row.qty2Unit ?? ''}
\r\n
\r\n )}\r\n {row.subcategory &&\r\n row.subcategory.map((subRow: NutritionalSubcategoryData) => (\r\n
\r\n
{labels[subRow.label] ?? ''}
\r\n
\r\n
{subRow.qty1Value ?? ''}
\r\n
{subRow.qty1Unit ?? ''}
\r\n
\r\n ))}\r\n \r\n ))}\r\n
\r\n );\r\n };\r\n\r\n const _renderProductLabels = (productLabels: ProductLabel[]): JSX.Element => {\r\n return (\r\n
\r\n {productLabels\r\n .filter(label => label.imgLink !== '')\r\n .map((row: ProductLabel) => (\r\n
\r\n \r\n
\r\n ))}\r\n
\r\n );\r\n };\r\n\r\n const _renderReassurance = (reassuranceItems: ReassuranceShowType[]): JSX.Element => {\r\n return (\r\n
\r\n {reassuranceItems.map((row: ReassuranceShowType, index: number) => {\r\n const isLast = index === reassuranceItems.length - 1;\r\n const imgSettings = row?.image?.imageSettings ?? undefined;\r\n return imgSettings ? (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {row.title}\r\n {row.description}\r\n
\r\n
\r\n ) : (\r\n undefined\r\n );\r\n })}\r\n
\r\n );\r\n };\r\n\r\n React.useEffect(() => {\r\n if (!fetchingLabels) {\r\n setFetchingLabels(true);\r\n _getProductLabels(productSku, productPrimaryImageUrl).then((response: string[]) => {\r\n const newProductLabels = [...productLabels];\r\n productLabels.forEach((_, index: number) => {\r\n newProductLabels[index].imgLink = response[index];\r\n });\r\n setProductLabels(newProductLabels);\r\n });\r\n }\r\n });\r\n\r\n // @ts-ignore\r\n const productShortDescription = props?.data?.productSpecificationData?.result?.filter(\r\n (productDesc: { Name: string }) => productDesc.Name === 'Short product description'\r\n )[0]?.TextValue;\r\n\r\n return (\r\n \r\n
\r\n {props.mediaGallery}\r\n
\r\n
\r\n \r\n {title}\r\n {_renderPrice(props, resources)}\r\n {availibilityCode &&
{inventoryLabel}
}\r\n {configure && _renderConfigure(configure)}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n \r\n
\r\n {quantity &&\r\n _renderQuantity(\r\n quantity,\r\n callbacks,\r\n props,\r\n state,\r\n resources,\r\n quantityLimitsMessages,\r\n max,\r\n telemetryContent\r\n )}\r\n {_renderCartAndActions(addToCart, addToOrderTemplate, addToWishlist, props.resources)}\r\n
\r\n {_renderCartAndActionsPM(addToCart, addToWishlist, props.resources)}\r\n
\r\n {productShortDescription &&
{productShortDescription}
}\r\n {maxBadges ? (\r\n
\r\n {badgesItems\r\n ?.filter((badge: BadgeShowType) => badgesToShow.includes(badge.key))\r\n ?.map((badge: BadgeShowType, index: number) => {\r\n if (index <= maxBadges - 1) {\r\n return _renderBadge(badge, props);\r\n }\r\n return '';\r\n })}\r\n
\r\n ) : null\r\n }\r\n
\r\n {props.data.product.result?.RecordId}\r\n {props.data.product.result?.ItemId}\r\n
\r\n {_renderTextBlock(props.slots.textBlocks)}\r\n
\r\n \r\n {pSpecifications.length ? (\r\n \r\n {// @ts-ignore\r\n pSpecifications.map(row => {\r\n const title = row.name;\r\n const titleId = title.replace(/\\s+/g, '');\r\n let titleLabel = labels[`product_specification_title_${title.replace(/\\s+/g, '_').toLowerCase()}`] ?? title;\r\n const ingredientsFinalString = ingredientsString;\r\n\r\n let accordionContent;\r\n if (title === 'Ingredients' && ingredientsFinalString) {\r\n accordionContent = ingredientsFinalString;\r\n } else if (title === 'Nutritional Values JSON') {\r\n try {\r\n // @ts-ignore;\r\n const jData = JSON.parse(row.data.TextValue);\r\n accordionContent = _renderNutritionalValues(\r\n jData.nutritionalValueJSONType ? jData.nutritionalValueJSONType : jData\r\n );\r\n } catch (e) {\r\n return;\r\n }\r\n } else if (title === 'Reassurance' && reassuranceItems.length > 0) {\r\n accordionContent = _renderReassurance(reassuranceItems);\r\n } else if (title === 'Labels' && productLabels.filter(label => label.imgLink !== '').length > 0) {\r\n titleLabel = labels['product_specification_title_product_labels'] ?? titleLabel;\r\n accordionContent = _renderProductLabels(productLabels);\r\n // @ts-ignore;\r\n } else if (row.data && row.data.TextValue) {\r\n // @ts-ignore;\r\n accordionContent = row.data.TextValue;\r\n }\r\n\r\n if (!accordionContent) {\r\n return;\r\n }\r\n\r\n return (\r\n // tslint:disable-next-line:jsx-key\r\n
\r\n
\r\n accordionOnClick(titleId)}\r\n aria-expanded={isAccordionExpanded(titleId)}\r\n >\r\n

{titleLabel}

\r\n
\r\n \r\n
\r\n \r\n {accordionContent}\r\n
\r\n
\r\n );\r\n })}\r\n {_renderSocialShare(props.slots && props.slots?.socialShare)}\r\n \r\n ) : (\r\n ''\r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\n// tslint:disable-next-line:no-any\r\nconst _renderAddToBackInStore = (\r\n customerId?: string,\r\n channelId?: number,\r\n itemid?: string,\r\n dimensions?: ProductDimension[],\r\n actionContext?: any,\r\n resources?: IBuyboxResources,\r\n emailAddress?: string,\r\n locale?: string\r\n): JSX.Element => {\r\n const cust = customerId ? customerId : '';\r\n const item = itemid ? itemid : '';\r\n const channel = channelId ? channelId : 0;\r\n const dims = dimensions ? dimensions : [];\r\n let color: string = '';\r\n let config: string = '';\r\n let size: string = '';\r\n let style: string = '';\r\n // prettier-ignore\r\n // @ts-ignore\r\n let message = resources.backInStockMessage ? resources.backInStockMessage : 'You will receive an email when the product is back in stock';\r\n let toHide = false;\r\n\r\n dims.forEach(dim => {\r\n if (dim.DimensionTypeValue === 1) {\r\n color = dim.DimensionValue?.DimensionId !== undefined ? dim.DimensionValue?.DimensionId : '';\r\n } else if (dim.DimensionTypeValue === 2) {\r\n config = dim.DimensionValue?.DimensionId !== undefined ? dim.DimensionValue?.DimensionId : '';\r\n } else if (dim.DimensionTypeValue === 3) {\r\n size = dim.DimensionValue?.DimensionId !== undefined ? dim.DimensionValue?.DimensionId : '';\r\n } else if (dim.DimensionTypeValue === 4) {\r\n style = dim.DimensionValue?.DimensionId !== undefined ? dim.DimensionValue?.DimensionId : '';\r\n }\r\n });\r\n\r\n toHide = cust !== '' ? false : true;\r\n const [stockMessage, setStockMessage] = React.useState(false);\r\n\r\n const _AddToBackInStore = async () => {\r\n insertBackInStock_CAPAsync_v2(\r\n { callerContext: actionContext },\r\n channel,\r\n cust,\r\n item,\r\n color,\r\n config,\r\n size,\r\n style,\r\n 1,\r\n emailAddress || '',\r\n locale || ''\r\n ).then(result => {\r\n message = result[0].Error ? result[0].Error : message;\r\n });\r\n setStockMessage(true);\r\n };\r\n const inactiveAccount = cust.includes('-');\r\n\r\n return (\r\n <>\r\n {toHide === false && (\r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nconst _renderTextBlock = (textBlocks: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!textBlocks || textBlocks.length === 0) {\r\n return undefined;\r\n }\r\n\r\n return <>{textBlocks[0]};\r\n};\r\n\r\nconst _renderPrice = (props: IBuyboxViewProps, resources: IBuyboxExtensionResources): JSX.Element | undefined => {\r\n const custom_price = props.context.cultureFormatter.formatCurrency(props.data.productPrice.result?.AdjustedPrice?.toFixed(2) ?? '');\r\n const custom_discount_percentage = getCustomDiscountPercentage(props.data.productPrice.result?.DiscountLines);\r\n const custom_discounted_price = props.context.cultureFormatter.formatCurrency(\r\n props.data.productPrice.result?.CustomerContextualPrice?.toFixed(2) ?? ''\r\n );\r\n\r\n if (custom_discount_percentage) {\r\n // @ts-ignore\r\n const attributes = props.data.productSpecificationData.result;\r\n\r\n let omnibus_price = null;\r\n if (attributes) {\r\n // @ts-ignore\r\n omnibus_price = attributes.filter(attribute => attribute.Name.includes('Minimum Price Last 30 Days'))[0];\r\n }\r\n\r\n let omnibus_price_currency = '';\r\n if (omnibus_price && omnibus_price.CurrencyValue && omnibus_price.CurrencyCode) {\r\n omnibus_price_currency = props.context.cultureFormatter.formatCurrency(omnibus_price.CurrencyValue, omnibus_price.CurrencyCode);\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {custom_price}\r\n {custom_discount_percentage}\r\n {custom_discounted_price}\r\n {omnibus_price_currency && (\r\n
\r\n \r\n {resources.omnibus_recent_price_label} \r\n {omnibus_price_currency}\r\n \r\n
\r\n )}\r\n
\r\n \r\n );\r\n }\r\n return (\r\n \r\n {custom_price}\r\n \r\n );\r\n};\r\n\r\nfunction _addToPickAndMix(\r\n catUrl: string,\r\n pmProductsList: any,\r\n RecordId: number,\r\n Name: string | undefined,\r\n PrimaryImageUrl: string | undefined,\r\n pQuantity: number,\r\n Price: number,\r\n ItemId: number\r\n): void {\r\n pmProductsList[RecordId] = {\r\n Id: RecordId,\r\n Item: Name,\r\n Qty: pQuantity,\r\n UOM: '',\r\n Price: Price,\r\n Description: ItemId.toString(),\r\n DataAreaId: '',\r\n PrimaryImageUrl: PrimaryImageUrl\r\n };\r\n typeof window !== 'undefined' ? localStorage.setItem('pm_products', JSON.stringify(pmProductsList)) : undefined;\r\n window.location.assign(catUrl);\r\n}\r\n\r\nconst _renderCartAndActions = (\r\n addToCart?: IBuyboxAddToCartViewProps,\r\n addToOrderTemplate?: IBuyboxAddToOrderTemplateViewProps,\r\n addToWishlist?: IBuyboxAddToWishlistViewProps,\r\n resources?: IBuyboxResources\r\n): JSX.Element | undefined => {\r\n if (!addToCart && !addToWishlist) {\r\n return undefined;\r\n }\r\n // @ts-ignore\r\n const props = addToCart?.button?.props;\r\n\r\n const euHostname = 'eu.venchi.com';\r\n const localeString = props?.context?.request?.locale ? props?.context?.request?.locale?.toLowerCase() : '';\r\n const sitePath = props?.context?.request?.sitePath ? props?.context?.request?.sitePath?.substring(1) : '';\r\n const hostname = props?.context?.request?.url?.requestUrl?.hostname || '';\r\n let locale: string;\r\n if (hostname.toLowerCase() === euHostname && sitePath === '') {\r\n locale = 'eu';\r\n } else {\r\n locale = sitePath !== '' ? sitePath : localeString;\r\n }\r\n\r\n return (\r\n
\r\n {addToOrderTemplate && addToOrderTemplate.errorBlock}\r\n {addToWishlist && addToWishlist.errorBlock}\r\n
\r\n
\r\n {_renderAddToBackInStore(\r\n props.context.request.user.customerAccountNumber,\r\n props.context.request.apiSettings.channelId,\r\n props.data?.product?.ItemId,\r\n props.data?.product?.Dimensions,\r\n props.context?.actionContext,\r\n resources,\r\n props.context.request.user.emailAddress,\r\n locale\r\n )}\r\n {addToCart && addToCart.button}\r\n {addToOrderTemplate && addToOrderTemplate.button}\r\n
\r\n {addToWishlist && {addToWishlist && addToWishlist.button}}\r\n
\r\n {addToCart && addToCart.errorBlock}\r\n {props.context.request.user.customerAccountNumber !== null && !props.context.request.user.customerAccountNumber.includes('-') && (\r\n
\r\n {\r\n // @ts-ignore\r\n resources.backInStockAgreement\r\n }\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nconst _renderCartAndActionsPM = (\r\n addToCart?: IBuyboxAddToCartViewProps,\r\n addToWishlist?: IBuyboxAddToWishlistViewProps,\r\n resources?: IBuyboxResources\r\n): JSX.Element | undefined => {\r\n if (!addToCart && !addToWishlist) {\r\n return undefined;\r\n }\r\n // @ts-ignore\r\n const props = addToCart?.button?.props;\r\n const productId = props?.data?.product?.RecordId;\r\n const channelId = props?.context?.request?.channel?.RecordId;\r\n const categoryPathLookups = [{ ProductId: productId }];\r\n const [catUrl, setCatUrl] = React.useState('');\r\n const [isPm, setIsPm] = React.useState(false);\r\n const _productCategory = async () => {\r\n const categoryPathResults = await getCategoryPathsAsync(props?.context?.actionContext, channelId, 0, categoryPathLookups);\r\n categoryPathResults &&\r\n categoryPathResults[0] &&\r\n categoryPathResults[0]?.CategoryPath?.map((catPath, i) => {\r\n const categoryUrl = getCategoriesUrlSync(catPath, props?.context?.actionContext);\r\n if (categoryUrl && categoryUrl[1] && categoryUrl[1].Name === 'Pick&Mix') {\r\n setIsPm(true);\r\n setCatUrl(categoryUrl[1].Url ? categoryUrl[1].Url : '');\r\n }\r\n });\r\n return;\r\n };\r\n React.useEffect(() => {\r\n void _productCategory();\r\n }, []);\r\n // tslint:disable-next-line:no-shadowed-variable\r\n const _addToPM = (\r\n catUrl: string,\r\n RecordId: number,\r\n Name: string,\r\n PrimaryImageUrl: string,\r\n AdjustedPrice: number,\r\n Qty: number,\r\n ItemId: number\r\n ) => {\r\n const localPm = localStorage && localStorage.getItem('pm_products');\r\n const localPmProds = localPm && localPm !== null ? localPm : JSON.stringify({});\r\n const pmProductsList = JSON.parse(localPmProds);\r\n const _addToPm = () => {\r\n _addToPickAndMix(catUrl, pmProductsList, RecordId, Name, PrimaryImageUrl, AdjustedPrice, Qty, ItemId);\r\n };\r\n return (\r\n <>\r\n \r\n \r\n );\r\n };\r\n /* @ts-ignore */\r\n const product_qty: product_qty = addToCart?.button?.props?.quantity;\r\n return (\r\n
\r\n {isPm ? (\r\n
\r\n {_addToPM(\r\n catUrl,\r\n props.data?.product?.RecordId,\r\n props.data?.product?.Name,\r\n props.data?.product?.PrimaryImageUrl,\r\n product_qty,\r\n props.data?.product?.AdjustedPrice,\r\n props.data?.product?.ItemId\r\n )}\r\n
\r\n ) : (\r\n ''\r\n )}\r\n
\r\n );\r\n};\r\n\r\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return {dropdowns.map(_renderConfigureDropdown)};\r\n};\r\n\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n};\r\n\r\nconst _renderQuantity = (\r\n quantityComponent: IBuyboxProductQuantityViewProps,\r\n callbacks: IBuyboxCallbacks,\r\n props: IBuyboxProps,\r\n state: IBuyboxState,\r\n extentionResources: IBuyboxExtensionResources,\r\n quantityLimitsMessages: React.ReactNode,\r\n max: number | undefined,\r\n telemetryContent?: ITelemetryContent\r\n): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors } = quantityComponent;\r\n\r\n const { resources } = props;\r\n\r\n const { quantity } = state;\r\n\r\n if (state.isCustomPriceSelected) {\r\n props.data;\r\n }\r\n const onChange = (newValue: number): boolean => {\r\n if (callbacks.updateQuantity) {\r\n return callbacks.updateQuantity(newValue);\r\n }\r\n return true;\r\n };\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n\r\n \r\n {quantityLimitsMessages}\r\n \r\n );\r\n};\r\n\r\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\r\n\r\n return (\r\n \r\n {heading}\r\n {input}\r\n \r\n );\r\n};\r\n\r\nconst _renderBadge = (badge: BadgeShowType, props: IBuyboxViewProps) => {\r\n const imgSettings = badge?.image?.imageSettings ?? undefined;\r\n if (!imgSettings) {\r\n return undefined;\r\n }\r\n return (\r\n
\r\n \r\n {badge.label}\r\n
\r\n );\r\n};\r\n\r\nconst _getProductLabels = async (productId?: string, baseImagePath?: string): Promise => {\r\n if (productId && baseImagePath) {\r\n const results: string[] = [];\r\n const imgBaseUrlArray = decodeURIComponent(baseImagePath).split('/');\r\n imgBaseUrlArray.pop();\r\n\r\n const imgUrls = [\r\n [...imgBaseUrlArray, `${productId}_000_006.jpg`].join('/'),\r\n [...imgBaseUrlArray, `${productId}_000_007.jpg`].join('/'),\r\n [...imgBaseUrlArray, `${productId}_000_008.jpg`].join('/')\r\n ];\r\n for (let i = 0; i < 3; i = i + 1) {\r\n try {\r\n const response = await axios.get(imgUrls[i]);\r\n results.push(response?.status === 200 ? imgUrls[i] : '');\r\n } catch (e) {\r\n results.push('');\r\n }\r\n }\r\n return results;\r\n }\r\n return ['', '', ''];\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) {\r\n return undefined;\r\n }\r\n return <>{socialShare[0]};\r\n};\r\n\r\nexport default BuyboxView;\r\n","import { DiscountLine } from \"@msdyn365-commerce/retail-proxy\";\r\n\r\nconst getNormalizedDiscountPercentage = (percentage ?: number) : number => {\r\n if(!percentage) return 0;\r\n return percentage / 100;\r\n}\r\n\r\nexport const getCustomDiscountPercentage = (discountLines ?: DiscountLine[]) : string | undefined => {\r\n if(!discountLines || discountLines.length < 1) return;\r\n const normalizedDiscountedPrice = discountLines.reduce(\r\n (accumulator, discountLine) => accumulator * (1 - getNormalizedDiscountPercentage(discountLine.Percentage)), 1);\r\n return `-${100 - (Math.round(normalizedDiscountedPrice * 100))}%`;\r\n}\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { ICartlinesViewProps, ICartResources, ICartViewProps, IOrderSummaryErrors } from '@msdyn365-commerce-modules/cart';\r\nimport { IOrderSummaryLines } from '@msdyn365-commerce-modules/order-summary-utilities';\r\nimport {\r\n Button,\r\n getPayloadObject,\r\n getTelemetryAttributes,\r\n INodeProps,\r\n ITelemetryContent,\r\n Node,\r\n TelemetryConstant\r\n} from '@msdyn365-commerce-modules/utilities';\r\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { IActionContext } from '@msdyn365-commerce/core';\r\nimport { getCartState } from '@msdyn365-commerce/global-state';\r\nimport * as React from 'react';\r\nimport { useForm } from 'react-hook-form';\r\nimport { ICartResources as ICartResourcesExt } from '../definition-extensions/cart.ext.props.autogenerated';\r\nimport { getPromotionOptionsForCartLineItems, PromotionOptionsForCartLineItems } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { CartLine, CartPromotionLine, CommerceProperty, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport { find } from 'lodash';\r\n\r\nimport {\r\n trackViewCart,\r\n trackBeginCheckout,\r\n trackRemoveFromCart,\r\n trackAddToWishlistFromCart,\r\n} from '../utilities/datalayer/index';\r\nimport {\r\n CheckoutType,\r\n LoginFromType,\r\n SessionStorageKey,\r\n} from '../utilities/datalayer/types';\r\nimport { IWishlistActionSuccessResult } from '@msdyn365-commerce/components';\r\n\r\ninterface IPromotionData {\r\n promotionOptions?: CartPromotionLine[];\r\n}\r\n\r\ninterface ICartViewPropsExt extends ICartViewProps {\r\n resources: ICartResourcesExt;\r\n}\r\n\r\ninterface AvailablePromotionsProps {\r\n props: ICartViewPropsExt;\r\n}\r\n\r\nconst CartView: React.FC = (props: ICartViewPropsExt) => {\r\n const beginClassicCheckout = () => {\r\n trackBeginCheckout(\r\n props.context,\r\n props.cart?.cart,\r\n props.data.products.result || [] as SimpleProduct[],\r\n CheckoutType.CLASSIC_CHECKOUT\r\n )\r\n\r\n if (!props.context.request.user.isAuthenticated) {\r\n sessionStorage.setItem(SessionStorageKey.LOGIN_FROM, LoginFromType.CHECKOUT)\r\n }\r\n }\r\n\r\n const beginGuestCheckout = () => {\r\n trackBeginCheckout(\r\n props.context,\r\n props.cart?.cart,\r\n props.data.products.result || [] as SimpleProduct[],\r\n CheckoutType.GUEST_CHECKOUT\r\n )\r\n }\r\n\r\n const trackRemoveFromCartEventHandler = (cartLine: CartLine | undefined) => {\r\n trackRemoveFromCart(\r\n props.context,\r\n props.cart?.cart,\r\n props.data.products.result || [] as SimpleProduct[],\r\n cartLine\r\n )\r\n }\r\n\r\n const trackAddToWishlistEventHandler = (cartLine: CartLine | undefined) => {\r\n trackAddToWishlistFromCart(\r\n props.context,\r\n props.cart?.cart,\r\n props.data.products.result || [] as SimpleProduct[],\r\n cartLine\r\n )\r\n }\r\n\r\n React.useEffect(() => {\r\n trackViewCart(\r\n props.context,\r\n props.cart?.cart,\r\n props.data.products.result || [] as SimpleProduct[]\r\n );\r\n\r\n document.querySelector('.msc-cart__btn-checkout')?.addEventListener('click', beginClassicCheckout);\r\n document.querySelector('.msc-cart__btn-guestcheckout')?.addEventListener('click', beginGuestCheckout);\r\n }, []);\r\n\r\n const locale = props.context.request.locale;\r\n return (\r\n
\r\n {props.title}\r\n
\r\n {props.multiplePickUpEnabled ? (\r\n _renderCartLinesGroup(\r\n props,\r\n trackRemoveFromCartEventHandler,\r\n trackAddToWishlistEventHandler\r\n )\r\n ) : (\r\n \r\n \r\n {_renderAddGreetingMessage(props)}\r\n {_renderCartlines(\r\n props.cartlines,\r\n props.resources,\r\n props.storeSelector,\r\n props.backToShoppingButton,\r\n props.waitingComponent,\r\n props.cartLoadingStatus,\r\n props.cartDataResult,\r\n trackRemoveFromCartEventHandler,\r\n trackAddToWishlistEventHandler,\r\n props.telemetryContent,\r\n props.multiplePickUpEnabled,\r\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode,\r\n )}\r\n \r\n )}\r\n
\r\n {props.orderSummaryHeading && (\r\n \r\n {props.orderSummaryHeading}\r\n {_renderOrderSummarylines(props.orderSummaryLineitems, props.OrderSummaryItems, props, locale)}\r\n {_renderErrorBlock(props.OrderSummaryErrors)}\r\n {props.checkoutAsSignInUserButton}\r\n {props.checkoutAsGuestButton}\r\n {props.expressCheckoutButton && ArrayExtensions.hasElements(props.expressCheckoutButton) ? (\r\n {props.expressCheckoutButton}\r\n ) : null}\r\n {props.backToShoppingButton}\r\n {props.createTemplateFromCartButton}\r\n \r\n )}\r\n {props.storeSelector}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst AvailablePromotions: React.FC = ({ props }) => {\r\n const [promotionsArray, setPromotionsArray] = React.useState([]);\r\n React.useEffect(() => {\r\n retrievePromotions(props, setPromotionsArray);\r\n }, []);\r\n\r\n if (props && props.promotionOptions && promotionsArray.length >= 1) {\r\n return (\r\n \r\n \r\n \r\n {props.resources.promotionStringHeading}\r\n
    \r\n {promotionsArray.map(function (text: string, index: number) {\r\n return
  • {text}
  • ;\r\n })}\r\n
\r\n
\r\n
\r\n );\r\n } else {\r\n return <>;\r\n }\r\n};\r\n\r\nconst retrievePromotions = async (cartProps: ICartViewProps, setPromotions: any) => {\r\n var tmpArray: string[] = [];\r\n const currentPromotions = await getPromotionData(cartProps.context?.actionContext);\r\n currentPromotions.promotionOptions?.forEach(element => {\r\n if (element.Promotion) {\r\n let offerDesc = '';\r\n try {\r\n const offerDescriptions = JSON.parse(element.Promotion.Description || '{}');\r\n const currentLanguage = cartProps.context.request.locale; // Function to get the current language\r\n offerDesc = offerDescriptions[currentLanguage.toLowerCase()] || offerDescriptions[\"it\"] || '';\r\n } catch (e) {\r\n // If JSON parsing fails, use the OfferDescription as is, split on the colon\r\n if (element.Promotion.Description) {\r\n offerDesc = element.Promotion.Description;\r\n }\r\n }\r\n offerDesc = offerDesc || element.Promotion.OfferName || '';\r\n if (offerDesc) {\r\n tmpArray.push(offerDesc);\r\n }\r\n }\r\n });\r\n setPromotions(tmpArray);\r\n};\r\n\r\nasync function getPromotionData(ctx: IActionContext): Promise {\r\n const promotionData: IPromotionData = {};\r\n await getPromotionOptionsForCartLineItems(new PromotionOptionsForCartLineItems(ctx.requestContext.apiSettings), ctx)\r\n .then(promotionOptions => {\r\n if (promotionOptions) {\r\n promotionData.promotionOptions = promotionOptions;\r\n }\r\n })\r\n .catch(error => {\r\n ctx.telemetry.exception(error);\r\n return {};\r\n });\r\n return promotionData;\r\n}\r\n\r\nconst _renderAddGreetingMessage = (props: ICartViewPropsExt) => {\r\n type Inputs = {\r\n message: string;\r\n sign: string;\r\n };\r\n\r\n const { register, handleSubmit, reset, setValue } = useForm();\r\n // prettier-ignore\r\n // @ts-ignore\r\n const extPropsToRemove = props?.cart?.cart?.ExtensionProperties?.filter((fieldVal: { Key: string }) => fieldVal.Key === 'ExtPropsRemove_CAP')[0]?.Value?.BooleanValue;\r\n const noCartLines = (!props?.cart?.cart?.CartLines || props?.cart?.cart?.CartLines.length === 0);\r\n // prettier-ignore\r\n // @ts-ignore\r\n const greetingMessageCAP = (noCartLines || extPropsToRemove) ? '' : props?.cart?.cart?.ExtensionProperties?.filter((greetingVal: { Key: string }) => greetingVal.Key === 'GreetingMessage_CAP')[0]?.Value?.StringValue;\r\n // prettier-ignore\r\n // @ts-ignore\r\n const greetingSignCAP = (noCartLines || extPropsToRemove) ? '' : props?.cart?.cart?.ExtensionProperties?.filter((greetingVal: { Key: string }) => greetingVal.Key === 'GreetingSign_CAP')[0]?.Value?.StringValue;\r\n\r\n // @ts-ignore\r\n const setRemoveData = async (cartprops: ICartViewProps) => {\r\n // prettier-ignore\r\n // @ts-ignore\r\n const currentCartState = await getCartState(cartprops.context?.actionContext);\r\n // const currentCartState = props?.cart;\r\n const extProps = currentCartState?.cart?.ExtensionProperties;\r\n const extPropsToEmpty = [];\r\n // const cartLines = currentCartState?.cart?.CartLines;\r\n // if (extPropsToRemove === true || !cartLines || (cartLines && cartLines.length === 0)) {\r\n if (extPropsToRemove === true) {\r\n const extKeysToRemove = ['ActiveCartId_CAP', 'CheckoutCartId_CAP', 'GreetingMessage_CAP', 'GreetingSign_CAP', 'billing', 'Type_CAP', 'Country_CAP', 'City_CAP', 'ZipCode_CAP', 'OrgName_CAP',\r\n 'VatNum_CAP', 'FiscalCode_CAP', 'PEC_CAP', 'SDI_CAP', 'InvoiceCustAccount_CAP', 'Street_CAP', 'StreetNumber_CAP', 'FirstName_CAP', 'LastName_CAP'];\r\n\r\n if (extProps) {\r\n for (const propToRemove of extKeysToRemove) {\r\n if (find(extProps, obj => obj.Key === propToRemove)) {\r\n extPropsToEmpty.push({\r\n Key: propToRemove,\r\n Value: {}\r\n });\r\n }\r\n }\r\n if (extPropsToRemove === true) {\r\n extPropsToEmpty.push({\r\n Key: 'ExtPropsRemove_CAP',\r\n Value: {\r\n BooleanValue: false\r\n }\r\n });\r\n }\r\n }\r\n if (currentCartState && extPropsToEmpty.length !== 0) {\r\n await currentCartState.updateExtensionProperties({ newExtensionProperties: extPropsToEmpty });\r\n }\r\n // else {\r\n // console.log(\"no extension property to clean found\");\r\n // }\r\n } else {\r\n setValue('message', greetingMessageCAP, { shouldDirty: true });\r\n setValue('sign', greetingSignCAP, { shouldDirty: true });\r\n }\r\n };\r\n React.useEffect(() => {\r\n void setRemoveData(props);\r\n }, []);\r\n const [greetingsState, setGreetingsState] = React.useState({\r\n isCompiled: (greetingMessageCAP && greetingMessageCAP !== '') || (greetingSignCAP && greetingSignCAP !== '') ? true : false,\r\n isEditing: false\r\n });\r\n const [greeting, setGreeting] = React.useState({\r\n message: greetingMessageCAP && greetingMessageCAP !== '' ? greetingMessageCAP : '',\r\n sign: greetingSignCAP && greetingSignCAP !== '' ? greetingSignCAP : ''\r\n });\r\n\r\n const greetingsTrigger = () => {\r\n setGreetingsState(greetingsState => ({\r\n ...greetingsState,\r\n isEditing: !greetingsState.isEditing\r\n }));\r\n };\r\n\r\n const updateExtProps = async (data: Inputs, cartProps: ICartViewProps) => {\r\n const addGreeting = [\r\n {\r\n Key: 'GreetingMessage_CAP',\r\n Value: {\r\n StringValue: data.message\r\n }\r\n },\r\n {\r\n Key: 'GreetingSign_CAP',\r\n Value: {\r\n StringValue: data.sign\r\n }\r\n }\r\n ];\r\n\r\n const currentCartState = await getCartState(cartProps.context?.actionContext);\r\n await currentCartState.updateExtensionProperties({ newExtensionProperties: addGreeting });\r\n await currentCartState.refreshCart({});\r\n };\r\n\r\n const _addMessCart = async (data: Inputs) => {\r\n setGreeting(() => ({\r\n message: data.message,\r\n sign: data.sign\r\n }));\r\n if (data.message !== '' || data.sign !== '') {\r\n setGreetingsState(() => ({\r\n isCompiled: true,\r\n isEditing: false\r\n }));\r\n } else {\r\n setGreetingsState(() => ({\r\n isCompiled: false,\r\n isEditing: false\r\n }));\r\n }\r\n\r\n await updateExtProps(data, props);\r\n };\r\n\r\n const resetGreeting = () => {\r\n reset({ message: greeting.message, sign: greeting.sign });\r\n setGreetingsState(() => ({\r\n isCompiled: true,\r\n isEditing: false\r\n }));\r\n };\r\n const changeGreeting = () => {\r\n setGreetingsState(() => ({\r\n isCompiled: false,\r\n isEditing: true\r\n }));\r\n };\r\n const removeGreeting = async () => {\r\n reset({ message: '', sign: '' });\r\n setGreetingsState(() => ({\r\n isCompiled: false,\r\n isEditing: false\r\n }));\r\n await updateExtProps({ message: '', sign: '' }, props);\r\n };\r\n return (\r\n \r\n

\r\n \r\n {props.resources.addGreetingText}\r\n

\r\n
\r\n
\r\n
\r\n \r\n