{"version":3,"file":"static/js/17.07e99f85f86305f603d5.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 } = 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 // 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 RetailEU = 'RetailEU',\r\n RetailUS = 'RetailUS'\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