{"version":3,"file":"js/rescript-bundles-product-reservation-form-93333aeef808250d80c9.chunk.js","mappings":"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","sources":["webpack://datacenters/./client/app/rescript/bundles/product-reservation/form/ProductReservationForm.res.js","webpack://datacenters/./client/app/rescript/bundles/product-reservation/form/ProductCreateReservation.res.js","webpack://datacenters/./client/app/rescript/bundles/product-reservation/form/index.js","webpack://datacenters/./client/app/rescript/libs/Hooks.res.js","webpack://datacenters/./client/app/rescript/libs/MediaQueryList.res.js","webpack://datacenters/./client/app/rescript/routes/common/Routes_Marketplace.res.js","webpack://datacenters/./client/app/rescript/styleguide/components/Link/A.res.js","webpack://datacenters/./client/app/rescript/styleguide/styles/Screens.res.js"],"sourcesContent":["// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as A from \"../../../styleguide/components/Link/A.res.js\";\nimport * as Cx from \"rescript-classnames/src/Cx.res.js\";\nimport * as H2 from \"../../../styleguide/components/Heading/H2.res.js\";\nimport * as Form from \"../../../styleguide/forms/Form/Form.res.js\";\nimport * as Label from \"../../../styleguide/forms/Label/Label.res.js\";\nimport * as Checkbox from \"../../../styleguide/forms/Checkbox/Checkbox.res.js\";\nimport * as Js_string from \"rescript/lib/es6/js_string.js\";\nimport * as TextField from \"../../../styleguide/forms/TextField/TextField.res.js\";\nimport * as Belt_Option from \"rescript/lib/es6/belt_Option.js\";\nimport * as ErrorMessage from \"../../../styleguide/forms/ErrorMessage/ErrorMessage.res.js\";\nimport * as ReactTelInput from \"../../../bindings/ReactTelInput.res.js\";\nimport * as TelephoneField from \"../../../styleguide/forms/TelephoneField/TelephoneField.res.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\nimport * as ProductReservationScss from \"../ProductReservation.scss\";\n\nvar css = ProductReservationScss;\n\nfunction ProductReservationForm(props) {\n var update = props.update;\n var results = props.results;\n var input = props.input;\n var tmp;\n if (results !== undefined) {\n var message = results.firstName;\n tmp = message.TAG === \"Ok\" ? null : JsxRuntime.jsx(ErrorMessage.make, {\n className: css.error,\n children: message._0\n });\n } else {\n tmp = null;\n }\n var tmp$1;\n if (results !== undefined) {\n var message$1 = results.lastName;\n tmp$1 = message$1.TAG === \"Ok\" ? null : JsxRuntime.jsx(ErrorMessage.make, {\n className: css.error,\n children: message$1._0\n });\n } else {\n tmp$1 = null;\n }\n var tmp$2;\n if (results !== undefined) {\n var message$2 = results.company;\n tmp$2 = message$2.TAG === \"Ok\" ? null : JsxRuntime.jsx(ErrorMessage.make, {\n className: css.error,\n children: message$2._0\n });\n } else {\n tmp$2 = null;\n }\n var tmp$3;\n if (results !== undefined) {\n var message$3 = results.email;\n tmp$3 = message$3.TAG === \"Ok\" ? null : JsxRuntime.jsx(ErrorMessage.make, {\n className: css.error,\n children: message$3._0\n });\n } else {\n tmp$3 = null;\n }\n var tmp$4;\n if (results !== undefined) {\n var message$4 = results.phoneNumber;\n tmp$4 = message$4.TAG === \"Ok\" ? null : JsxRuntime.jsx(ErrorMessage.make, {\n className: css.error,\n children: message$4._0\n });\n } else {\n tmp$4 = null;\n }\n var tmp$5;\n if (results !== undefined) {\n var message$5 = results.agreedTermsAndConditions;\n tmp$5 = message$5.TAG === \"Ok\" ? null : JsxRuntime.jsx(ErrorMessage.make, {\n className: css.error,\n children: message$5._0\n });\n } else {\n tmp$5 = null;\n }\n return JsxRuntime.jsx(\"div\", {\n children: JsxRuntime.jsxs(Form.make, {\n className: css.form,\n onSubmit: props.submit,\n children: [\n JsxRuntime.jsx(H2.make, {\n className: css.formTitle,\n children: \"Contact \" + (props.providerName + \" about this Deal!\")\n }),\n JsxRuntime.jsx(\"div\", {\n children: \"Complete the form below to let the provider know that you are interested in learning more about this product.\",\n className: css.formSubtitle\n }),\n JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsx(Label.make, {\n forId: \"reservation-form--first-name\",\n status: Belt_Option.map(results, (function (x) {\n return x.firstName;\n })),\n children: \"First Name\"\n }),\n JsxRuntime.jsx(TextField.make, {\n id: \"reservation-form--first-name\",\n value: input.firstName,\n status: Belt_Option.map(results, (function (x) {\n if (x.firstName.TAG === \"Ok\") {\n return \"Valid\";\n } else {\n return \"Error\";\n }\n })),\n onChange: (function ($$event) {\n update({\n firstName: $$event.target.value,\n lastName: input.lastName,\n company: input.company,\n email: input.email,\n phoneNumber: input.phoneNumber,\n newsletterSubscription: input.newsletterSubscription,\n agreedTermsAndConditions: input.agreedTermsAndConditions,\n dialCode: input.dialCode\n });\n })\n }),\n tmp\n ],\n className: Cx.cx([\n css.field,\n css.field2_md_lg\n ])\n }),\n JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsx(Label.make, {\n forId: \"reservation-form--last-name\",\n status: Belt_Option.map(results, (function (x) {\n return x.lastName;\n })),\n children: \"Last Name\"\n }),\n JsxRuntime.jsx(TextField.make, {\n id: \"reservation-form--last-name\",\n value: input.lastName,\n status: Belt_Option.map(results, (function (x) {\n if (x.lastName.TAG === \"Ok\") {\n return \"Valid\";\n } else {\n return \"Error\";\n }\n })),\n onChange: (function ($$event) {\n update({\n firstName: input.firstName,\n lastName: $$event.target.value,\n company: input.company,\n email: input.email,\n phoneNumber: input.phoneNumber,\n newsletterSubscription: input.newsletterSubscription,\n agreedTermsAndConditions: input.agreedTermsAndConditions,\n dialCode: input.dialCode\n });\n })\n }),\n tmp$1\n ],\n className: Cx.cx([\n css.field,\n css.field2_md_lg\n ])\n })\n ],\n className: css.fieldGroup_md_lg\n }),\n JsxRuntime.jsx(\"div\", {\n children: JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsx(Label.make, {\n forId: \"reservation-form--company-name\",\n status: Belt_Option.map(results, (function (x) {\n return x.company;\n })),\n children: \"Company name\"\n }),\n JsxRuntime.jsx(TextField.make, {\n id: \"reservation-form--company-name\",\n value: input.company,\n status: Belt_Option.map(results, (function (x) {\n if (x.company.TAG === \"Ok\") {\n return \"Valid\";\n } else {\n return \"Error\";\n }\n })),\n onChange: (function ($$event) {\n update({\n firstName: input.firstName,\n lastName: input.lastName,\n company: $$event.target.value,\n email: input.email,\n phoneNumber: input.phoneNumber,\n newsletterSubscription: input.newsletterSubscription,\n agreedTermsAndConditions: input.agreedTermsAndConditions,\n dialCode: input.dialCode\n });\n })\n }),\n tmp$2\n ],\n className: Cx.cx([\n css.field,\n css.fieldGroup1_md_lg\n ])\n }),\n className: css.fieldGroup_md_lg\n }),\n JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsx(Label.make, {\n forId: \"reservation-form--email\",\n status: Belt_Option.map(results, (function (x) {\n return x.email;\n })),\n children: \"Email\"\n }),\n JsxRuntime.jsx(TextField.make, {\n id: \"reservation-form--email\",\n value: input.email,\n status: Belt_Option.map(results, (function (x) {\n if (x.email.TAG === \"Ok\") {\n return \"Valid\";\n } else {\n return \"Error\";\n }\n })),\n onChange: (function ($$event) {\n update({\n firstName: input.firstName,\n lastName: input.lastName,\n company: input.company,\n email: $$event.target.value,\n phoneNumber: input.phoneNumber,\n newsletterSubscription: input.newsletterSubscription,\n agreedTermsAndConditions: input.agreedTermsAndConditions,\n dialCode: input.dialCode\n });\n })\n }),\n tmp$3\n ],\n className: Cx.cx([\n css.field,\n css.fieldGroup2a_md_lg\n ])\n }),\n JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsx(Label.make, {\n forId: \"reservation-form--phoneNumber\",\n status: Belt_Option.map(results, (function (x) {\n return x.phoneNumber;\n })),\n children: \"Phone number\"\n }),\n JsxRuntime.jsx(TelephoneField.make, {\n id: \"reservation-form--phoneNumber\",\n value: input.phoneNumber,\n defaultCountry: \"us\",\n status: Belt_Option.map(results, (function (x) {\n if (x.phoneNumber.TAG === \"Ok\") {\n return \"Valid\";\n } else {\n return \"Error\";\n }\n })),\n onChange: (function (value, selectedCountry) {\n var country = ReactTelInput.ReactTelInputData.countryFromJs(selectedCountry);\n update({\n firstName: input.firstName,\n lastName: input.lastName,\n company: input.company,\n email: input.email,\n phoneNumber: \"+\" + (country.dialCode + Js_string.replace(\"+\" + country.dialCode, \"\", value).trim()),\n newsletterSubscription: input.newsletterSubscription,\n agreedTermsAndConditions: input.agreedTermsAndConditions,\n dialCode: \"+\" + country.dialCode\n });\n }),\n preferredCountries: [\"us\"]\n }),\n tmp$4\n ],\n className: Cx.cx([\n css.field,\n css.fieldGroup2b_md_lg\n ])\n })\n ],\n className: css.fieldGroup_md_lg\n }),\n JsxRuntime.jsx(\"div\", {\n children: JsxRuntime.jsxs(\"div\", {\n children: [\n JsxRuntime.jsxs(Checkbox.WithLabel.make, {\n id: \"reservation-form--agreedTermsAndConditions\",\n size: \"LG\",\n checked: input.agreedTermsAndConditions,\n onChange: (function ($$event) {\n update({\n firstName: input.firstName,\n lastName: input.lastName,\n company: input.company,\n email: input.email,\n phoneNumber: input.phoneNumber,\n newsletterSubscription: input.newsletterSubscription,\n agreedTermsAndConditions: $$event.target.checked,\n dialCode: input.dialCode\n });\n }),\n children: [\n \"I agree to the \",\n JsxRuntime.jsx(A.make, {\n href: \"/terms-of-use\",\n targetBlank: true,\n children: \"Terms & Conditions\"\n })\n ]\n }),\n tmp$5\n ],\n className: Cx.cx([\n css.field,\n css.fieldGroup1_md_lg\n ])\n }),\n className: Cx.cx([\n css.fieldGroup_md_lg,\n css.fistCheckbox\n ])\n }),\n JsxRuntime.jsx(\"div\", {\n children: JsxRuntime.jsx(\"div\", {\n children: JsxRuntime.jsx(Checkbox.WithLabel.make, {\n id: \"reservation-form--newsletterSubscription\",\n size: \"LG\",\n checked: input.newsletterSubscription,\n onChange: (function ($$event) {\n update({\n firstName: input.firstName,\n lastName: input.lastName,\n company: input.company,\n email: input.email,\n phoneNumber: input.phoneNumber,\n newsletterSubscription: $$event.target.checked,\n agreedTermsAndConditions: input.agreedTermsAndConditions,\n dialCode: input.dialCode\n });\n }),\n children: \"Receive latest industry news\"\n }),\n className: Cx.cx([\n css.field,\n css.fieldGroup1_md_lg\n ])\n }),\n className: css.fieldGroup_md_lg\n }),\n props.children\n ]\n }),\n className: css.formContainer\n });\n}\n\nvar ReactTelInputData;\n\nvar make = ProductReservationForm;\n\nexport {\n css ,\n ReactTelInputData ,\n make ,\n}\n/* css Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as Api from \"../../../api/Api.res.js\";\nimport * as Url from \"../../../utils/Url.res.js\";\nimport * as User from \"../../../models/User.res.js\";\nimport * as Hooks from \"../../../libs/Hooks.res.js\";\nimport * as React from \"react\";\nimport * as Button from \"../../../styleguide/components/Button/Button.res.js\";\nimport * as $$Promise from \"../../../bindings/Promise.res.js\";\nimport * as Container from \"../../../styleguide/components/Container/Container.res.js\";\nimport * as Belt_Option from \"rescript/lib/es6/belt_Option.js\";\nimport * as Caml_option from \"rescript/lib/es6/caml_option.js\";\nimport * as Reservation from \"../../../models/Reservation.res.js\";\nimport * as SentryLogger from \"../../../loggers/SentryLogger.res.js\";\nimport * as ColocationProduct from \"../../../models/ColocationProduct.res.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\nimport * as Routes_Marketplace from \"../../../routes/common/Routes_Marketplace.res.js\";\nimport * as ProductReservationData from \"./ProductReservationData.res.js\";\nimport * as ProductReservationForm from \"./ProductReservationForm.res.js\";\nimport * as ProductDetailsForSidebar from \"../../product-detail/product-details-for-sidebar/ProductDetailsForSidebar.res.js\";\nimport * as ProductReservationScss from \"../ProductReservation.scss\";\n\nvar css = ProductReservationScss;\n\nfunction ProductCreateReservation$ProductCreateReservation(props) {\n var reservation = props.reservation;\n var product = props.product;\n var initialState = React.useMemo((function () {\n return {\n status: \"Editing\",\n input: reservation !== undefined ? ProductReservationData.Input.fromReservationDraft(reservation) : ProductReservationData.Input.empty(),\n results: undefined,\n submissionError: false\n };\n }), []);\n var match = Hooks.useReducer(initialState, (function (state, action) {\n if (typeof action !== \"object\") {\n switch (action) {\n case \"Validate\" :\n return {\n TAG: \"Update\",\n _0: {\n status: state.status,\n input: state.input,\n results: ProductReservationData.Validate.all(state.input),\n submissionError: state.submissionError\n }\n };\n case \"Submit\" :\n var match = state.status;\n if (match === \"Editing\") {\n return {\n TAG: \"UpdateWithSideEffects\",\n _0: {\n status: state.status,\n input: state.input,\n results: ProductReservationData.Validate.all(state.input),\n submissionError: state.submissionError\n },\n _1: (function (param) {\n if (ProductReservationData.Validate.valid(Belt_Option.getExn(param.state.results))) {\n return param.dispatch(\"CreateReservation\");\n }\n \n })\n };\n } else {\n return \"NoUpdate\";\n }\n case \"CreateReservation\" :\n return {\n TAG: \"UpdateWithSideEffects\",\n _0: {\n status: \"Submitting\",\n input: state.input,\n results: state.results,\n submissionError: state.submissionError\n },\n _1: (function (param) {\n var dispatch = param.dispatch;\n $$Promise.wait(Api.createProductReservation(product.id, param.state.input), (function (x) {\n if (x.TAG === \"Ok\") {\n return dispatch({\n TAG: \"GoToReserveConfirmation\",\n _0: x._0.id\n });\n }\n SentryLogger.error1({\n rootModule: \"ProductCreateReservation\",\n subModulePath: {\n hd: \"ProductCreateReservation\",\n tl: /* [] */0\n },\n value: \"make\",\n fullPath: \"ProductCreateReservation.ProductCreateReservation.make\"\n }, \"ProductCreateReservation::Error\", [\n \"Error\",\n x._0\n ]);\n dispatch(\"FailSubmission\");\n }));\n })\n };\n case \"FailSubmission\" :\n return {\n TAG: \"Update\",\n _0: {\n status: \"Editing\",\n input: state.input,\n results: state.results,\n submissionError: true\n }\n };\n \n }\n } else {\n if (action.TAG === \"Update\") {\n var input = action._0;\n var match$1 = state.status;\n if (match$1 !== \"Editing\") {\n return \"NoUpdate\";\n }\n var match$2 = state.results;\n if (match$2 !== undefined) {\n return {\n TAG: \"UpdateWithSideEffects\",\n _0: {\n status: state.status,\n input: input,\n results: state.results,\n submissionError: state.submissionError\n },\n _1: (function (param) {\n param.dispatch(\"Validate\");\n })\n };\n } else {\n return {\n TAG: \"Update\",\n _0: {\n status: state.status,\n input: input,\n results: state.results,\n submissionError: state.submissionError\n }\n };\n }\n }\n var id = action._0;\n return {\n TAG: \"SideEffects\",\n _0: (function (param) {\n Url.visit(Routes_Marketplace.reserveConfirmation(id, product.id, product.seoCategory));\n })\n };\n }\n }));\n var dispatch = match[1];\n var state = match[0];\n var match$1 = state.status;\n return JsxRuntime.jsxs(Container.make, {\n className: css.layout,\n children: [\n JsxRuntime.jsxs(ProductReservationForm.make, {\n input: state.input,\n results: state.results,\n update: (function (input) {\n dispatch({\n TAG: \"Update\",\n _0: input\n });\n }),\n submit: (function (param) {\n dispatch(\"Submit\");\n }),\n providerName: product.providerName,\n children: [\n JsxRuntime.jsx(\"div\", {\n children: JsxRuntime.jsx(Button.make, {\n size: \"LG\",\n color: \"Primary\",\n expanded: true,\n busy: match$1 !== \"Editing\",\n submit: true,\n children: \"Confirm\"\n }),\n className: css.buttonContainer\n }),\n state.submissionError ? \"Something went wrong\" : null\n ]\n }),\n JsxRuntime.jsx(ProductDetailsForSidebar.make, {\n product: product,\n className: css.productDetails,\n toggleDetails: true,\n userLoginStatus: props.userLoginStatus,\n setUserData: (function (prim) {\n \n })\n })\n ]\n });\n}\n\nvar ProductCreateReservation = {\n css: css,\n Input: undefined,\n Validate: undefined,\n ValidationResult: undefined,\n make: ProductCreateReservation$ProductCreateReservation\n};\n\nfunction ProductCreateReservation$default(props) {\n var props$1 = props.props;\n return JsxRuntime.jsx(ProductCreateReservation$ProductCreateReservation, {\n product: ColocationProduct.fromJs(props$1.product),\n reservation: Belt_Option.map(Caml_option.nullable_to_opt(props$1.reservation), Reservation.Draft.fromJs),\n userLoginStatus: User.LoginStatus.fromBool(props.context.isUserSignedIn)\n });\n}\n\nvar $$default = ProductCreateReservation$default;\n\nexport {\n ProductCreateReservation ,\n $$default as default,\n}\n/* css Not a pure module */\n","import * as React from 'react';\n\nimport ProductCreateReservation from './ProductCreateReservation.res.js';\n\nexport default ({ context, ...props }) => ;\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as React from \"react\";\nimport * as Screens from \"../styleguide/styles/Screens.res.js\";\nimport * as Belt_Array from \"rescript/lib/es6/belt_Array.js\";\nimport * as Caml_option from \"rescript/lib/es6/caml_option.js\";\nimport * as $$MediaQueryList from \"./MediaQueryList.res.js\";\n\nfunction usePrevious(v) {\n var x = React.useRef(undefined);\n React.useEffect(function () {\n x.current = Caml_option.some(v);\n });\n return x.current;\n}\n\nfunction useReducer(initialState, reducer) {\n var match = React.useReducer((function (fullState, action) {\n var sideEffects = fullState.sideEffects;\n var state = reducer(fullState.state, action);\n if (typeof state !== \"object\") {\n return fullState;\n }\n switch (state.TAG) {\n case \"Update\" :\n return {\n state: state._0,\n sideEffects: fullState.sideEffects\n };\n case \"UpdateWithSideEffects\" :\n return {\n state: state._0,\n sideEffects: {\n contents: Belt_Array.concat(sideEffects.contents, [state._1])\n }\n };\n case \"SideEffects\" :\n return {\n state: fullState.state,\n sideEffects: {\n contents: Belt_Array.concat(sideEffects.contents, [state._0])\n }\n };\n \n }\n }), {\n state: initialState,\n sideEffects: {\n contents: []\n }\n });\n var dispatch = match[1];\n var match$1 = match[0];\n var sideEffects = match$1.sideEffects;\n var state = match$1.state;\n React.useEffect((function () {\n if (sideEffects.contents.length !== 0) {\n Belt_Array.forEach(sideEffects.contents, (function (fn) {\n fn({\n state: state,\n dispatch: dispatch\n });\n }));\n sideEffects.contents = [];\n }\n \n }), [sideEffects.contents]);\n return [\n state,\n dispatch\n ];\n}\n\nfunction useScreenSize() {\n var match = React.useState(function () {\n return \"LG\";\n });\n var setScreenSize = match[1];\n var mediaQueries = [\n {\n query: Screens.smMq,\n size: \"SM\"\n },\n {\n query: Screens.mdMq,\n size: \"MD\"\n },\n {\n query: Screens.lgMq,\n size: \"LG\"\n }\n ];\n React.useEffect((function () {\n var listeners = Belt_Array.map(mediaQueries, (function (param) {\n return [\n window.matchMedia(param.query),\n param.size\n ];\n }));\n var idx = listeners.findIndex(function (param) {\n return param[0].matches;\n });\n var match = Belt_Array.get(listeners, idx);\n if (match !== undefined) {\n var size = match[1];\n setScreenSize(function (param) {\n return size;\n });\n }\n var unsubscribeListeners = Belt_Array.map(listeners, (function (param) {\n var size = param[1];\n return $$MediaQueryList.subscribe(param[0], (function ($$event) {\n if ($$event.matches) {\n return setScreenSize(function (param) {\n return size;\n });\n }\n \n }));\n }));\n return (function () {\n Belt_Array.forEach(unsubscribeListeners, (function (listener) {\n if (listener !== undefined) {\n return listener();\n }\n \n }));\n });\n }), [mediaQueries]);\n return match[0];\n}\n\nexport {\n usePrevious ,\n useReducer ,\n useScreenSize ,\n}\n/* react Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\n\nfunction subscribe(mq, handler) {\n mq.addListener(handler);\n return (function () {\n mq.removeListener(handler);\n });\n}\n\nexport {\n subscribe ,\n}\n/* No side effect */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as ID from \"../../libs/ID.res.js\";\nimport * as MarketplaceFilterData from \"../../bundles/product-index/filters/MarketplaceFilterData.res.js\";\n\nfunction reserve(id, category) {\n return \"/marketplace/\" + (category + (\"/\" + (ID.toString(id) + \"/reserve\")));\n}\n\nfunction reserveConfirmation(id, productId, category) {\n return \"/marketplace/\" + (category + (\"/\" + (ID.toString(productId) + (\"/reserve_complete/\" + ID.toString(id)))));\n}\n\nfunction search(filters) {\n var queryString = MarketplaceFilterData.Input.toQueryString(filters);\n var tmp = queryString === \"\" ? \"\" : \"?\" + queryString;\n return \"/marketplace/\" + (filters.category + tmp);\n}\n\nvar Cart = {\n thanks: \"/marketplace/cart_reservation_complete\"\n};\n\nfunction index(id) {\n return \"/marketplace/colocation-pricing?providerIds\" + (encodeURIComponent(\"[]\") + (\"=\" + ID.toString(id)));\n}\n\nvar Colocation = {\n index: index\n};\n\nvar Provider = {\n Colocation: Colocation\n};\n\nvar colocation = \"/marketplace/colocation-pricing\";\n\nvar index$1 = \"/marketplace\";\n\nexport {\n reserve ,\n reserveConfirmation ,\n search ,\n colocation ,\n index$1 as index,\n Cart ,\n Provider ,\n}\n/* ID Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as Cx from \"rescript-classnames/src/Cx.res.js\";\nimport * as LinkScss from \"./Link.scss\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\n\nvar css = LinkScss;\n\nfunction A(props) {\n var __className = props.className;\n var targetBlank = props.targetBlank;\n var className = __className !== undefined ? __className : \"\";\n return JsxRuntime.jsx(\"a\", {\n children: props.children,\n ref: props.elRef,\n className: Cx.cx([className.length !== 0 ? className : css.link]),\n id: props.id,\n download: props.download,\n href: props.href,\n rel: targetBlank !== undefined && targetBlank ? \"noopener noreferrer\" : undefined,\n target: targetBlank !== undefined && targetBlank ? \"_blank\" : undefined,\n onClick: props.onClick\n });\n}\n\nvar make = A;\n\nexport {\n css ,\n make ,\n}\n/* css Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\n\nvar maxWidth = String(767);\n\nvar smMq = \"only screen and (max-width: \" + maxWidth + \"px)\";\n\nvar minWidth = String(1024);\n\nvar maxWidth$1 = String(1279);\n\nvar mdMq = \"only screen and (min-width: \" + minWidth + \"px) and (max-width: \" + maxWidth$1 + \"px)\";\n\nvar minWidth$1 = String(1024);\n\nvar lgMq = \"only screen and (min-width: \" + minWidth$1 + \"px)\";\n\nvar xsSlider = 320;\n\nvar xs = 375;\n\nvar xsSlider2 = 414;\n\nvar smallSlider = 767;\n\nvar small = 768;\n\nvar medium = 1024;\n\nvar large = 1280;\n\nvar xl = 1440;\n\nexport {\n xsSlider ,\n xs ,\n xsSlider2 ,\n smallSlider ,\n small ,\n medium ,\n large ,\n xl ,\n smMq ,\n mdMq ,\n lgMq ,\n}\n/* maxWidth Not a pure module */\n"],"names":["css","ProductReservationScss","make","props","tmp","tmp$1","tmp$2","tmp$3","tmp$4","tmp$5","update","results","input","undefined","message","firstName","TAG","JsxRuntime","ErrorMessage","className","error","children","_0","message$1","lastName","message$2","company","message$3","email","message$4","phoneNumber","message$5","agreedTermsAndConditions","Form","form","onSubmit","submit","H2","formTitle","providerName","formSubtitle","Label","forId","status","Belt_Option","x","TextField","id","value","onChange","$$event","target","newsletterSubscription","dialCode","Cx","field","field2_md_lg","fieldGroup_md_lg","fieldGroup1_md_lg","fieldGroup2a_md_lg","TelephoneField","defaultCountry","selectedCountry","country","ReactTelInput","countryFromJs","Js_string","trim","preferredCountries","fieldGroup2b_md_lg","Checkbox","size","checked","A","href","targetBlank","fistCheckbox","formContainer","ProductCreateReservation$ProductCreateReservation","reservation","product","initialState","React","ProductReservationData","fromReservationDraft","empty","submissionError","match","Hooks","state","action","_1","param","dispatch","Url","Routes_Marketplace","seoCategory","all","valid","$$Promise","Api","SentryLogger","rootModule","subModulePath","hd","tl","fullPath","match$1","Container","layout","ProductReservationForm","Button","color","expanded","busy","buttonContainer","ProductDetailsForSidebar","productDetails","toggleDetails","userLoginStatus","setUserData","prim","$$default","props$1","ColocationProduct","Caml_option","Reservation","fromJs","User","fromBool","context","isUserSignedIn","_ref","_objectWithoutProperties","_excluded","ProductCreateReservation","usePrevious","v","current","useReducer","reducer","fullState","sideEffects","contents","Belt_Array","length","fn","useScreenSize","setScreenSize","mediaQueries","query","Screens","listeners","window","matchMedia","idx","findIndex","matches","unsubscribeListeners","mq","handler","addListener","removeListener","listener","reserveConfirmation","productId","category","ID","Cart","thanks","Provider","Colocation","index","encodeURIComponent","colocation","index$1","LinkScss","__className","ref","elRef","link","download","rel","onClick","smMq","String","mdMq","lgMq","smallSlider","small","medium","large"],"sourceRoot":""}