{"version":3,"file":"js/rescript-bundles-resources-resource-new-ab383e9212909afae947.chunk.js","mappings":"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","sources":["webpack://datacenters/./client/app/rescript/bundles/resources/resource-new/ResourceNewForm.res.js","webpack://datacenters/./client/app/rescript/bundles/resources/resource-new/ResourceNew.res.js","webpack://datacenters/./client/app/rescript/bundles/resources/resource-new/ResourceNew__JsBridge.res.js","webpack://datacenters/./client/app/rescript/bundles/resources/resource-new/index.js","webpack://datacenters/./client/app/rescript/libs/Char.res.js","webpack://datacenters/./client/app/rescript/styleguide/components/Breadcrumb/Breadcrumb.scss?df00","webpack://datacenters/./client/app/rescript/styleguide/components/Breadcrumb/Breadcrumb.res.js","webpack://datacenters/./client/app/rescript/styleguide/components/Link/A.res.js","webpack://datacenters/./client/app/rescript/styleguide/components/Link/Link.scss?ea56"],"sourcesContent":["// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as ID from \"../../../libs/ID.res.js\";\nimport * as Api from \"../../../api/Api.res.js\";\nimport * as Col from \"../../../styleguide/components/Grid/Col/Col.res.js\";\nimport * as Row from \"../../../styleguide/components/Grid/Row/Row.res.js\";\nimport * as Url from \"../../../utils/Url.res.js\";\nimport * as Grid from \"../../../styleguide/components/Grid/Grid.res.js\";\nimport * as Label from \"../../../styleguide/forms/Label/Label.res.js\";\nimport * as Quill from \"../../../bindings/Quill.res.js\";\nimport * as React from \"react\";\nimport * as Button from \"../../../styleguide/components/Button/Button.res.js\";\nimport * as Editor from \"../../../styleguide/forms/Editor/Editor.res.js\";\nimport * as Select from \"../../../styleguide/forms/Select/Select.res.js\";\nimport * as $$Promise from \"../../../bindings/Promise.res.js\";\nimport * as Textarea from \"../../../styleguide/forms/Textarea/Textarea.res.js\";\nimport * as Uploader from \"../../../styleguide/forms/Uploader/Uploader.res.js\";\nimport * as Formality from \"re-formality/src/Formality.res.js\";\nimport * as TextField from \"../../../styleguide/forms/TextField/TextField.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 ErrorMessage from \"../../../styleguide/forms/ErrorMessage/ErrorMessage.res.js\";\nimport * as SentryLogger from \"../../../loggers/SentryLogger.res.js\";\nimport * as Routes_Resource from \"../../../routes/common/Routes_Resource.res.js\";\nimport * as ResourceDocument from \"./ResourceDocument.res.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\nimport * as ResourceEditFormCss from \"../resource-edit/ResourceEditFormCss.res.js\";\nimport * as IconAdditionalUpload from \"../../../styleguide/icons/IconAdditionalUpload.res.js\";\nimport * as Formality__ReactUpdate from \"re-formality/src/Formality__ReactUpdate.res.js\";\n\nvar validators_resourceCategoryId = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var match = input.resourceCategoryId;\n      if (match === \"\") {\n        return {\n                TAG: \"Error\",\n                _0: \"Resource category is required\"\n              };\n      } else {\n        return {\n                TAG: \"Ok\",\n                _0: input.resourceCategoryId\n              };\n      }\n    })\n};\n\nvar validators_active = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var match = input.active;\n      if (match === \"\") {\n        return {\n                TAG: \"Error\",\n                _0: \"Active is required\"\n              };\n      } else {\n        return {\n                TAG: \"Ok\",\n                _0: input.active\n              };\n      }\n    })\n};\n\nvar validators_popular = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var match = input.popular;\n      if (match === \"\") {\n        return {\n                TAG: \"Error\",\n                _0: \"Popular is required\"\n              };\n      } else {\n        return {\n                TAG: \"Ok\",\n                _0: input.popular\n              };\n      }\n    })\n};\n\nvar validators_metaDescription = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var length = input.metaDescription.length;\n      if (length !== 0) {\n        if (length < 50) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Meta description must be more than 50 characters.\"\n                };\n        } else if (length > 500) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Meta description must no more than 500 characters.\"\n                };\n        } else {\n          return {\n                  TAG: \"Ok\",\n                  _0: input.metaDescription\n                };\n        }\n      } else {\n        return {\n                TAG: \"Error\",\n                _0: \"Meta description is required\"\n              };\n      }\n    })\n};\n\nvar validators_metaTitle = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var length = input.metaTitle.length;\n      if (length !== 0) {\n        if (length < 40) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Meta title must be more than 40 characters.\"\n                };\n        } else if (length > 200) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Meta title must no more than 200 characters.\"\n                };\n        } else {\n          return {\n                  TAG: \"Ok\",\n                  _0: input.metaTitle\n                };\n        }\n      } else {\n        return {\n                TAG: \"Error\",\n                _0: \"Meta title is required\"\n              };\n      }\n    })\n};\n\nvar validators_resourceSummary = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var length = input.resourceSummary.length;\n      if (length !== 0) {\n        if (length < 50) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Summary must be more than 50 characters.\"\n                };\n        } else if (length > 200) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Summary must be no more than 200 characters.\"\n                };\n        } else {\n          return {\n                  TAG: \"Ok\",\n                  _0: input.resourceSummary\n                };\n        }\n      } else {\n        return {\n                TAG: \"Error\",\n                _0: \"Resource summary is required\"\n              };\n      }\n    })\n};\n\nvar validators_title = {\n  strategy: \"OnFirstSuccessOrFirstBlur\",\n  validate: (function (input) {\n      var length = input.title.length;\n      if (length !== 0) {\n        if (length < 20) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Title must be more than 20 characters.\"\n                };\n        } else if (length > 100) {\n          return {\n                  TAG: \"Error\",\n                  _0: \"Title must be no more than 100 characters.\"\n                };\n        } else {\n          return {\n                  TAG: \"Ok\",\n                  _0: input.title\n                };\n        }\n      } else {\n        return {\n                TAG: \"Error\",\n                _0: \"Title is required.\"\n              };\n      }\n    })\n};\n\nvar validators = {\n  resourceCategoryId: validators_resourceCategoryId,\n  active: validators_active,\n  popular: validators_popular,\n  metaDescription: validators_metaDescription,\n  metaTitle: validators_metaTitle,\n  resourceSummary: validators_resourceSummary,\n  title: validators_title\n};\n\nfunction initialFieldsStatuses(_input) {\n  return {\n          resourceCategoryId: \"Pristine\",\n          active: \"Pristine\",\n          popular: \"Pristine\",\n          metaDescription: \"Pristine\",\n          metaTitle: \"Pristine\",\n          resourceSummary: \"Pristine\",\n          title: \"Pristine\"\n        };\n}\n\nfunction initialState(input) {\n  return {\n          input: input,\n          fieldsStatuses: initialFieldsStatuses(input),\n          collectionsStatuses: undefined,\n          formStatus: \"Editing\",\n          submissionStatus: \"NeverSubmitted\"\n        };\n}\n\nfunction validateForm(input, validators, fieldsStatuses) {\n  var match = fieldsStatuses.resourceCategoryId;\n  var tmp;\n  tmp = typeof match !== \"object\" ? validators.resourceCategoryId.validate(input) : match._0;\n  var match$1 = fieldsStatuses.active;\n  var tmp$1;\n  tmp$1 = typeof match$1 !== \"object\" ? validators.active.validate(input) : match$1._0;\n  var match$2 = fieldsStatuses.popular;\n  var tmp$2;\n  tmp$2 = typeof match$2 !== \"object\" ? validators.popular.validate(input) : match$2._0;\n  var match$3 = fieldsStatuses.metaDescription;\n  var tmp$3;\n  tmp$3 = typeof match$3 !== \"object\" ? validators.metaDescription.validate(input) : match$3._0;\n  var match$4 = fieldsStatuses.metaTitle;\n  var tmp$4;\n  tmp$4 = typeof match$4 !== \"object\" ? validators.metaTitle.validate(input) : match$4._0;\n  var match$5 = fieldsStatuses.resourceSummary;\n  var tmp$5;\n  tmp$5 = typeof match$5 !== \"object\" ? validators.resourceSummary.validate(input) : match$5._0;\n  var match$6 = fieldsStatuses.title;\n  var tmp$6;\n  tmp$6 = typeof match$6 !== \"object\" ? validators.title.validate(input) : match$6._0;\n  var resourceCategoryIdResult = tmp;\n  var resourceCategoryIdResult$1;\n  if (resourceCategoryIdResult.TAG === \"Ok\") {\n    var activeResult = tmp$1;\n    if (activeResult.TAG === \"Ok\") {\n      var popularResult = tmp$2;\n      if (popularResult.TAG === \"Ok\") {\n        var metaDescriptionResult = tmp$3;\n        if (metaDescriptionResult.TAG === \"Ok\") {\n          var metaTitleResult = tmp$4;\n          if (metaTitleResult.TAG === \"Ok\") {\n            var resourceSummaryResult = tmp$5;\n            if (resourceSummaryResult.TAG === \"Ok\") {\n              var titleResult = tmp$6;\n              if (titleResult.TAG === \"Ok\") {\n                return {\n                        TAG: \"Valid\",\n                        output: {\n                          title: titleResult._0,\n                          resourceSummary: resourceSummaryResult._0,\n                          metaTitle: metaTitleResult._0,\n                          metaDescription: metaDescriptionResult._0,\n                          popular: popularResult._0,\n                          active: activeResult._0,\n                          resourceCategoryId: resourceCategoryIdResult._0\n                        },\n                        fieldsStatuses: {\n                          resourceCategoryId: {\n                            TAG: \"Dirty\",\n                            _0: resourceCategoryIdResult,\n                            _1: \"Shown\"\n                          },\n                          active: {\n                            TAG: \"Dirty\",\n                            _0: activeResult,\n                            _1: \"Shown\"\n                          },\n                          popular: {\n                            TAG: \"Dirty\",\n                            _0: popularResult,\n                            _1: \"Shown\"\n                          },\n                          metaDescription: {\n                            TAG: \"Dirty\",\n                            _0: metaDescriptionResult,\n                            _1: \"Shown\"\n                          },\n                          metaTitle: {\n                            TAG: \"Dirty\",\n                            _0: metaTitleResult,\n                            _1: \"Shown\"\n                          },\n                          resourceSummary: {\n                            TAG: \"Dirty\",\n                            _0: resourceSummaryResult,\n                            _1: \"Shown\"\n                          },\n                          title: {\n                            TAG: \"Dirty\",\n                            _0: titleResult,\n                            _1: \"Shown\"\n                          }\n                        },\n                        collectionsStatuses: undefined\n                      };\n              }\n              resourceCategoryIdResult$1 = resourceCategoryIdResult;\n            } else {\n              resourceCategoryIdResult$1 = resourceCategoryIdResult;\n            }\n          } else {\n            resourceCategoryIdResult$1 = resourceCategoryIdResult;\n          }\n        } else {\n          resourceCategoryIdResult$1 = resourceCategoryIdResult;\n        }\n      } else {\n        resourceCategoryIdResult$1 = resourceCategoryIdResult;\n      }\n    } else {\n      resourceCategoryIdResult$1 = resourceCategoryIdResult;\n    }\n  } else {\n    resourceCategoryIdResult$1 = resourceCategoryIdResult;\n  }\n  return {\n          TAG: \"Invalid\",\n          fieldsStatuses: {\n            resourceCategoryId: {\n              TAG: \"Dirty\",\n              _0: resourceCategoryIdResult$1,\n              _1: \"Shown\"\n            },\n            active: {\n              TAG: \"Dirty\",\n              _0: tmp$1,\n              _1: \"Shown\"\n            },\n            popular: {\n              TAG: \"Dirty\",\n              _0: tmp$2,\n              _1: \"Shown\"\n            },\n            metaDescription: {\n              TAG: \"Dirty\",\n              _0: tmp$3,\n              _1: \"Shown\"\n            },\n            metaTitle: {\n              TAG: \"Dirty\",\n              _0: tmp$4,\n              _1: \"Shown\"\n            },\n            resourceSummary: {\n              TAG: \"Dirty\",\n              _0: tmp$5,\n              _1: \"Shown\"\n            },\n            title: {\n              TAG: \"Dirty\",\n              _0: tmp$6,\n              _1: \"Shown\"\n            }\n          },\n          collectionsStatuses: undefined\n        };\n}\n\nfunction useForm(initialInput, onSubmit) {\n  var memoizedInitialState = React.useMemo((function () {\n          return initialState(initialInput);\n        }), [initialInput]);\n  var match = Formality__ReactUpdate.useReducer(memoizedInitialState, (function (state, action) {\n          if (typeof action !== \"object\") {\n            switch (action) {\n              case \"BlurResourceCategoryIdField\" :\n                  var result = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.resourceCategoryId, validators_resourceCategoryId, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: status,\n                                  active: init.active,\n                                  popular: init.popular,\n                                  metaDescription: init.metaDescription,\n                                  metaTitle: init.metaTitle,\n                                  resourceSummary: init.resourceSummary,\n                                  title: init.title\n                                };\n                        }));\n                  if (result !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"BlurActiveField\" :\n                  var result$1 = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.active, validators_active, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: init.resourceCategoryId,\n                                  active: status,\n                                  popular: init.popular,\n                                  metaDescription: init.metaDescription,\n                                  metaTitle: init.metaTitle,\n                                  resourceSummary: init.resourceSummary,\n                                  title: init.title\n                                };\n                        }));\n                  if (result$1 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result$1,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"BlurPopularField\" :\n                  var result$2 = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.popular, validators_popular, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: init.resourceCategoryId,\n                                  active: init.active,\n                                  popular: status,\n                                  metaDescription: init.metaDescription,\n                                  metaTitle: init.metaTitle,\n                                  resourceSummary: init.resourceSummary,\n                                  title: init.title\n                                };\n                        }));\n                  if (result$2 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result$2,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"BlurMetaDescriptionField\" :\n                  var result$3 = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.metaDescription, validators_metaDescription, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: init.resourceCategoryId,\n                                  active: init.active,\n                                  popular: init.popular,\n                                  metaDescription: status,\n                                  metaTitle: init.metaTitle,\n                                  resourceSummary: init.resourceSummary,\n                                  title: init.title\n                                };\n                        }));\n                  if (result$3 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result$3,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"BlurMetaTitleField\" :\n                  var result$4 = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.metaTitle, validators_metaTitle, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: init.resourceCategoryId,\n                                  active: init.active,\n                                  popular: init.popular,\n                                  metaDescription: init.metaDescription,\n                                  metaTitle: status,\n                                  resourceSummary: init.resourceSummary,\n                                  title: init.title\n                                };\n                        }));\n                  if (result$4 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result$4,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"BlurResourceSummaryField\" :\n                  var result$5 = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.resourceSummary, validators_resourceSummary, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: init.resourceCategoryId,\n                                  active: init.active,\n                                  popular: init.popular,\n                                  metaDescription: init.metaDescription,\n                                  metaTitle: init.metaTitle,\n                                  resourceSummary: status,\n                                  title: init.title\n                                };\n                        }));\n                  if (result$5 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result$5,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"BlurTitleField\" :\n                  var result$6 = Formality.validateFieldOnBlurWithValidator(state.input, state.fieldsStatuses.title, validators_title, (function (status) {\n                          var init = state.fieldsStatuses;\n                          return {\n                                  resourceCategoryId: init.resourceCategoryId,\n                                  active: init.active,\n                                  popular: init.popular,\n                                  metaDescription: init.metaDescription,\n                                  metaTitle: init.metaTitle,\n                                  resourceSummary: init.resourceSummary,\n                                  title: status\n                                };\n                        }));\n                  if (result$6 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: result$6,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: state.formStatus,\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              case \"Submit\" :\n                  var match = state.formStatus;\n                  if (typeof match === \"object\" && match.TAG === \"Submitting\") {\n                    return \"NoUpdate\";\n                  }\n                  var match$1 = validateForm(state.input, validators, state.fieldsStatuses);\n                  if (match$1.TAG !== \"Valid\") {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: match$1.fieldsStatuses,\n                              collectionsStatuses: match$1.collectionsStatuses,\n                              formStatus: \"Editing\",\n                              submissionStatus: \"AttemptedToSubmit\"\n                            }\n                          };\n                  }\n                  var output = match$1.output;\n                  var error = state.formStatus;\n                  var tmp;\n                  tmp = typeof error !== \"object\" || error.TAG !== \"SubmissionFailed\" ? undefined : Caml_option.some(error._0);\n                  return {\n                          TAG: \"UpdateWithSideEffects\",\n                          _0: {\n                            input: state.input,\n                            fieldsStatuses: match$1.fieldsStatuses,\n                            collectionsStatuses: match$1.collectionsStatuses,\n                            formStatus: {\n                              TAG: \"Submitting\",\n                              _0: tmp\n                            },\n                            submissionStatus: \"AttemptedToSubmit\"\n                          },\n                          _1: (function (param) {\n                              var dispatch = param.dispatch;\n                              onSubmit(output, {\n                                    notifyOnSuccess: (function (input) {\n                                        dispatch({\n                                              TAG: \"SetSubmittedStatus\",\n                                              _0: input\n                                            });\n                                      }),\n                                    notifyOnFailure: (function (error) {\n                                        dispatch({\n                                              TAG: \"SetSubmissionFailedStatus\",\n                                              _0: error\n                                            });\n                                      }),\n                                    reset: (function () {\n                                        dispatch(\"Reset\");\n                                      }),\n                                    dismissSubmissionResult: (function () {\n                                        dispatch(\"DismissSubmissionResult\");\n                                      })\n                                  });\n                            })\n                        };\n                  break;\n              case \"DismissSubmissionError\" :\n                  var match$2 = state.formStatus;\n                  if (typeof match$2 !== \"object\" || match$2.TAG !== \"SubmissionFailed\") {\n                    return \"NoUpdate\";\n                  } else {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: state.fieldsStatuses,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: \"Editing\",\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  }\n              case \"DismissSubmissionResult\" :\n                  var match$3 = state.formStatus;\n                  if (typeof match$3 !== \"object\") {\n                    if (match$3 === \"Editing\") {\n                      return \"NoUpdate\";\n                    }\n                    \n                  } else if (match$3.TAG === \"Submitting\") {\n                    return \"NoUpdate\";\n                  }\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: state.input,\n                            fieldsStatuses: state.fieldsStatuses,\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: \"Editing\",\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"Reset\" :\n                  return {\n                          TAG: \"Update\",\n                          _0: initialState(initialInput)\n                        };\n              \n            }\n          } else {\n            switch (action.TAG) {\n              case \"UpdateResourceCategoryIdField\" :\n                  var nextInput = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput, state.fieldsStatuses.resourceCategoryId, state.submissionStatus, validators_resourceCategoryId, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: status,\n                                            active: init.active,\n                                            popular: init.popular,\n                                            metaDescription: init.metaDescription,\n                                            metaTitle: init.metaTitle,\n                                            resourceSummary: init.resourceSummary,\n                                            title: init.title\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"UpdateActiveField\" :\n                  var nextInput$1 = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput$1,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput$1, state.fieldsStatuses.active, state.submissionStatus, validators_active, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: init.resourceCategoryId,\n                                            active: status,\n                                            popular: init.popular,\n                                            metaDescription: init.metaDescription,\n                                            metaTitle: init.metaTitle,\n                                            resourceSummary: init.resourceSummary,\n                                            title: init.title\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"UpdatePopularField\" :\n                  var nextInput$2 = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput$2,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput$2, state.fieldsStatuses.popular, state.submissionStatus, validators_popular, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: init.resourceCategoryId,\n                                            active: init.active,\n                                            popular: status,\n                                            metaDescription: init.metaDescription,\n                                            metaTitle: init.metaTitle,\n                                            resourceSummary: init.resourceSummary,\n                                            title: init.title\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"UpdateMetaDescriptionField\" :\n                  var nextInput$3 = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput$3,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput$3, state.fieldsStatuses.metaDescription, state.submissionStatus, validators_metaDescription, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: init.resourceCategoryId,\n                                            active: init.active,\n                                            popular: init.popular,\n                                            metaDescription: status,\n                                            metaTitle: init.metaTitle,\n                                            resourceSummary: init.resourceSummary,\n                                            title: init.title\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"UpdateMetaTitleField\" :\n                  var nextInput$4 = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput$4,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput$4, state.fieldsStatuses.metaTitle, state.submissionStatus, validators_metaTitle, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: init.resourceCategoryId,\n                                            active: init.active,\n                                            popular: init.popular,\n                                            metaDescription: init.metaDescription,\n                                            metaTitle: status,\n                                            resourceSummary: init.resourceSummary,\n                                            title: init.title\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"UpdateResourceSummaryField\" :\n                  var nextInput$5 = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput$5,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput$5, state.fieldsStatuses.resourceSummary, state.submissionStatus, validators_resourceSummary, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: init.resourceCategoryId,\n                                            active: init.active,\n                                            popular: init.popular,\n                                            metaDescription: init.metaDescription,\n                                            metaTitle: init.metaTitle,\n                                            resourceSummary: status,\n                                            title: init.title\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"UpdateTitleField\" :\n                  var nextInput$6 = action._0(state.input);\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: nextInput$6,\n                            fieldsStatuses: Formality.validateFieldOnChangeWithValidator(nextInput$6, state.fieldsStatuses.title, state.submissionStatus, validators_title, (function (status) {\n                                    var init = state.fieldsStatuses;\n                                    return {\n                                            resourceCategoryId: init.resourceCategoryId,\n                                            active: init.active,\n                                            popular: init.popular,\n                                            metaDescription: init.metaDescription,\n                                            metaTitle: init.metaTitle,\n                                            resourceSummary: init.resourceSummary,\n                                            title: status\n                                          };\n                                  })),\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: state.formStatus,\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"SetSubmittedStatus\" :\n                  var input = action._0;\n                  if (input !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: input,\n                              fieldsStatuses: initialFieldsStatuses(input),\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: \"Submitted\",\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: initialFieldsStatuses(state.input),\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: \"Submitted\",\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  }\n              case \"SetSubmissionFailedStatus\" :\n                  return {\n                          TAG: \"Update\",\n                          _0: {\n                            input: state.input,\n                            fieldsStatuses: state.fieldsStatuses,\n                            collectionsStatuses: state.collectionsStatuses,\n                            formStatus: {\n                              TAG: \"SubmissionFailed\",\n                              _0: action._0\n                            },\n                            submissionStatus: state.submissionStatus\n                          }\n                        };\n              case \"MapSubmissionError\" :\n                  var map = action._0;\n                  var error$1 = state.formStatus;\n                  if (typeof error$1 !== \"object\") {\n                    return \"NoUpdate\";\n                  }\n                  if (error$1.TAG !== \"Submitting\") {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: state.fieldsStatuses,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: {\n                                TAG: \"SubmissionFailed\",\n                                _0: map(error$1._0)\n                              },\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  }\n                  var error$2 = error$1._0;\n                  if (error$2 !== undefined) {\n                    return {\n                            TAG: \"Update\",\n                            _0: {\n                              input: state.input,\n                              fieldsStatuses: state.fieldsStatuses,\n                              collectionsStatuses: state.collectionsStatuses,\n                              formStatus: {\n                                TAG: \"Submitting\",\n                                _0: Caml_option.some(map(Caml_option.valFromOption(error$2)))\n                              },\n                              submissionStatus: state.submissionStatus\n                            }\n                          };\n                  } else {\n                    return \"NoUpdate\";\n                  }\n              \n            }\n          }\n        }));\n  var dispatch = match[1];\n  var state = match[0];\n  var match$1 = state.formStatus;\n  var tmp;\n  tmp = typeof match$1 !== \"object\" || match$1.TAG !== \"Submitting\" ? false : true;\n  return {\n          updateResourceCategoryId: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdateResourceCategoryIdField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          updateActive: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdateActiveField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          updatePopular: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdatePopularField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          updateMetaDescription: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdateMetaDescriptionField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          updateMetaTitle: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdateMetaTitleField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          updateResourceSummary: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdateResourceSummaryField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          updateTitle: (function (nextInputFn, nextValue) {\n              dispatch({\n                    TAG: \"UpdateTitleField\",\n                    _0: (function (__x) {\n                        return nextInputFn(__x, nextValue);\n                      })\n                  });\n            }),\n          blurResourceCategoryId: (function () {\n              dispatch(\"BlurResourceCategoryIdField\");\n            }),\n          blurActive: (function () {\n              dispatch(\"BlurActiveField\");\n            }),\n          blurPopular: (function () {\n              dispatch(\"BlurPopularField\");\n            }),\n          blurMetaDescription: (function () {\n              dispatch(\"BlurMetaDescriptionField\");\n            }),\n          blurMetaTitle: (function () {\n              dispatch(\"BlurMetaTitleField\");\n            }),\n          blurResourceSummary: (function () {\n              dispatch(\"BlurResourceSummaryField\");\n            }),\n          blurTitle: (function () {\n              dispatch(\"BlurTitleField\");\n            }),\n          resourceCategoryIdResult: Formality.exposeFieldResult(state.fieldsStatuses.resourceCategoryId),\n          activeResult: Formality.exposeFieldResult(state.fieldsStatuses.active),\n          popularResult: Formality.exposeFieldResult(state.fieldsStatuses.popular),\n          metaDescriptionResult: Formality.exposeFieldResult(state.fieldsStatuses.metaDescription),\n          metaTitleResult: Formality.exposeFieldResult(state.fieldsStatuses.metaTitle),\n          resourceSummaryResult: Formality.exposeFieldResult(state.fieldsStatuses.resourceSummary),\n          titleResult: Formality.exposeFieldResult(state.fieldsStatuses.title),\n          input: state.input,\n          status: state.formStatus,\n          dirty: (function () {\n              var match = state.fieldsStatuses;\n              var tmp = match.resourceCategoryId;\n              if (typeof tmp === \"object\") {\n                return true;\n              }\n              var tmp$1 = match.active;\n              if (typeof tmp$1 === \"object\") {\n                return true;\n              }\n              var tmp$2 = match.popular;\n              if (typeof tmp$2 === \"object\") {\n                return true;\n              }\n              var tmp$3 = match.metaDescription;\n              if (typeof tmp$3 === \"object\") {\n                return true;\n              }\n              var tmp$4 = match.metaTitle;\n              if (typeof tmp$4 === \"object\") {\n                return true;\n              }\n              var tmp$5 = match.resourceSummary;\n              if (typeof tmp$5 === \"object\") {\n                return true;\n              }\n              var tmp$6 = match.title;\n              if (typeof tmp$6 !== \"object\") {\n                return false;\n              } else {\n                return true;\n              }\n            }),\n          valid: (function () {\n              var match = validateForm(state.input, validators, state.fieldsStatuses);\n              if (match.TAG === \"Valid\") {\n                return true;\n              } else {\n                return false;\n              }\n            }),\n          submitting: tmp,\n          submit: (function () {\n              dispatch(\"Submit\");\n            }),\n          dismissSubmissionError: (function () {\n              dispatch(\"DismissSubmissionError\");\n            }),\n          dismissSubmissionResult: (function () {\n              dispatch(\"DismissSubmissionResult\");\n            }),\n          mapSubmissionError: (function (map) {\n              dispatch({\n                    TAG: \"MapSubmissionError\",\n                    _0: map\n                  });\n            }),\n          reset: (function () {\n              dispatch(\"Reset\");\n            })\n        };\n}\n\nvar ResourceForm = {\n  validators: validators,\n  initialFieldsStatuses: initialFieldsStatuses,\n  initialCollectionsStatuses: undefined,\n  initialState: initialState,\n  validateForm: validateForm,\n  useForm: useForm\n};\n\nfunction reducer(state, action) {\n  if (action.TAG === \"SetDocument\") {\n    return {\n            document: action._0,\n            editorState: state.editorState\n          };\n  } else {\n    return {\n            document: state.document,\n            editorState: Editor.State.compose(state.editorState, action._0)\n          };\n  }\n}\n\nfunction ResourceNewForm(props) {\n  var categories = props.categories;\n  var initialState_editorState = Editor.State.make();\n  var initialState = {\n    document: undefined,\n    editorState: initialState_editorState\n  };\n  var match = React.useReducer(reducer, initialState);\n  var dispatch = match[1];\n  var state = match[0];\n  var initialInput = React.useMemo((function () {\n          var category = Belt_Array.get(categories, 0);\n          return {\n                  title: \"\",\n                  resourceSummary: \"\",\n                  metaTitle: \"\",\n                  metaDescription: \"\",\n                  popular: \"False\",\n                  active: \"False\",\n                  resourceCategoryId: category !== undefined ? ID.toString(category.id) : \"1\"\n                };\n        }), []);\n  var form = useForm(initialInput, (function (output, cb) {\n          $$Promise.wait(Api.createNewResource(output.title, output.resourceSummary, document.querySelector(\".ql-editor\").innerHTML, output.metaTitle, output.metaDescription, Belt_Option.getExn(state.document), output.active, output.popular, output.resourceCategoryId), (function (x) {\n                  if (x.TAG !== \"Ok\") {\n                    return SentryLogger.error1({\n                                rootModule: \"ResourceNewForm\",\n                                subModulePath: /* [] */0,\n                                value: \"make\",\n                                fullPath: \"ResourceNewForm.make\"\n                              }, \"CreateNewResource::Error\", [\n                                \"Error\",\n                                cb.notifyOnFailure()\n                              ]);\n                  }\n                  var resource = x._0;\n                  Url.visit(Routes_Resource.show(resource.slug, resource.categorySlug));\n                }));\n        }));\n  var fieldError = function (field) {\n    if (field !== undefined && field.TAG !== \"Ok\") {\n      return JsxRuntime.jsx(ErrorMessage.make, {\n                  children: field._0\n                });\n    } else {\n      return null;\n    }\n  };\n  var containerRef = React.useRef(null);\n  var editorRef = React.useRef(undefined);\n  React.useEffect((function () {\n          var editor = Belt_Option.getExn(Belt_Option.map(Caml_option.nullable_to_opt(containerRef.current), (function (container) {\n                      return Quill.make(\"Type here...\", undefined, undefined, Quill.resourceToolbarOptions, {}, undefined, container);\n                    })));\n          var listener = function (delta, param) {\n            dispatch({\n                  TAG: \"SetEditorState\",\n                  _0: delta\n                });\n          };\n          editorRef.current = Caml_option.some(editor);\n          editor.on(\"text-change\", listener);\n          return (function () {\n                    editor.off(\"text-change\", listener);\n                  });\n        }), []);\n  var match$1 = form.resourceSummaryResult;\n  var tmp;\n  tmp = match$1 !== undefined && match$1.TAG !== \"Ok\" ? JsxRuntime.jsx(ErrorMessage.make, {\n          children: match$1._0\n        }) : null;\n  var match$2 = state.document;\n  var match$3 = form.status;\n  var tmp$1;\n  tmp$1 = typeof match$3 !== \"object\" || match$3.TAG !== \"SubmissionFailed\" ? null : JsxRuntime.jsxs(Row.make, {\n          className: \"row\",\n          children: [\n            JsxRuntime.jsx(Col.make, {\n                  md: 3,\n                  lg: 3,\n                  children: JsxRuntime.jsx(\"div\", {})\n                }),\n            JsxRuntime.jsx(Col.make, {\n                  md: 9,\n                  lg: 9,\n                  children: JsxRuntime.jsx(ErrorMessage.make, {\n                        children: \"Something went wrong.\"\n                      })\n                })\n          ]\n        });\n  var match$4 = state.document;\n  return JsxRuntime.jsx(\"form\", {\n              children: JsxRuntime.jsxs(Grid.make, {\n                    className: ResourceEditFormCss.marginGrid,\n                    children: [\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--title\",\n                                          children: \"Title\"\n                                        })\n                                  }),\n                              JsxRuntime.jsxs(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: [\n                                      JsxRuntime.jsx(TextField.make, {\n                                            id: \"resource-form--title\",\n                                            value: form.input.title,\n                                            placeholder: \"Add a title for your new resource.\",\n                                            onChange: (function ($$event) {\n                                                form.updateTitle((function (input, value) {\n                                                        return {\n                                                                title: value,\n                                                                resourceSummary: input.resourceSummary,\n                                                                metaTitle: input.metaTitle,\n                                                                metaDescription: input.metaDescription,\n                                                                popular: input.popular,\n                                                                active: input.active,\n                                                                resourceCategoryId: input.resourceCategoryId\n                                                              };\n                                                      }), $$event.target.value);\n                                              })\n                                          }),\n                                      fieldError(form.titleResult)\n                                    ]\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--resource-summary\",\n                                          children: \"Summary\"\n                                        })\n                                  }),\n                              JsxRuntime.jsxs(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: [\n                                      JsxRuntime.jsx(Textarea.make, {\n                                            id: \"resource-form--resource-summary\",\n                                            value: form.input.resourceSummary,\n                                            placeholder: \"Add a summary for your resource.\",\n                                            onChange: (function ($$event) {\n                                                form.updateResourceSummary((function (input, value) {\n                                                        return {\n                                                                title: input.title,\n                                                                resourceSummary: value,\n                                                                metaTitle: input.metaTitle,\n                                                                metaDescription: input.metaDescription,\n                                                                popular: input.popular,\n                                                                active: input.active,\n                                                                resourceCategoryId: input.resourceCategoryId\n                                                              };\n                                                      }), $$event.target.value);\n                                              })\n                                          }),\n                                      tmp\n                                    ]\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--resource-detail\",\n                                          children: \"Details\"\n                                        })\n                                  }),\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: JsxRuntime.jsx(\"div\", {\n                                          children: JsxRuntime.jsx(Editor.make, {\n                                                ref: containerRef\n                                              }),\n                                          className: ResourceEditFormCss.editor\n                                        })\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--meta-title\",\n                                          children: \"Meta Title\"\n                                        })\n                                  }),\n                              JsxRuntime.jsxs(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: [\n                                      JsxRuntime.jsx(TextField.make, {\n                                            id: \"resource-form--meta-title\",\n                                            value: form.input.metaTitle,\n                                            placeholder: \"Add a meta title.\",\n                                            onChange: (function ($$event) {\n                                                form.updateMetaTitle((function (input, value) {\n                                                        return {\n                                                                title: input.title,\n                                                                resourceSummary: input.resourceSummary,\n                                                                metaTitle: value,\n                                                                metaDescription: input.metaDescription,\n                                                                popular: input.popular,\n                                                                active: input.active,\n                                                                resourceCategoryId: input.resourceCategoryId\n                                                              };\n                                                      }), $$event.target.value);\n                                              })\n                                          }),\n                                      fieldError(form.metaTitleResult)\n                                    ]\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--meta-description\",\n                                          children: \"Meta Description\"\n                                        })\n                                  }),\n                              JsxRuntime.jsxs(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: [\n                                      JsxRuntime.jsx(Textarea.make, {\n                                            id: \"resource-form--meta-description\",\n                                            value: form.input.metaDescription,\n                                            placeholder: \"Add a meta description.\",\n                                            onChange: (function ($$event) {\n                                                form.updateMetaDescription((function (input, value) {\n                                                        return {\n                                                                title: input.title,\n                                                                resourceSummary: input.resourceSummary,\n                                                                metaTitle: input.metaTitle,\n                                                                metaDescription: value,\n                                                                popular: input.popular,\n                                                                active: input.active,\n                                                                resourceCategoryId: input.resourceCategoryId\n                                                              };\n                                                      }), $$event.target.value);\n                                              })\n                                          }),\n                                      fieldError(form.metaDescriptionResult)\n                                    ]\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--pdf-file\",\n                                          children: \"PDF File\"\n                                        })\n                                  }),\n                              JsxRuntime.jsxs(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: [\n                                      JsxRuntime.jsx(ResourceDocument.make, {\n                                            document: state.document,\n                                            removeDocument: (function (param) {\n                                                dispatch({\n                                                      TAG: \"SetDocument\",\n                                                      _0: undefined\n                                                    });\n                                              })\n                                          }),\n                                      JsxRuntime.jsx(Uploader.make, {\n                                            allowed: [\"Pdf\"],\n                                            multiple: false,\n                                            upload: (function (files) {\n                                                Belt_Array.map(files, (function (file) {\n                                                        var match = Uploader.FileType.fromMime(file.type);\n                                                        if (match === \"Pdf\") {\n                                                          return dispatch({\n                                                                      TAG: \"SetDocument\",\n                                                                      _0: Caml_option.some(file)\n                                                                    });\n                                                        }\n                                                        \n                                                      }));\n                                              }),\n                                            setUploadHandler: (function (prim) {\n                                                \n                                              }),\n                                            children: match$2 !== undefined ? null : JsxRuntime.jsxs(Button.make, {\n                                                    size: \"SM\",\n                                                    color: \"Teal\",\n                                                    buttonClassName: ResourceEditFormCss.uploadDocumentButton,\n                                                    children: [\n                                                      JsxRuntime.jsx(IconAdditionalUpload.make, {\n                                                            size: \"MD\",\n                                                            color: \"White\"\n                                                          }),\n                                                      \"Upload Document\"\n                                                    ]\n                                                  })\n                                          })\n                                    ]\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--popular\",\n                                          children: \"Popular\"\n                                        })\n                                  }),\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: JsxRuntime.jsxs(Select.make, {\n                                          id: \"resource-form--popular\",\n                                          value: form.input.popular,\n                                          onChange: (function ($$event) {\n                                              form.updatePopular((function (input, value) {\n                                                      return {\n                                                              title: input.title,\n                                                              resourceSummary: input.resourceSummary,\n                                                              metaTitle: input.metaTitle,\n                                                              metaDescription: input.metaDescription,\n                                                              popular: value,\n                                                              active: input.active,\n                                                              resourceCategoryId: input.resourceCategoryId\n                                                            };\n                                                    }), $$event.target.value);\n                                            }),\n                                          children: [\n                                            JsxRuntime.jsx(Select.$$Option.make, {\n                                                  value: \"false\",\n                                                  children: \"False\"\n                                                }, \"popular-false\"),\n                                            JsxRuntime.jsx(Select.$$Option.make, {\n                                                  value: \"true\",\n                                                  children: \"True\"\n                                                }, \"popular-true\")\n                                          ]\n                                        })\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--active\",\n                                          children: \"Active\"\n                                        })\n                                  }),\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: JsxRuntime.jsxs(Select.make, {\n                                          id: \"resource-form--active\",\n                                          value: form.input.active,\n                                          onChange: (function ($$event) {\n                                              form.updateActive((function (input, value) {\n                                                      return {\n                                                              title: input.title,\n                                                              resourceSummary: input.resourceSummary,\n                                                              metaTitle: input.metaTitle,\n                                                              metaDescription: input.metaDescription,\n                                                              popular: input.popular,\n                                                              active: value,\n                                                              resourceCategoryId: input.resourceCategoryId\n                                                            };\n                                                    }), $$event.target.value);\n                                            }),\n                                          children: [\n                                            JsxRuntime.jsx(Select.$$Option.make, {\n                                                  value: \"false\",\n                                                  children: \"False\"\n                                                }, \"resource-form--active-false\"),\n                                            JsxRuntime.jsx(Select.$$Option.make, {\n                                                  value: \"true\",\n                                                  children: \"True\"\n                                                }, \"resource-form--active-true\")\n                                          ]\n                                        })\n                                  })\n                            ]\n                          }),\n                      JsxRuntime.jsxs(Row.make, {\n                            className: ResourceEditFormCss.marginRow,\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.labelContainer,\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(Label.make, {\n                                          forId: \"resource-form--resource-category-id\",\n                                          children: \"Category\"\n                                        })\n                                  }),\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.flexContainer,\n                                    md: 9,\n                                    lg: 9,\n                                    children: JsxRuntime.jsx(Select.make, {\n                                          id: \"resource-form--category\",\n                                          value: form.input.resourceCategoryId,\n                                          onChange: (function ($$event) {\n                                              form.updateActive((function (input, value) {\n                                                      return {\n                                                              title: input.title,\n                                                              resourceSummary: input.resourceSummary,\n                                                              metaTitle: input.metaTitle,\n                                                              metaDescription: input.metaDescription,\n                                                              popular: input.popular,\n                                                              active: input.active,\n                                                              resourceCategoryId: value\n                                                            };\n                                                    }), $$event.target.value);\n                                            }),\n                                          children: Belt_Array.map(categories, (function (category) {\n                                                  return JsxRuntime.jsx(Select.$$Option.make, {\n                                                              value: ID.toString(category.id),\n                                                              children: category.title\n                                                            }, \"resource-form--category-\" + ID.toString(category.id));\n                                                }))\n                                        })\n                                  })\n                            ]\n                          }),\n                      tmp$1,\n                      JsxRuntime.jsxs(Row.make, {\n                            className: \"row\",\n                            children: [\n                              JsxRuntime.jsx(Col.make, {\n                                    md: 3,\n                                    lg: 3,\n                                    children: JsxRuntime.jsx(\"div\", {})\n                                  }),\n                              JsxRuntime.jsx(Col.make, {\n                                    className: ResourceEditFormCss.buttonCreateContainer,\n                                    md: 4,\n                                    lg: 4,\n                                    children: JsxRuntime.jsx(Button.make, {\n                                          size: \"LG\",\n                                          color: \"Primary\",\n                                          expanded: true,\n                                          disabled: form.submitting,\n                                          visuallyDisabled: match$4 === undefined,\n                                          busy: form.submitting,\n                                          submit: true,\n                                          children: \"Create Resource\"\n                                        })\n                                  }),\n                              JsxRuntime.jsx(Col.make, {\n                                    md: 5,\n                                    lg: 5,\n                                    children: JsxRuntime.jsx(Button.make, {\n                                          size: \"LG\",\n                                          color: \"White\",\n                                          expanded: true,\n                                          busy: false,\n                                          submit: true,\n                                          onClick: (function (e) {\n                                              e.preventDefault();\n                                              Url.visit(Routes_Resource.Dashboard.index);\n                                            }),\n                                          children: \"Cancel\"\n                                        })\n                                  })\n                            ]\n                          })\n                    ]\n                  }),\n              onSubmit: (function ($$event) {\n                  $$event.preventDefault();\n                  form.submit();\n                })\n            });\n}\n\nvar Css;\n\nvar make = ResourceNewForm;\n\nexport {\n  Css ,\n  ResourceForm ,\n  reducer ,\n  make ,\n}\n/* ID Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as H1 from \"../../../styleguide/components/Heading/H1.res.js\";\nimport * as Breadcrumb from \"../../../styleguide/components/Breadcrumb/Breadcrumb.res.js\";\nimport * as ResourceNewForm from \"./ResourceNewForm.res.js\";\nimport * as Routes_Resource from \"../../../routes/common/Routes_Resource.res.js\";\nimport * as DashboardIndexCss from \"../../../styleguide/dashboard/components/views/index/DashboardIndexCss.res.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\n\nfunction ResourceNew(props) {\n  return JsxRuntime.jsxs(\"div\", {\n              children: [\n                JsxRuntime.jsx(Breadcrumb.make, {\n                      breadcrumbLinks: [\n                        {\n                          linkName: \"Resources Dashboard\",\n                          linkPath: Routes_Resource.Dashboard.index\n                        },\n                        {\n                          linkName: \"New Resource\",\n                          linkPath: Routes_Resource.Dashboard.$$new\n                        }\n                      ]\n                    }),\n                JsxRuntime.jsx(H1.make, {\n                      className: DashboardIndexCss.title,\n                      children: \"New Resource\"\n                    }),\n                JsxRuntime.jsx(ResourceNewForm.make, {\n                      categories: props.categories\n                    })\n              ],\n              className: DashboardIndexCss.layout\n            });\n}\n\nvar Css;\n\nvar make = ResourceNew;\n\nexport {\n  Css ,\n  make ,\n}\n/* H1 Not a pure module */\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as Caml from \"rescript/lib/es6/caml.js\";\nimport * as Belt_Array from \"rescript/lib/es6/belt_Array.js\";\nimport * as ResourceNew from \"./ResourceNew.res.js\";\nimport * as Belt_SortArray from \"rescript/lib/es6/belt_SortArray.js\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\nimport * as ResourceCategoryAsFilter from \"../../../models/ResourceCategoryAsFilter.res.js\";\n\nfunction ResourceNew__JsBridge$default(props) {\n  return JsxRuntime.jsx(ResourceNew.make, {\n              categories: Belt_SortArray.stableSortBy(Belt_Array.map(props.props.categories, ResourceCategoryAsFilter.fromJs), (function (x1, x2) {\n                      return Caml.string_compare(x1.title, x2.title);\n                    }))\n            });\n}\n\nvar $$default = ResourceNew__JsBridge$default;\n\nexport {\n  $$default as default,\n}\n/* ResourceNew Not a pure module */\n","import * as React from 'react';\n\nimport ResourceNew from './ResourceNew__JsBridge.res.js';\n\nexport default ({ ...props }) => <ResourceNew props={props} />;\n","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as JsxRuntime from \"react/jsx-runtime\";\n\nvar arrow = '\\u279e';\n\nvar middot = '\\u00b7';\n\nvar mdash = '\\u2014';\n\nvar rightCaret = '\\u203a';\n\nvar ampersand = '\\u0026';\n\nvar times = '\\u00D7';\n\nfunction Char$Middot(props) {\n  return JsxRuntime.jsx(\"span\", {\n              children: \" \" + (middot + \" \"),\n              style: {\n                padding: \"0 1px\"\n              }\n            });\n}\n\nvar Middot = {\n  make: Char$Middot\n};\n\nfunction Char$RightArrow(props) {\n  return JsxRuntime.jsx(\"div\", {\n              children: arrow,\n              className: props.className\n            });\n}\n\nvar RightArrow = {\n  make: Char$RightArrow\n};\n\nfunction Char$LeftArrow(props) {\n  return JsxRuntime.jsx(\"div\", {\n              children: arrow,\n              style: {\n                transform: \"rotate(180deg)\"\n              }\n            });\n}\n\nvar LeftArrow = {\n  make: Char$LeftArrow\n};\n\nfunction Char$RightCaret(props) {\n  return JsxRuntime.jsx(\"span\", {\n              children: rightCaret\n            });\n}\n\nvar RightCaret = {\n  make: Char$RightCaret\n};\n\nfunction Char$Ampersand(props) {\n  return JsxRuntime.jsx(\"span\", {\n              children: ampersand\n            });\n}\n\nvar Ampersand = {\n  make: Char$Ampersand\n};\n\nfunction Char$Times(props) {\n  return JsxRuntime.jsx(\"span\", {\n              children: times\n            });\n}\n\nvar Times = {\n  make: Char$Times\n};\n\nexport {\n  arrow ,\n  middot ,\n  mdash ,\n  rightCaret ,\n  ampersand ,\n  times ,\n  Middot ,\n  RightArrow ,\n  LeftArrow ,\n  RightCaret ,\n  Ampersand ,\n  Times ,\n}\n/* react/jsx-runtime Not a pure module */\n","// extracted by mini-css-extract-plugin\nexport var breadcrumb = \"Breadcrumb__breadcrumb__TR3Ce\";\nexport var breadcrumbContainer = \"Breadcrumb__breadcrumbContainer__qZzsR\";\nexport var breadcrumbLink = \"Breadcrumb__breadcrumbLink__IjnWv\";\nexport var column = \"Breadcrumb__column__9_54C\";\nexport var flex = \"Breadcrumb__flex__ggYBQ\";\nexport var flexColumn = \"Breadcrumb__flexColumn___M5zZ\";\nexport var gap1 = \"Breadcrumb__gap1__Wv9cG\";\nexport var gap2 = \"Breadcrumb__gap2__jG_q6\";\nexport var gap3 = \"Breadcrumb__gap3__hj6fp\";\nexport var gap4 = \"Breadcrumb__gap4__KTKcD\";\nexport var gap5 = \"Breadcrumb__gap5__rLpks\";\nexport var row = \"Breadcrumb__row___yB7b\";","// Generated by ReScript, PLEASE EDIT WITH CARE\n\nimport * as A from \"../Link/A.res.js\";\nimport * as Cx from \"rescript-classnames/src/Cx.res.js\";\nimport * as Char from \"../../../libs/Char.res.js\";\nimport * as Belt_Array from \"rescript/lib/es6/belt_Array.js\";\nimport * as BreadcrumbScss from \"./Breadcrumb.scss\";\nimport * as JsxRuntime from \"react/jsx-runtime\";\n\nvar css = BreadcrumbScss;\n\nfunction Breadcrumb(props) {\n  var __breadcrumbLinkClassName = props.breadcrumbLinkClassName;\n  var __wrapperContainerClassName = props.wrapperContainerClassName;\n  var breadcrumbLinks = props.breadcrumbLinks;\n  var wrapperContainerClassName = __wrapperContainerClassName !== undefined ? __wrapperContainerClassName : \"\";\n  var breadcrumbLinkClassName = __breadcrumbLinkClassName !== undefined ? __breadcrumbLinkClassName : \"\";\n  return JsxRuntime.jsx(\"div\", {\n              children: Belt_Array.mapWithIndex(breadcrumbLinks, (function (index, breadcrumbLink) {\n                      return JsxRuntime.jsxs(\"div\", {\n                                  children: [\n                                    JsxRuntime.jsx(A.make, {\n                                          href: breadcrumbLink.linkPath,\n                                          className: Cx.cx([\n                                                css.breadcrumbLink,\n                                                breadcrumbLinkClassName\n                                              ]),\n                                          children: breadcrumbLink.linkName\n                                        }),\n                                    index !== (breadcrumbLinks.length - 1 | 0) ? JsxRuntime.jsx(\"span\", {\n                                            children: JsxRuntime.jsx(Char.RightCaret.make, {})\n                                          }) : null\n                                  ],\n                                  className: css.breadcrumb\n                                }, String(index));\n                    })),\n              className: Cx.cx([\n                    css.breadcrumbContainer,\n                    wrapperContainerClassName\n                  ])\n            });\n}\n\nvar make = Breadcrumb;\n\nexport {\n  css ,\n  make ,\n}\n/* css 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","// extracted by mini-css-extract-plugin\nexport var column = \"Link__column__pEN4T\";\nexport var flex = \"Link__flex__yPTqa\";\nexport var flexColumn = \"Link__flexColumn__IRHVb\";\nexport var gap1 = \"Link__gap1__PT0qr\";\nexport var gap2 = \"Link__gap2__nKVKV\";\nexport var gap3 = \"Link__gap3__u0bKM\";\nexport var gap4 = \"Link__gap4__q5jG1\";\nexport var gap5 = \"Link__gap5__IyelJ\";\nexport var link = \"Link__link__Ivmt3\";\nexport var row = \"Link__row__R9iCv\";"],"names":["validators_resourceCategoryId","strategy","validate","input","resourceCategoryId","TAG","_0","validators_active","active","validators_popular","popular","validators_metaDescription","length","metaDescription","validators_metaTitle","metaTitle","validators_resourceSummary","resourceSummary","validators_title","title","validators","initialState","fieldsStatuses","collectionsStatuses","undefined","formStatus","submissionStatus","validateForm","tmp","match","tmp$1","match$1","tmp$2","match$2","tmp$3","match$3","tmp$4","match$4","tmp$5","match$5","tmp$6","match$6","resourceCategoryIdResult$1","resourceCategoryIdResult","activeResult","popularResult","metaDescriptionResult","metaTitleResult","resourceSummaryResult","titleResult","output","_1","useForm","initialInput","onSubmit","memoizedInitialState","React","Formality__ReactUpdate","state","action","result","Formality","status","init","result$1","result$2","result$3","result$4","result$5","result$6","error","Caml_option","param","dispatch","notifyOnSuccess","notifyOnFailure","reset","dismissSubmissionResult","nextInput","nextInput$1","nextInput$2","nextInput$3","nextInput$4","nextInput$5","nextInput$6","map","error$1","error$2","updateResourceCategoryId","nextInputFn","nextValue","__x","updateActive","updatePopular","updateMetaDescription","updateMetaTitle","updateResourceSummary","updateTitle","blurResourceCategoryId","blurActive","blurPopular","blurMetaDescription","blurMetaTitle","blurResourceSummary","blurTitle","dirty","valid","submitting","submit","dismissSubmissionError","mapSubmissionError","reducer","document","editorState","Editor","compose","make","props","categories","form","category","Belt_Array","ID","id","cb","$$Promise","Api","querySelector","innerHTML","Belt_Option","x","SentryLogger","rootModule","subModulePath","value","fullPath","resource","Url","Routes_Resource","slug","categorySlug","fieldError","field","JsxRuntime","ErrorMessage","children","containerRef","editorRef","editor","current","container","Quill","listener","delta","on","off","Row","className","Col","md","lg","Grid","ResourceEditFormCss","Label","forId","TextField","placeholder","onChange","$$event","target","Textarea","ref","ResourceDocument","removeDocument","Uploader","allowed","multiple","upload","files","file","fromMime","type","setUploadHandler","prim","Button","size","color","buttonClassName","IconAdditionalUpload","Select","expanded","disabled","visuallyDisabled","busy","onClick","e","preventDefault","index","Breadcrumb","breadcrumbLinks","linkName","linkPath","$$new","H1","DashboardIndexCss","ResourceNewForm","$$default","ResourceNew","Belt_SortArray","ResourceCategoryAsFilter","x1","x2","Caml","_ref","Object","assign","_objectDestructuringEmpty","mdash","times","Middot","style","padding","RightArrow","LeftArrow","transform","RightCaret","Ampersand","breadcrumb","breadcrumbContainer","breadcrumbLink","column","flex","flexColumn","gap1","gap2","gap3","gap4","gap5","row","css","BreadcrumbScss","__breadcrumbLinkClassName","breadcrumbLinkClassName","__wrapperContainerClassName","wrapperContainerClassName","A","href","Cx","Char","String","LinkScss","__className","targetBlank","elRef","link","download","rel"],"sourceRoot":""}