{"version":3,"sources":["webpack:///src/modules/order-lookup/order-lookup.view.tsx?d1dd","webpack:///./src/modules/citta-accordion-item-custom/citta-accordion-item-custom.view.tsx?5eb8","webpack:///./src/themes/citta/views/search.view.tsx?c8e6","webpack:///./src/modules/citta-footer-category/citta-footer-category.tsx?66cb","webpack:///src/modules/order-lookup/utilities/order-lookup-utility.tsx?9369","webpack:///src/modules/order-lookup/components/order-lookup-additional-fields.tsx?7c69","webpack:///src/modules/order-lookup/components/order-lookup-fields.tsx?c99c","webpack:///src/modules/order-lookup/order-lookup.tsx?a81e","webpack:///./src/modules/citta-footer-category/citta-footer-category.view.tsx?834f","webpack:///./src/modules/citta-product-sku/citta-product-sku.view.tsx?af2f","webpack:///./src/components/citta-accordion-drawer/Drawer.tsx?7864","webpack:///./src/modules/citta-accordion-item-custom/citta-accordion-item-custom.tsx?d909","webpack:///./src/themes/citta/views/password-reset-verification.view.tsx?8420","webpack:///./src/modules/citta-product-sku/citta-product-sku.tsx?79c2"],"names":["OrderLookupViewComponent","props","_orderLookupForm$clas","_submitButton$classNa","orderLookup","orderLookupContainer","orderLookupAdditionalFieldContainer","heading","paragraph","orderLookupForm","renderOrderLookupInputField","orderNumberInput","errorMessage","submitButton","additionalProperties","registeredUserMessage","fieldErrorMessage","React","Module","Object","assign","Node","className","ArrayExtensions","hasElements","map","item","key","submitButtonLabelText","_renderForm","form","SearchForm","FormWrapper","cancelBtnAriaLabel","submitBtnAriaLabel","resources","input","id","cancelBtn","UncontrolledTooltip","placement","trigger","target","submitBtn","_renderProductSuggestions","ProductSuggest","UlProduct","productSuggestions","items","index","LiProduct","tabIndex","AProduct","text","price","_renderCategorySuggestions","CategorySuggest","UlCategory","categorySuggestions","title","SearchView","Search","AutoSuggestAriaLabel","AutoSuggestAriaLabelText","searchText","AutoSuggest","autosuggestCategory","autosuggestProduct","label","isSearchFormShow","indexOf","MsDyn365","isBrowser","window","document","body","classList","toggle","length","FooterCategory","render","this","slots","content","context","telemetry","error","viewprops","_objectSpread","categories","FooterList","moduleProps","classnames","config","tag","FooterListItem","renderView","labelGroup","value","renderErrorLabel","responseErrorMessage","errorMessageClassName","renderRegisteredUserMessage","signInUrl","signInLinkClassName","registeredUserClassName","orderLookupRegisteredUserText","orderLookupViewAccountText","orderLookupSignInLinkText","message","infoMessage","signInText","href","renderFieldErrors","orderLookupFieldValidationErrorMessage","RenderOrderLookupAdditionalFieldInput","constructor","super","shouldComponentUpdate","nextProps","_getOrderLookupAdditionalFields","additionalFieldLabel","additionalFieldError","additionalFieldInput","additionalFieldLabelClassName","type","inputType","onChange","ariaLabel","name","isValidAdditionalFieldName","additionalFieldValidationMessage","__decorate","observer","RenderOrderLookupFormFields","_getOrderLookupFields","orderLookupLabelClassName","orderLookupLabel","ref","inputReference","fieldErrorClassName","isInputTypeError","renderAlert","isValidInputField","OrderLookupSearchValues","OrderLookup","isEmailValue","isOrderNumberValue","orderLookupExtensibleEnum","handleTextChange","event","handleParagraphChange","handleSubmit","actionContext","orderNumber","email","state","orderLookupValue","orderStatusLookUpParametersType","orderLookupName","undefined","_validateOrderLookupForm","_Msdyn365$getUrlSync","actionContextValue","orderDetailsPath","Msdyn365","baseUrl","URL","location","origin","redirectUrl","searchParameters","searchParams","set","fieldName","StringExtensions","isNullOrWhitespace","replace","toLocaleLowerCase","fieldValue","toString","_this$orderNumberInpu","_this$emailInputRef$c","orderNumberInputRef","current","emailInputRef","setState","additionalPropertyStates","isAdditionalFieldError","isKeyExistInAdditionalFieldArray","push","labelName","isValidFieldName","additionalfieldErrorMessage","ordernumber","isOrdNumberError","isReqError","isEmailError","isValidEmailError","isValidLookupField","isValidAdditionalLookupField","isDisabled","_renderAlert","orderLookupEmailValidationErrorMessage","orderLookupRequiredTextErrorMessage","requiredErrorMessage","isNullOrEmpty","emailValidationErrorMessage","isRequireError","isEmailValidError","isValidEmailInput","role","_renderOrderNumberAlert","orderLookupOrderNumberValidationErrorMessage","_renderOrderLookupInput","orderLookupEmailLabel","orderLookupEmailAriaLabel","_additionalFieldValidation","isFieldValid","RegExp","test","isValid","isDisable","trim","EmailRegex","defaultRegex","isEmailValid","orderLookupSearchAdditionalFields","_item$labelName","_item$ariaLabel","_item$validationMessa","validationMessage","_heading$tag","_context$request$user","orderLookupDefaultHeadingText","orderLookupButtonLabel","orderLookupFormAriaLabel","orderLookupOrderNumberLabel","orderLookupOrderNumberAriaLabel","orderLookupSubmitAriaLabel","headingText","headingTag","orderLookupHeading","editProps","onEdit","requestContext","request","viewProps","_createParagraph","autoComplete","onSubmit","Button","onClick","disabled","user","submit","_renderAdditionalFields","_getExtensibleEnumera","_getExtensibleEnumera2","isOrderLookupAdditionalFieldValid","isOrderLookupFieldValid","getExtensibleEnumerations","StoreOperationsDataActions","getExtensibleEnumerationsAsync","callerContext","find","TypeName","ExtensibleEnumerations","orderLookupAdditionalParameter","validateOrderLookupField","orderStatusLookUpParameter","isValidField","Name","validateOrderLookupAdditionalField","orderStatusLookUpAdditionalParameters","isValidAdditionalField","_item$fieldKey","fieldKey","validateAdditionalFieldWithProxy","some","setLookupFieldState","additionalFieldsInput","FooterCategoryView","createElement","category","ICittaProductSkuView","ProductSkuContainer","ProductSkuNode","SkuTitleTextNode","Drawer","_toggle","bind","isManuallyToggled","isOpen","collapseProps","drawerGlyphClass","toggleGlyphClassName","animateGlyph","drawerOpenGlyph","openGlyph","closeGlyph","drawerCloseGlyph","children","drawerClass","toggleButtonProps","block","color","radioButtonOption","toggleButtonText","checked","radioButtonChecked","htmlFor","_generateDrawerButtonInnerMarkup","Collapse","collapseState","drawerButtonTextClass","toggleButtonClassName","glyphPlacement","_generateGlyphMarkup","glyphClass","e","preventDefault","onToggle","AccordionItemCustom","expandSingleItemOnly","_onToggleAccordionItem","AccordionItemText","openOnly","data","radioButtonText","accordionExpandedState","result","accordionItemTitle","expanded","prevState","oldRadioButtonText","accordionState","isAllExpanded","update","createAccordionStateInput","_getDrawerProps","_renderAccordionItemContent","_renderAccordionItemSlotsContent","componentDidMount","isExpandedOnInitialLoad","drawerProps","showGlyph","hasAccordionItemSlotsContent","accordionItemContent","ControlledDrawer","accordionExpandedStateResult","slot","PasswordResetVerificationItem","_ref","wrapper","PasswordResetVerificationLoading","_ref3","modal","modalBody","icon","PasswordResetVerificationView","passwordResetVerification","viewState","loading","defaultAADConainer","aadConainer","passwordResetVerificationLocalAccount","isShowLoading","_ref2","localAccount","verificationControlWrapper","successMessage","verificationButtonsWrapper","verificationButtons","buttonsWrapper","buttons","verificationSuccessModal","verificationSuccessModalMessage","button","LocalAccount","CittaProductSku","productSku","product","ItemId","skuTitleText","productSkuViewProps","classname"],"mappings":"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","file":"static/js/19.5a99a222a7ec704f213e.chunk.js","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IOrderLookupViewProps } from './order-lookup';\n\n/**\n * View component.\n * @param props - The view properties.\n * @returns - Returns JSX Element.\n */\nexport const OrderLookupViewComponent: React.FC = props => {\n const {\n orderLookup,\n orderLookupContainer,\n orderLookupAdditionalFieldContainer,\n heading,\n paragraph,\n orderLookupForm,\n renderOrderLookupInputField,\n orderNumberInput,\n errorMessage,\n submitButton,\n additionalProperties,\n registeredUserMessage,\n fieldErrorMessage\n } = props;\n return (\n \n \n {heading}\n {paragraph}\n \n {orderNumberInput}\n {renderOrderLookupInputField}\n {ArrayExtensions.hasElements(additionalProperties) && (\n \n {additionalProperties.map((item: JSX.Element) => (\n {item}\n ))}\n \n )}\n {fieldErrorMessage}\n \n {props.submitButtonLabelText}\n \n {errorMessage}\n \n {registeredUserMessage}\n \n \n );\n};\n\nexport default OrderLookupViewComponent;\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\nexport default () => {\r\n return (\r\n
\r\n

Hello world

\r\n
\r\n );\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 { ISearchCategoryViewProps, ISearchFormViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search';\r\nimport { INodeProps, Module, Node, UncontrolledTooltip } from '@msdyn365-commerce-modules/utilities';\r\nimport MsDyn365 from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n const isSearchFormShow: boolean = SearchForm.className && SearchForm.className.indexOf('bx-show') !== -1 || false;\r\n if (MsDyn365.isBrowser) {\r\n // window.document && window.document.body.classList.toggle('menu-open', isSearchFormShow);\r\n window.document && window.document.body.classList.toggle('search-open', isSearchFormShow);\r\n }\r\n return (\r\n \r\n {label}\r\n { /* @ts-ignore */ }\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper, props)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps, props: ISearchViewProps) => {\r\n const { cancelBtnAriaLabel, submitBtnAriaLabel } = props.resources;\r\n return (\r\n \r\n \r\n {form.input}\r\n \r\n {form.cancelBtn}\r\n \r\n {{cancelBtnAriaLabel}}\r\n \r\n {form.submitBtn}\r\n \r\n {{submitBtnAriaLabel}}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.text}\r\n {item.price}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\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\r\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { ICittaFooterCategoryConfig, ICittaFooterCategoryProps } from './citta-footer-category.props.autogenerated';\r\n\r\nexport interface IFooterCategoryViewProps extends ICittaFooterCategoryProps {\r\n categories: React.ReactNode[];\r\n FooterList: IModuleProps;\r\n FooterListItem: INodeProps;\r\n}\r\n\r\n/**\r\n *\r\n * FooterCategory component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass FooterCategory extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n if(!this.props.slots || !this.props.slots.content || !this.props.slots.content.length) {\r\n this.props.context.telemetry.error('footer slots content is empty, module wont render');\r\n return null;\r\n }\r\n const viewprops = {\r\n ...this.props,\r\n categories: this.props.slots.content,\r\n FooterList: {\r\n moduleProps: this.props,\r\n className: classnames('ms-footer__list', this.props.config.className),\r\n tag:'ul'\r\n },\r\n FooterListItem: {\r\n className: classnames('ms-footer__list-item', this.props.config.className),\r\n tag: 'li'\r\n },\r\n };\r\n\r\n return this.props.renderView(viewprops) as React.ReactElement;\r\n }\r\n}\r\n\r\nexport default FooterCategory;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ExtensibleEnumeration } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions, EmailRegex } from '@msdyn365-commerce-modules/retail-actions';\nimport * as React from 'react';\n\nimport { IOrderLookupResources, IOrderLookupSearchAdditionalFieldsData } from '../order-lookup.props.autogenerated';\n\n/**\n * Render label.\n * @param className - Classname for label.\n * @param value - Text for label.\n * @returns -The JSX Element.\n */\nexport const labelGroup = (className: string, value: string): JSX.Element => {\n return
{value}
;\n};\n\n/**\n * Error label.\n * @param responseErrorMessage - Error message for label.\n * @param errorMessageClassName - Error message for class name.\n * @returns - Error ReactNode.\n */\nexport const renderErrorLabel = (responseErrorMessage: string, errorMessageClassName: string): React.ReactNode => {\n return responseErrorMessage &&
{responseErrorMessage}
;\n};\n\n/**\n * Registered user message.\n * @param resources - Resource values.\n * @param signInUrl - Signin url.\n * @param signInLinkClassName - Signin link classname.\n * @param registeredUserClassName - Registered user message classname.\n * @returns - ReactNode.\n */\nexport const renderRegisteredUserMessage = (\n resources: IOrderLookupResources,\n signInUrl: string,\n signInLinkClassName: string,\n registeredUserClassName: string\n): React.ReactNode => {\n const { orderLookupRegisteredUserText, orderLookupViewAccountText, orderLookupSignInLinkText } = resources;\n const message: string = orderLookupRegisteredUserText;\n const infoMessage: string = orderLookupViewAccountText;\n const signInText: string = orderLookupSignInLinkText;\n return (\n
\n {message}\n \n {signInText}\n \n {infoMessage}\n
\n );\n};\n\n/**\n * EmailValid submit.\n * @param email - Onsubmit of form and button click.\n * @returns - Boolean.\n */\nexport const isEmailValid = (email: string): boolean => {\n return EmailRegex.defaultRegex.test(email);\n};\n\n/**\n * Additional field validation for on submit.\n * @param name - Onsubmit of form and button click.\n * @returns - Boolean.\n */\nexport const isAdditionalFieldValid = (name: string): boolean => {\n const regEx = new RegExp('^(?!\\\\s)[A-Za-z0-9\\\\s]+$', 'u');\n return regEx.test(name);\n};\n\n/**\n * Validate order lookup field against extensible enum.\n * @param orderStatusLookUpParameter - Order lookup parameter.\n * @param orderLookupExtensibleEnum - Order lookup extensible enum.\n * @returns - Boolean.\n */\nexport const validateOrderLookupField = (\n orderStatusLookUpParameter: string,\n orderLookupExtensibleEnum: ExtensibleEnumeration[]\n): boolean => {\n let isValidField: boolean = false;\n for (const item of orderLookupExtensibleEnum) {\n if (item.Name.toLocaleLowerCase() === orderStatusLookUpParameter.toLocaleLowerCase()) {\n isValidField = true;\n return isValidField;\n }\n }\n return isValidField;\n};\n\n/**\n * Validate order lookup additional fields with proxy values.\n * @param value - Value to be validated.\n * @param orderLookupExtensibleEnum - Order lookup extensible enum.\n * @returns - Boolean.\n */\nexport const validateAdditionalFieldWithProxy = (value: string, orderLookupExtensibleEnum: ExtensibleEnumeration[]): boolean => {\n return !orderLookupExtensibleEnum.some(item => item.Name.toLocaleLowerCase() === value.toLocaleLowerCase());\n};\n\n/**\n * Validate order lookup additional fields against extensible enum.\n * @param orderStatusLookUpAdditionalParameters - Order lookup parameter.\n * @param orderLookupExtensibleEnum - Order lookup extensible enum.\n * @returns - Boolean.\n */\nexport const validateOrderLookupAdditionalField = (\n orderStatusLookUpAdditionalParameters: IOrderLookupSearchAdditionalFieldsData[],\n orderLookupExtensibleEnum: ExtensibleEnumeration[]\n): boolean => {\n let isValidAdditionalField: boolean = false;\n if (ArrayExtensions.hasElements(orderStatusLookUpAdditionalParameters)) {\n orderStatusLookUpAdditionalParameters.map(item => {\n const fieldKey: string = item.fieldKey ?? '';\n if (!isValidAdditionalField) {\n isValidAdditionalField = validateAdditionalFieldWithProxy(fieldKey, orderLookupExtensibleEnum);\n }\n return isValidAdditionalField;\n });\n } else {\n isValidAdditionalField = false;\n }\n return isValidAdditionalField;\n};\n\n/**\n * Render validation message if field does not matches with extensible enum.\n * @param orderLookupFieldValidationErrorMessage - Order lookup validation message.\n * @returns - ReactNode.\n */\nexport const renderFieldErrors = (orderLookupFieldValidationErrorMessage: string): React.ReactNode => {\n return
{orderLookupFieldValidationErrorMessage}
;\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { labelGroup } from '../utilities/order-lookup-utility';\n\n/**\n * Additional input field props.\n */\nexport interface IOrderLookupAdditionalFieldInfoInput {\n className: string;\n ariaLabel: string;\n inputType: string;\n value: string;\n name: string;\n additionalFieldLabel: string;\n additionalFieldLabelClassName: string;\n isValidAdditionalFieldName: boolean;\n additionalFieldValidationMessage: string;\n onChange(event: React.ChangeEvent): void;\n}\n\n/**\n * Order lookup additional field props.\n */\nexport interface IOrderLookupAdditionalFieldInfo {\n additionalFieldLabel: React.ReactNode;\n additionalFieldInput: React.ReactNode;\n additionalFieldError: React.ReactNode;\n}\n\n/**\n * RenderOrderLookupAdditionalFieldInput component.\n */\n@observer\nexport default class RenderOrderLookupAdditionalFieldInput extends React.Component {\n public constructor(props: IOrderLookupAdditionalFieldInfoInput) {\n super(props);\n }\n\n public shouldComponentUpdate(nextProps: IOrderLookupAdditionalFieldInfoInput): boolean {\n if (this.props === nextProps) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element | undefined {\n return (\n
\n {this._getOrderLookupAdditionalFields().additionalFieldLabel}\n {this._getOrderLookupAdditionalFields().additionalFieldError}\n {this._getOrderLookupAdditionalFields().additionalFieldInput}\n
\n );\n }\n\n /**\n * Function to create the order lookup additional fields.\n * @returns IOrderLookupFieldInfo.\n */\n private _getOrderLookupAdditionalFields(): IOrderLookupAdditionalFieldInfo {\n return {\n additionalFieldLabel: labelGroup(this.props.additionalFieldLabelClassName, this.props.additionalFieldLabel),\n additionalFieldInput: (\n
\n \n
\n ),\n additionalFieldError: (\n
\n {!this.props.isValidAdditionalFieldName ? this.props.additionalFieldValidationMessage : ''}\n
\n )\n };\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { labelGroup } from '../utilities/order-lookup-utility';\n\n/**\n * Input field props.\n */\nexport interface IOrderLookupFieldInfoInput {\n inputReference?: React.RefObject;\n className: string;\n ariaLabel: string;\n inputType: string;\n value: string;\n name: string;\n orderLookupLabel: string;\n orderLookupLabelClassName: string;\n fieldErrorClassName: string;\n isInputTypeError: boolean;\n isValidInputField: boolean;\n renderAlert(className: string): JSX.Element;\n onChange(event: React.ChangeEvent): void;\n}\n\n/**\n * Order lookup field props.\n */\nexport interface IOrderLookupFieldInfo {\n label: React.ReactNode;\n input: React.ReactNode;\n error: React.ReactNode;\n}\n\n/**\n * RenderOrderLookupInputs component.\n */\n@observer\nexport default class RenderOrderLookupFormFields extends React.Component {\n public constructor(props: IOrderLookupFieldInfoInput) {\n super(props);\n }\n\n public shouldComponentUpdate(nextProps: IOrderLookupFieldInfoInput): boolean {\n if (this.props === nextProps) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element | undefined {\n return (\n
\n {this._getOrderLookupFields().label}\n {this._getOrderLookupFields().error}\n {this._getOrderLookupFields().input}\n
\n );\n }\n\n /**\n * Function to create the order lookup fields.\n * @returns IOrderLookupFieldInfo.\n */\n private _getOrderLookupFields(): IOrderLookupFieldInfo {\n return {\n label: labelGroup(this.props.orderLookupLabelClassName, this.props.orderLookupLabel),\n input: (\n
\n \n
\n ),\n error: (\n
\n {this.props.isInputTypeError ? this.props.renderAlert(this.props.name) : ''}\n {this.props.isValidInputField ? this.props.renderAlert(this.props.name) : ''}\n
\n )\n };\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IActionContext } from '@msdyn365-commerce/core-internal';\nimport { ExtensibleEnumeration, StoreOperationsDataActions } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport RenderOrderLookupAdditionalFieldInput from './components/order-lookup-additional-fields';\nimport RenderOrderLookupFormFields from './components/order-lookup-fields';\nimport {\n IOrderLookupProps,\n IOrderLookupSearchAdditionalFieldsData,\n orderStatusLookUpParametersType as orderStatusLookUpParametersTypes\n} from './order-lookup.props.autogenerated';\nimport {\n isAdditionalFieldValid,\n isEmailValid,\n renderErrorLabel,\n renderFieldErrors,\n renderRegisteredUserMessage,\n validateOrderLookupAdditionalField,\n validateOrderLookupField\n} from './utilities/order-lookup-utility';\n\n/**\n * OrderLookup view props.\n */\nexport interface IOrderLookupViewProps extends IOrderLookupProps<{}> {\n additionalProperties: JSX.Element[] | undefined;\n orderLookup: IModuleProps;\n orderLookupContainer: INodeProps;\n orderLookupAdditionalFieldContainer: INodeProps;\n paragraph?: React.ReactNode;\n heading?: React.ReactNode;\n submitButton?: INodeProps;\n submitButtonLabelText?: string;\n orderLookupForm?: INodeProps;\n renderOrderLookupInputField: JSX.Element | undefined;\n orderNumberInput?: JSX.Element | undefined;\n errorMessage?: React.ReactNode;\n fieldErrorMessage?: React.ReactNode;\n registeredUserMessage?: React.ReactNode;\n onChange?(event: React.ChangeEvent): void;\n submit?(): void;\n}\n\n/**\n * OrderLookupSearchValues -- supported values.\n */\nenum OrderLookupSearchValues {\n email = 'email',\n ordernumber = 'ordernumber'\n}\n\n/**\n * To render and handle state for additional order lookup fields.\n */\nexport interface IOrderLookupAdditionalFields {\n labelName: string;\n isValidFieldName: boolean;\n fieldValue: string;\n ariaLabel: string;\n additionalfieldErrorMessage: string;\n}\n\n/**\n * OrderLookup view props.\n */\nexport interface IOrderLookupFormState {\n orderNumber: string;\n email: string;\n isOrdNumberError: boolean;\n isEmailError: boolean;\n isValidEmailError: boolean;\n isReqError: boolean;\n isDisabled: boolean;\n isValidLookupField: boolean;\n isValidAdditionalLookupField: boolean;\n responseErrorMessage: string;\n additionalProperties: IOrderLookupAdditionalFields[];\n}\n\n/**\n *\n * OrderLookup component.\n * @extends {React.PureComponent>}\n */\nclass OrderLookup extends React.PureComponent, IOrderLookupFormState> {\n public orderNumberInputRef: React.RefObject;\n\n public emailInputRef: React.RefObject;\n\n public isEmailValue: boolean = false;\n\n private requiredErrorMessage: string | undefined;\n\n private emailValidationErrorMessage: string | undefined;\n\n private isOrderNumberValue: boolean = false;\n\n private orderLookupExtensibleEnum: ExtensibleEnumeration[] = [];\n\n public constructor(props: IOrderLookupProps<{}>) {\n super(props);\n this.orderNumberInputRef = React.createRef();\n this.emailInputRef = React.createRef();\n const { config } = this.props;\n const { orderLookupSearchAdditionalFields } = config;\n const additionalPropertyStates: IOrderLookupAdditionalFields[] = [];\n\n if (orderLookupSearchAdditionalFields) {\n for (const item of orderLookupSearchAdditionalFields) {\n additionalPropertyStates.push({\n labelName: item.labelName ?? '',\n isValidFieldName: true,\n fieldValue: '',\n ariaLabel: item.ariaLabel ?? '',\n additionalfieldErrorMessage: item.validationMessage ?? ''\n });\n }\n }\n\n this.state = {\n orderNumber: '',\n email: '',\n isOrdNumberError: false,\n isEmailError: false,\n isValidEmailError: false,\n isReqError: false,\n isDisabled: true,\n isValidLookupField: true,\n isValidAdditionalLookupField: false,\n responseErrorMessage: '',\n additionalProperties: additionalPropertyStates\n };\n }\n\n public render(): JSX.Element | null {\n const {\n config: { paragraph, heading },\n resources,\n context\n } = this.props;\n\n const {\n orderLookupDefaultHeadingText,\n orderLookupButtonLabel,\n orderLookupFormAriaLabel,\n orderLookupOrderNumberLabel,\n orderLookupOrderNumberAriaLabel,\n orderLookupSubmitAriaLabel,\n orderLookupFieldValidationErrorMessage\n } = resources;\n\n const { responseErrorMessage, isDisabled, orderNumber, isOrdNumberError } = this.state;\n\n const headingText = StringExtensions.isNullOrEmpty(heading?.text) ? orderLookupDefaultHeadingText : heading?.text;\n const headingTag = heading?.tag ?? 'h1';\n\n const moduleClassName = 'ms-order-lookup';\n const orderLookupContainerClassName = `${moduleClassName}__details`;\n const orderLookupHeadingClassName = `${orderLookupContainerClassName}__heading`;\n const orderLookupFormClassName = `${orderLookupContainerClassName}__form`;\n const orderLookupAdditionalFiledContainerClassName = `${orderLookupFormClassName}__additional-fields-container`;\n const orderLookupFormFieldsClassName = `${orderLookupFormClassName}__fields`;\n const orderNumberLabelClassName = `${orderLookupFormFieldsClassName}__order-number-label`;\n const orderNumberInputErrorClassName = `${orderLookupFormFieldsClassName}__order-number-input-error`;\n const submitButtonClassName = `${orderLookupFormClassName}__submit`;\n const labelErrorMessageClassName = `${moduleClassName}__error-message`;\n const registeredUserClassName = `${moduleClassName}__registered-user`;\n const signinLinkClassName = `${registeredUserClassName}__sign-in-link msc-btn`;\n\n const orderLookupHeading = (\n \n );\n\n const viewProps: IOrderLookupViewProps = {\n ...this.props,\n orderLookup: {\n moduleProps: this.props,\n className: moduleClassName\n },\n\n orderLookupContainer: {\n className: orderLookupContainerClassName\n },\n orderLookupAdditionalFieldContainer: {\n className: orderLookupAdditionalFiledContainerClassName\n },\n paragraph: paragraph && this._createParagraph(paragraph),\n heading: orderLookupHeading,\n\n renderOrderLookupInputField: this._renderOrderLookupInput(),\n orderLookupForm: {\n className: orderLookupFormClassName,\n tag: 'form',\n 'aria-label': orderLookupFormAriaLabel,\n name: 'orderLookupForm',\n role: 'form',\n autoComplete: 'off',\n onSubmit: this.handleSubmit\n },\n orderNumberInput: (\n \n ),\n\n submitButton: {\n className: submitButtonClassName,\n tag: Button,\n 'aria-label': orderLookupSubmitAriaLabel,\n type: 'submit',\n role: 'button',\n title: orderLookupButtonLabel,\n onClick: this.handleSubmit,\n disabled: isDisabled\n },\n\n submitButtonLabelText: orderLookupButtonLabel,\n errorMessage: renderErrorLabel(responseErrorMessage, labelErrorMessageClassName),\n fieldErrorMessage:\n (!this.state.isValidLookupField || this.state.isValidAdditionalLookupField) &&\n renderFieldErrors(orderLookupFieldValidationErrorMessage),\n registeredUserMessage: renderRegisteredUserMessage(\n resources,\n context.request.user.signInUrl ?? '',\n signinLinkClassName,\n registeredUserClassName\n ),\n onChange: this.onChange,\n submit: this.handleSubmit,\n additionalProperties: this._renderAdditionalFields()\n };\n return this.props.renderView(viewProps);\n }\n\n public async componentDidMount(): Promise {\n const { config, context } = this.props;\n const { actionContext } = context;\n const { orderStatusLookUpParametersType, orderLookupSearchAdditionalFields } = config;\n let isOrderLookupAdditionalFieldValid: boolean = false;\n let isOrderLookupFieldValid: boolean = false;\n\n const getExtensibleEnumerations = await StoreOperationsDataActions.getExtensibleEnumerationsAsync({ callerContext: actionContext });\n this.orderLookupExtensibleEnum =\n getExtensibleEnumerations.find(item => item.TypeName === 'OrderLookupAdditionalCriteriaType')?.ExtensibleEnumerations ?? [];\n\n const orderLookupParameter: string = orderStatusLookUpParametersType ?? '';\n const orderLookupAdditionalParameter: IOrderLookupSearchAdditionalFieldsData[] = orderLookupSearchAdditionalFields ?? [];\n\n isOrderLookupFieldValid = validateOrderLookupField(orderLookupParameter, this.orderLookupExtensibleEnum);\n isOrderLookupAdditionalFieldValid = validateOrderLookupAdditionalField(\n orderLookupAdditionalParameter,\n this.orderLookupExtensibleEnum\n );\n this.setLookupFieldState(isOrderLookupFieldValid, isOrderLookupAdditionalFieldValid);\n }\n\n /**\n * Handle text change.\n * @param event - The dialog that is allowed to remain open.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.heading!.text = event.target.value;\n };\n\n /**\n * Handle paragraph change.\n * @param event - The dialog that is allowed to remain open.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent): void => {\n const { config } = this.props;\n config.paragraph = event.target.value;\n };\n\n /**\n * Sets isValidLookupField after validating with extensible emun.\n * @param isValidField - Sets the property.\n * @param isValidAdditionalField - Sets the additional field property.\n */\n public setLookupFieldState(isValidField: boolean, isValidAdditionalField: boolean): void {\n this.setState({ isValidLookupField: isValidField, isValidAdditionalLookupField: isValidAdditionalField });\n }\n\n /**\n * HandleSubmit submit.\n */\n public readonly handleSubmit = (): void => {\n const { config, context } = this.props;\n const { actionContext } = context;\n const { additionalProperties, orderNumber, email } = this.state;\n const orderLookupValue = email;\n const { orderStatusLookUpParametersType } = config;\n const orderLookupName = orderStatusLookUpParametersType !== undefined ? orderStatusLookUpParametersType : '';\n const isValid: boolean = this._validateOrderLookupForm();\n if (isValid) {\n const actionContextValue: IActionContext = actionContext;\n const orderDetailsPath = Msdyn365.getUrlSync('orderDetails', actionContextValue) ?? '';\n if (orderDetailsPath) {\n const baseUrl = new URL(window.location.origin);\n const redirectUrl = new URL(orderDetailsPath, baseUrl);\n const searchParameters = redirectUrl.searchParams;\n\n searchParameters.set('confirmationId', orderNumber);\n searchParameters.set('propertyName', orderLookupName);\n searchParameters.set('propertyValue', orderLookupValue);\n\n if (ArrayExtensions.hasElements(additionalProperties)) {\n additionalProperties.map((item, index) => {\n const fieldName = !StringExtensions.isNullOrWhitespace(item.ariaLabel)\n ? item.ariaLabel.replace(' ', '').toLocaleLowerCase()\n : '';\n const fieldValue = !StringExtensions.isNullOrWhitespace(item.fieldValue) ? item.fieldValue : '';\n searchParameters.set(`field${index + 1}Name`, fieldName);\n searchParameters.set(`field${index + 1}Value`, fieldValue);\n return item;\n });\n }\n\n window.location.assign(redirectUrl.toString());\n }\n }\n };\n\n /**\n * OnChange event.\n * @param event - Value of input field.\n */\n public readonly onChange = (event: React.ChangeEvent): void => {\n const { additionalProperties } = this.state;\n const { config } = this.props;\n const { orderStatusLookUpParametersType } = config;\n const name = event.target.name || '';\n const value = event.target.value || '';\n this.isOrderNumberValue = !StringExtensions.isNullOrWhitespace(this.orderNumberInputRef.current?.value);\n this.isEmailValue = !StringExtensions.isNullOrWhitespace(this.emailInputRef.current?.value);\n\n if (orderStatusLookUpParametersType?.toLocaleLowerCase() === 'none') {\n this.isEmailValue = true;\n }\n\n this.setState({ responseErrorMessage: '' });\n const additionalPropertyStates: IOrderLookupAdditionalFields[] = [];\n let isAdditionalFieldError: boolean = true as boolean;\n let isKeyExistInAdditionalFieldArray: boolean = false as boolean;\n\n for (const item of additionalProperties) {\n const fieldName: string = item.ariaLabel.replace(' ', '');\n if (fieldName.toLocaleLowerCase() === name.toLocaleLowerCase()) {\n additionalPropertyStates.push({\n labelName: item.labelName,\n isValidFieldName: true,\n fieldValue: value,\n ariaLabel: item.ariaLabel,\n additionalfieldErrorMessage: item.additionalfieldErrorMessage\n });\n } else {\n additionalPropertyStates.push({\n labelName: item.labelName,\n isValidFieldName: item.isValidFieldName,\n fieldValue: item.fieldValue,\n ariaLabel: item.ariaLabel,\n additionalfieldErrorMessage: item.additionalfieldErrorMessage\n });\n }\n if (fieldName.toLocaleLowerCase() === orderStatusLookUpParametersType?.toLocaleLowerCase()) {\n isKeyExistInAdditionalFieldArray = true;\n }\n }\n\n for (const items of additionalPropertyStates) {\n if (StringExtensions.isNullOrWhitespace(items.fieldValue)) {\n isAdditionalFieldError = false;\n }\n }\n\n this.setState({ additionalProperties: additionalPropertyStates });\n\n if (!isKeyExistInAdditionalFieldArray) {\n switch (name.toLocaleLowerCase()) {\n case OrderLookupSearchValues.ordernumber: {\n this.setState({\n orderNumber: value,\n isOrdNumberError: false,\n isReqError: false\n });\n break;\n }\n case OrderLookupSearchValues.email: {\n this.setState({\n email: value,\n isEmailError: false,\n isValidEmailError: false,\n isReqError: false\n });\n break;\n }\n default: {\n this.setState({ isReqError: false });\n }\n }\n }\n\n if (\n this.isOrderNumberValue &&\n this.isEmailValue &&\n isAdditionalFieldError &&\n this.state.isValidLookupField &&\n !this.state.isValidAdditionalLookupField\n ) {\n this.setState({ isDisabled: false });\n } else {\n this.setState({ isDisabled: true });\n }\n };\n\n private _createParagraph(text?: Msdyn365.RichText): React.ReactNode | null {\n const { context } = this.props;\n const { request } = context;\n if (!text) {\n return null;\n }\n return (\n \n );\n }\n\n /**\n * Render order lookup validation message.\n * @param className - Class name for error field.\n * @returns - JSX.Element.\n */\n private readonly _renderAlert = (className: string): JSX.Element => {\n const {\n resources: { orderLookupEmailValidationErrorMessage, orderLookupRequiredTextErrorMessage }\n } = this.props;\n\n const { isEmailError, email, isValidEmailError, isReqError } = this.state;\n if (isEmailError) {\n this.requiredErrorMessage = orderLookupRequiredTextErrorMessage;\n }\n\n if (!StringExtensions.isNullOrEmpty(email) && isValidEmailError) {\n this.emailValidationErrorMessage = orderLookupEmailValidationErrorMessage;\n }\n\n const isRequireError = isReqError;\n const isEmailValidError = isValidEmailError;\n const isValidEmailInput = className.toLocaleLowerCase() === OrderLookupSearchValues.email;\n return (\n <>\n {isRequireError && (\n \n {this.requiredErrorMessage}\n \n )}\n {isEmailValidError && isValidEmailInput && (\n \n {this.emailValidationErrorMessage}\n \n )}\n \n );\n };\n\n /**\n * Render order number validation message.\n * @param className - Class name for error field.\n * @returns - JSX.Element.\n */\n private readonly _renderOrderNumberAlert = (className: string): JSX.Element => {\n const {\n resources: { orderLookupOrderNumberValidationErrorMessage, orderLookupRequiredTextErrorMessage }\n } = this.props;\n\n const { isOrdNumberError, isReqError } = this.state;\n return (\n <>\n {isReqError && (\n \n {orderLookupRequiredTextErrorMessage}\n \n )}\n {isOrdNumberError && (\n \n {orderLookupOrderNumberValidationErrorMessage}\n \n )}\n \n );\n };\n\n private _renderAdditionalFields(): JSX.Element[] | undefined {\n const { additionalProperties } = this.state;\n const additionalFieldsInput: JSX.Element[] = [];\n for (const item of additionalProperties) {\n const name: string = item.ariaLabel.replace(' ', '');\n additionalFieldsInput.push(\n \n );\n }\n return additionalFieldsInput;\n }\n\n /**\n * Render Input field for order lookup.\n * @returns - IOrderLookupFieldInfo.\n */\n private readonly _renderOrderLookupInput = (): JSX.Element | undefined => {\n const { email, isEmailError, isValidEmailError } = this.state;\n const {\n config: { orderStatusLookUpParametersType },\n resources: { orderLookupEmailLabel, orderLookupEmailAriaLabel }\n } = this.props;\n\n switch (orderStatusLookUpParametersType) {\n case orderStatusLookUpParametersTypes.none:\n return undefined;\n case orderStatusLookUpParametersTypes.email:\n default:\n return (\n \n );\n }\n };\n\n /**\n * _validation for additional fields.\n * @returns - Returns IOrderLookupAdditionalFields[].\n */\n private readonly _additionalFieldValidation = (): IOrderLookupAdditionalFields[] => {\n const additionalPropertyStates: IOrderLookupAdditionalFields[] = [];\n for (const item of this.state.additionalProperties) {\n const isFieldValid: boolean = !StringExtensions.isNullOrWhitespace(item.fieldValue) && isAdditionalFieldValid(item.fieldValue);\n additionalPropertyStates.push({\n labelName: item.labelName,\n isValidFieldName: isFieldValid,\n fieldValue: item.fieldValue,\n ariaLabel: item.ariaLabel,\n additionalfieldErrorMessage: item.additionalfieldErrorMessage\n });\n }\n return additionalPropertyStates;\n };\n\n /**\n * _validateOrderLookupForm submit.\n * @returns - Returns boolean.\n */\n private readonly _validateOrderLookupForm = (): boolean => {\n const { config } = this.props;\n const { orderNumber, email } = this.state;\n const { orderStatusLookUpParametersType } = config;\n let additionalPropertyStates: IOrderLookupAdditionalFields[] = [];\n let isValid = false;\n let isDisable = false;\n\n if (ArrayExtensions.hasElements(this.state.additionalProperties)) {\n additionalPropertyStates = this._additionalFieldValidation();\n for (const item of additionalPropertyStates) {\n if (!item.isValidFieldName) {\n isDisable = true;\n }\n }\n\n if (isDisable) {\n this.setState({\n additionalProperties: additionalPropertyStates,\n isDisabled: true\n });\n }\n }\n\n if (StringExtensions.isNullOrWhitespace(orderNumber)) {\n this.setState({\n isOrdNumberError: true,\n isReqError: true,\n isDisabled: true\n });\n } else if (orderNumber.trim() !== orderNumber) {\n this.setState({\n isOrdNumberError: true,\n isReqError: false,\n isDisabled: true\n });\n } else if (\n orderStatusLookUpParametersType === orderStatusLookUpParametersTypes.email &&\n StringExtensions.isNullOrWhitespace(email)\n ) {\n this.setState({\n isEmailError: true,\n isReqError: true,\n isDisabled: true\n });\n } else if (orderStatusLookUpParametersType === orderStatusLookUpParametersTypes.email && !isEmailValid(email)) {\n this.setState({\n isValidEmailError: true,\n isDisabled: true\n });\n } else if (isDisable || !this.state.isValidLookupField || this.state.isValidAdditionalLookupField) {\n this.setState({\n isDisabled: true\n });\n } else {\n this.setState({\n isDisabled: false\n });\n isValid = true;\n }\n return isValid;\n };\n}\n\nexport default OrderLookup;\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\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport React, { ReactNode } from 'react';\r\nimport { IFooterCategoryViewProps } from './citta-footer-category';\r\n\r\nexport const FooterCategoryView: React.FC = props => {\r\n const {categories, FooterList, FooterListItem} = props;\r\n if(!categories || !categories.length) {\r\n props.context.telemetry.error('Footer content is empty, module wont render');\r\n return null;\r\n }\r\n return(\r\n \r\n { categories.map((category: ReactNode, index: number) => {\r\n return (\r\n \r\n {category}\r\n \r\n );\r\n })\r\n }\r\n \r\n );\r\n};\r\n\r\nexport default FooterCategoryView;","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { ICittaProductSkuViewProps } from './citta-product-sku';\r\n\r\n/**\r\n *\r\n * ICittaProductSkuView component\r\n * @extends {React.PureComponent}\r\n */\r\nexport class ICittaProductSkuView extends React.PureComponent {\r\n\r\n public render(): JSX.Element | null {\r\n const { ProductSkuContainer, ProductSkuNode, SkuTitleTextNode } = this.props;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\nexport default ICittaProductSkuView;","import { Button, Collapse } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { IDrawerProps } from './Drawer.props';\r\n\r\nexport interface IDrawerState {\r\n isOpen: boolean;\r\n}\r\nexport interface ICollapseProps {\r\n\r\n /** Flag to toggle collapse open */\r\n isOpen?: boolean;\r\n\r\n /** Class that needs to be applied to the button */\r\n className?: string;\r\n\r\n /** Property to set if you want the HTML tag to be something else */\r\n // @ts-ignore\r\n tag?: React.ReactType;\r\n\r\n /** Children for the React element */\r\n // tslint:disable-next-line:no-any\r\n children?: any;\r\n\r\n /** Show the component, triggers the collapse animation */\r\n in?: boolean;\r\n\r\n /** Set the timeout */\r\n timeout?: number;\r\n\r\n /** Flag to set if this is navbar */\r\n navbar?: boolean;\r\n\r\n /** CssModule Property to set any CSS classModule on the nav */\r\n cssModule?: object;\r\n\r\n /**\r\n * Property to set for announcing the state -(expand or collapse) on Button.\r\n */\r\n 'aria-expanded'?: boolean;\r\n}\r\nexport type GlyphPlacement = 'start' | 'end';\r\n\r\n/**\r\n * Drawer - This is a full width uncontrolled collapse where the button glyph changes\r\n * when the drawer is open and closed\r\n */\r\n\r\nexport default class Drawer extends React.Component {\r\n public state: IDrawerState;\r\n private drawerOpenGlyph: string;\r\n private drawerCloseGlyph: string;\r\n private drawerGlyphClass: string;\r\n private isManuallyToggled: boolean;\r\n\r\n constructor(props: IDrawerProps) {\r\n super(props);\r\n this._toggle = this._toggle.bind(this);\r\n this.isManuallyToggled = false;\r\n this.state = { isOpen: (props.collapseProps && props.collapseProps.isOpen) || false };\r\n this.drawerGlyphClass = classnames('drawer__glyph',\r\n // tslint:disable-next-line:align\r\n this.props.toggleGlyphClassName ?\r\n this.props.toggleGlyphClassName : '');\r\n\r\n if (this.props.animateGlyph) {\r\n this.drawerOpenGlyph = classnames(this.drawerGlyphClass,\r\n // tslint:disable-next-line:align\r\n this.props.openGlyph ?\r\n this.props.openGlyph :\r\n this.props.closeGlyph ?\r\n this.props.closeGlyph : '');\r\n this.drawerCloseGlyph = this.drawerOpenGlyph;\r\n } else {\r\n this.drawerOpenGlyph = classnames(this.drawerGlyphClass,\r\n // tslint:disable-next-line:align\r\n this.props.openGlyph ?\r\n this.props.openGlyph : '');\r\n this.drawerCloseGlyph = classnames(this.drawerGlyphClass,\r\n // tslint:disable-next-line:align\r\n this.props.closeGlyph ?\r\n this.props.closeGlyph : '');\r\n }\r\n }\r\n\r\n public render(): JSX.Element {\r\n const collapseProps = { ...this.props.collapseProps } as ICollapseProps;\r\n\r\n // If the drawer is manually toggled by pressing the button, then we use the internal state\r\n if (collapseProps.isOpen === undefined || this.isManuallyToggled) {\r\n collapseProps.isOpen = this.state.isOpen;\r\n } else {\r\n this.state.isOpen = collapseProps.isOpen;\r\n }\r\n collapseProps.children = this.props.children;\r\n const drawerClass = classnames('drawer',\r\n // tslint:disable-next-line:align\r\n this.props.className ?\r\n this.props.className : '');\r\n this.isManuallyToggled = false;\r\n return (\r\n
\r\n \r\n {this.props.radioButtonOption ?
\r\n \r\n {/* tslint:disable-next-line: jsx-self-close */}\r\n \r\n
: null}\r\n {this._generateDrawerButtonInnerMarkup(collapseProps.isOpen)}\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n private _generateDrawerButtonInnerMarkup(collapseState: boolean): JSX.Element {\r\n const drawerButtonTextClass = classnames('drawer__buttontext',\r\n // tslint:disable-next-line:align\r\n this.props.toggleButtonClassName ?\r\n this.props.toggleButtonClassName : '');\r\n if (this.props.glyphPlacement === 'end') {\r\n return (\r\n <>\r\n {this.props.toggleButtonText}\r\n {this._generateGlyphMarkup('drawer__glyph__end', collapseState)}\r\n \r\n );\r\n }\r\n\r\n if (this.props.glyphPlacement === 'start') {\r\n return (\r\n <>\r\n {this._generateGlyphMarkup('drawer__glyph__start', collapseState)}\r\n {this.props.toggleButtonText}\r\n \r\n );\r\n } else {\r\n return {this.props.toggleButtonText};\r\n }\r\n }\r\n\r\n private _generateGlyphMarkup(location: string, collapseState: boolean): JSX.Element {\r\n let glyphClass = collapseState ? this.drawerOpenGlyph : this.drawerCloseGlyph;\r\n glyphClass = `${glyphClass} ${location}`;\r\n return (\r\n \r\n );\r\n }\r\n\r\n private _toggle(e: React.MouseEvent | React.KeyboardEvent): void {\r\n e.preventDefault();\r\n this.setState({ isOpen: !this.state.isOpen });\r\n this.isManuallyToggled = true;\r\n if (this.props.onToggle) {\r\n this.props.onToggle();\r\n }\r\n }\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 { Button } from '@msdyn365-commerce-modules/utilities';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport ControlledDrawer from '../../components/citta-accordion-drawer/Drawer';\r\nimport { IDrawerProps } from '../../components/citta-accordion-drawer/Drawer.props';\r\nimport { createAccordionStateInput } from '../../data-actions/accordion/accordion-state-data-action';\r\nimport { ICittaAccordionItemCustomData } from './citta-accordion-item-custom.data';\r\nimport { ICittaAccordionItemCustomProps } from './citta-accordion-item-custom.props.autogenerated';\r\nexport interface IAccordionItemState extends React.ComponentState {\r\n /**\r\n * Indicates whether a submenu is expanded or collapsed\r\n */\r\n expanded: boolean;\r\n accordionItemTitle: string;\r\n}\r\n\r\n/**\r\n *\r\n * AccordionItem component\r\n * @extends {React.Component>}\r\n */\r\n@observer\r\nclass AccordionItemCustom extends React.Component, IAccordionItemState> {\r\n private expandSingleItemOnly?: boolean = false;\r\n\r\n constructor(props: ICittaAccordionItemCustomProps) {\r\n super(props);\r\n this._onToggleAccordionItem = this._onToggleAccordionItem.bind(this);\r\n this._getDrawerProps = this._getDrawerProps.bind(this);\r\n this._renderAccordionItemContent = this._renderAccordionItemContent.bind(this);\r\n this._renderAccordionItemSlotsContent = this._renderAccordionItemSlotsContent.bind(this);\r\n this.state = {\r\n expanded: false, // isExpanded\r\n accordionItemTitle: this.props.config.accordionItemTitle\r\n };\r\n this.expandSingleItemOnly = this.props.data.accordionExpandedState.result && this.props.data.accordionExpandedState.result.expandSingleItemOnly;\r\n }\r\n\r\n public componentDidMount(): void {\r\n const initialExpansion = this.props && this.props.config && this.props.config.isExpandedOnInitialLoad || false;\r\n if (initialExpansion) {\r\n this.setState(prevState => ({\r\n expanded: !prevState.expanded\r\n }));\r\n\r\n if (this.expandSingleItemOnly) {\r\n const oldRadioButtonText = this.props.data && this.props.data.accordionExpandedState && this.props.data.accordionExpandedState.result!.radioButtonText;\r\n const closing = this.state.accordionItemTitle === oldRadioButtonText;\r\n const accordionState = { radioButtonText: closing ? '' : this.props.config.accordionItemTitle, isAllExpanded: false };\r\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\r\n }\r\n }\r\n }\r\n\r\n public render(): JSX.Element {\r\n const { slots } = this.props;\r\n const config = this.props && this.props.config;\r\n const drawerProps = this._getDrawerProps(config && config.showGlyph);\r\n\r\n const hasAccordionItemSlotsContent = slots && slots.accordionItemContent && slots.accordionItemContent.length;\r\n\r\n return (\r\n
\r\n {hasAccordionItemSlotsContent && (\r\n
\r\n \r\n
\r\n {(config) && (\r\n \r\n
\r\n {hasAccordionItemSlotsContent && (this._renderAccordionItemSlotsContent(slots.accordionItemContent))}\r\n
\r\n
\r\n )\r\n }\r\n
\r\n
)\r\n }\r\n
\r\n );\r\n }\r\n\r\n private _getDrawerProps(showGlyph: boolean | undefined): IDrawerProps {\r\n const data = this.props && this.props.data;\r\n const config = this.props && this.props.config;\r\n const accordionExpandedStateResult = data && data.accordionExpandedState && data.accordionExpandedState.result;\r\n // const expanded = accordionExpandedStateResult ? accordionExpandedStateResult!.isAllExpanded === undefined ?\r\n // data && config.isExpandedOnInitialLoad : accordionExpandedStateResult!.isAllExpanded : false;\r\n const expanded = this.state.expanded;\r\n const radioButtonText = accordionExpandedStateResult!.radioButtonText;\r\n\r\n if (showGlyph) {\r\n return {\r\n toggleButtonText: (config.accordionItemTitle && config.accordionItemTitle) || '',\r\n collapseProps: { isOpen: expanded },\r\n openGlyph: 'expand-glyph',\r\n closeGlyph: 'collapse-glyph',\r\n glyphPlacement: config && config.glyphPlacement,\r\n onToggle: this._onToggleAccordionItem(config.accordionItemTitle),\r\n radioButtonOption: config && config.radioButtonOption,\r\n radioButtonChecked: radioButtonText === config.accordionItemTitle ? true : false\r\n };\r\n }\r\n\r\n return {\r\n toggleButtonText: config.accordionItemTitle || '',\r\n collapseProps: { isOpen: this.expandSingleItemOnly ? radioButtonText === this.state.accordionItemTitle ? true : false : expanded },\r\n onToggle: this._onToggleAccordionItem(config.accordionItemTitle),\r\n radioButtonOption: config && config.radioButtonOption,\r\n radioButtonChecked: radioButtonText === config.accordionItemTitle ? true : false\r\n };\r\n }\r\n\r\n private _onToggleAccordionItem = (AccordionItemText: string, openOnly?: boolean) => (): void => {\r\n const data = this.props && this.props.data;\r\n const accordionExpandedStateResult = data && data.accordionExpandedState && data.accordionExpandedState.result;\r\n const radioButtonText = accordionExpandedStateResult!.radioButtonText;\r\n if (openOnly && (this.expandSingleItemOnly ? radioButtonText === this.state.accordionItemTitle ? true : false : this.state.expanded)) {\r\n return;\r\n }\r\n\r\n this.setState(prevState => ({\r\n expanded: !prevState.expanded\r\n }));\r\n\r\n if (this.expandSingleItemOnly) {\r\n const oldRadioButtonText = this.props.data && this.props.data.accordionExpandedState && this.props.data.accordionExpandedState.result!.radioButtonText;\r\n const closing = this.state.accordionItemTitle === oldRadioButtonText;\r\n const accordionState = { radioButtonText: closing ? '' : AccordionItemText, isAllExpanded: false };\r\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\r\n }\r\n }\r\n\r\n // private _closeAllAccordionItems = (AccordionItemText: string) => (): void => {\r\n // if (this.expandSingleItemOnly) {\r\n // const accordionState = { radioButtonText: AccordionItemText, isAllExpanded: false };\r\n // this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\r\n // }\r\n // if (AccordionItemText !== this.state.accordionItemTitle) {\r\n // this.setState({ accordionItemTitle: AccordionItemText });\r\n // } else {\r\n // this.setState({ accordionItemTitle: '' });\r\n // }\r\n // }\r\n\r\n private _renderAccordionItemContent(content: string): JSX.Element | null {\r\n return (\r\n
\r\n

{content}

\r\n
\r\n );\r\n }\r\n\r\n private _renderAccordionItemSlotsContent(items: React.ReactNode[]): JSX.Element | null {\r\n return (\r\n \r\n {items && items.length ? (\r\n items.map((slot: React.ReactNode, index: number) => {\r\n return (\r\n \r\n {slot}\r\n \r\n );\r\n })\r\n ) : null}\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default AccordionItemCustom;\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 { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport {\r\n IPasswordResetVerificationItem,\r\n IPasswordResetVerificationLoading,\r\n IPasswordResetVerificationLocalAccount,\r\n IPasswordResetVerificationViewProps\r\n} from '@msdyn365-commerce-modules/account-management/src/modules/password-reset-verification/./password-reset-verification';\r\n\r\nconst PasswordResetVerificationItem: React.FC = ({ wrapper, label, errorMessage, input }) => {\r\n return (\r\n \r\n {label}\r\n {errorMessage}\r\n {input}\r\n \r\n );\r\n};\r\n\r\nconst LocalAccount: React.FC = ({\r\n localAccount,\r\n verificationControlWrapper,\r\n items,\r\n successMessage,\r\n errorMessage,\r\n verificationButtonsWrapper,\r\n verificationButtons,\r\n buttonsWrapper,\r\n buttons,\r\n verificationSuccessModal,\r\n verificationSuccessModalMessage\r\n}) => {\r\n return (\r\n \r\n \r\n {successMessage &&\r\n successMessage.map((message: React.ReactNode, index: number) => {\r\n return {message};\r\n })}\r\n {items &&\r\n items.map((item: IPasswordResetVerificationItem) => {\r\n // eslint-disable-next-line react/jsx-key\r\n return ;\r\n })}\r\n {errorMessage &&\r\n errorMessage.map((error: React.ReactNode, index: number) => {\r\n return {error};\r\n })}\r\n \r\n {verificationButtons &&\r\n verificationButtons.map((button: React.ReactNode, index: number) => {\r\n return {button};\r\n })}\r\n \r\n\r\n \r\n {buttons &&\r\n buttons.map((button: React.ReactNode, index: number) => {\r\n return {button};\r\n })}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst PasswordResetVerificationLoading: React.FC = ({ modal, modalBody, icon, message }) => {\r\n return (\r\n \r\n \r\n {icon}\r\n {message}\r\n \r\n \r\n );\r\n};\r\n\r\nconst PasswordResetVerificationView: React.FC = props => {\r\n const {\r\n passwordResetVerification,\r\n viewState,\r\n loading,\r\n defaultAADConainer,\r\n aadConainer,\r\n heading,\r\n passwordResetVerificationLocalAccount\r\n } = props;\r\n\r\n return (\r\n \r\n {viewState.isShowLoading && }\r\n {viewState.isShowLoading && }\r\n {!viewState.isShowLoading && \r\n {heading}\r\n {LocalAccount(passwordResetVerificationLocalAccount)}\r\n }\r\n \r\n );\r\n};\r\n\r\nexport default PasswordResetVerificationView;\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 { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport classname from 'classnames';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\n\r\nimport { ICittaProductSkuData } from './citta-product-sku.data';\r\nimport { ICittaProductSkuProps } from './citta-product-sku.props.autogenerated';\r\n\r\nexport interface ICittaProductSkuViewProps extends ICittaProductSkuProps {\r\n ProductSkuContainer: IModuleProps;\r\n SkuTitleTextNode: INodeProps;\r\n ProductSkuNode: INodeProps;\r\n}\r\n\r\n/**\r\n *\r\n * CittaProductSku component\r\n * @extends {React.PureComponent>}\r\n */\r\n@observer\r\nclass CittaProductSku extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n let content: ICittaProductSkuData;\r\n\r\n try {\r\n content = this.props.data;\r\n } catch(e) {\r\n this.props.telemetry.error(`Something went wrong -----${e}`);\r\n return null;\r\n }\r\n\r\n const productSku = content && content.product && content.product.result && content.product.result.ItemId;\r\n const skuTitleText = this.props.config && this.props.config.skuTitleText ? this.props.config.skuTitleText : 'Sku:';\r\n const className = this.props.config && this.props.config.className ? this.props.config.className : '';\r\n if (productSku) {\r\n const productSkuViewProps: ICittaProductSkuViewProps = {\r\n ...(this.props as ICittaProductSkuProps),\r\n ProductSkuContainer: {\r\n moduleProps: this.props,\r\n className: classname('product-sku', className),\r\n },\r\n SkuTitleTextNode: {\r\n className: 'product-sku-title',\r\n children: skuTitleText\r\n },\r\n ProductSkuNode: {\r\n className: 'product-sku-id',\r\n children: productSku\r\n }\r\n };\r\n return this.props.renderView(productSkuViewProps) as React.ReactElement;\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nexport default CittaProductSku;\r\n"],"sourceRoot":""}