UNPKG

3.28 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/UappProvider.jsx"],"names":["UappProvider","app","page","rawChildren","children","MobxProvider","stores","__providers","Object","keys","length","LinkProvider","history","url","push","theme","ThemeProvider","propTypes","PropTypes","object","isRequired","node","DefaultMobxProvider","DefaultThemeProvider","DefaultLinkProvider"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OAA0C;AAAA,MAAvCC,GAAuC,QAAvCA,GAAuC;AAAA,MAAlCC,IAAkC,QAAlCA,IAAkC;AAAA,MAAlBC,WAAkB,QAA5BC,QAA4B;;AAC7D,MAAIA,QAAQ,gBAAG,kEAAGD,WAAH,CAAf,CAD6D,CAC1B;AACnC;;;AAEA,MAAQE,YAAR,GAAyBL,YAAzB,CAAQK,YAAR;AACA,MAAIC,MAAJ;;AACA,MAAIL,GAAG,IAAIA,GAAG,CAACM,WAAf,EAA4B;AAC1BD,IAAAA,MAAM,GAAGL,GAAG,CAACM,WAAb;AACD,GAFD,MAEO;AACLD,IAAAA,MAAM,GAAG,EAAT;AACD;;AACD,MAAIA,MAAM,IAAIE,MAAM,CAACC,IAAP,CAAYH,MAAZ,EAAoBI,MAA9B,IAAwCL,YAA5C,EAA0D;AACxDD,IAAAA,QAAQ,gBACN,gCAAC,YAAD,gCAAkBE,MAAlB;AAA0B,MAAA,IAAI,EAAEJ;AAAhC,QACGE,QADH,CADF;AAKD;;AAED,MAAQO,YAAR,GAAyBX,YAAzB,CAAQW,YAAR;;AACA,MAAIV,GAAG,IAAIA,GAAG,CAACW,OAAX,IAAsBD,YAA1B,EAAwC;AACtCP,IAAAA,QAAQ,gBAAG,gCAAC,YAAD;AAAc,MAAA,OAAO,EAAE,iBAACS,GAAD;AAAA,eAASZ,GAAG,CAACW,OAAJ,CAAYE,IAAZ,CAAiBD,GAAjB,CAAT;AAAA;AAAvB,OAAwDT,QAAxD,CAAX;AACD;;AAED,gBAAkBE,MAAlB;AAAA,MAAQS,KAAR,WAAQA,KAAR;AACA,MAAQC,aAAR,GAA0BhB,YAA1B,CAAQgB,aAAR;;AACA,MAAID,KAAK,IAAIC,aAAb,EAA4B;AAC1BZ,IAAAA,QAAQ,gBAAG,gCAAC,aAAD;AAAe,MAAA,KAAK,EAAEW;AAAtB,OAA8BX,QAA9B,CAAX;AACD;;AAED,SAAOA,QAAP;AACD,CA/BD;;AAiCAJ,YAAY,CAACiB,SAAb,GAAyB;AACvB;AACAhB,EAAAA,GAAG,EAAEiB,sBAAUC,MAAV,CAAiBC,UAFC;AAGvBhB,EAAAA,QAAQ,EAAEc,sBAAUG,IAAV,CAAeD;AAHF,CAAzB;AAKApB,YAAY,CAACK,YAAb,GAA4BiB,mBAA5B;AACAtB,YAAY,CAACgB,aAAb,GAA6BO,6BAA7B;AACAvB,YAAY,CAACW,YAAb,GAA4Ba,wBAA5B;eAEexB,Y","sourcesContent":["import DefaultLinkProvider from '@lskjs/link/LinkProvider';\nimport { ThemeProvider as DefaultThemeProvider } from 'emotion-theming';\nimport { Provider as DefaultMobxProvider } from 'mobx-react';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nconst UappProvider = ({ app, page, children: rawChildren }) => {\n let children = <>{rawChildren}</>; // TODO: checks\n // console.log({ page });\n\n const { MobxProvider } = UappProvider;\n let stores;\n if (app && app.__providers) {\n stores = app.__providers;\n } else {\n stores = {};\n }\n if (stores && Object.keys(stores).length && MobxProvider) {\n children = (\n <MobxProvider {...stores} page={page}>\n {children}\n </MobxProvider>\n );\n }\n\n const { LinkProvider } = UappProvider;\n if (app && app.history && LinkProvider) {\n children = <LinkProvider onClick={(url) => app.history.push(url)}>{children}</LinkProvider>;\n }\n\n const { theme } = stores;\n const { ThemeProvider } = UappProvider;\n if (theme && ThemeProvider) {\n children = <ThemeProvider theme={theme}>{children}</ThemeProvider>;\n }\n\n return children;\n};\n\nUappProvider.propTypes = {\n // eslint-disable-next-line react/forbid-prop-types\n app: PropTypes.object.isRequired,\n children: PropTypes.node.isRequired,\n};\nUappProvider.MobxProvider = DefaultMobxProvider;\nUappProvider.ThemeProvider = DefaultThemeProvider;\nUappProvider.LinkProvider = DefaultLinkProvider;\n\nexport default UappProvider;\n"],"file":"UappProvider.js"}
\No newline at end of file