{"componentChunkName":"component---src-components-api-layout-js","path":"/api/enty-immutable/map-schema/","webpackCompilationHash":"","result":{"data":{"allFile":{"group":[{"fieldValue":"Enty","nodes":[{"childMdx":{"fields":{"slug":"api/enty/array-schema/"},"frontmatter":{"title":"Array Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"options.create","depth":3},{"value":"options.merge","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty/composite-entity-schema/"},"frontmatter":{"title":"Composite Entity Schema"},"headings":[{"value":"Params","depth":2},{"value":"name","depth":3},{"value":"options.shape","depth":3},{"value":"options.compositeKeys","depth":3},{"value":"options.idAttribute","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty/dynamic-schema/"},"frontmatter":{"title":"Dynamic Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3},{"value":"Examples","depth":2},{"value":"Non-homogeneous Array","depth":3},{"value":"Union Type","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty/entity-schema/"},"frontmatter":{"title":"Entity Schema"},"headings":[{"value":"Params","depth":2},{"value":"name","depth":3},{"value":"options.shape","depth":3},{"value":"options.idAttribute","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty/id-schema/"},"frontmatter":{"title":"Id Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"options.create","depth":2},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty/object-schema/"},"frontmatter":{"title":"Object Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"options.create","depth":3},{"value":"options.merge","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty/value-schema/"},"frontmatter":{"title":"Value Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"options.shape","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}}]},{"fieldValue":"Enty Immutable","nodes":[{"childMdx":{"fields":{"slug":"api/enty-immutable/list-schema/"},"frontmatter":{"title":"List Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"options.shape","depth":3},{"value":"options.merge","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/enty-immutable/map-schema/"},"frontmatter":{"title":"Map Schema"},"headings":[{"value":"Params","depth":2},{"value":"shape","depth":3},{"value":"Methods","depth":2},{"value":".normalize()","depth":3},{"value":".denormalize()","depth":3}]}}]},{"fieldValue":"React Enty","nodes":[{"childMdx":{"fields":{"slug":"api/react-enty/entity-api/"},"frontmatter":{"title":"Entity Api"},"headings":[{"value":"Params","depth":2},{"value":"actionMap","depth":3},{"value":"schema","depth":3},{"value":"Returns","depth":2},{"value":"useRequest","depth":3},{"value":"RequestHoc","depth":3},{"value":"Root Returns","depth":2},{"value":"Provider","depth":3},{"value":"ProviderHoc","depth":3},{"value":"useRemove","depth":3},{"value":"RemoveHoc","depth":3},{"value":"Examples","depth":2},{"value":"Combining Multiple Apis","depth":3}]}},{"childMdx":{"fields":{"slug":"api/react-enty/message/"},"frontmatter":{"title":"Message"},"headings":[{"value":"Properties","depth":2},{"value":".response","depth":3},{"value":".requestState","depth":3},{"value":".requestError","depth":3},{"value":"Methods","depth":2},{"value":".onRequest()","depth":3},{"value":".get()","depth":3},{"value":".getIn()","depth":3},{"value":".updateRequestState()","depth":3},{"value":".toEmpty()","depth":3},{"value":".toFetching()","depth":3},{"value":".toRefetching()","depth":3},{"value":".toSuccess()","depth":3},{"value":".toError()","depth":3},{"value":"Static Unit Functions","depth":2},{"value":"Message.empty()","depth":3},{"value":"Message.fetching()","depth":3},{"value":"Message.refetching()","depth":3},{"value":"Message.success()","depth":3},{"value":"Message.error()","depth":3}]}},{"childMdx":{"fields":{"slug":"api/react-enty/remove-hook/"},"frontmatter":{"title":"useRemove"},"headings":[{"value":"Examples","depth":2}]}},{"childMdx":{"fields":{"slug":"api/react-enty/request-hoc/"},"frontmatter":{"title":"RequestHoc"},"headings":[{"value":"Config","depth":2},{"value":".name","depth":3},{"value":".auto","depth":3},{"value":".payloadCreator","depth":3},{"value":".shouldComponentAutoRequest","depth":3},{"value":"Examples","depth":2},{"value":"Fetch On Load","depth":3},{"value":"Fetch On Prop Change","depth":3},{"value":"Fetch On Callback","depth":3},{"value":"Fetch Series","depth":3},{"value":"Fetch Parallel","depth":3}]}},{"childMdx":{"fields":{"slug":"api/react-enty/request-hook/"},"frontmatter":{"title":"useRequest"},"headings":[{"value":"Examples","depth":2},{"value":"Fetch On Load","depth":3},{"value":"Fetch On Prop Change","depth":3},{"value":"Fetch On Callback","depth":3},{"value":"Fetch Series","depth":3},{"value":"Fetch Parallel","depth":3}]}},{"childMdx":{"fields":{"slug":"api/react-enty/request-state/"},"frontmatter":{"title":"Request State"},"headings":[{"value":"Properties","depth":2},{"value":".is{State}","depth":3},{"value":"Methods","depth":2},{"value":".{state}Map()","depth":3},{"value":".{state}FlatMap()","depth":3},{"value":".to{state}()","depth":3},{"value":".value()","depth":3},{"value":"Unit Functions","depth":3},{"value":"Examples","depth":2},{"value":"ApplyLoader","depth":3},{"value":"Merging RequestStates","depth":3},{"value":"Any Success","depth":3}]}}]}]},"mdx":{"id":"5104295e-907c-5105-a2f7-b02179cbc0aa","body":"function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"id\": \"map-schema\",\n  \"title\": \"Map Schema\",\n  \"group\": \"Enty Immutable\"\n};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Normalize = makeShortcode(\"Normalize\");\nvar Denormalize = makeShortcode(\"Denormalize\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, [\"components\"]);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"The MapSchema is identical in function to \", \"[ObjectSchema]\", \" but its shape and merge functions\\nwill cast your object to an immutable map. \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"This is especially useful when working with immutable\\ndata structures as all data creation can be handled by your schema. Just describe the shapes that\\nyour apis will return and Enty will automatically construct all of your maps and lists for you.\")), mdx(\"h2\", null, \"Params\"), mdx(\"pre\", null, mdx(\"code\", _extends({\n    parentName: \"pre\"\n  }, {\n    \"className\": \"language-js\"\n  }), \"new MapSchema(shape: {[key: string]: Schema});\\n\\n\")), mdx(\"h3\", null, \"shape\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"type:\"), mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"{[key: string]: StructuralSchema}\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"default:\"), \" \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"{}\")), mdx(\"p\", null, \"A javascript object that describes the relationships to other schemas.\\n\", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"Note: you only have to define the keys that hold relationships.\")), mdx(\"pre\", null, mdx(\"code\", _extends({\n    parentName: \"pre\"\n  }, {\n    \"className\": \"language-js\"\n  }), \"const person = new EntitySchema('person')\\nperson.shape = new MapSchema({\\n    friend: person,\\n    enemy: person\\n});\\n\")), mdx(\"h2\", null, \"Methods\"), mdx(\"h3\", null, \".normalize()\"), mdx(Normalize, {\n    mdxType: \"Normalize\"\n  }), mdx(\"h3\", null, \".denormalize()\"), mdx(Denormalize, {\n    mdxType: \"Denormalize\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","fields":{"slug":"api/enty-immutable/map-schema/"},"headings":[{"depth":2,"value":"Params"},{"depth":3,"value":"shape"},{"depth":2,"value":"Methods"},{"depth":3,"value":".normalize()"},{"depth":3,"value":".denormalize()"}],"frontmatter":{"title":"Map Schema"}}},"pageContext":{"isCreatedByStatefulCreatePages":false,"id":"5104295e-907c-5105-a2f7-b02179cbc0aa"}}}