{"version":3,"file":"js/rescript-bundles-user-dashboard-projects-create-colocation-rfp-project-general-information-e655a15ae45828545a2d.chunk.js","mappings":"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","sources":["webpack://datacenters/./client/app/rescript/bundles/user-dashboard/projects/create-colocation-rfp-project-general-information/CreateColocationRfpProjectGeneralInformation.res.js","webpack://datacenters/./client/app/rescript/bundles/user-dashboard/projects/create-colocation-rfp-project-general-information/CreateColocationRfpProjectGeneralInformation__JsBridge.res.js","webpack://datacenters/./client/app/rescript/bundles/user-dashboard/projects/create-colocation-rfp-project-general-information/index.js"],"sourcesContent":["// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as Api from \"../../../../api/Api.res.js\";\nimport * as $$Date from \"../../../../libs/Date.res.js\";\nimport * as React from \"react\";\nimport * as Js_array from \"rescript/lib/es6/js_array.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 Routes_Project from \"../../../../routes/common/Routes_Project.res.js\";\nimport * as CityStateCountry from \"../../../../models/CityStateCountry.res.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\nimport * as ProjectWizardGeneralInformation from \"../_components/ProjectWizardGeneralInformation/ProjectWizardGeneralInformation.res.js\";\nimport * as CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration from \"../create-colocation-rfp-project-configuration/CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration.res.js\";\n\nfunction title(colocationConfigurations) {\n var __x = Belt_Array.map(colocationConfigurations, (function (config) {\n return CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration.Input.title(config);\n }));\n return Js_array.joinWith(\", \", __x);\n}\n\nfunction description(colocationConfigurations, selectedCities) {\n return \"The proposed colocation project has a projected service start date of \" + ((function (__x) {\n return Js_array.joinWith(\", \", __x);\n })(Belt_Array.map(colocationConfigurations, (function (config) {\n var date = config.startDate;\n if (date !== undefined) {\n return $$Date.Naive.format(Caml_option.valFromOption(date), \"dd MMM yyyy\");\n } else {\n return \"\";\n }\n }))) + (\" with a contract term of \" + ((function (__x) {\n return Js_array.joinWith(\", \", __x);\n })(Belt_Array.map(colocationConfigurations, (function (config) {\n var length = config.contractLength;\n if (length !== undefined) {\n return String(length / 12 | 0);\n } else {\n return \"\";\n }\n }))) + (\" years. We need service in \" + (function (__x) {\n return Js_array.joinWith(\"; \", __x);\n })(Belt_Array.map(selectedCities, CityStateCountry.toLabel))))));\n}\n\nvar ProjectInfo = {\n title: title,\n description: description\n};\n\nfunction createProject(extra, extra$1, extra$2, extra$3, extra$4, extra$5, extra$6, extra$7, extra$8, extra$9) {\n return Api.createNewProject({\n TAG: \"Colocation\",\n _0: \"Rfp\"\n }, extra, extra$1, extra$2, extra$3, extra$4, extra$5, extra$6, extra$7, extra$8, extra$9);\n}\n\nfunction saveDraftProjectAndContinueLater(extra) {\n return Api.saveColocationDraftProjectAndContinueLater(\"Colocation\", {\n TAG: \"Colocation\",\n _0: \"Rfp\"\n }, extra);\n}\n\nvar Api$1 = {\n saveDraft: Api.saveProjectGeneralInfoDraft,\n createProject: createProject,\n updateProject: Api.updateProject,\n saveDraftProjectAndContinueLater: saveDraftProjectAndContinueLater\n};\n\nfunction CreateColocationRfpProjectGeneralInformation(props) {\n var description$1 = props.description;\n var selectedCities = props.selectedCities;\n var colocationConfigurations = props.colocationConfigurations;\n var title$1 = props.title;\n var projectId = props.projectId;\n var title$2 = React.useMemo((function () {\n if (title$1 !== undefined && title$1 !== \"\") {\n return title$1;\n } else {\n return title(colocationConfigurations);\n }\n }), [\n description$1,\n colocationConfigurations\n ]);\n var description$2 = React.useMemo((function () {\n if (description$1 !== undefined && description$1 !== \"\") {\n return description$1;\n } else {\n return description(colocationConfigurations, selectedCities);\n }\n }), [\n description$1,\n colocationConfigurations,\n selectedCities\n ]);\n var navigationBackButtonLocation = React.useMemo((function () {\n if (projectId !== undefined) {\n return Routes_Project.Colocation.$$Location.update(Caml_option.valFromOption(projectId));\n } else {\n return Routes_Project.Colocation.$$Location.select;\n }\n }), [projectId]);\n return JsxRuntime.jsx(ProjectWizardGeneralInformation.make, {\n api: Api$1,\n userLoginStatus: props.userLoginStatus,\n userRole: props.userRole,\n projectId: projectId,\n title: title$2,\n description: description$2,\n alreadyUploadedDocuments: props.alreadyUploadedDocuments,\n businessName: props.businessName,\n businessContactName: props.businessContactName,\n businessEmail: props.businessEmail,\n businessPhone: props.businessPhone,\n headquartersAddress: props.headquartersAddress,\n contacts: props.contacts,\n isAgent: props.isAgent,\n navigationTotalSteps: 3,\n navigationBackButtonLocation: navigationBackButtonLocation,\n mobile: props.mobile,\n status: props.status\n });\n}\n\nvar make = CreateColocationRfpProjectGeneralInformation;\n\nexport {\n ProjectInfo ,\n Api$1 as Api,\n make ,\n}\n/* Api Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as React from \"react\";\nimport * as Project from \"../../../../models/Project.res.js\";\nimport * as Belt_Array from \"rescript/lib/es6/belt_Array.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 UserContact from \"../../../../models/UserContact.res.js\";\nimport * as RailsContext from \"../../../../models/RailsContext.res.js\";\nimport * as CityStateCountry from \"../../../../models/CityStateCountry.res.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\nimport * as ColocationConfiguration from \"../../../../models/ColocationConfiguration.res.js\";\nimport * as CreateColocationRfpProjectGeneralInformation from \"./CreateColocationRfpProjectGeneralInformation.res.js\";\nimport * as CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration from \"../create-colocation-rfp-project-configuration/CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration.res.js\";\n\nfunction CreateColocationRfpProjectGeneralInformation__JsBridge$default(props) {\n var railsContext = props.railsContext;\n var jsProps = props.jsProps;\n var railsContext$1 = React.useMemo((function () {\n return RailsContext.fromJson(railsContext);\n }), [railsContext]);\n var projectId = React.useMemo((function () {\n return Caml_option.nullable_to_opt(jsProps.projectId);\n }), [jsProps.projectId]);\n var title = React.useMemo((function () {\n return Caml_option.nullable_to_opt(jsProps.title);\n }), [jsProps.title]);\n var description = React.useMemo((function () {\n return Caml_option.nullable_to_opt(jsProps.description);\n }), [jsProps.description]);\n var selectedCities = React.useMemo((function () {\n return Belt_Array.map(jsProps.selectedCities, CityStateCountry.fromJs);\n }), [jsProps.selectedCities]);\n var colocationConfigurations = React.useMemo((function () {\n return Belt_Array.map(Belt_Array.map(jsProps.colocationConfigurations, ColocationConfiguration.fromJs), CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration.Input.fromColocationConfiguration);\n }), [jsProps.colocationConfigurations]);\n var alreadyUploadedDocuments = React.useMemo((function () {\n return Belt_Array.map(jsProps.documents, Project.$$Document.fromJs);\n }), [jsProps.documents]);\n var businessName = React.useMemo((function () {\n return Belt_Option.getWithDefault(Caml_option.nullable_to_opt(jsProps.businessName), \"\");\n }), [jsProps.businessName]);\n var businessContactName = React.useMemo((function () {\n return Belt_Option.getWithDefault(Caml_option.nullable_to_opt(jsProps.businessContactName), \"\");\n }), [jsProps.businessContactName]);\n var businessEmail = React.useMemo((function () {\n return Belt_Option.getWithDefault(Caml_option.nullable_to_opt(jsProps.businessEmail), \"\");\n }), [jsProps.businessEmail]);\n var businessPhone = React.useMemo((function () {\n return Belt_Option.getWithDefault(Caml_option.nullable_to_opt(jsProps.businessPhone), \"\");\n }), [jsProps.businessPhone]);\n var headquartersAddress = React.useMemo((function () {\n return Belt_Option.getWithDefault(Caml_option.nullable_to_opt(jsProps.headquartersAddress), \"\");\n }), [jsProps.headquartersAddress]);\n var contacts = React.useMemo((function () {\n return Belt_Array.map(jsProps.contacts, UserContact.fromJs);\n }), [jsProps.contacts]);\n var status = React.useMemo((function () {\n return Project.Status.fromString(jsProps.status);\n }), [jsProps.status]);\n return JsxRuntime.jsx(CreateColocationRfpProjectGeneralInformation.make, {\n userLoginStatus: railsContext$1.userLoginStatus,\n userRole: railsContext$1.userRole,\n projectId: projectId,\n title: title,\n colocationConfigurations: colocationConfigurations,\n selectedCities: selectedCities,\n description: description,\n alreadyUploadedDocuments: alreadyUploadedDocuments,\n businessName: businessName,\n businessContactName: businessContactName,\n businessEmail: businessEmail,\n businessPhone: businessPhone,\n headquartersAddress: headquartersAddress,\n contacts: contacts,\n isAgent: jsProps.isAgent,\n mobile: railsContext$1.mobile,\n status: status\n });\n}\n\nvar $$default = CreateColocationRfpProjectGeneralInformation__JsBridge$default;\n\nexport {\n $$default as default,\n}\n/* react Not a pure module */\n","import * as React from 'react';\nimport ReduxProvider from 'ReduxProvider';\nimport { connect } from 'react-redux';\nimport { setUserData } from 'Client/common/actions/userActions';\nimport CreateColocationRfpProjectGeneralInformation from './CreateColocationRfpProjectGeneralInformation__JsBridge.res.js';\n\nconst mapDispatchToProps = dispatch => ({\n redux: {\n setUserData: userData => {\n dispatch(setUserData(userData));\n },\n },\n});\n\nconst CreateColocationRfpProjectGeneralInformationContainer = connect(\n null,\n mapDispatchToProps,\n)(CreateColocationRfpProjectGeneralInformation);\n\nexport default ({ context, ...props }) => (\n \n \n \n);\n"],"names":["title","colocationConfigurations","__x","Belt_Array","config","CreateColocationRfpProjectConfiguration_Data_ColocationConfiguration","Js_array","description","selectedCities","date","startDate","undefined","$$Date","format","Caml_option","length","contractLength","String","CityStateCountry","Api$1","saveDraft","Api","createProject","extra","extra$1","extra$2","extra$3","extra$4","extra$5","extra$6","extra$7","extra$8","extra$9","TAG","_0","updateProject","saveDraftProjectAndContinueLater","make","props","description$1","title$1","projectId","title$2","React","description$2","navigationBackButtonLocation","Routes_Project","$$Location","update","select","JsxRuntime","ProjectWizardGeneralInformation","api","userLoginStatus","userRole","alreadyUploadedDocuments","businessName","businessContactName","businessEmail","businessPhone","headquartersAddress","contacts","isAgent","navigationTotalSteps","mobile","status","$$default","railsContext","jsProps","railsContext$1","RailsContext","ColocationConfiguration","fromColocationConfiguration","documents","Project","fromJs","Belt_Option","UserContact","fromString","CreateColocationRfpProjectGeneralInformation","CreateColocationRfpProjectGeneralInformationContainer","connect","dispatch","redux","setUserData","userData","_ref","context","_objectWithoutProperties","_excluded","ReduxProvider"],"sourceRoot":""}